about summary refs log tree commit diff
path: root/other/pamx/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'other/pamx/Makefile')
-rw-r--r--other/pamx/Makefile26
1 files changed, 21 insertions, 5 deletions
diff --git a/other/pamx/Makefile b/other/pamx/Makefile
index a40ea3a6..b41cadf8 100644
--- a/other/pamx/Makefile
+++ b/other/pamx/Makefile
@@ -8,13 +8,23 @@ VPATH=.:$(SRCDIR)/$(SUBDIR)
 include $(BUILDDIR)/config.mk
 
 EXTERN_INCLUDE =
-ifneq ($(X11LIB),NONE)
-  ifneq ($(X11HDR_DIR),)
-    EXTERN_INCLUDES += -I$(X11HDR_DIR)
+
+ifeq ($(shell pkg-config x11 --modversion --silence-errors),)
+  # Pkg-config has never heard of X11, or doesn't even exist
+
+  ifneq ($(X11LIB),NONE)
+    HAVE_X11LIB = Y
+    ifneq ($(X11HDR_DIR)x,x)
+      EXTERN_INCLUDES += -I$(X11HDR_DIR)
+    endif
   endif
+else
+  HAVE_X11LIB = Y
+  X11LIB = $(shell pkg-config x11 --libs)
+  EXTERN_INCLUDES += $(shell pkg-config x11 --cflags)
 endif
 
-ifneq ($(X11LIB),NONE)
+ifeq ($(HAVE_X11LIB),Y)
   BINARIES += pamx
 
   PAMX_OBJECTS = \
@@ -39,7 +49,13 @@ all: $(BINARIES)
 
 include $(SRCDIR)/common.mk
 
+ifeq ($(shell pkg-config x11 --libs),)
+  X11_LIBOPTS = $(shell $(LIBOPT) $(LIBOPTR) $(X11LIB))
+else
+  X11_LIBOPTS = $(shell pkg-config x11 --libs)
+endif
+
 pamx: $(PAMX_OBJECTS) $(NETPBMLIB) $(LIBOPT)
 	$(LD) -o $@ $(PAMX_OBJECTS) \
-	  $(shell $(LIBOPT) $(NETPBMLIB) $(X11LIB)) \
+	  $(shell $(LIBOPT) $(NETPBMLIB) $(X11_LIBOPTS)) \
 	  $(LDFLAGS) $(LDLIBS) $(MATHLIB) $(RPATH) $(LADD)