diff options
author | Emanuel Haupt <ehaupt@FreeBSD.org> | 2014-02-12 21:49:57 +0000 |
---|---|---|
committer | Emanuel Haupt <ehaupt@FreeBSD.org> | 2014-02-12 21:49:57 +0000 |
commit | 61dc7b4adb0fc34ca977362200ef7ab7042b7429 (patch) | |
tree | cf8ae35c6a4f58eb374a548b2b51265758cfd698 /audio/gsm/files/patch-Makefile | |
parent | e4f0c42ffcdc08fc7db35cb69324c41ce7a8f4e1 (diff) | |
download | ports-61dc7b4adb0fc34ca977362200ef7ab7042b7429.tar.gz ports-61dc7b4adb0fc34ca977362200ef7ab7042b7429.zip |
- Support staging
- Strip shared object
- Respect CFLAGS
Notes
Notes:
svn path=/head/; revision=344021
Diffstat (limited to 'audio/gsm/files/patch-Makefile')
-rw-r--r-- | audio/gsm/files/patch-Makefile | 246 |
1 files changed, 246 insertions, 0 deletions
diff --git a/audio/gsm/files/patch-Makefile b/audio/gsm/files/patch-Makefile new file mode 100644 index 000000000000..9d12ad9bfec9 --- /dev/null +++ b/audio/gsm/files/patch-Makefile @@ -0,0 +1,246 @@ +--- Makefile.orig 2006-04-26 21:14:26.000000000 +0200 ++++ Makefile 2014-02-12 22:46:15.668989348 +0100 +@@ -43,8 +43,8 @@ + # CC = /usr/lang/acc + # CCFLAGS = -c -O + +-CC = gcc -ansi -pedantic +-CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1 ++#CC = gcc -ansi -pedantic ++CCFLAGS += -c -DNeedFunctionPrototypes=1 + + LD = $(CC) + +@@ -59,11 +59,13 @@ + ######### Includes needed by $(CC) + + # LDINC = -L/usr/gnu/lib/gcc-2.1/gcc-lib/sparc-sun-sunos4.1.2/2.1 ++LDINC = -L$(LIB) + ######### Library paths needed by $(LD) + + # LDLIB = -lgcc + ######### Additional libraries needed by $(LD) + ++#PREFIX= /usr/local + + # Where do you want to install libraries, binaries, a header file + # and the manual pages? +@@ -71,7 +73,7 @@ + # Leave INSTALL_ROOT empty (or just don't execute "make install") to + # not install gsm and toast outside of this directory. + +-INSTALL_ROOT = ++INSTALL_ROOT = $(DESTDIR)$(PREFIX) + + # Where do you want to install the gsm library, header file, and manpages? + # +@@ -80,7 +82,7 @@ + + GSM_INSTALL_ROOT = $(INSTALL_ROOT) + GSM_INSTALL_LIB = $(GSM_INSTALL_ROOT)/lib +-GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/inc ++GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/include + GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3 + + +@@ -106,6 +108,7 @@ + COMPRESSFLAGS = + # RANLIB = true + RANLIB = ranlib ++RM = rm -f + + # + # You shouldn't have to configure below this line if you're porting. +@@ -129,18 +132,19 @@ + # DEBUG = -DNDEBUG + ######### Remove -DNDEBUG to enable assertions. + +-CFLAGS = $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \ ++CFLAGS += $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \ + $(WAV49) $(CCINC) -I$(INC) + ######### It's $(CC) $(CFLAGS) + + LFLAGS = $(LDFLAGS) $(LDINC) + ######### It's $(LD) $(LFLAGS) + ++.SUFFIXES: .c .so .o + + # Targets + +-LIBGSM = $(LIB)/libgsm.a +- ++LIBGSM = libgsm.a ++SOLIBGSM = libgsm.so.1 + TOAST = $(BIN)/toast + UNTOAST = $(BIN)/untoast + TCAT = $(BIN)/tcat +@@ -257,13 +261,15 @@ + # Install targets + + GSM_INSTALL_TARGETS = \ +- $(GSM_INSTALL_LIB)/libgsm.a \ ++ $(GSM_INSTALL_LIB)/$(LIBGSM) \ ++ $(GSM_INSTALL_LIB)/$(SOLIBGSM) \ + $(GSM_INSTALL_INC)/gsm.h \ + $(GSM_INSTALL_MAN)/gsm.3 \ + $(GSM_INSTALL_MAN)/gsm_explode.3 \ + $(GSM_INSTALL_MAN)/gsm_option.3 \ + $(GSM_INSTALL_MAN)/gsm_print.3 + ++ + TOAST_INSTALL_TARGETS = \ + $(TOAST_INSTALL_BIN)/toast \ + $(TOAST_INSTALL_BIN)/tcat \ +@@ -277,9 +283,12 @@ + $(CC) $(CFLAGS) $? + @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1 + ++.c.so: ++ ${CC} -fpic -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} ++ + # Target rules + +-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST) ++all: $(LIB)/$(LIBGSM) $(LIB)/$(SOLIBGSM) $(TOAST) $(TCAT) $(UNTOAST) + @-echo $(ROOT): Done. + + tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result +@@ -299,24 +308,28 @@ + + # The basic API: libgsm + +-$(LIBGSM): $(LIB) $(GSM_OBJECTS) +- -rm $(RMFLAGS) $(LIBGSM) +- $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS) +- $(RANLIB) $(LIBGSM) ++$(LIB)/$(SOLIBGSM): $(LIB) $(GSM_OBJECTS:S/o$/so/g) ++ $(CC) -o $@ -shared -Wl,-soname,$(SOLIBGSM) $(GSM_OBJECTS:S/o$/so/g) ++ (cd $(LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`) ++ ++$(LIB)/$(LIBGSM): $(LIB) $(GSM_OBJECTS) ++ $(RM) $(RMFLAGS) $(LIBGSM) ++ $(AR) $(ARFLAGS) $(LIB)/$(LIBGSM) $(GSM_OBJECTS) ++ $(RANLIB) $(LIB)/$(LIBGSM) + + + # Toast, Untoast and Tcat -- the compress-like frontends to gsm. + +-$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSM) +- $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB) ++$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIB)/$(LIBGSM) ++ $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) -lgsm $(LDLIB) + + $(UNTOAST): $(BIN) $(TOAST) +- -rm $(RMFLAGS) $(UNTOAST) +- $(LN) $(TOAST) $(UNTOAST) ++ $(RM) $(RMFLAGS) $(UNTOAST) ++ $(LN) -sf $(TOAST) $(UNTOAST) + + $(TCAT): $(BIN) $(TOAST) +- -rm $(RMFLAGS) $(TCAT) +- $(LN) $(TOAST) $(TCAT) ++ $(RM) $(RMFLAGS) $(TCAT) ++ $(LN) -sf $(TOAST) $(TCAT) + + + # The local bin and lib directories +@@ -342,62 +355,67 @@ + + gsmuninstall: + -if [ x"$(GSM_INSTALL_ROOT)" != x ] ; then \ +- rm $(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \ ++ $(RM)$(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \ + fi + + toastuninstall: + -if [ x"$(TOAST_INSTALL_ROOT)" != x ] ; then \ +- rm $(RMFLAGS) $(TOAST_INSTALL_TARGETS); \ ++ $(RM)$(RMFLAGS) $(TOAST_INSTALL_TARGETS); \ + fi + + $(TOAST_INSTALL_BIN)/toast: $(TOAST) +- -rm $@ +- cp $(TOAST) $@ +- chmod 755 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_PROGRAM} $(TOAST) $@ + + $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast +- -rm $@ +- ln $? $@ ++ $(RM) $@ ++ $(LN) -sf toast $@ + + $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast +- -rm $@ +- ln $? $@ ++ $(RM) $@ ++ $(LN) -sf toast $@ + + $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1 +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_MAN} $? $@ ++ ++$(TOAST_INSTALL_MAN)/untoast.1: $(MAN)/toast.1 ++ $(RM) $@ ++ $(LN) -sf toast.1 $@ ++ ++$(TOAST_INSTALL_MAN)/tcat.1: $(MAN)/toast.1 ++ $(RM) $@ ++ $(LN) -sf toast.1 $@ + + $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3 +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_MAN} $? $@ + + $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3 +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_MAN} $? $@ + + $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3 +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_MAN} $? $@ + + $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3 +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_MAN} $? $@ + + $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h +- -rm $@ +- cp $? $@ +- chmod 444 $@ +- +-$(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM) +- -rm $@ +- cp $? $@ +- chmod 444 $@ ++ $(RM) $@ ++ ${BSD_INSTALL_DATA} $? $@ + ++$(GSM_INSTALL_LIB)/$(LIBGSM): $(LIB)/$(LIBGSM) ++ $(RM) $@ ++ ${BSD_INSTALL_DATA} $? $@ ++ $(RANLIB) $@ ++ ++$(GSM_INSTALL_LIB)/$(SOLIBGSM): $(LIB)/$(SOLIBGSM) ++ $(RM) $@ ++ ${BSD_INSTALL_DATA} $? $@ ++ (cd $(GSM_INSTALL_LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`) + + # Distribution + |