#!/usr/bin/make -f # Debian package build rules file for twofish CFLAGS = $(shell dpkg-buildflags --get CFLAGS) -Wall -Wextra CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) -Wl,-z,now export CPPFLAGS CFLAGS LDFLAGS # if $DEB_BUILD_OPTIONS *doesn't* contain "noopt" ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif SONAME = libtwofish.so.0 ANAME = libtwofish.a ALINKING = -ltwofish # Install files to the following directory. DEVDESTDIR := debian/libtwofish-dev SODESTDIR := debian/libtwofish0 #SODESTDIR := $(DEVDESTDIR) build-arch: build-arch-stamp build-arch-stamp: dh_testdir # gcc -c -o twofish.o $(CPPFLAGS) $(CFLAGS) twofish.c ar clq $(ANAME) twofish.o ranlib $(ANAME) # Shared library -rm twofish.o gcc $(CPPFLAGS) $(CFLAGS) -fPIC -shared -Wl,-soname,$(SONAME) \ $(LDFLAGS) -Wl,-z,defs -lc -o $(SONAME) twofish.c # # test suite gcc -o twofishtest $(CPPFLAGS) $(CFLAGS) main.c $(LDFLAGS) -L. $(ALINKING) ./twofishtest touch build-arch-stamp clean: dh_testdir dh_testroot rm -f build-arch-stamp -rm -f twofish.o $(ANAME) twofishtest $(SONAME) dh_clean install: build dh_testdir dh_testroot dh_prep dh_installdirs install -m 755 -d $(DEVDESTDIR)/usr/lib install -m 644 $(ANAME) $(DEVDESTDIR)/usr/lib install -m 755 -d $(DEVDESTDIR)/usr/include install -m 644 twofish.h $(DEVDESTDIR)/usr/include install -m 755 -d $(SODESTDIR)/usr/lib install -m 644 $(SONAME) $(SODESTDIR)/usr/lib binary-arch: build install dh_testdir dh_testroot dh_installdocs dh_installman dh_installchangelogs dh_installexamples dh_install dh_link dh_strip dh_compress dh_fixperms dh_lintian dh_makeshlibs -V dh_installdeb -a dh_shlibdeps -a dh_gencontrol dh_md5sums dh_builddeb build-indep: # no architecture-indepdent files to build binary-indep: # no architecture-indepdent packages to build build: build-arch build-indep binary: binary-arch binary-indep .PHONY: build binary clean install build-arch build-indep binary-arch binary-indep