X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=debian%2Frules;h=fdd7b208d7ea55f0cd74475213e24d3b6aa0ff16;hb=3478a98fd7f071c2bfcb50e658bb69440ae4f3ec;hp=7df8041183e23ebb843411dc83d11233d0c943c6;hpb=f6f9cb971770fc0a3e81804e238b93d1b75c7ae3;p=mirror_smartmontools-debian.git diff --git a/debian/rules b/debian/rules index 7df8041..fdd7b20 100755 --- a/debian/rules +++ b/debian/rules @@ -5,11 +5,20 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 -# for dpatch -include /usr/share/dpatch/dpatch.make +export DEB_BUILD_HARDENING=1 +DEB_BUILD_ARCH_OS ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS) +DEB_BUILD_ARCH_CPU ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU) -CFLAGS = -fsigned-char -Wall +ifeq ($(DEB_HOST_ARCH_OS),linux) + CONFIGURE_ARGS += --with-selinux +endif + +ifeq ($(DEB_HOST_ARCH_OS),kfreebsd) + CFLAGS += -I/usr/include/freebsd +endif + +CFLAGS += -fsigned-char -Wall ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else @@ -21,38 +30,57 @@ else INSTALL_PROGRAM = install endif +PACKAGE = smartmontools +SRC_VERSION := $(shell dpkg-parsechangelog | sed -ne 's/^Version: \(.*\)-.*/\1/p'| cut -d':' -f2) +SVN_REVISION := $(shell echo $(SRC_VERSION) | awk -F"+" '{ print $$2 }' | sed 's/svn//' ) +TARBALL = $(PACKAGE)_$(SRC_VERSION).orig.tar.gz + +get-orig-source: + rm -rf get-orig-source $(TARBALL) + mkdir get-orig-source + svn export -r $(SVN_REVISION) https://smartmontools.svn.sourceforge.net/svnroot/smartmontools/trunk/smartmontools/ \ + get-orig-source/$(PACKAGE)-$(SRC_VERSION).orig + GZIP=--best tar czf $(TARBALL) -C get-orig-source $(PACKAGE)-$(SRC_VERSION).orig + rm -rf get-orig-source + echo " "$(TARBALL)" created; move it to the right destination to build the package" configure: configure-stamp -configure-stamp: patch-stamp +configure-stamp: dh_testdir ./autogen.sh - CFLAGS="${CFLAGS}" ./configure --prefix=/usr \ + CFLAGS="${CFLAGS}" CXXFLAGS="${CFLAGS}" ./configure --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ - --with-initscriptdir=/etc/init.d \ - --with-docdir=/usr/share/doc/smartmontools - + --with-initscriptdir=no \ + --with-docdir=/usr/share/doc/smartmontools \ + --enable-drivedb \ + --enable-savestates \ + --enable-attributelog \ + --with-savestates=/var/lib/smartmontools/smartd. \ + --with-attributelog=/var/lib/smartmontools/attrlog. \ + --with-exampledir=/usr/share/doc/smartmontools/examples/ \ + --with-drivedbdir=/var/lib/smartmontools/drivedb \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --with-smartdscriptdir=/usr/share/smartmontools \ + --with-smartdplugindir=/etc/smartmontools/smartd_warning.d + ${CONFIGURE_ARGS} touch configure-stamp - -build: build-stamp +build: build-arch build-indep +build-arch: build-stamp +build-indep: build-stamp build-stamp: configure-stamp dh_testdir - # Add here commands to compile the package. $(MAKE) - - #/usr/bin/docbook-to-man debian/smartmontools.sgml > smartmontools.1 - touch build-stamp -clean: unpatch +clean: dh_testdir dh_testroot # rm -f debian/logcheck.logcheck.ignore.* - # Add here commands to clean up after the build process. - -$(MAKE) distclean + [ ! -f Makefile ] || $(MAKE) distclean rm -f build-stamp configure-stamp \ Makefile.in examplescripts/Makefile.in aclocal.m4 configure dh_clean @@ -60,60 +88,44 @@ clean: unpatch install: build dh_testdir dh_testroot - dh_clean -k + dh_prep dh_installdirs - - $(MAKE) DESTDIR=$(CURDIR)/debian/smartmontools \ - INSTALL_PROGRAM="${INSTALL_PROGRAM}" install-sbinPROGRAMS - $(MAKE) DESTDIR=$(CURDIR)/debian/smartmontools \ - install-sysconfDATA - $(MAKE) DESTDIR=$(CURDIR)/debian/smartmontools \ - install-man - $(MAKE) DESTDIR=$(CURDIR)/debian/smartmontools \ - examplesdir='$$(docdir)/examples' \ - -C examplescripts/ install-examplesSCRIPTS install-examplesDATA - - install -D -m 755 debian/smartmontools-bug \ - $(CURDIR)/debian/smartmontools/usr/share/bug/smartmontools - install -D -m 755 debian/smartd-runner \ - $(CURDIR)/debian/smartmontools/usr/share/smartmontools/smartd-runner - install -D -m 755 debian/10mail \ - $(CURDIR)/debian/smartmontools/etc/smartmontools/run.d/10mail + $(MAKE) DESTDIR=$(CURDIR)/debian/smartmontools install # Build architecture-independent files here. -binary-indep: build install +binary-indep: # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot -# dh_installdebconf dh_installdocs dh_installexamples dh_installmenu dh_installlogrotate -# dh_installemacsen -# dh_installpam -# dh_installmime - dh_installinit + dh_install + dh_link + dh_systemd_enable + dh_installinit -- start 20 2 3 4 5 . stop 20 1 . + dh_systemd_enable dh_installcron - dh_installman + dh_installman debian/update-smart-drivedb.8 dh_installinfo -# dh_installlogcheck -# dh_undocumented - dh_installchangelogs CHANGELOG - dh_link + dh_lintian + dh_installchangelogs ChangeLog dh_strip dh_compress dh_fixperms -# dh_makeshlibs + chmod 755 $(CURDIR)/debian/smartmontools/etc/smartmontools/run.d/10mail \ + $(CURDIR)/debian/smartmontools/etc/smartmontools/run.d/10powersave-notify \ + $(CURDIR)/debian/smartmontools/usr/share/smartmontools/smartd-runner + dh_makeshlibs dh_installdeb -# dh_perl dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install configure +.PHONY: build clean binary-indep binary-arch binary install configure get-orig-source