From abf3a1b9c9cdacb574c2b9cdbf3f2a5e18c39ab9 Mon Sep 17 00:00:00 2001 From: Rodrigo Rebello Date: Mon, 29 Feb 2016 22:53:49 -0300 Subject: [PATCH 1/1] Add 'Libs.private' field to pkg-config file In order to support static linking, SDL_mixer.pc should include a 'Libs.private' field listing all the libraries that SDL_mixer requires. This patch adds such a field and also modifies configure.in so that EXTRA_LDFLAGS (which is now also used as the value of 'Libs.private') no longer includes SDL_LIBS. This is done so as to prevent libraries required by SDL from being listed twice when 'pkg-config --libs --static SDL_mixer' is run (they're already shown because of the 'Requires: sdl' line in SDL_mixer.pc). Makefile.in is also adjusted accordingly. Upstream status: submitted https://bugzilla.libsdl.org/show_bug.cgi?id=3278 Signed-off-by: Rodrigo Rebello --- Makefile.in | 2 +- SDL_mixer.pc.in | 1 + configure.in | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.in b/Makefile.in index 3d10565..ce4efd4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -63,7 +63,7 @@ $(objects): .PHONY: all install install-hdrs install-lib install-bin uninstall uninstall-hdrs uninstall-lib uninstall-bin clean distclean dist $(objects)/$(TARGET): $(OBJECTS) $(VERSION_OBJECTS) - $(LIBTOOL) --mode=link $(CC) -o $@ $(OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) + $(LIBTOOL) --mode=link $(CC) -o $@ $(OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(SDL_LIBS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) $(objects)/playwave$(EXE): $(objects)/playwave.lo $(objects)/$(TARGET) $(LIBTOOL) --mode=link $(CC) -o $@ $(objects)/playwave.lo $(SDL_CFLAGS) $(SDL_LIBS) $(objects)/$(TARGET) diff --git a/SDL_mixer.pc.in b/SDL_mixer.pc.in index 1c4965d..d793521 100644 --- a/SDL_mixer.pc.in +++ b/SDL_mixer.pc.in @@ -8,5 +8,6 @@ Description: mixer library for Simple DirectMedia Layer Version: @VERSION@ Requires: sdl >= @SDL_VERSION@ Libs: -L${libdir} -lSDL_mixer +Libs.private: @EXTRA_LDFLAGS@ Cflags: -I${includedir}/SDL diff --git a/configure.in b/configure.in index 2272b29..442eca6 100644 --- a/configure.in +++ b/configure.in @@ -202,7 +202,6 @@ AM_PATH_SDL($SDL_VERSION, AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!]) ) EXTRA_CFLAGS="$EXTRA_CFLAGS $SDL_CFLAGS" -EXTRA_LDFLAGS="$EXTRA_LDFLAGS $SDL_LIBS" dnl Check for math library AC_CHECK_LIB(m, pow, [LIBM="-lm"]) -- 2.1.4