rules revision 8dae68786113603556a96d329c751a3367849f70
f743002678eb67b99bbc29fee116b65d9530fec0wrowe#!/usr/bin/make -f
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankg#
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrin# Copyright (C) 2006-2012 Oracle Corporation
e5d909f2b06bd880fb3675cd49363df981caa631trawick#
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener# This file is part of VirtualBox Open Source Edition (OSE), as
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener# available from http://www.virtualbox.org. This file is free software;
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener# you can redistribute it and/or modify it under the terms of the GNU
cb666b29f81df1d11d65002250153353568021fccovener# General Public License (GPL) as published by the Free Software
cb666b29f81df1d11d65002250153353568021fccovener# Foundation, in version 2 as it comes in the "COPYING" file of the
cb666b29f81df1d11d65002250153353568021fccovener# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
f58fcd9d79be417ef351cac4e4c0ab264c5521e0trawick# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
f58fcd9d79be417ef351cac4e4c0ab264c5521e0trawick#
f58fcd9d79be417ef351cac4e4c0ab264c5521e0trawick
f58fcd9d79be417ef351cac4e4c0ab264c5521e0trawick#export DH_VERBOSE=1
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covenerexport DH_COMPAT=4
1c2cab00d988fc48cbe59032cf76cc0bab20d6f7covener
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener# possible overrides:
45dffe6c346dd73571ccaead10295fc7d53b59a6covener# OSE=1 force VBOX_OSE
45dffe6c346dd73571ccaead10295fc7d53b59a6covener# NOPARALLEL=1 compile with -j1
45dffe6c346dd73571ccaead10295fc7d53b59a6covener# LINUX=<dir> compile vboxdrv against Linux found in <dir>
75a230a728338d84dcfe81edd375352f34de22d0covener# VERBOSE=1 verbose build
75a230a728338d84dcfe81edd375352f34de22d0covener# DEBUG=1 debug build
75a230a728338d84dcfe81edd375352f34de22d0covener# NOSUBVER=1 disable generation of the sub-version field (which is
3694b0116c5729804ed6a5ce119bd8efda116c7fcovener# either the subversion rev [if available] or the build date)
3694b0116c5729804ed6a5ce119bd8efda116c7fcovener# NODOCS=1 don't build docs, use precompiled UserManual.pdf and
3694b0116c5729804ed6a5ce119bd8efda116c7fcovener# VirtualBox.chm from $HOME
3694b0116c5729804ed6a5ce119bd8efda116c7fcovener# NOMODS=1 don't build any module
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener# NOQT=1 don't build the Qt GUI
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener# EFI=1 include the EFI binary from prebuild
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener# HEADLESS=1 build the headless version
63a5ea80bddcc84a462e40f402b4f330e0e05411covener# VNC=1 build VNC code
63a5ea80bddcc84a462e40f402b4f330e0e05411covener# NOWEBSVC=1 don't build the webservice API, default for OSE
63a5ea80bddcc84a462e40f402b4f330e0e05411covener# STAGEDISO=<path> don't build the VBoxAdditions, use the precompiled .iso
63a5ea80bddcc84a462e40f402b4f330e0e05411covener# PKGDIR=<path> where to store the final package(s)
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrin# BLEEDING_EDGE=xyz
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrin
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrinpackage := virtualbox
f502dd154eaf60ccf6a993e83c490d52cd0a385eminfrinverpkg := virtualbox-ose
f502dd154eaf60ccf6a993e83c490d52cd0a385eminfrincurrent := $(shell pwd)
f502dd154eaf60ccf6a993e83c490d52cd0a385eminfrinvboxroot := $(shell pwd)
65a4e663b82f8bce28ac22ab2edfd7502de36998sfpkgdir := $(if $(PKGDIR),$(PKGDIR),$(shell cd ..; pwd))
65a4e663b82f8bce28ac22ab2edfd7502de36998sfbuilddir := $(current)/debian/builddir
65a4e663b82f8bce28ac22ab2edfd7502de36998sfmoddir := $(current)/debian/modules
65a4e663b82f8bce28ac22ab2edfd7502de36998sfprefix := $(current)/debian/$(verpkg)
c7de1955eb0eaeabf7042902476397692672d549sfarch := $(shell dpkg --print-architecture)
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrinverfile := $(builddir)/version-generated.mk
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrinose := $(if $(OSE),1,$(if $(wildcard $(vboxroot)/src/VBox/RDP/server),,1))
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrinsvnrev := 0
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrinNOMODS ?= $(ose)
a77a7d850e4496179e1e0f45d5152865c899d421covenerNOQT ?= $(HEADLESS)
a77a7d850e4496179e1e0f45d5152865c899d421covenerNOWEBSVC ?= $(ose)
92108a6c4fd7ca6e9acc94d2485920436763e491sfNOWINE := $(if $(NODOCS),$(if $(STAGEDISO),1,),)$(ose)
df6d5653669f1514b4449aaba99cb950c0013e5fcovener
df6d5653669f1514b4449aaba99cb950c0013e5fcovenerifneq ($(wildcard $(verfile)),)
df6d5653669f1514b4449aaba99cb950c0013e5fcovenerinclude $(verfile)
509622419be000045d461ef38fb97df778fdf81djailletcver := $(VBOX_VERSION_STRING)
509622419be000045d461ef38fb97df778fdf81djailletcarchdir := $(prefix)/opt/VirtualBox-$(ver)
509622419be000045d461ef38fb97df778fdf81djailletcendif
509622419be000045d461ef38fb97df778fdf81djailletc
1de839c61281d58dc75715c1ae06b4b00764c4efjortonifneq ($(STAGEDISO),)
1de839c61281d58dc75715c1ae06b4b00764c4efjorton ifeq ($(wildcard $(STAGEDISO)/VBoxGuestAdditions.iso),)
1de839c61281d58dc75715c1ae06b4b00764c4efjorton $(error STAGEDISO='$(STAGEDISO)/VBoxGuestAdditions.iso' not found)
2e1a0fb12bdf1c20064ffe900a8f44979ec946fcminfrin endif
2e1a0fb12bdf1c20064ffe900a8f44979ec946fcminfrinendif
2e1a0fb12bdf1c20064ffe900a8f44979ec946fcminfrin
2e1a0fb12bdf1c20064ffe900a8f44979ec946fcminfrindebrel := $(if $(shell which lsb_release),_$(shell lsb_release -si)_$(shell lsb_release -sc),unknown)
441d366a564bc6faa7c1eaffbacf8c4f37862199minfrin
441d366a564bc6faa7c1eaffbacf8c4f37862199minfrin# shipping Linux kernel modules with bleeding-edge releases doesn't make sense
441d366a564bc6faa7c1eaffbacf8c4f37862199minfrininstmod := $(if $(filter _Ubuntu_lucid _Ubuntu_maverick _Ubuntu_natty _Ubuntu_oneiric _Debian_sid,$(debrel)),,1)
441d366a564bc6faa7c1eaffbacf8c4f37862199minfrin
441d366a564bc6faa7c1eaffbacf8c4f37862199minfrin# Location of custom built Qt libraries (see below)
0b9de55d178312ec929dbe417dd61199b269991djailletcqtstdc6 := /home/vbox/Qt-4.7.4-stdc++6-$(arch)
0b9de55d178312ec929dbe417dd61199b269991djailletc
0b9de55d178312ec929dbe417dd61199b269991djailletccfg_flags := $(if $(NOQT),--disable-qt,) \
0b9de55d178312ec929dbe417dd61199b269991djailletc $(if $(filter _Ubuntu_hardy _Debian_lenny,$(debrel)),--with-qt4-dir=$(qtstdc6)) \
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin $(if $(ose),--ose,) $(if $(LINUX),--with-linux=$(LINUX),) \
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin $(if $(HEADLESS),--build-headless,) \
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin $(if $(DEBUG),--build-debug,) \
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin $(if $(NOWINE),,--setup-wine) \
9e0d78337da0ce66247fc3254b9d5be262cbcea8minfrin $(if $(NOWEBSVC),,--enable-webservice) \
9e0d78337da0ce66247fc3254b9d5be262cbcea8minfrin $(if $(VNC),--enable-vnc,) \
9e0d78337da0ce66247fc3254b9d5be262cbcea8minfrin --disable-extpack
2ae6440d9c0beacb1b2a9726d80b755a8a4a851bjailletc
2ae6440d9c0beacb1b2a9726d80b755a8a4a851bjailletcbld_flags := AUTOCFG=$(current)/debian/AutoConfig.kmk \
2ae6440d9c0beacb1b2a9726d80b755a8a4a851bjailletc LOCALCFG=$(current)/debian/LocalConfig.kmk \
2ae6440d9c0beacb1b2a9726d80b755a8a4a851bjailletc PATH_OUT=$(builddir) \
2f073ef2a21b1725addef84f318a2b11541e912aminfrin VBOX_WITHOUT_EXTPACK_PUEL_PACKING=1 \
2f073ef2a21b1725addef84f318a2b11541e912aminfrin VBOX_WITHOUT_EXTPACK_VNC_PACKING=1 \
2f073ef2a21b1725addef84f318a2b11541e912aminfrin VBOX_DO_STRIP= \
2f073ef2a21b1725addef84f318a2b11541e912aminfrin VBOX_DO_STRIP_MODULES= \
a511a29faf2ff7ead3b67680154a624effb31aafminfrin VBOX_WITH_MULTIVERSION_PYTHON= \
a511a29faf2ff7ead3b67680154a624effb31aafminfrin VBOX_PATH_PACKAGE_DOCS="\"/usr/share/doc/$(verpkg)\"" \
a511a29faf2ff7ead3b67680154a624effb31aafminfrin $(if $(ose),,VBOX_WITH_DOCS_CHM=1) \
a511a29faf2ff7ead3b67680154a624effb31aafminfrin VBOX_SVN_REV=$(svnrev) \
a511a29faf2ff7ead3b67680154a624effb31aafminfrin $(if $(NODOCS),VBOX_WITH_DOCS= ,) \
a7584fbbf39ae6a78586ed038d80c31b14ce5461minfrin $(if $(VERBOSE),--print-directory KBUILD_VERBOSE=2,--no-print-directory) \
a7584fbbf39ae6a78586ed038d80c31b14ce5461minfrin $(if $(STAGEDISO),VBOX_WITHOUT_ADDITIONS=1,) \
a7584fbbf39ae6a78586ed038d80c31b14ce5461minfrin $(if $(BLEEDING_EDGE),VBOX_BLEEDING_EDGE=$(BLEEDING_EDGE),) \
a7584fbbf39ae6a78586ed038d80c31b14ce5461minfrin $(if $(filter _Ubuntu_hardy,$(debrel)),,VBOX_WITH_SYSFS_BY_DEFAULT=1)
9ea14ade0d235bec11e6c221b888a6630a0be849covener
9ea14ade0d235bec11e6c221b888a6630a0be849covenerconfigure: debian/configure-stamp
9ea14ade0d235bec11e6c221b888a6630a0be849covenerdebian/configure-stamp:
4860eae0821bbdf3e0da78be7b4057ebed5d86e4minfrin dh_testdir
4860eae0821bbdf3e0da78be7b4057ebed5d86e4minfrin cd $(vboxroot) && ./configure --odir=$(current)/debian $(cfg_flags)
4860eae0821bbdf3e0da78be7b4057ebed5d86e4minfrin touch debian/configure-stamp
5b6a4b0e8d6d52394b68b51e0fa439d0eee16e37minfrin
5b6a4b0e8d6d52394b68b51e0fa439d0eee16e37minfrinbuild: debian/configure-stamp debian/build-stamp
5b6a4b0e8d6d52394b68b51e0fa439d0eee16e37minfrindebian/build-stamp $(verfile):
5b6a4b0e8d6d52394b68b51e0fa439d0eee16e37minfrin dh_testdir
2344a0c1817b88b6df61fc4ed0c6af66bb93ee6bjim . debian/env.sh && kmk -C $(vboxroot) $(bld_flags) $(if $(NOPARALLEL),-j1,) all
2344a0c1817b88b6df61fc4ed0c6af66bb93ee6bjim $(if $(NODOCS),cp $(vboxroot)/prebuild/UserManual*.pdf $(builddir)/bin,)
2344a0c1817b88b6df61fc4ed0c6af66bb93ee6bjim $(if $(NODOCS),cp $(vboxroot)/prebuild/VirtualBox*.chm $(builddir)/bin,)
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin $(if $(EFI),cp $(vboxroot)/prebuild/VBoxEFI32.fd $(builddir)/bin,)
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin $(if $(EFI),cp $(vboxroot)/prebuild/VBoxEFI64.fd $(builddir)/bin,)
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin mkdir -p $(builddir)/bin/additions
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin $(if $(STAGEDISO),cp $(STAGEDISO)/VBoxGuestAdditions.iso $(builddir)/bin/additions,)
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin . debian/env.sh && kmk -C $(vboxroot) $(bld_flags) \
bbb08feeeef547b0908b16df6cbbb65da656b86fminfrin VBOX_NO_LINUX_RUN_INSTALLER=1 \
bbb08feeeef547b0908b16df6cbbb65da656b86fminfrin VBOX_LNX_ADD_ARCHIVE.x86=$(builddir)/bin/additions/VBoxGuestAdditions-x86-r$(svnrev).tar.bz2 \
bbb08feeeef547b0908b16df6cbbb65da656b86fminfrin VBOX_LNX_ADD_ARCHIVE.amd64=$(builddir)/bin/additions/VBoxGuestAdditions-amd64-r$(svnrev).tar.bz2 \
bbb08feeeef547b0908b16df6cbbb65da656b86fminfrin VBOX_PATH_ADDITIONS.linux.x86=$(builddir)/bin/additions \
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrin VBOX_PATH_ADDITIONS.linux.amd64=$(builddir)/bin/additions \
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrin packing
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrin touch debian/build-stamp
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrin
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrin# Build modules for every kernel we find in /lib/modules/*
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrinmodules: debian/build-stamp debian/modules-stamp
eee20257a5ee9228f4aecdf3d3ca68fd0683ff07minfrindebian/modules-stamp: debian/build-stamp
decb536ebd4b7b94c7450c2e1daa491943135abdminfrin rm -rf $(moddir)
decb536ebd4b7b94c7450c2e1daa491943135abdminfrin mkdir $(moddir)
decb536ebd4b7b94c7450c2e1daa491943135abdminfrin make -C $(builddir)/bin/src/vboxdrv clean
decb536ebd4b7b94c7450c2e1daa491943135abdminfrin for d in $(wildcard /lib/modules/*); do \
2d2c5cedd0559093c6e88bd92702e369ef949336minfrin if [ -L $$d/build ]; then \
2d2c5cedd0559093c6e88bd92702e369ef949336minfrin make -C $(builddir)/bin/src/vboxdrv KERN_DIR=$$d/build MODULE_DIR=$$d clean && \
2d2c5cedd0559093c6e88bd92702e369ef949336minfrin make -j4 -C $(builddir)/bin/src/vboxdrv KBUILD_VERBOSE= KERN_DIR=$$d/build MODULE_DIR=$$d all \
2d2c5cedd0559093c6e88bd92702e369ef949336minfrin $(if $(instmod),&& install -D -m 0644 -g 0 -o 0 \
2d2c5cedd0559093c6e88bd92702e369ef949336minfrin $(builddir)/bin/src/vboxdrv/vboxdrv.ko $(moddir)/$$(basename $$d)/vboxdrv.ko); \
2b82678319a66fd9caad8827ca9b38d2412a5abdminfrin make -C $(builddir)/bin/src/vboxnetflt KERN_DIR=$$d/build MODULE_DIR=$$d clean && \
2b82678319a66fd9caad8827ca9b38d2412a5abdminfrin (cp $(builddir)/bin/src/vboxdrv/Module.symvers $(builddir)/bin/src/vboxnetflt || true) && \
c0da461d68518e8f89f4070a709ba1e56381247cminfrin make -j4 -C $(builddir)/bin/src/vboxnetflt KBUILD_VERBOSE= KERN_DIR=$$d/build MODULE_DIR=$$d all \
c0da461d68518e8f89f4070a709ba1e56381247cminfrin $(if $(instmod),&& install -D -m 0644 -g 0 -o 0 \
c0da461d68518e8f89f4070a709ba1e56381247cminfrin $(builddir)/bin/src/vboxnetflt/vboxnetflt.ko $(moddir)/$$(basename $$d)/vboxnetflt.ko); \
797fb211307298a8a6984c0edc0d8972b35eeac1minfrin make -C $(builddir)/bin/src/vboxnetadp KERN_DIR=$$d/build MODULE_DIR=$$d clean && \
797fb211307298a8a6984c0edc0d8972b35eeac1minfrin (cp $(builddir)/bin/src/vboxdrv/Module.symvers $(builddir)/bin/src/vboxnetadp || true) && \
797fb211307298a8a6984c0edc0d8972b35eeac1minfrin make -j4 -C $(builddir)/bin/src/vboxnetadp KBUILD_VERBOSE= KERN_DIR=$$d/build MODULE_DIR=$$d all \
797fb211307298a8a6984c0edc0d8972b35eeac1minfrin $(if $(instmod),&& install -D -m 0644 -g 0 -o 0 \
f27c90ecdefe634bd5f9c529d8658d3a3b441303minfrin $(builddir)/bin/src/vboxnetadp/vboxnetadp.ko $(moddir)/$$(basename $$d)/vboxnetadp.ko); \
f27c90ecdefe634bd5f9c529d8658d3a3b441303minfrin make -C $(builddir)/bin/src/vboxpci KERN_DIR=$$d/build MODULE_DIR=$$d clean && \
f27c90ecdefe634bd5f9c529d8658d3a3b441303minfrin (cp $(builddir)/bin/src/vboxdrv/Module.symvers $(builddir)/bin/src/vboxpci || true) && \
80cabec6752622e0db5421af61502bfda95715eaminfrin make -j4 -C $(builddir)/bin/src/vboxpci KBUILD_VERBOSE= KERN_DIR=$$d/build MODULE_DIR=$$d all \
80cabec6752622e0db5421af61502bfda95715eaminfrin $(if $(instmod),&& install -D -m 0644 -g 0 -o 0 \
80cabec6752622e0db5421af61502bfda95715eaminfrin $(builddir)/bin/src/vboxpci/vboxpci.ko $(moddir)/$$(basename $$d)/vboxpci.ko); \
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin fi; \
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin done
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin make -C $(builddir)/bin/src/vboxdrv clean
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin make -C $(builddir)/bin/src/vboxnetflt clean
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin make -C $(builddir)/bin/src/vboxnetadp clean
a2e1bbb77dd09c6a60f2dc18f831000e49add31eminfrin make -C $(builddir)/bin/src/vboxpci clean
deec48c67d4786bc77112ffbf3a4e70b931097edminfrin touch debian/modules-stamp
deec48c67d4786bc77112ffbf3a4e70b931097edminfrin
deec48c67d4786bc77112ffbf3a4e70b931097edminfrinclean:
deec48c67d4786bc77112ffbf3a4e70b931097edminfrin dh_testdir
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin dh_testroot
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin rm -f debian/preinst debian/postinst debian/prerm
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin rm -f debian/$(package).init debian/vboxdrv.init
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin rm -f debian/vboxballoonctrl-service.init debian/vboxautostart-service.init debian/vboxweb-service.init
40d570cf1420f497bcac59045d4ce477f0b5d891minfrin rm -f debian/AutoConfig.kmk debian/configure.log debian/env.sh
40d570cf1420f497bcac59045d4ce477f0b5d891minfrin rm -f debian/modules-stamp debian/build-stamp debian/configure-stamp
40d570cf1420f497bcac59045d4ce477f0b5d891minfrin rm -f debian/virtualbox-*.substvars debian/virtualbox*.debhelper
edab53cc0be707fa71968a95c696b19f0e6c4736minfrin rm -f debian/$(verpkg).mime
edab53cc0be707fa71968a95c696b19f0e6c4736minfrin rm -rf $(builddir) $(moddir)
edab53cc0be707fa71968a95c696b19f0e6c4736minfrin rm -rf debian/wine.*
806e9ba570ef48df4bfd8364e2f4d57381388a11minfrin dh_clean
806e9ba570ef48df4bfd8364e2f4d57381388a11minfrin
806e9ba570ef48df4bfd8364e2f4d57381388a11minfrinifeq ($(VBOX_VERSION_MAJOR),)
806e9ba570ef48df4bfd8364e2f4d57381388a11minfrinbinary binary-arch binary-indep: build $(verfile)
806e9ba570ef48df4bfd8364e2f4d57381388a11minfrin $(MAKE) -f debian/rules binary
a4273e3e513ce8f5e1311c320cbd334cc382950eminfrinelse
a4273e3e513ce8f5e1311c320cbd334cc382950eminfrin# Build architecture-dependent files here.
a4273e3e513ce8f5e1311c320cbd334cc382950eminfrinbinary binary-arch binary-indep: build $(if $(NOMODS),,modules)
d3e0a61e1bcc497f2efd7af41a5a9d77090ecc1cminfrin dh_testdir
a4273e3e513ce8f5e1311c320cbd334cc382950eminfrin dh_testroot
d3e0a61e1bcc497f2efd7af41a5a9d77090ecc1cminfrin dh_clean -k
d3e0a61e1bcc497f2efd7af41a5a9d77090ecc1cminfrin dh_installdirs
1aac1c71105133d669960501bdf2274e63561054minfrin tar -xjC $(prefix)/opt -f $(builddir)/bin/VirtualBox.tar.bz2
1aac1c71105133d669960501bdf2274e63561054minfrin install -d -g 0 -o 0 $(prefix)/usr/share/applications
1aac1c71105133d669960501bdf2274e63561054minfrin install -d -g 0 -o 0 $(prefix)/usr/lib
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin install -d -g 0 -o 0 $(prefix)/usr/bin
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin install -d -g 0 -o 0 $(prefix)/usr/lib/$(package)
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin install -d -g 0 -o 0 $(prefix)/usr/share/$(package)
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin install -d -g 0 -o 0 $(prefix)/usr/share/doc/$(verpkg)
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin $(if $(NOQT),,mv $(archdir)/virtualbox.desktop \
dbf5f584c62fe6030d81121fdddeb7588b78b867sf $(prefix)/usr/share/applications/virtualbox.desktop)
dbf5f584c62fe6030d81121fdddeb7588b78b867sf install -d -g 0 -o 0 $(prefix)/usr/share/pixmaps
15320dc646e41d3eb38736978500349c4d66dc0dsf install -d -g 0 -o 0 $(prefix)/usr/share/icons/hicolor
15320dc646e41d3eb38736978500349c4d66dc0dsf cp $(archdir)/icons/128x128/virtualbox.png \
691db92094897494d6c31326108da20088bc175etrawick $(prefix)/usr/share/pixmaps/virtualbox.png
691db92094897494d6c31326108da20088bc175etrawick cd $(archdir)/icons; for i in *; do \
691db92094897494d6c31326108da20088bc175etrawick if [ -f $$i/virtualbox.png ]; then \
92108a6c4fd7ca6e9acc94d2485920436763e491sf install -d -g 0 -o 0 $(prefix)/usr/share/icons/hicolor/$$i/apps; \
92108a6c4fd7ca6e9acc94d2485920436763e491sf mv $$i/virtualbox.png $(prefix)/usr/share/icons/hicolor/$$i/apps; \
684e0cfc200f66287a93bbd1708d1dd8a92a7eefcovener fi; \
684e0cfc200f66287a93bbd1708d1dd8a92a7eefcovener install -d -g 0 -o 0 $(prefix)/usr/share/icons/hicolor/$$i/mimetypes; \
684e0cfc200f66287a93bbd1708d1dd8a92a7eefcovener mv $$i/* $(prefix)/usr/share/icons/hicolor/$$i/mimetypes || true; \
5c43d2fb853f84497b5ece2d414ef9484aa87e5fsf rmdir $$i; \
05a5a9c3e16f21566e1b61f4bd68025ce1b741ccjoes done
05a5a9c3e16f21566e1b61f4bd68025ce1b741ccjoes rmdir $(archdir)/icons
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq install -d -g 0 -o 0 $(prefix)/usr/lib/$(package)/ExtensionPacks
26c5829347f6a355c00f1ba0301d575056b69536niq mv $(archdir)/virtualbox.xml debian/$(verpkg).sharedmimeinfo
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq install -d -g 0 -o 0 $(prefix)/usr/share/lintian/overrides
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq sed \
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq -e 's|%VERPKG%|$(verpkg)|g' \
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq debian/lintian-override.in > \
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq $(prefix)/usr/share/lintian/overrides/$(verpkg)
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq mv $(archdir)/VBoxEFI32.fd $(prefix)/usr/lib/$(package)
413ee814748f37be168ff12407fa6dba0ceeabe6trawick mv $(archdir)/VBoxEFI64.fd $(prefix)/usr/lib/$(package)
c12917da693bae4028a1d5a5e8224bceed8c739dsf mv $(archdir)/VBox.png \
c12917da693bae4028a1d5a5e8224bceed8c739dsf $(prefix)/usr/share/pixmaps/VBox.png
eeb7898b9c087040d44550f8a6b1a257783c9f0ahumbedooh mv $(archdir)/*.gc $(prefix)/usr/lib/$(package)
eeb7898b9c087040d44550f8a6b1a257783c9f0ahumbedooh mv $(archdir)/*.r0 $(prefix)/usr/lib/$(package)
7705103518c61f7cdcd4041fe871cb45114f31a5rpluem mv $(archdir)/*.rel $(prefix)/usr/lib/$(package) || true
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf mv $(archdir)/VBoxNetDHCP $(prefix)/usr/lib/$(package)
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf mv $(archdir)/VBoxNetAdpCtl $(prefix)/usr/lib/$(package)
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf mv $(archdir)/VBoxXPCOMIPCD $(prefix)/usr/lib/$(package)
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf mv $(archdir)/components $(prefix)/usr/lib/$(package)/components
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf mv $(archdir)/*.so $(prefix)/usr/lib/$(package)
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sf mv $(archdir)/*.so.4 $(prefix)/usr/lib/$(package) || true
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sf $(if $(NOQT),,mv $(archdir)/VBoxTestOGL $(prefix)/usr/lib/$(package))
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sf $(if $(NOQT),,mv $(archdir)/nls $(prefix)/usr/share/$(package))
4576c1a9ef54cd1e5555ee07d016a7f559f80338sf mv $(archdir)/src $(prefix)/usr/share/$(package)
4576c1a9ef54cd1e5555ee07d016a7f559f80338sf rm $(archdir)/VBox.sh
4576c1a9ef54cd1e5555ee07d016a7f559f80338sf export VBOX_INSTALL_PATH=/usr/lib/$(package) && \
9811aed12bbc71783d2e544ccb5fecd193843eadsf cd ./debian/builddir/bin/sdk/installer && \
9811aed12bbc71783d2e544ccb5fecd193843eadsf python ./vboxapisetup.py install --root $(prefix)
9811aed12bbc71783d2e544ccb5fecd193843eadsf rm -rf $(archdir)/sdk/installer
d58a822aff1dfda25384d3d009f88f1883c95436kbrand mv $(archdir)/vboxshell.py $(prefix)/usr/lib/$(package)
d58a822aff1dfda25384d3d009f88f1883c95436kbrand mv $(archdir)/sdk $(prefix)/usr/lib/$(package)
d58a822aff1dfda25384d3d009f88f1883c95436kbrand install -D -g 0 -o 0 -m 644 $(vboxroot)/src/VBox/Installer/linux/debian/VBox.sh $(prefix)/usr/bin/VBox
e02ff627c1e63137247e20493f6ef44b3bb1a095sf mv $(archdir)/VBoxSysInfo.sh $(prefix)/usr/share/$(package)
e02ff627c1e63137247e20493f6ef44b3bb1a095sf mv $(archdir)/VBoxCreateUSBNode.sh $(prefix)/usr/share/$(package)
e02ff627c1e63137247e20493f6ef44b3bb1a095sf for i in VBoxManage VBoxSVC $(if $(HEADLESS),,VBoxSDL) \
1366443dc565c33e7b449ae428bbfc4c86f33935drh $(if $(NOQT),,VirtualBox) VBoxHeadless \
1366443dc565c33e7b449ae428bbfc4c86f33935drh VBoxExtPackHelperApp VBoxBalloonCtrl VBoxAutostart \
88fac54d9d64f85bbdab5d7010816f4377f95bd7rjung $(if $(NOWEBSVC),,vboxwebsrv webtest); do \
88fac54d9d64f85bbdab5d7010816f4377f95bd7rjung mv $(archdir)/$$i $(prefix)/usr/lib/$(package); done
bd3f5647b96d378d9c75c954e3f13582af32c643sf $(if $(VNC),mv $(archdir)/ExtensionPacks/VNC $(prefix)/usr/lib/$(package)/ExtensionPacks,)
bd3f5647b96d378d9c75c954e3f13582af32c643sf mv $(archdir)/VBoxTunctl $(prefix)/usr/bin
bd3f5647b96d378d9c75c954e3f13582af32c643sf $(if $(NOMODS),,for d in $(moddir)/*; do \
bd3f5647b96d378d9c75c954e3f13582af32c643sf if [ -f $$d/vboxdrv.ko -a -f $$d/vboxnetflt.ko -a -f $$d/vboxnetadp.ko -a -f $$d/vboxpci.ko ]; then \
bd3f5647b96d378d9c75c954e3f13582af32c643sf install -D -g 0 -o 0 -m 0644 \
2a7beea91d46beb41f043a84eaad060047ee04aafabien $$d/vboxdrv.ko $(prefix)/lib/modules/$$(basename $$d)/misc/vboxdrv.ko; \
2a7beea91d46beb41f043a84eaad060047ee04aafabien install -D -g 0 -o 0 -m 0644 \
2a7beea91d46beb41f043a84eaad060047ee04aafabien $$d/vboxnetflt.ko $(prefix)/lib/modules/$$(basename $$d)/misc/vboxnetflt.ko; \
2a7beea91d46beb41f043a84eaad060047ee04aafabien install -D -g 0 -o 0 -m 0644 \
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf $$d/vboxnetadp.ko $(prefix)/lib/modules/$$(basename $$d)/misc/vboxnetadp.ko; \
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf install -D -g 0 -o 0 -m 0644 \
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf $$d/vboxpci.ko $(prefix)/lib/modules/$$(basename $$d)/misc/vboxpci.ko; \
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sf fi \
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sf done)
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sfifeq ($(ose),)
f6b9c755a0b793e8a3a3aebd327ca20a86478117sf $(if $(NOQT),,mv $(archdir)/kchmviewer $(prefix)/usr/lib/$(package))
f6b9c755a0b793e8a3a3aebd327ca20a86478117sf dh_installdocs \
f6b9c755a0b793e8a3a3aebd327ca20a86478117sf $(archdir)/UserManual*.pdf $(archdir)/VirtualBox*.chm \
132ee6ac1c26d6e8953836316ba50734eefab47bsf $(addprefix $(archdir)/, LICENSE)
132ee6ac1c26d6e8953836316ba50734eefab47bsf rm $(addprefix $(archdir)/,UserManual*.pdf VirtualBox*.chm \
132ee6ac1c26d6e8953836316ba50734eefab47bsf LICENSE)
fc1459657a1fde206a847f9028930725d715f8b4trawick for i in rdesktop-vrdp.tar.gz additions/VBoxGuestAdditions.iso; do \
fc1459657a1fde206a847f9028930725d715f8b4trawick mv $(archdir)/$$i $(prefix)/usr/share/$(package); done
fc1459657a1fde206a847f9028930725d715f8b4trawick $(if $(HEADLESS),,mv $(archdir)/rdesktop-vrdp $(prefix)/usr/bin)
85eacfc96a04547ef25aabbc06440039715084c2jorton $(if $(HEADLESS),,mv $(archdir)/rdesktop-vrdp-keymaps $(prefix)/usr/share/$(package))
85eacfc96a04547ef25aabbc06440039715084c2jorton if [ -d $(archdir)/accessible ]; then mv $(archdir)/accessible $(prefix)/usr/lib/virtualbox; fi
85eacfc96a04547ef25aabbc06440039715084c2jortonelse
68ba377fc3b124baa759662077c48077ebadb186minfrin dh_installdocs \
68ba377fc3b124baa759662077c48077ebadb186minfrin $(archdir)/UserManual*.pdf
68ba377fc3b124baa759662077c48077ebadb186minfrin rm $(addprefix $(archdir)/,UserManual*.pdf)
68ba377fc3b124baa759662077c48077ebadb186minfrin for i in additions/VBoxGuestAdditions.iso; do \
d776b0a2d2889ce1d13494873368f34327a2e1bbtrawick mv $(archdir)/$$i $(prefix)/usr/share/$(package); done
d776b0a2d2889ce1d13494873368f34327a2e1bbtrawickendif
f4ca9f6f002fece336168a16355434ca966f96a9trawick rmdir $(archdir)/additions
78f94f1d06c4e6828ce04d618221e0fcecb57849humbedooh $(if $(VNC),rmdir $(archdir)/ExtensionPacks)
78f94f1d06c4e6828ce04d618221e0fcecb57849humbedooh rmdir $(archdir)
78f94f1d06c4e6828ce04d618221e0fcecb57849humbedooh rmdir $(prefix)/opt
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick dh_link \
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick $(if $(NOQT),,usr/bin/VBox usr/bin/VirtualBox) \
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick $(if $(NOQT),,usr/bin/VBox usr/bin/virtualbox) \
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick usr/bin/VBox usr/bin/VBoxManage \
70caa242e6b90e0d6f0fabb56b8c5c2fb51717b3jorton usr/bin/VBox usr/bin/vboxmanage \
985a4368b93c3e9171a57897ad9454c8dbf4cdf6jorton $(if $(HEADLESS),,usr/bin/VBox usr/bin/VBoxSDL) \
70caa242e6b90e0d6f0fabb56b8c5c2fb51717b3jorton $(if $(HEADLESS),,usr/bin/VBox usr/bin/vboxsdl) \
70caa242e6b90e0d6f0fabb56b8c5c2fb51717b3jorton $(if $(ose),,usr/bin/VBox usr/bin/VBoxVRDP) \
109e2a09790de3fb315d36d6232a14ab66c8eb0ahumbedooh usr/bin/VBox usr/bin/VBoxHeadless \
109e2a09790de3fb315d36d6232a14ab66c8eb0ahumbedooh usr/bin/VBox usr/bin/vboxheadless \
109e2a09790de3fb315d36d6232a14ab66c8eb0ahumbedooh usr/bin/VBox usr/bin/VBoxBalloonCtrl \
74e7a30182af5e68f14ccb8d57918b22b982db8bhumbedooh usr/bin/VBox usr/bin/vboxballoonctrl \
74e7a30182af5e68f14ccb8d57918b22b982db8bhumbedooh usr/bin/VBox usr/bin/VBoxAutostart \
74e7a30182af5e68f14ccb8d57918b22b982db8bhumbedooh usr/bin/VBox usr/bin/vboxautostart \
10961a2f60207cb873d889bb28b1f0ef707a4311humbedooh $(if $(NOWEBSVC),,usr/bin/VBox usr/bin/vboxwebsrv) \
10961a2f60207cb873d889bb28b1f0ef707a4311humbedooh usr/share/virtualbox/src/vboxhost usr/src/vboxhost-$(ver)
10961a2f60207cb873d889bb28b1f0ef707a4311humbedooh dh_desktop
0448378b899e8df0c060360f17c0af692adf17bchumbedooh $(if $(NOMODS),,dh_installmodules)
0448378b899e8df0c060360f17c0af692adf17bchumbedooh sed \
0448378b899e8df0c060360f17c0af692adf17bchumbedooh -e 's|%NOLSB%||g' \
60a765cccbd3f3b5997b65b0034220c79f78369etrawick -e 's|%DEBIAN%|yes|g' \
60a765cccbd3f3b5997b65b0034220c79f78369etrawick -e 's|%PACKAGE%|virtualbox|g' \
60a765cccbd3f3b5997b65b0034220c79f78369etrawick -e "s|%VERSION%|$(VBOX_VERSION_STRING)|g" \
e7ca863b04ee2a7aea7738cadbf51ce5e6c5245dhumbedooh -e "s|%GROUP%|$(if $(VBOX_WITHOUT_HARDENING),vboxusers,root)|g" \
e7ca863b04ee2a7aea7738cadbf51ce5e6c5245dhumbedooh $(vboxroot)/src/VBox/Installer/linux/vboxdrv.sh.in > debian/vboxdrv.init
e7ca863b04ee2a7aea7738cadbf51ce5e6c5245dhumbedooh dh_installinit --name=vboxdrv --noscripts
e7ca863b04ee2a7aea7738cadbf51ce5e6c5245dhumbedooh cp $(vboxroot)/src/VBox/Installer/linux/vboxballoonctrl-service.sh debian/vboxballoonctrl-service.init
91654e263480f0fdc2a03d782ff23f8dad07cf79humbedooh dh_installinit --name=vboxballoonctrl-service --noscripts
91814c869ca39ce45dfe147307d2a831cac6ecbehumbedooh cp $(vboxroot)/src/VBox/Installer/linux/vboxautostart-service.sh debian/vboxautostart-service.init
91654e263480f0fdc2a03d782ff23f8dad07cf79humbedooh dh_installinit --name=vboxautostart-service --noscripts
79c5787b92ac5f0e1cc82393816c77a006399316trawick cp $(vboxroot)/src/VBox/Installer/linux/vboxweb-service.sh debian/vboxweb-service.init
79c5787b92ac5f0e1cc82393816c77a006399316trawick dh_installinit --name=vboxweb-service --noscripts
79c5787b92ac5f0e1cc82393816c77a006399316trawick sed -e 's|%VER%|$(ver)|g' \
79c5787b92ac5f0e1cc82393816c77a006399316trawick debian/preinst.in > debian/preinst
c967bf3bc89e8aa60dbd30d9da388e448ddc1cc4trawick sed -e 's|%VER%|$(ver)|g' \
79c5787b92ac5f0e1cc82393816c77a006399316trawick debian/prerm.in > debian/prerm
79c5787b92ac5f0e1cc82393816c77a006399316trawick sed -e 's|%VER%|$(ver)|g' \
79c5787b92ac5f0e1cc82393816c77a006399316trawick -e '/#include installer-common.sh/ {' \
79c5787b92ac5f0e1cc82393816c77a006399316trawick -e "r $(vboxroot)/src/VBox/Installer/linux/installer-common.sh" \
79c5787b92ac5f0e1cc82393816c77a006399316trawick -e 'd' \
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton -e '}' \
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton debian/postinst.in > debian/postinst
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton dh_installdebconf
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton dh_installchangelogs
536e48c08d674acac5d44929318f2ad928edc361jorton dh_installmenu
536e48c08d674acac5d44929318f2ad928edc361jorton dh_installmime
e81785da447b469da66f218b3f0244aab507958djorton dh_link
e81785da447b469da66f218b3f0244aab507958djortonifeq ($(DEBUG),)
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton dh_strip --keep-debug --exclude=libQtCoreVBox.so.4 --exclude=libQtGuiVBox.so.4 --exclude=libQtNetworkVBox.so.4 --exclude=libQtOpenGLVBox.so.4 --exclude=libqtaccessiblewidgets.so
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton # manually strip our R0/GC modules, dh_strip cannot handle them
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton for f in \
53e9b27aba029b18be814df40bcf6f0428771d1efuankg $(prefix)/usr/lib/$(package)/*.r0 $(prefix)/usr/lib/$(package)/*.gc; do \
53e9b27aba029b18be814df40bcf6f0428771d1efuankg objcopy --only-keep-debug \
53e9b27aba029b18be814df40bcf6f0428771d1efuankg $$f \
53e9b27aba029b18be814df40bcf6f0428771d1efuankg $(prefix)/usr/lib/debug/usr/lib/$(package)/`basename $$f`; \
53e9b27aba029b18be814df40bcf6f0428771d1efuankg strip -S --remove-section=.comment $$f; \
6bb524f1895f30265a1431afc460977d391cb36bsf objcopy --add-gnu-debuglink=$(prefix)/usr/lib/debug/usr/lib/$(package)/`basename $$f` $$f; \
6bb524f1895f30265a1431afc460977d391cb36bsf done
ca61ccd0c306c2c72df153688ba1b49f3eceed80sfendif
6bb524f1895f30265a1431afc460977d391cb36bsf mkdir -p $(current)/debian/$(verpkg)-dbg/usr/lib
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrinifeq ($(DEBUG),)
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrin mv $(current)/debian/$(verpkg)/usr/lib/debug $(current)/debian/$(verpkg)-dbg/usr/lib
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrinendif
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrin dh_pycentral
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin dh_compress -X.pdf -X.chm -X LICENSE -X.py
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin dh_fixperms
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin dh_makeshlibs
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin dh_installdeb
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung dh_perl
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung LD_LIBRARY_PATH=$(prefix)/usr/lib/virtualbox dh_shlibdeps
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung dh_gencontrol -- \
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung -Valsa=$(if $(HEADLESS),,libasound2) \
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung -Vpulse=$(if $(HEADLESS),,libpulse0) \
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung -Vsdlttf=$(if $(HEADLESS),,libsdl-ttf2.0-0) \
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung -Vdkms=$(if $(filter _Debian_lenny,$(debrel)),,dkms)
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung dh_md5sums
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick dh_builddeb --destdir $(pkgdir) -- -Zxz
6249dfa569d3b4f1f539665b979a80c6e335d93etrawickendif
0827cb14e550f6f65018431c22c2c913631c8f25kbrand
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick.PHONY: binary modules binary-arch binary-indep clean checkroot
ae600ca541efc686b34f8b1f21bd3d0741d37674covener