[PATCH] fix 1.4.5 cygwin build issue
Sergey Kvachonok <[email protected]>
| Newsgroups | gmane.comp.window-managers.ratpoison.devel |
|---|---|
| Message-ID | <[email protected]> |
With supplied Makefile make runs the following command:
gcc -g -O2 -Wall -O2 -lXtst -lXinerama -lXext -lX11 -lXft
-lXrender -lfontconfig -lexpat -liconv -lfreetype -lz -lX11 -lxcb
-lXau -lXdmcp -lhistory -o ratpoison.exe actions.o bar.o
completions.o communications.o editor.o events.o format.o frame.o
getopt.o getopt1.o globals.o group.o history.o hook.o input.o
linkedlist.o main.o manage.o number.o sbuf.o screen.o split.o window.o
xinerama.o
which fails, apparently because libraries must be specified after
object files, not before.
Automake manual says to use _LDADD for libraries, not _LDFLAGS.
With the following patch applied
===
diff -u ratpoison-1.4.5/src/Makefile.am ratpoison-1.4.5-p/src/Makefile.am
--- ratpoison-1.4.5/src/Makefile.am 2009-07-07 03:45:38.000000000 +0300
+++ ratpoison-1.4.5-p/src/Makefile.am 2009-12-29 10:34:06.953125000 +0200
@@ -22,7 +22,8 @@
bin_PROGRAMS = ratpoison
MAINTAINERCLEANFILES = Makefile.in config.h.in
-AM_LDFLAGS=${X_LDFLAGS} ${X_LIBS} ${X_EXTRA_LIBS} ${XFT_LIBS} ${HISTORY_LIBS}
+AM_LDFLAGS=${X_LDFLAGS}
+LDADD=${X_LIBS} ${X_EXTRA_LIBS} ${XFT_LIBS} ${HISTORY_LIBS}
AM_CPPFLAGS=${X_CFLAGS} ${XFT_CFLAGS}
ratpoison_SOURCES = actions.c \
===
the build command looks like
gcc -g -O2 -Wall -O2 -o ratpoison.exe actions.o bar.o completions.o
communications.o editor.o events.o format.o frame.o getopt.o getopt1.o
globals.o group.o history.o hook.o input.o linkedlist.o main.o
manage.o number.o sbuf.o screen.o split.o window.o xinerama.o -lXtst
-lXinerama -lXext -lX11 -lXft -lXrender -lfontconfig -lexpat -liconv
-lfreetype -lz -lX11 -lxcb -lXau -lXdmcp -lhistory
which succeeds. This should work on *nix too, though I haven't tested it yet.
Best redargs,
Sergey