aboutsummaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules219
1 files changed, 91 insertions, 128 deletions
diff --git a/debian/rules b/debian/rules
index 86c8b5811..9bda99719 100755
--- a/debian/rules
+++ b/debian/rules
@@ -2,93 +2,108 @@
NULL =
-export CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
-export CFLAGS:=$(shell dpkg-buildflags --get CFLAGS)
-export CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS)
-export LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+DPKG_EXPORT_BUILDFLAGS = 1
+include /usr/share/dpkg/buildflags.mk
export LIBDIR = "/usr/lib/$(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)"
+export LIBEXECDIR = "$(LIBDIR)/nx/bin"
export INCLUDEDIR = "/usr/include/$(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)"
%:
- CONFIGURE="./configure --with-symbols --prefix=/usr --libdir=$(LIBDIR) --includedir=$(INCLUDEDIR)" dh $@ --with quilt
-
-# before build, we will remove unused code / bundled libraries (keep this in sync with roll-tarball.sh)
-UNUSED_FOLDERS = "debian/CODE-REDUCTION_CLEANUP-UNUSED"
-CLEANUP_FOLDERS = "debian/CODE-REDUCTION_CLEANUP-BRUTAL"
-UNNEEDED_BACKUPS = "debian/CODE-REDUCTION_CLEANUP-BACKUPFILES"
-PRESERVE_SYMLINKED_FILES = "debian/CODE-REDUCTION_PRESERVE-SYMLINKED"
-PRESERVE_NEEDED_FILES = "debian/CODE-REDUCTION_PRESERVE-NEEDED"
-PRESERVE_INCLUDED_FILES = "debian/CODE-REDUCTION_PRESERVE-INCLUDED"
+ CONFIGURE="./configure --disable-silent-rules \
+ --prefix=/usr \
+ --libdir=$(LIBDIR) \
+ --includedir=$(INCLUDEDIR) \
+ --libexecdir=$(LIBEXECDIR)" dh $@ --with quilt
override_dh_auto_clean:
rm -Rf nx-X11/.build-exports
dh_auto_clean
override_dh_clean:
- rm -f nx*/configure
- rm -f nx*/changelog
- rm -f doc/changelog
- rm -f nx-X11/programs/Xserver/hw/nxagent/changelog
- rm -f nx-X11/programs/nxauth/changelog
- if [ ! -f replace.sh ] && [ ! -h replace.sh ]; then ln -s debian/Makefile.replace.sh replace.sh; fi
- . ./replace.sh; set -x; ls debian/*.install.in | while read file; do rm -f $$(string_rep $$file .install.in .install); done
- rm -fR replace.sh Makefile bin etc/rgb VERSION.x2goagent etc/keystrokes.cfg etc/nxagent.keyboard etc/x2goagent.keyboard etc/x2goagent.options
- rm -f debian/nxagent.postinst
- rm -fR .preserve/
- if [ -f nxcomp/.VERSION.NoMachine ]; then mv nxcomp/.VERSION.NoMachine nxcomp/VERSION; fi
- dh_clean
-
-override_dh_installchangelog:
+ -rm nx-X11/lib/Makefile
+ -rm nx-X11/lib/src/Makefile
+ -rm nx-X11/lib/src/xkb/Makefile
+ -rm nx-X11/lib/src/util/Makefile
+ -rm nx-X11/lib/src/xcms/Makefile
+ -rm nx-X11/lib/src/xlibi18n/Makefile
+ -rm nx-X11/lib/modules/Makefile
+ -rm nx-X11/lib/modules/om/Makefile
+ -rm nx-X11/lib/modules/om/generic/Makefile
+ -rm nx-X11/lib/modules/im/Makefile
+ -rm nx-X11/lib/modules/im/ximcp/Makefile
+ -rm nx-X11/lib/modules/lc/Makefile
+ -rm nx-X11/lib/modules/lc/gen/Makefile
+ -rm nx-X11/lib/modules/lc/def/Makefile
+ -rm nx-X11/lib/modules/lc/Utf8/Makefile
+ -rm nx-X11/lib/include/Makefile
+ -rm nx-X11/config/Makefile
+ -rm nx-X11/config/cf/Makefile
+ -rm nx-X11/programs/Makefile
+ -rm nx-X11/programs/Xserver/Makefile
+ -rm nx-X11/programs/Xserver/os/Makefile
+ -rm nx-X11/programs/Xserver/damageext/Makefile
+ -rm nx-X11/programs/Xserver/miext/cw/Makefile
+ -rm nx-X11/programs/Xserver/miext/damage/Makefile
+ -rm nx-X11/programs/Xserver/xfixes/Makefile
+ -rm nx-X11/programs/Xserver/composite/Makefile
+ -rm nx-X11/programs/Xserver/Xi/Makefile
+ -rm nx-X11/programs/Xserver/render/Makefile
+ -rm nx-X11/programs/Xserver/randr/Makefile
+ -rm nx-X11/programs/Xserver/record/Makefile
+ -rm nx-X11/programs/Xserver/dix/Makefile
+ -rm nx-X11/programs/Xserver/xkb/Makefile
+ -rm nx-X11/programs/Xserver/hw/nxagent/Makefile
+ -rm nx-X11/programs/Xserver/hw/nxagent/compext/Makefile
+ -rm nx-X11/programs/Xserver/mi/Makefile
+ -rm nx-X11/programs/Xserver/fb/Makefile
+ -rm nx-X11/programs/Xserver/Xext/Makefile
+ -rm nx-X11/programs/Xserver/include/Makefile
+ -rm nx-X11/programs/Xserver/dbe/Makefile
+ -rm nx-X11/programs/Xserver/GL/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/main/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/X/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/array_cache/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/GLcore/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/math/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/swrast/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/shader/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/shader/slang/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/shader/slang/library/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/shader/grammar/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/tnl/Makefile
+ -rm nx-X11/programs/Xserver/GL/mesa/swrast_setup/Makefile
+ -rm nx-X11/programs/Xserver/GL/glx/Makefile
+ -rm nx-X11/include/Makefile
+ -rm nx-X11/include/GL/Makefile
+ -rm nx-X11/include/extensions/Makefile
+
+ -rm nx-X11/config/cf/date.def
+ -rm nx-X11/config/cf/nxversion.def
+ -rm nx-X11/xmakefile
- ### the doc/changelog file is the actual NX (redistributed) ChangeLog
- dh_installchangelog doc/changelog
+ dh_clean
override_dh_install:
- # handle builds for Debian squeeze (non multi-arch)
- . ./replace.sh; set -x; if [ -z "$(DEB_BUILD_MULTIARCH)" ]; then \
- find debian/*.install.in | while read file; do \
- cat $$file | sed -e 's#/\*/#/#g' > $$(string_rep $$file .install.in .install); \
- done; \
- else \
- find debian/*.install.in | while read file; do \
- cat $$file > $$(string_rep $$file .install.in .install); \
- done; \
- fi
-
- # remove static libs
- rm debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcomp.a
- rm debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcompshad.a
+ # strip static libs and remove .la files
+ rm debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcomp.la
+ strip --strip-debug --remove-section=.comment --remove-section=.note debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcomp.a
+ rm debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcompshad.la
+ strip --strip-debug --remove-section=.comment --remove-section=.note debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libXcompshad.a
+ rm debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libNX_X11.la
+ strip --strip-debug --remove-section=.comment --remove-section=.note debian/tmp/usr/lib/$(DEB_BUILD_MULTIARCH)/libNX_X11.a
# remove extras, GL, and other unneeded headers
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/GL/
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/bitmaps/
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XInput.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XK*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/*Xv*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xtrap*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/Print*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XRes*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/record*.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86vmode.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86vmstr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86misc.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dga1.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dgastr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dga.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86dga1str.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86mscstr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/dmxext.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/dmxproto.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/bigreqstr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xcmiscstr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XIproto.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86bigfstr.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/xf86bigfont.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/extensions/XI.h
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/fonts/
- rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx/X11/Xtrans/
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/GL/
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/extensions/XK*.h
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/extensions/*Xv*.h
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/extensions/XRes*.h
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/extensions/XIproto.h
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/extensions/XI.h
+ rm -R debian/tmp/usr/include/$(DEB_BUILD_MULTIARCH)/nx-X11/Xtrans/
dh_install --fail-missing
@@ -97,69 +112,17 @@ override_dh_auto_install:
override_dh_auto_build:
- # create copies of upstream changelogs so that names apply to Debian policy...
- cp -a nx-X11/CHANGELOG nx-X11/changelog
- cp -a nxcomp/CHANGELOG nxcomp/changelog
- if [ -f nxcomp/VERSION ]; then cp nxcomp/VERSION nxcomp/.VERSION.NoMachine; fi
- cp -a nxcompext/CHANGELOG nxcompext/changelog
- cp -a nxcompshad/CHANGELOG nxcompshad/changelog
- cp -a nx-X11/programs/Xserver/hw/nxagent/CHANGELOG nx-X11/programs/Xserver/hw/nxagent/changelog
- cp -a nx-X11/programs/nxauth/CHANGELOG nx-X11/programs/nxauth/changelog
- cp -a nxproxy/CHANGELOG nxproxy/changelog
- ln -s debian/Makefile.nx-libs Makefile
- ln -s debian/Makefile.replace.sh replace.sh
- ln -s debian/wrappers bin
- mkdir -p etc/
- ln -s ../debian/keystrokes.cfg etc/keystrokes.cfg
- ln -s ../debian/rgb etc/rgb
- ln -s ../debian/nxagent.keyboard etc/nxagent.keyboard
- ln -s ../debian/x2goagent.keyboard etc/x2goagent.keyboard
- ln -s ../debian/x2goagent.options etc/x2goagent.options
- mkdir -p doc/
- ln -s ../debian/changelog doc/changelog
- ln -sf debian/VERSION VERSION.x2goagent
- ln -sf ../debian/VERSION nxcomp/VERSION
-
- # let's prep the nxagent.postinst script with the value of the build systems's DEB_BUILD_MULTIARCH variable
- sed debian/nxagent.postinst.in -e 's/#DEB_BUILD_MULTIARCH#/$(DEB_BUILD_MULTIARCH)/' > debian/nxagent.postinst
-
- # make a copy of code to be preserved for build
- mkdir -p .preserve
- for path in `cat $(PRESERVE_SYMLINKED_FILES)` `cat $(PRESERVE_NEEDED_FILES)` `cat $(PRESERVE_INCLUDED_FILES)`; do \
- if echo $$path | grep -E "^#.*"; then continue; fi; \
- test -d $$path && mkdir -p .preserve/$$path || mkdir -p .preserve/$$(dirname $$path); \
- cp -av $$path .preserve/$$path; \
- done
-
- # remove unused code / bundled libraries (see at the top of the debian/rules file)
- # for the exact list of files and folders
- rm -Rf `cat $(UNUSED_FOLDERS)`
- rm -Rf `cat $(CLEANUP_FOLDERS)`
- rm -Rf `cat $(UNNEEDED_BACKUPS)`
-
- # copy to-be-preserved files back into code tree
- cp -av .preserve/* .
- rm -Rf .preserve/
-
- PREFIX=/usr dh_auto_build --parallel -- CDEBUGFLAGS="$(CPPFLAGS) $(CFLAGS)" LOCAL_LDFLAGS="$(LDFLAGS)" SHLIBGLOBALSFLAGS="$(LDFLAGS)" SHLIBDIR="$(LIBDIR)"
+ PREFIX=/usr dh_auto_build --parallel -- CDEBUGFLAGS="$(CPPFLAGS) $(CFLAGS)" LOCAL_LDFLAGS="$(LDFLAGS)" SHLIBGLOBALSFLAGS='$(filter-out -pie,$(LDFLAGS))'
override_dh_strip:
dh_strip -plibnx-x11-6 --dbg-package=libnx-x11-6-dbg
- dh_strip -plibnx-xau6 --dbg-package=libnx-xau6-dbg
- dh_strip -plibnx-xcomposite1 --dbg-package=libnx-xcomposite1-dbg
- dh_strip -plibnx-xdamage1 --dbg-package=libnx-xdamage1-dbg
- dh_strip -plibnx-xdmcp6 --dbg-package=libnx-xdmcp6-dbg
- dh_strip -plibnx-xext6 --dbg-package=libnx-xext6-dbg
- dh_strip -plibnx-xfixes3 --dbg-package=libnx-xfixes3-dbg
- dh_strip -plibnx-xinerama1 --dbg-package=libnx-xinerama1-dbg
- dh_strip -plibnx-xpm4 --dbg-package=libnx-xpm4-dbg
- dh_strip -plibnx-xrandr2 --dbg-package=libnx-xrandr2-dbg
- dh_strip -plibnx-xrender1 --dbg-package=libnx-xrender1-dbg
- dh_strip -plibnx-xtst6 --dbg-package=libnx-xtst6-dbg
dh_strip -plibxcomp3 --dbg-package=libxcomp3-dbg
dh_strip -plibxcompshad3 --dbg-package=libxcompshad3-dbg
- dh_strip -plibxcompext3 --dbg-package=libxcompext3-dbg
dh_strip -pnxagent --dbg-package=nxagent-dbg
dh_strip -pnxproxy --dbg-package=nxproxy-dbg
- dh_strip -pnxauth --dbg-package=nxauth-dbg
+override_dh_makeshlibs:
+ dh_makeshlibs -n
+
+get-orig-source:
+ uscan --noconf --force-download --rename --download-current-version --destdir=..