--- Makefile 2008-08-06 20:20:51.000000000 +0200 +++ Makefile.oden 2008-12-10 17:44:22.000000000 +0100 @@ -37,17 +37,18 @@ # SONAME version; should be changed on every ABI change # please don't change it needlessly; it's perfectly fine to have a SONAME # of 1.2 and a version of 1.4.x -SONAME:=1.4 +MAJOR:=1 +MINOR:=4 STATIC_LIBRARY=libpri.a -DYNAMIC_LIBRARY:=libpri.so.$(SONAME) +DYNAMIC_LIBRARY:=libpri.so.$(MAJOR).$(MINOR) STATIC_OBJS=copy_string.o pri.o q921.o prisched.o q931.o pri_facility.o version.o DYNAMIC_OBJS=copy_string.lo pri.lo q921.lo prisched.lo q931.lo pri_facility.lo version.lo -CFLAGS=-Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -g -fPIC $(ALERTING) $(LIBPRI_COUNTERS) +CFLAGS=$(RPM_OPT_FLAGS) $(ALERTING) $(LIBPRI_COUNTERS) -fPIC INSTALL_PREFIX=$(DESTDIR) INSTALL_BASE=/usr libdir?=$(INSTALL_BASE)/lib -SOFLAGS:=-Wl,-h$(DYNAMIC_LIBRARY) +SOFLAGS:=-Wl,-soname=libpri.so.$(MAJOR) LDCONFIG = /sbin/ldconfig ifneq (,$(findstring X$(OSARCH)X, XLinuxX XGNU/kFreeBSDX)) LDCONFIG_FLAGS=-n @@ -96,41 +97,42 @@ echo "Not under version control"; \ fi -install: $(STATIC_LIBRARY) $(DYNAMIC_LIBRARY) +install: mkdir -p $(INSTALL_PREFIX)$(libdir) mkdir -p $(INSTALL_PREFIX)$(INSTALL_BASE)/include ifneq (${OSARCH},SunOS) install -m 644 libpri.h $(INSTALL_PREFIX)$(INSTALL_BASE)/include install -m 755 $(DYNAMIC_LIBRARY) $(INSTALL_PREFIX)$(libdir) if [ -x /usr/sbin/sestatus ] && ( /usr/sbin/sestatus | grep "SELinux status:" | grep -q "enabled"); then /sbin/restorecon -v $(INSTALL_PREFIX)$(libdir)/$(DYNAMIC_LIBRARY); fi - ( cd $(INSTALL_PREFIX)$(libdir) ; ln -sf libpri.so.$(SONAME) libpri.so) + ( cd $(INSTALL_PREFIX)$(libdir) ; ln -snf $(DYNAMIC_LIBRARY) libpri.so.$(MAJOR) ; ln -snf libpri.so.$(MAJOR) libpri.so; ) install -m 644 $(STATIC_LIBRARY) $(INSTALL_PREFIX)$(libdir) if test $$(id -u) = 0; then $(LDCONFIG) $(LDCONFIG_FLAGS) $(INSTALL_PREFIX)$(libdir); fi else install -f $(INSTALL_PREFIX)$(INSTALL_BASE)/include -m 644 libpri.h install -f $(INSTALL_PREFIX)$(libdir) -m 755 $(DYNAMIC_LIBRARY) - ( cd $(INSTALL_PREFIX)$(libdir) ; ln -sf libpri.so.$(SONAME) libpri.so) + ( cd $(INSTALL_PREFIX)$(libdir) ; ln -snf $(DYNAMIC_LIBRARY) libpri.so.$(MAJOR) ; ln -snf libpri.so.$(MAJOR) libpri.so) install -f $(INSTALL_PREFIX)$(libdir) -m 644 $(STATIC_LIBRARY) endif uninstall: @echo "Removing Libpri" - rm -f $(INSTALL_PREFIX)$(libdir)/libpri.so.$(SONAME) + rm -f $(INSTALL_PREFIX)$(libdir)/$(DYNAMIC_LIBRARY) + rm -f $(INSTALL_PREFIX)$(libdir)/libpri.so.$(MAJOR) rm -f $(INSTALL_PREFIX)$(libdir)/libpri.so rm -f $(INSTALL_PREFIX)$(libdir)/libpri.a rm -f $(INSTALL_PREFIX)$(INSTALL_BASE)/include/libpri.h pritest: pritest.o - $(CC) -o pritest pritest.o -L. -lpri -lzap $(CFLAGS) + $(CC) $(CFLAGS) -o pritest pritest.o -L. -lpri -lzap -lm testprilib.o: testprilib.c $(CC) $(CFLAGS) -D_REENTRANT -D_GNU_SOURCE -o $@ -c $< testprilib: testprilib.o - $(CC) -o testprilib testprilib.o -L. -lpri -lpthread $(CFLAGS) + $(CC) $(CFLAGS) -o testprilib testprilib.o -L. -lpri -lpthread pridump: pridump.o - $(CC) -o pridump pridump.o -L. -lpri $(CFLAGS) + $(CC) $(CFLAGS) -o pridump pridump.o -L. -lpri MAKE_DEPS= -MD -MT $@ -MF .$(subst /,_,$@).d -MP @@ -145,9 +147,9 @@ ranlib $(STATIC_LIBRARY) $(DYNAMIC_LIBRARY): $(DYNAMIC_OBJS) - $(CC) -shared $(SOFLAGS) -o $@ $(DYNAMIC_OBJS) - $(LDCONFIG) $(LDCONFIG_FLAGS) . - ln -sf libpri.so.$(SONAME) libpri.so + $(CC) $(CFLAGS) -shared $(SOFLAGS) -o $@ $(DYNAMIC_OBJS) + ln -snf $(DYNAMIC_LIBRARY) libpri.so.$(MAJOR) + ln -snf libpri.so.$(MAJOR) libpri.so version.c: FORCE @build_tools/make_version_c > $@.tmp @@ -155,7 +157,7 @@ @rm -f $@.tmp clean: - rm -f *.o *.so *.lo *.so.$(SONAME) + rm -f *.o *.so *.lo *.so.$(MAJOR) rm -f testprilib $(STATIC_LIBRARY) $(DYNAMIC_LIBRARY) rm -f pritest pridump rm -f .*.d