2016-03-29 12:51:38 +00:00
|
|
|
#!/usr/bin/make -f
|
|
|
|
|
|
|
|
# Quoting Policy version 3.9.2.0, 2011-04-07 section 4.9:
|
|
|
|
|
|
|
|
# /start quote
|
|
|
|
# For some packages, notably ones where the same source tree is compiled in
|
|
|
|
# different ways to produce two binary packages, the build target does not make
|
|
|
|
# much sense. For these packages it is good enough to provide two (or more)
|
|
|
|
# targets (build-a and build-b or whatever) for each of the ways of building the
|
|
|
|
# package, and a build target that does nothing. The binary target will have to
|
|
|
|
# build the package in each of the possible ways and make the binary package out
|
|
|
|
# of each.
|
|
|
|
# ...
|
|
|
|
# When a package has a configuration and build routine which takes a long time,
|
|
|
|
# or when the makefiles are poorly designed, or when build needs to run clean
|
|
|
|
# first, it is a good idea to touch build when the build process is complete.
|
|
|
|
# This will ensure that if debian/rules build is run again it will not rebuild
|
|
|
|
# the whole program.
|
|
|
|
# /end quote
|
|
|
|
|
|
|
|
# Since that fits building I2P very well, we override the build target.
|
|
|
|
#
|
|
|
|
|
|
|
|
build:
|
|
|
|
@echo 'The build target is disabled. Use the appropriate binary target.'
|
|
|
|
|
2016-03-31 21:14:46 +00:00
|
|
|
export X_DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
|
|
|
|
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-$(X_DEB_HOST_ARCH)
|
2016-03-29 12:51:38 +00:00
|
|
|
I2P=$(CURDIR)/pkg-temp
|
|
|
|
ROUTERVERSION=$(CURDIR)/router/java/src/net/i2p/router/RouterVersion.java
|
|
|
|
export DEB_BUILD_HARDENING=1
|
|
|
|
|
|
|
|
# I2P's version will be displayed in the router console as "$I2PVERSION-$EXTRAPREFIX$DEBIANVERSION", eg. 0.8.12-0-deb1
|
|
|
|
#export EXTRAPREFIX := deb
|
|
|
|
export JAVA_HOME I2P
|
|
|
|
export DEBIANVERSION := $(shell dpkg-parsechangelog |awk -F' ' '/^Version:/{print $$2}' |sed 's/.*-\([.0-9A-Za-z~+]\{1,\}\)$$/\1/')
|
|
|
|
|
|
|
|
%:
|
|
|
|
dh $@
|
|
|
|
|
|
|
|
clean: createcopyright
|
|
|
|
|
|
|
|
override_dh_auto_clean:
|
|
|
|
-[ -r $(CURDIR)/debian/routerversion.java.bak ] && mv -f $(CURDIR)/debian/routerversion.java.bak $(ROUTERVERSION)
|
|
|
|
dh_auto_clean
|
|
|
|
ant distclean
|
|
|
|
find $(CURDIR)/core \( -name '*\.so' -o -name '*\.o' \) -exec rm -f {} \;
|
|
|
|
rm -rf $(CURDIR)/core/c/jcpuid/lib/
|
|
|
|
rm -f $(CURDIR)/installer/lib/wrapper/all/wrapper.jar
|
|
|
|
rm -rf $(CURDIR)/debian/python-i2p
|
2016-03-31 21:14:46 +00:00
|
|
|
rm -f $(CURDIR)/override.properties
|
2016-03-29 12:51:38 +00:00
|
|
|
debconf-updatepo
|
|
|
|
|
|
|
|
override_dh_auto_build:
|
|
|
|
|
|
|
|
override_dh_systemd_enable:
|
|
|
|
# We purposely do not set I2P to start at boot.
|
|
|
|
# This matches the behavior of the initscript
|
|
|
|
# and the setting RUN_DAEMON=false in /etc/default/i2p
|
|
|
|
|
|
|
|
binary-indep: build-indep
|
|
|
|
build-indep:
|
|
|
|
dh_prep
|
|
|
|
mkdir -p $(CURDIR)/installer/lib/wrapper/all
|
|
|
|
mkdir -p $(CURDIR)/installer/lib/launch4j/lib/
|
|
|
|
ln -sf /usr/share/java/commons-logging.jar $(CURDIR)/installer/lib/launch4j/lib/commons-logging.jar
|
|
|
|
ln -sf /usr/share/java/wrapper.jar $(CURDIR)/installer/lib/wrapper/all/wrapper.jar
|
|
|
|
if [ ! -e $(CURDIR)/debian/routerversion.java.bak ]; then \
|
|
|
|
cp $(ROUTERVERSION) $(CURDIR)/debian/routerversion.java.bak; \
|
|
|
|
fi
|
|
|
|
ifeq "$(findstring deb,$(shell grep 'deb' $(ROUTERVERSION)))" ""
|
|
|
|
sed -e "s/\(.*EXTRA\ =\ \)[^ ]*\"\(.*\)\"/\1\"\2-$$EXTRAPREFIX$$DEBIANVERSION\"/" < $(ROUTERVERSION) > $(ROUTERVERSION).tmp
|
|
|
|
mv -f $(ROUTERVERSION).tmp $(ROUTERVERSION)
|
|
|
|
else
|
|
|
|
@echo "Already found deb in version, not doing anything"
|
|
|
|
endif
|
2016-03-31 21:14:46 +00:00
|
|
|
# build options
|
|
|
|
@/bin/echo -e "javac.version=1.7" > $(CURDIR)/override.properties
|
|
|
|
@/bin/echo -e "javac.compilerargs=-bootclasspath $(JAVA_HOME)/jre/lib/rt.jar:$(JAVA_HOME)/jre/lib/jce.jar" >> $(CURDIR)/override.properties
|
|
|
|
@/bin/echo -e "javac.compilerargs7=-bootclasspath $(JAVA_HOME)/jre/lib/rt.jar:$(JAVA_HOME)/jre/lib/jce.jar" >> $(CURDIR)/override.properties
|
|
|
|
@/bin/echo -e "build.built-by=debian" >> $(CURDIR)/override.properties
|
2016-03-29 12:51:38 +00:00
|
|
|
TZ=UTC JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 ant preppkg-unix javadoc
|
|
|
|
echo router.updateDisabled=true > $(I2P)/router.config
|
|
|
|
mv $(I2P)/runplain.sh $(I2P)/i2prouter-nowrapper
|
|
|
|
|
|
|
|
binary-arch: build-arch
|
|
|
|
build-arch:
|
|
|
|
# build jbigi
|
|
|
|
cd $(CURDIR)/core/c/jbigi && ./build_jbigi.sh dynamic
|
|
|
|
# build jcpuid
|
|
|
|
cd $(CURDIR)/core/c/jcpuid && ./build.sh
|
|
|
|
|
|
|
|
binary: binary-arch binary-indep
|
|
|
|
|
|
|
|
createcopyright:
|
|
|
|
@echo " *** Creating debian/copyright*** "
|
|
|
|
@rm -f $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "This package was Debianized by kytv <killyourtv@i2pmail.org>" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "Sun, 23 Jan 2011 20:26:51 +0000" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "\nIt was downloaded from https://geti2p.net" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "\nI2P is tracked upstream using the Monotone VCS" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "Complete information on fetching the source with monotone can be found" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "at https://geti2p.net/newdevelopers#getting-the-i2p-code\n\n\n" >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/cat $(CURDIR)/LICENSE.txt >> $(CURDIR)/debian/copyright
|
|
|
|
@/bin/echo -e "\n\n The debian packaging has been released into the public domain." >> $(CURDIR)/debian/copyright
|
|
|
|
|
|
|
|
override_dh_compress:
|
|
|
|
dh_compress -X.xsl -X.xml
|
|
|
|
|
|
|
|
override_dh_install:
|
|
|
|
dh_install --list-missing
|
|
|
|
dh_apparmor --profile-name=system_i2p -pi2p
|
|
|
|
dh_apparmor --profile-name=usr.bin.i2prouter -pi2p
|
|
|
|
|
|
|
|
override_dh_installchangelogs:
|
|
|
|
dh_installchangelogs history.txt
|
|
|
|
|
|
|
|
override_dh_installdocs:
|
|
|
|
dh_installdocs -pi2p -plibjbigi-jni --link-doc=i2p-router
|
|
|
|
dh_installdocs --remaining-packages
|
|
|
|
|
|
|
|
override_dh_dhlibdeps:
|
|
|
|
dh_shlibdeps -llibjbigi-jni debian/libjbigi-jni/usr/lib/jni/*.so
|
|
|
|
|
|
|
|
#override_dh_installinit:
|
|
|
|
# dh_installinit -r
|
|
|
|
|
|
|
|
override_dh_builddeb:
|
|
|
|
dh_builddeb -- -Zxz
|
|
|
|
|
|
|
|
get-orig-source:
|
|
|
|
uscan --verbose --rename --destdir $(CURDIR)/.. --watchfile debian/watch --force-download
|