Source: wdm
Version: 1.28-27
Tags: patch upstream
User: debian-cr...@lists.debian.org
Usertags: ftcbfs

wdm fails to cross build from source, because configure.ac hard codes
the build architecture pkg-config. I'm attaching a patch that uses the
recommended PKG_CHECK_MODULES macro and in turn reduces quite a bit of
code while making wdm cross buildable. Please consider applying it and
forwarding it upstream.

Helmut
--- wdm-1.28.orig/Makefile.in
+++ wdm-1.28/Makefile.in
@@ -12,9 +12,8 @@
 XCFLAGS = @XCFLAGS@
 XLDFLAGS = @XLDFLAGS@
 XLIBS = @XLIBS@
-WCFLAGS = @WCFLAGS@
-WLDFLAGS = @WLDFLAGS@
-WLIBS = @WLIBS@ -lfontconfig
+W_CFLAGS = @W_CFLAGS@
+W_LIBS = @W_LIBS@ -lfontconfig
 SELINUX_CFLAGS = @SELINUX_CFLAGS@
 SELINUX_LIBS = @SELINUX_LIBS@
 PASSWDLIB = @PASSWDLIB@
@@ -33,28 +32,28 @@
 ldflags = $(LDFLAGS) -L./bin
 libs = $(LIBS) -lwdm
 
-wdmLogin_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS)
-wdmLogin_ldflags = $(ldflags) $(XLDFLAGS) $(WLDFLAGS)
-wdmLogin_libs = $(WLIBS) $(libs) $(XLIBS)
+wdmLogin_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS)
+wdmLogin_ldflags = $(ldflags) $(XLDFLAGS)
+wdmLogin_libs = $(W_LIBS) $(libs) $(XLIBS)
 
-wdmPrefs_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS)
-wdmPrefs_ldflags = $(ldflags) $(XLDFLAGS) $(WLDFLAGS)
-wdmPrefs_libs = $(WLIBS) $(libs) $(XLIBS)
+wdmPrefs_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS)
+wdmPrefs_ldflags = $(ldflags) $(XLDFLAGS)
+wdmPrefs_libs = $(W_LIBS) $(libs) $(XLIBS)
 
-wdmChooser_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS)
-wdmChooser_ldflags = $(ldflags) $(XLDFLAGS) $(WLDFLAGS)
-wdmChooser_libs = $(WLIBS) $(libs) $(XLIBS)
+wdmChooser_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS)
+wdmChooser_ldflags = $(ldflags) $(XLDFLAGS)
+wdmChooser_libs = $(W_LIBS) $(libs) $(XLIBS)
 
-TestLogin_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS)
-TestLogin_ldflags = $(ldflags) $(XLDFLAGS) $(WLDFLAGS)
-TestLogin_libs = $(WLIBS) $(libs) $(XLIBS)
+TestLogin_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS)
+TestLogin_ldflags = $(ldflags) $(XLDFLAGS)
+TestLogin_libs = $(W_LIBS) $(libs) $(XLIBS)
 
-wdm_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS) $(SELINUX_CFLAGS)
-wdm_ldflags = $(ldflags) $(XLDFLAGS) $(WLDFLAGS)
-wdm_libs = $(WLIBS) $(libs) $(XLIBS) $(PASSWDLIB) $(SELINUX_LIBS) \
+wdm_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS) $(SELINUX_CFLAGS)
+wdm_ldflags = $(ldflags) $(XLDFLAGS)
+wdm_libs = $(W_LIBS) $(libs) $(XLIBS) $(PASSWDLIB) $(SELINUX_LIBS) \
 	-lXmu -lXau -lXdmcp
 
-libwdm_cflags = $(cflags) $(XCFLAGS) $(WCFLAGS)
+libwdm_cflags = $(cflags) $(XCFLAGS) $(W_CFLAGS)
 INSTALL=@INSTALL@
 INSTALL_PROGRAM=@INSTALL_PROGRAM@
 INSTALL_SCRIPT=@INSTALL_SCRIPT@
--- wdm-1.28.orig/configure.ac
+++ wdm-1.28/configure.ac
@@ -154,21 +154,11 @@
 fi
 
 dnl		WINGs support
-AC_CHECK_PROG(GETWINGSFLAGS,pkg-config,pkg-config,,[$PATH])
-if test -z "$GETWINGSFLAGS"; then
-	AC_MSG_ERROR(['pkg-config' command was not found in \$PATH, please install it.])
-fi
-
-WCFLAGS="`pkg-config --cflags WINGs` `pkg-config --cflags WUtil`"
-WLDFLAGS="`pkg-config --ldflags WINGs` `pkg-config --ldflags WUtil`"
-WLIBS="`pkg-config --libs WINGs` `pkg-config --libs WUtil`"
+PKG_CHECK_MODULES([W],[WINGs WUtil])
 
 AC_SUBST(XLIBS)
 AC_SUBST(XCFLAGS)
 AC_SUBST(XLDFLAGS)
-AC_SUBST(WCFLAGS)
-AC_SUBST(WLDFLAGS)
-AC_SUBST(WLIBS)
 
 
 dnl ===============================================
--- wdm-1.28.orig/etc/Howto.conf.in
+++ wdm-1.28/etc/Howto.conf.in
@@ -12,9 +12,8 @@
 XCFLAGS = @XCFLAGS@;
 XLDFLAGS = @XLDFLAGS@;
 XLIBS = @XLIBS@;
-WCFLAGS = @WCFLAGS@;
-WLDFLAGS = @WLDFLAGS@;
-WLIBS = @WLIBS@ -lfontconfig;
+W_CFLAGS = @W_CFLAGS@;
+W_LIBS = @W_LIBS@ -lfontconfig;
 SELINUX_CFLAGS = @SELINUX_CFLAGS@;
 SELINUX_LIBS = @SELINUX_LIBS@;
 PASSWDLIB = @PASSWDLIB@;
@@ -33,25 +32,25 @@
 ldflags = [LDFLAGS] [prepost -L /bin [search_list]];
 libs = [LIBS] -lwdm;
 
-wdmLogin_cflags = [cflags] [XCFLAGS] [WCFLAGS];
-wdmLogin_ldflags = [ldflags] [XLDFLAGS] [WLDFLAGS];
-wdmLogin_libs = [WLIBS] [libs] [XLIBS];
+wdmLogin_cflags = [cflags] [XCFLAGS] [W_CFLAGS];
+wdmLogin_ldflags = [ldflags] [XLDFLAGS];
+wdmLogin_libs = [W_LIBS] [libs] [XLIBS];
 
-wdmPrefs_cflags = [cflags] [XCFLAGS] [WCFLAGS];
-wdmPrefs_ldflags = [ldflags] [XLDFLAGS] [WLDFLAGS];
-wdmPrefs_libs = [WLIBS] [libs] [XLIBS];
+wdmPrefs_cflags = [cflags] [XCFLAGS] [W_CFLAGS];
+wdmPrefs_ldflags = [ldflags] [XLDFLAGS];
+wdmPrefs_libs = [W_LIBS] [libs] [XLIBS];
 
-wdmChooser_cflags = [cflags] [XCFLAGS] [WCFLAGS];
-wdmChooser_ldflags = [ldflags] [XLDFLAGS] [WLDFLAGS];
-wdmChooser_libs = [WLIBS] [libs] [XLIBS] -lfontconfig;
+wdmChooser_cflags = [cflags] [XCFLAGS] [W_CFLAGS];
+wdmChooser_ldflags = [ldflags] [XLDFLAGS];
+wdmChooser_libs = [W_LIBS] [libs] [XLIBS] -lfontconfig;
 
-TestLogin_cflags = [cflags] [XCFLAGS] [WCFLAGS];
-TestLogin_ldflags = [ldflags] [XLDFLAGS] [WLDFLAGS];
-TestLogin_libs = [WLIBS] [libs] [XLIBS];
+TestLogin_cflags = [cflags] [XCFLAGS] [W_CFLAGS];
+TestLogin_ldflags = [ldflags] [XLDFLAGS];
+TestLogin_libs = [W_LIBS] [libs] [XLIBS];
 
-wdm_cflags = [cflags] [XCFLAGS] [WCFLAGS] [SELINUX_CFLAGS];
-wdm_ldflags = [ldflags] [XLDFLAGS] [WLDFLAGS];
-wdm_libs = [WLIBS] [libs] [XLIBS] [PASSWDLIB] [SELINUX_LIBS] \
+wdm_cflags = [cflags] [XCFLAGS] [W_CFLAGS] [SELINUX_CFLAGS];
+wdm_ldflags = [ldflags] [XLDFLAGS];
+wdm_libs = [W_LIBS] [libs] [XLIBS] [PASSWDLIB] [SELINUX_LIBS] \
 	-lXmu -lXau -lXdmcp;
 
-libwdm_cflags = [cflags] [XCFLAGS] [WCFLAGS];
+libwdm_cflags = [cflags] [XCFLAGS] [W_CFLAGS];

Reply via email to