KasmVNC/contrib/packages/deb/ubuntu-trusty/debian/rules
2020-09-20 12:16:44 +00:00

285 lines
9.1 KiB
Makefile
Executable File

#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 by Joey Hess.
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
CFLAGS := $(shell dpkg-buildflags --get CFLAGS)
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
#DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
#DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
confflags += --build=$(DEB_HOST_GNU_TYPE)
else
confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
endif
SOURCE_NAME := tigervnc
SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g -O2 -fPIC
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
export CC = gcc
XCFLAGS = -Wall -Wunused -Wno-format-y2k -fPIE -fno-strict-aliasing
get-orig-source: $(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz
@
$(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz:
$(CURDIR)/get-orig-source.sh
configure: config-stamp
config-stamp:
dh_testdir
# Add here commands to configure the package.
(cd fltk-*;DSOFLAGS="$(filter-out -fPIE -pie,$(LDFLAGS))" \
./configure --enable-shared=no --enable-cairo --enable-cp936 \
--with-optim="$(CFLAGS) $(XCFLAGS)" --libdir=$(libdir);make)
cmake -G"Unix Makefiles" \
-DBUILD_STATIC=off \
-DCMAKE_INSTALL_PREFIX=/usr \
-DFLTK_LIBRARIES="$(CURDIR)/fltk-1.3.3/lib/libfltk.a;$(CURDIR)/fltk-1.3.3/lib/libfltk_images.a;-lpng" \
-DFLTK_INCLUDE_DIR=$(CURDIR)/fltk-1.3.3
(cd unix/xserver; \
export PIXMANINCDIR=/usr/include/pixman-1; \
autoreconf -fiv; \
patch -p1 -i ../../debian/patches/debian_libtool.patch; \
./configure --prefix=/usr \
--disable-silent-rules \
--disable-static \
--without-dtrace \
--disable-strict-compilation \
--disable-debug \
--disable-unit-tests \
--with-int10=x86emu \
--with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
--with-os-vendor="$(VENDOR)" \
--with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
--with-xkb-path=/usr/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--with-default-xkb-rules=evdev \
--disable-devel-docs \
--disable-install-libxf86config \
--enable-mitshm \
--enable-xres \
--disable-xcsecurity \
--disable-xcalibrate \
--disable-tslib \
--enable-dbe \
--disable-xf86bigfont \
--disable-dpms \
--disable-config-dbus \
--disable-config-hal \
--disable-config-udev \
--disable-xorg \
--disable-xquartz \
--disable-xwin \
--disable-xfake \
--disable-install-setuid \
--enable-gestures \
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
--enable-aiglx \
--enable-glx-tls \
--enable-registry \
--enable-composite \
--enable-record \
--enable-xv \
--enable-xvmc \
--enable-dga \
--enable-screensaver \
--enable-xdmcp \
--enable-xdm-auth-1 \
--enable-glx \
--disable-dri --enable-dri2 --enable-dri3 \
--enable-xinerama \
--enable-xf86vidmode \
--enable-xace \
--disable-selinux \
--enable-xfree86-utils \
--disable-dmx \
--disable-xvfb \
--disable-xnest \
--disable-kdrive \
--disable-xephyr \
--enable-xfbdev \
--with-sha1=libgcrypt \
--enable-xcsecurity \
--disable-docs \
--disable-selective-werror)
touch config-stamp
build-arch: config-stamp build-arch-stamp
build-arch-stamp:
dh_testdir
# Add here command to compile/build the package.
# Build first things.
# Build Xvnc
make LDFLAGS="-lpng"
(cd unix/xserver;make)
touch build-arch-stamp
build-indep: config-stamp build-indep-stamp
build-indep-stamp:
dh_testdir
# Add here command to compile/build the arch indep package.
# It's ok not to do anything here, if you don't need to build
# anything for this package.
#/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
(cd media;make)
(cd java;cmake -G"Unix Makefiles";make)
touch build-indep-stamp
build: build-arch build-indep
clean:
dh_testdir
dh_testroot
rm -f build-arch-stamp build-indep-stamp config-stamp
# Add here commands to clean up after the build process.
dh_clean
install: DH_OPTIONS=
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_prep
dh_installdirs
# Add here commands to install the package into debian/vnc.
# tigervncserver
make install DESTDIR=$(CURDIR)/debian/tigervncserver
(cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
$(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-* \
$(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
rm $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
rm $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer
rm $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1
install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
$(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
$(CURDIR)/debian/tigervncserver/etc/default/vncservers
# xtigervncviewer
(cd vncviewer; make install DESTDIR=$(CURDIR)/debian/xtigervncviewer)
# Install desktop stuff
mv $(CURDIR)/debian/xtigervncviewer/usr/bin/vncviewer \
$(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
mv $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/vncviewer.1 \
$(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
# tigervnc-java
mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
(cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
#dh_movefiles
# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
binary-indep-keep:
dh_testdir -i
dh_testroot -i
# dh_installdebconf -i
dh_install
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
# dh_installlogrotate -i
# dh_installemacsen -i
# dh_installpam -i
# dh_installmime -i
# dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
# dh_undocumented -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
# dh_installdebconf -a
dh_installdocs -a
# dh_installexamples -a
dh_installmenu -a
# dh_installlogrotate -a
# dh_installemacsen -a
# dh_installpam -a
# dh_installmime -a
dh_install
dh_installinit -a
# dh_installcron -a
dh_installman -a
dh_installinfo -a
# dh_undocumented -a
dh_installchangelogs -a
# Remove empty directories
dh_strip -a
dh_link -a
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install get-orig-source