pkgsrc/audio/gsm/patches/patch-Makefile
adam 208a26d2d5 gsm: updated to 1.0.18
1.0.18:
Remove the MacOS "quarantine" files that I didn't know I'd shipped.
Remove some trailing spaces.
Bump up the patchlevel in inc/gsm.h (I'd forgotten that in release 17.)

1.0.17:
New email addresses in the README.
Avoid left-shifting signed integers.
Don't print longwords using %d or %ld, cast them to (long) first.
Don't compare longwords as longs in addtest, we only care for the
        lower 32 bits. (The math works, but the test failed.)

1.0.16:
New email addresses in the manual pages (patch 16)
Removed a stray .orig file (in patch 15)
2019-06-15 08:41:30 +00:00

207 lines
5 KiB
Text

$NetBSD: patch-Makefile,v 1.1 2019/06/15 08:41:30 adam Exp $
Do not overwrite compiler flags.
Use proper installation tools and paths.
--- Makefile.orig 2018-05-06 02:07:28.000000000 +0000
+++ Makefile
@@ -43,7 +43,6 @@ WAV49 = -DWAV49
# CC = /usr/lang/acc
# CCFLAGS = -c -O
-CC = gcc -ansi -pedantic
CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1 -Wall -Wno-comment
LD = $(CC)
@@ -71,7 +70,6 @@ LD = $(CC)
# Leave INSTALL_ROOT empty (or just don't execute "make install") to
# not install gsm and toast outside of this directory.
-INSTALL_ROOT =
# Where do you want to install the gsm library, header file, and manpages?
#
@@ -80,8 +78,8 @@ INSTALL_ROOT =
GSM_INSTALL_ROOT = $(INSTALL_ROOT)
GSM_INSTALL_LIB = $(GSM_INSTALL_ROOT)/lib
-GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/inc
-GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3
+GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/include
+GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/${PKGMANDIR}/man3
# Where do you want to install the toast binaries and their manpage?
@@ -91,13 +89,14 @@ GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/ma
TOAST_INSTALL_ROOT = $(INSTALL_ROOT)
TOAST_INSTALL_BIN = $(TOAST_INSTALL_ROOT)/bin
-TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/man/man1
+TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/${PKGMANDIR}/man1
# Other tools
SHELL = /bin/sh
-LN = ln
+LN = ln -s
BASENAME = basename
+DIRNAME = dirname
AR = ar
ARFLAGS = cr
RMFLAGS =
@@ -114,7 +113,6 @@ RANLIB = ranlib
# Local Directories
-ROOT = .
ADDTST = $(ROOT)/add-test
TST = $(ROOT)/tst
MAN = $(ROOT)/man
@@ -129,7 +127,7 @@ INC = $(ROOT)/inc
# 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)
@@ -139,7 +137,7 @@ LFLAGS = $(LDFLAGS) $(LDINC)
# Targets
-LIBGSM = $(LIB)/libgsm.a
+LIBGSM = $(LIB)/libgsm.la
TOAST = $(BIN)/toast
UNTOAST = $(BIN)/untoast
@@ -257,7 +255,7 @@ STUFF = ChangeLog \
# Install targets
GSM_INSTALL_TARGETS = \
- $(GSM_INSTALL_LIB)/libgsm.a \
+ $(GSM_INSTALL_LIB)/libgsm.la \
$(GSM_INSTALL_INC)/gsm.h \
$(GSM_INSTALL_MAN)/gsm.3 \
$(GSM_INSTALL_MAN)/gsm_explode.3 \
@@ -273,10 +271,15 @@ TOAST_INSTALL_TARGETS = \
# Default rules
+.SUFFIXES: .o .lo
+
.c.o:
$(CC) $(CFLAGS) $?
@-mv `$(BASENAME) $@` $@ > /dev/null 2>&1
+.c.lo:
+ cd `${DIRNAME} $@` && ${LIBTOOL} --mode=compile ${CC} ${CFLAGS} $?
+
# Target rules
all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
@@ -299,16 +302,20 @@ install: toastinstall gsminstall
# The basic API: libgsm
-$(LIBGSM): $(LIB) $(GSM_OBJECTS)
+$(LIBGSM): $(LIB) $(GSM_OBJECTS:.o=.lo)
-rm $(RMFLAGS) $(LIBGSM)
- $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS)
- $(RANLIB) $(LIBGSM)
+ cd $(LIB) && \
+ $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o `$(BASENAME) $@` \
+ $(GSM_OBJECTS:.o=.lo) \
+ -rpath $(PREFIX)/lib -version-info 1:12
# Toast, Untoast and Tcat -- the compress-like frontends to gsm.
$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSM)
- $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB)
+ cd $(BIN) && \
+ $(LIBTOOL) --mode=link $(LD) $(LFLAGS) -o `$(BASENAME) $@` \
+ $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB)
$(UNTOAST): $(BIN) $(TOAST)
-rm $(RMFLAGS) $(UNTOAST)
@@ -332,12 +339,12 @@ $(LIB):
gsminstall:
-if [ x"$(GSM_INSTALL_ROOT)" != x ] ; then \
- make $(GSM_INSTALL_TARGETS) ; \
+ $(MAKE) $(GSM_INSTALL_TARGETS) ; \
fi
toastinstall:
-if [ x"$(TOAST_INSTALL_ROOT)" != x ]; then \
- make $(TOAST_INSTALL_TARGETS); \
+ $(MAKE) $(TOAST_INSTALL_TARGETS); \
fi
gsmuninstall:
@@ -351,52 +358,34 @@ toastuninstall:
fi
$(TOAST_INSTALL_BIN)/toast: $(TOAST)
- -rm $@
- cp $(TOAST) $@
- chmod 755 $@
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_PROGRAM} $? $(TOAST_INSTALL_BIN)
$(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast
- -rm $@
- ln $? $@
+ ${LN} -f toast $@
$(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast
- -rm $@
- ln $? $@
+ ${LN} -f toast $@
$(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_MAN} $? $(TOAST_INSTALL_MAN)
$(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_MAN} $? $(GSM_INSTALL_MAN)
$(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_MAN} $? $(GSM_INSTALL_MAN)
$(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_MAN} $? $(GSM_INSTALL_MAN)
$(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_MAN} $? $(GSM_INSTALL_MAN)
$(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h
- -rm $@
- cp $? $@
- chmod 444 $@
-
-$(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM)
- -rm $@
- cp $? $@
- chmod 444 $@
+ ${BSD_INSTALL_DATA} $? $(GSM_INSTALL_INC)
+
+$(GSM_INSTALL_LIB)/libgsm.la: $(LIBGSM)
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_LIB} $? $(GSM_INSTALL_LIB)
# Distribution