#!/usr/bin/make -f
################################################################################
# LibreOffice source package rules file
#
# Please see debian/README for detailed documentation about the build system, and
# how to build LibreOffice.
################################################################################
# Authors:
# Chris Halls <halls@debian.org>
# Rene Engelhard <rene@debian.org>
# Copyright 2002-2015 Software in the Public Interest, Inc.
# Portions Copyright 2010 Canonical Ltd. Author: Matthias Klose
# Portions Copyright 2011-2013 Canonical Ltd. Author: Bjoern Michaelsen
# Licensed under the GNU General Public License, version 2.  See the file
# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
################################################################################

vafilt = $(subst $(2)=,,$(filter $(2)=%,$(1)))

include /usr/share/dpkg/pkg-info.mk
CURDIR ?= $(realpath $(dir $(firstword $(MAKEFILE_LIST)))/..)
BASE_VERSION:=$(shell echo $(DEB_VERSION) | cut -d: -f1):$(DEB_VERSION_UPSTREAM)
BINARY_VERSION=$(DEB_VERSION)
#HELP_L10N_VIRTUAL_VERSION:=$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d: -f2 | tr [~] [\\-])
HELP_L10N_VIRTUAL_VERSION:=6.1
OOVER:=6.1
NEXT_OOVER:=$(shell echo "$(OOVER) + 0.1" | bc)

ARCH_INDEP_PACKAGES := $(shell dh_listpackages -i)
ARCH_DEP_PACKAGES := $(shell dh_listpackages -a)
PACKAGES := $(ARCH_INDEP_PACKAGES) $(ARCH_DEP_PACKAGES)

include /usr/share/dpkg/architecture.mk
include /usr/share/dpkg/vendor.mk
SHELL:=/bin/bash

#SYSTEM_GCC_VERSION = $(shell gcc --version | sed -n '/^gcc/s/.*\(.\..\)\..$$/\1/p')
#FIXME
SYSTEM_GCC_VERSION = $(shell gcc --version | sed -n '/^gcc/s/.*\(.\..\)\../\1/p' | cut -d" " -f1)
ifeq "$(shell dpkg --compare-versions $(SYSTEM_GCC_VERSION) ge 5 && echo true)" "true"
	GCC_VERSION_5_OR_GREATER=y
endif

PKGDIR:=debian/libreoffice
OODIRNAME=libreoffice
OODIR:=usr/lib/$(OODIRNAME)
OOSDKDIR:=$(OODIR)/sdk

# Figure out who's building this package.
OOO_VENDOR:=The Document Foundation/Debian
ifeq "$(DEB_VENDOR)" "Ubuntu"
OOO_VENDOR=The Document Foundation, Debian and Ubuntu
endif
export OOO_VENDOR

# debhelper
export DH_OPTIONS
export DH_ALWAYS_EXCLUDE=CVS:.svn:.bzr:.git
#export DH_VERBOSE=1
# quilt
export QUILT_PATCHES=debian/patches
export QUILT_OPTIONS="-p1 -F0"

SOURCE_TREE=.
STAMP_DIR=debian/stampdir
TARFILE_LOCATION=$(CURDIR)/tarballs
export TARFILE_LOCATION
USE_SOURCE_TARBALLS=n
USE_GIT_TARBALLS=n
ifeq "$(USE_GIT_TARBALLS)" "y"
GIT_BASEURL:=git://anongit.freedesktop.org/libreoffice
lo_sources_ver=$(shell grep AC_INIT $(SOURCE_TREE)/configure.ac | grep documentfoundation | cut -d, -f2 | sed -e 's,\[,,' -e 's,\],,')
# NOT in proper libreoffice-3-6 branch
# use ./g checkout -b tag-libreoffice-3.6.2.1 libreoffice-3.6.2.1
GIT_TAG=libreoffice-$(lo_sources_ver)
GIT_BRANCH=libreoffice-6-1-5
endif
ifeq "$(USE_SOURCE_TARBALLS)" "y"
lo_sources_ver=$(shell cat $(CURDIR)/sources.ver | cut -d= -f2)
endif

#########
# Default package configuration
#
OOO_ARCHS = alpha amd64 arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 m68k mips mipsel mips64 mips64el powerpc powerpcspe ppc64 ppc64el s390 s390x sparc sparc64
PATCHSET=$(DEB_VENDOR)
BUILD_DEPS=\
    autoconf,\
    automake,\
    bc,\
    bison,\
    bzip2,\
    flex (>= 2.3.35), \
    fontforge-nox | fontforge, \
    gperf,\
    libc0.1 (>= 2.10.2-7) [kfreebsd-any],\
    libcups2-dev,\
    libfontconfig1-dev,\
    libfreetype6-dev (>= 2.2.0),\
    libgl1-mesa-dev,\
    libice-dev,\
    libsm-dev,\
    libx11-dev,\
    libxaw7-dev,\
    libxext-dev,\
    libxinerama-dev,\
    libxkbfile-dev,\
    libxrender-dev,\
    libxt-dev,\
    libxtst-dev,\
    pkg-config,\
    unzip,\
    x11proto-render-dev,\
    xsltproc,\
    zip,\
    zlib1g-dev\

BUILD_DEPS_INDEP += rdfind, symlinks

# These are components which can be built from internal copies, or used from the
# distribution. See configure --help for valid values (--with-system-<value>).
SYSTEM_STUFF = dicts

ENABLE_PYTHON=y
ifeq "$(ENABLE_PYTHON)" "y"
  CONFIGURE_FLAGS += --with-python=system
  ENABLE_SCRIPT_PROVIDER_PYTHON=y
  PACKAGE_LIBRELOGO=y
endif
# THIS IS ONLY FOR TESTING. When building against a specified pythonX.Y
# this will work inside OOo but *not* from outside OOo unless the user
# uses pythonX.Y directly (and the dh_pycentral-created dependencies allow
# also the non-working default python then) - see e.g. #587402. Also
# note we are NOT working with python < 2.6 anymore!
PYTHON_VERSION=current
ifeq "$(PYTHON_VERSION)" "current"
  PYTHON=python3
  export PYTHON
else
  # somehow configure insists on using python3 "for pyuno". The only way to
  # override this (afaics) is this...
  PYTHON=python$(PYTHON_VERSION)
  PYTHON_CFLAGS=$(shell pkg-config --cflags python-$(PYTHON_VERSION))
  PYTHON_LIBS=$(shell pkg-config --libs python-$(PYTHON_VERSION))
  export PYTHON PYTHON_VERSION PYTHON_CFLAGS PYTHON_LIBS
endif
BUILD_ONLY_EN_US=n
ENABLE_JAVA=y
ifeq "$(ENABLE_JAVA)" "y"
  JDK=default
  include /usr/share/java/java_defaults.mk
  ifneq "$(JDK)" "default"
    JAVA_MAINVER=7
  endif
endif
JAVAHELPER_MIN_VERSION= (>= 0.37~)
SYSTEM_STUFF += hunspell
HUNSPELL_MIN_VER= (>= 1.1.5-2)
SYSTEM_STUFF += altlinuxhyph
USE_LIBHYPHEN=y
LIBHYPHEN_MINVER= (>= 2.4)
SYSTEM_STUFF += boost
BOOST_VERSION=default
ifeq "$(BOOST_VERSION)" "default"
  ifeq "$(GCC_VERSION_5_OR_GREATER)" "y"
    BOOST_MINVER= (>= 1.58)
  else
    BOOST_MINVER= (>= 1.55)
  endif
endif
SYSTEM_STUFF += mdds
USE_EXTERNAL_CXXLIBS=y
SYSTEM_STUFF += mythes
SYSTEM_STUFF += icu
ICU_MINVER= (>= 52)
SYSTEM_STUFF += librevenge
SYSTEM_STUFF += libwpd libwpg libwps
SYSTEM_STUFF += libvisio
SYSTEM_STUFF += libcdr
SYSTEM_STUFF += libmspub
SYSTEM_STUFF += libmwaw
SYSTEM_STUFF += libodfgen
SYSTEM_STUFF += libepubgen
SYSTEM_STUFF += libetonyek
SYSTEM_STUFF += libfreehand
# this is libe-book, NOT evolutions libebook (which is
# dlopen()'ed anyway and whose headers we need from the
# system anyways if enabled
SYSTEM_STUFF += libebook
SYSTEM_STUFF += libabw
SYSTEM_STUFF += libpagemaker
SYSTEM_STUFF += libzmf
SYSTEM_STUFF += libstaroffice
SYSTEM_STUFF += libqxp
BUILD_CAIROCANVAS=y
SYSTEM_STUFF += cairo
CAIRO_FONTS_PATCH=y
BUILD_KDE=y
BUILD_KDE4=n
# < 4.8 fails with gcc 4.7, see #667911
QT4_MINVER= (>= 4:4.8)
KDELIBS_MINVER= (>= 4:4.3.4)
BUILD_KDE5=y
ifeq "$(DEB_HOST_ARCH_BITS)" "64"
ENABLE_QT5=n
endif
QT5_MINVER= (>= 5.6)
ifeq "$(BUILD_KDE)" "y"
  ENABLE_GTK3_KDE5=y
  ENABLE_KDE5=n
  KDE_MAJOR=5
endif
ifeq "$(BUILD_KDE)" "y"
ifeq "$(BUILD_KDE4)" "y"
ifeq "$(BUILD_KDE5)" "y"
        $(error only either KDE4 or KDE5 supported)
endif
endif
endif
# https://www.debian.org/doc/debian-policy/ says this is not defined and must
# be ignored, but dh_strip mentions (and honours) it, so...
ifneq (noautodbgsym,$(findstring noautodbgsym,$(DEB_BUILD_OPTIONS)))
BUILD_DBGSYM_PACKAGES=y
ifeq "$(DEB_HOST_ARCH)" "amd64"
USE_DWZ=n
DWZ_ARGS:=-L 100000000
endif
endif
SYSTEM_STUFF += xmlsec

# this changes the packages built/contents of packages (-subsequentcheckbase)
# This is not exactly allowed in https://wiki.debian.org/BuildProfileSpec#Registered_profile_names
# but it doesn't have real practical difference, does it?
ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
  BUILD_TEST_PACKAGES=y
endif

ifneq ($(MAKECMDGOALS),build-indep)
ENABLE_SYMBOLS=y
SMALL_SYMBOLS=y
endif

ifeq "$(ENABLE_JAVA)" "y"
  SYSTEM_STUFF += beanshell
  SYSTEM_STUFF += hsqldb
  HSQLDB_MINVER= (>> 1.8.0.10)
  HSQLDB_TOONEWVER=1.8.1
  HSQLDB_JAR=/usr/share/java/hsqldb1.8.0.jar
endif
SYSTEM_STUFF += lpsolve
USE_SHARED_LPSOLVE=y
LPSOLVE_MIN_VERSION= (>= 5.5.0.13-5+b1)
ENABLE_COINMP=y
SYSTEM_STUFF += coinmp
USE_DBUS=y
ifeq "$(USE_DBUS)" "y"
  ifeq (,$(findstring linux,$(DEB_HOST_ARCH_OS)))
    ENABLE_BLUETOOTH=n
  else
    ENABLE_BLUETOOTH=y
    SYSTEM_STUFF += bluez
  endif
    ENABLE_PACKAGEKIT=n
endif
ENABLE_AVAHI=y
USE_GSTREAMER=y
USE_VLC=y
ENABLE_WEBDAV=y
ifeq "$(ENABLE_WEBDAV)" "y"
WEBDAV_LIB=neon
  ifeq "$(WEBDAV_LIB)" "neon"
    SYSTEM_STUFF += neon
    NEON_SECTYPE=gnutls
    NEONSONR=27
  else
   SYSTEM_STUFF += apr
   SYSTEM_STUFF += serf
  endif
endif
SYSTEM_STUFF += redland
PACKAGE_SDK=y
ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),)
PACKAGE_SDK_DOCS=n
else
PACKAGE_SDK_DOCS=y
endif
PACKAGE_LOKIT=y
ENABLE_CHART_TESTS=n
ENABLE_EXPORT_VALIDATION_TESTS=n
JUNIT_MIN_VER= (>= 4.8.2-2)
USE_LIBCURL4=y
CURL_SECTYPE=gnutls
USE_LIBSUITESPARSE=y
SUITESPARSE_MIN_VERSION= (>= 1:3.4.0)
PARALLEL_BUILD=y
ENABLE_LDAP=y
USE_OPENLDAP=y
SYSTEM_STUFF += epoxy
ifeq "$(ENABLE_JAVA)" "y"
  ENABLE_REPORTBUILDER=y
  SYSTEM_STUFF += jfreereport
  ENABLE_MEDIAWIKI=y
  SYSTEM_STUFF += apache-commons
  ENABLE_SCRIPT_PROVIDER_BSH=y
  ENABLE_SCRIPT_PROVIDER_JS=y
  ENABLE_NLPSOLVER=y
else
  ENABLE_REPORTBUILDER=n
  ENABLE_MEDIAWIKI=n
  ENABLE_SCRIPT_PROVIDER_BSH=n
  ENABLE_SCRIPT_PROVIDER_JS=n
  ENABLE_NLPSOLVER=n
endif
ENABLE_SDBC_POSTGRESQL=y
BUILD_GTK=y
#ifeq "$(DEB_DISTRIBUTION)" "experimental"
BUILD_GTK3=y
#endif
ifeq "$(BUILD_GTK3)" "y"
ENABLE_INTROSPECTION=y
endif
ENABLE_EVO2=y
ENABLE_GIO=y
ENABLE_DCONF=y
ENABLE_RANDR=y
PACKAGE_BASE=y
SYSTEM_STUFF += graphite
SYSTEM_STUFF += harfbuzz
ALLOC=system
SYSTEM_STUFF += libexttextcat
SYSTEM_STUFF += cppunit
CPPUNIT_MINVER=1.14
DEFAULT_IMAGE=tango
IMAGES:=$(DEFAULT_IMAGE) colibre sifr sifr_dark breeze breeze_dark elementary
CONFIGURE_FLAGS_INDEP += --with-theme="$(IMAGES)"
DICT_DIR=/usr/share/hunspell
HYPH_DIR=/usr/share/hyphen
THES_DIR=/usr/share/mythes
SYSTEM_STUFF += libcmis
ifeq "$(GCC_VERSION_5_OR_GREATER)" "y"
LIBCMIS_MINVER=0.5.0-3
else
LIBCMIS_MINVER=0.5.0
endif
ENABLE_MYSQLNATIVE=y
MYSQL_FLAVOUR=default
# set this also to y for system-mysql..
SYSTEM_STUFF += mariadb
SYSTEM_STUFF += mysql-cppconn
ifeq "$(GCC_VERSION_5_OR_GREATER)" "y"
  ifneq (,$(filter libcmis, $(SYSTEM_STUFF)))
    ifeq "$(shell dpkg --compare-versions `dpkg -l libcmis-dev | grep ^ii | awk '{ print $$3 }'` ge 0.5.2~ && echo true)" "true"
	MYSQLCPPCONN_MINVER= (>= 1.1.9-4)
    else
	MYSQLCPPCONN_MINVER= (>= 1.1.7-4)
    endif
  else
	MYSQLCPPCONN_MINVER= (>= 1.1.7-4)
  endif
else
MYSQLCPPCONN_MINVER= (>= 1.1.0~r791)
endif
SYSTEM_STUFF += postgresql
SYSTEM_STUFF += jpeg
SYSTEM_STUFF += libxml
SYSTEM_STUFF += expat
SYSTEM_STUFF += odbc
SYSTEM_STUFF += curl
SYSTEM_STUFF += sane
SYSTEM_STUFF += poppler
SYSTEM_STUFF += libpng
SYSTEM_STUFF += nss
ENABLE_HELP=y
ifeq "$(ENABLE_HELP)" "y"
  ENABLE_HTML_HELP=y
  ifeq "$(ENABLE_HTML_HELP)" "y"
  HELP_DEPENDS := libreoffice-help-common (= $${binary:Version}), firefox-esr | epiphany-browser | konqueror | chromium | firefox
  HELP_COMMON_DEPENDS := libjs-normalize.css
  else
  HELP_DEPENDS := libreoffice-writer
  DEBHELPER_OPTIONS += -Nlibreoffice-help-common
  endif
  SYSTEM_STUFF += clucene
  ifeq "$(GCC_VERSION_5_OR_GREATER)" "y"
  CLUCENE_MINVER=2.3.3.4-4.1
  else
  CLUCENE_MINVER=2.3.3.4-2
  endif
endif
SYSTEM_STUFF += lcms2
SYSTEM_STUFF += openldap
PACKAGE_UNOWINREG_DLL=y
ifeq "$(DEB_VENDOR)" "Debian"
BUILD_UNOWINREG_DLL=y
endif
FAKEROOT_LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)/libfakeroot
SYSTEM_STUFF += liblangtag
SYSTEM_STUFF += orcus
LIBORCUS_MINVER=0.14.0+really0.14.0
USE_UCPP=y
ifeq "$(USE_UCPP)" "y"
  SYSTEM_STUFF += ucpp
endif
# kfreebsd runs into SIZE_MAX problems, and the rest might
# get OOM (mips(el)...) so enable mergelibs only for 64bit
# archs (exception: i386)
ifeq (,$(findstring kfreebsd,$(DEB_HOST_ARCH)))
  ifeq "$(DEB_HOST_ARCH_BITS)" "64"
	ENABLE_MERGELIBS=y
  else
    ifeq "$(DEB_HOST_ARCH)" "i386"
	ENABLE_MERGELIBS=y
    endif
  endif
endif
#ifeq "$(ENABLE_MERGELIBS)" "y"
#  ENABLE_LTO=y
#else
  ENABLE_LTO=n
#endif
USE_OPENCL=y
#10:15 <@_rene_> ahunt: I remember you wanted to do some endian things? did it 
#                ever get done?
#10:15 -!- xrmx [~rm@2-228-255-178.ip194.fastwebnet.it] has joined 
#          #libreoffice-dev
#10:15 <@_rene_> ahunt: for firebird sdbc that is
#10:15 -!- xrmx [~rm@2-228-255-178.ip194.fastwebnet.it] has quit [Changing host]
#10:15 -!- xrmx [~rm@unaffiliated/xrmx] has joined #libreoffice-dev
#10:15 <@_rene_> because I just remember I still have 
#https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=powerpc&ver=1%3
#
#10:16 < ahunt> _rene_: Not yet -- I still need to get round to actually 
#               debugging within firebird itself to make it work.
#10:16 < ahunt> _rene_: Yup, basically we're not endian portable yet.
#10:16 <@_rene_> An uncaught exception of type com.sun.star.sdbc.SQLException
#10:16 <@_rene_> - firebird_sdbc error:
#10:16 <@_rene_> *unsupported on-disk structure for file 
#                /tmp/lu4va82l.tmp/firebird.fdb; found 2
#10:16 <@_rene_> 944.512, support 11.2
#10:16 < xrmx> morning
#10:16 <@_rene_> aha, so disable firebird on be?
#10:16 <@_rene_> (for now)
#10:16 < Safa_[A_boy]> Hello. About converting dialogs to .ui files, What about 
#                      wizards?
#10:17 < ahunt> _rene_: yes, unfortunately.
ENABLE_FIREBIRD=y
ifeq "$(ENABLE_FIREBIRD)" "y"
  SYSTEM_STUFF += firebird
  ifeq (,$(filter firebird, $(SYSTEM_STUFF)))
  SYSTEM_STUFF += libatomic-ops
  SYSTEM_STUFF += libtommath
  endif
endif
ENABLE_EOT=y
ifeq "$(ENABLE_EOT)" "y"
SYSTEM_STUFF += libeot
endif
SYSTEM_STUFF += glm
BUILD_PPC64EL=y
BUILD_ARM64=y
SYSTEM_STUFF += gpgmepp
INSTALL_APPARMOR_PROFILES=y
ENABLE_APPARMOR_PROFILES=y
CHECK_APPARMOR_PROFILES=true
ENABLE_LIBNUMBERTEXT=y
SYSTEM_STUFF += libnumbertext

# Default flags to pass to configure
CONFIGURE_FLAGS= \
		--with-vendor='$(OOO_VENDOR)' \
		--with-build-version='$(DEB_VERSION)' \
                --prefix=/usr --mandir=/usr/share/man \
                --docdir=/usr/share/doc/libreoffice \
		--libdir=/usr/lib \
		--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
		--disable-online-update \
		--disable-fetch-external \
		--without-fonts --enable-build-opensymbol \
		--without-myspell-dicts \
		--with-branding=$(CURDIR)/debian/branding

ifeq "$(ENABLE_HELP)" "y"
CONFIGURE_FLAGS_INDEP+= --with-help
  ifeq "$(ENABLE_HTML_HELP)" "y"
	CONFIGURE_FLAGS_INDEP+= --with-help=html
  endif
endif

ifeq "$(shell echo $(DEB_VERSION_UPSTREAM) | grep -E '(alpha|beta)'; echo $$?)" "1"
CONFIGURE_FLAGS += --enable-release-build
RELEASE_BUILD := y
endif

ifeq "$(DEB_DISTRIBUTION)" "UNRELEASED"
ENABLE_DEPENDENCY_TRACKING=y
endif
ifeq "$(DEB_DISTRIBUTION)" "UNRELEASED"
BUGS=mailto:debian-openoffice@lists.debian.org
endif

ifneq (terse,$(findstring terse,$(DEB_BUILD_OPTIONS)))
export verbose=t
endif

CONFIGURE_FLAGS += --with-alloc=$(ALLOC)

#############
# Architecture-specific changes

# helper to generate no_archs macros (pass name of source macro)
define gen_no_archs
  _no_arch_macro = $(subst OOO_,OOO_NO_,$1)
  _no_arch_tmp_$1 = $$(foreach _a,$$(filter-out $$(call $1),$(OOO_ARCHS)),!$$(_a))
  $$(_no_arch_macro) = $$(if $$(_no_arch_tmp_$1),$$(_empty) [$$(_no_arch_tmp_$1)])
endef

PLATFORMID := $(shell grep PLATFORMID debian/vars.$(DEB_HOST_ARCH) | cut -d"=" -f2)


# let's do this only on archs where we have chromium, which is supposedly even only the archs
# where alsp pdfium is supported.
OOO_PDFIUM_ARCHS := i386 amd64 armhf arm64
ifneq (,$(findstring $(DEB_HOST_ARCH),$(OOO_PDFIUM_ARCHS)))
ENABLE_PDFIUM=y
else
ENABLE_PDFIUM=n
endif

OOO_64BIT_ARCHS = $(filter alpha amd64 arm64 ia64 kfreebsd-amd64 mips64 mips64el ppc64 ppc64el s390x sparc64, $(OOO_ARCHS))
$(eval $(call gen_no_archs,OOO_64BIT_ARCHS))
OOO_BE_ARCHS = $(filter hppa m68k mips mips64 powerpc powerpcspe ppc64 s390 s390x sparc sparc64,$(OOO_ARCHS))
OOO_LE_ARCHS = $(filter-out $(OOO_BE_ARCHS),$(OOO_ARCHS))
$(eval $(call gen_no_archs,OOO_LE_ARCHS))

OOO_CHECK_ARCHS := $(filter-out kfreebsd-i386 kfreebsd-amd64 $(OOO_BE_ARCHS),$(OOO_ARCHS))
$(eval $(call gen_no_archs,OOO_CHECK_ARCHS))
#OOO_JUNIT_ARCHS := i386 amd64 armhf arm64
OOO_JUNIT_ARCHS := amd64 arm64
$(eval $(call gen_no_archs,OOO_JUNIT_ARCHS))
#OOO_CHECK_FATAL_ARCHS := i386 amd64 armhf arm64
OOO_CHECK_FATAL_ARCHS := amd64 arm64

ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
  ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),$(OOO_CHECK_ARCHS)))
    ifneq "$(DEB_HOST_ARCH_ENDIAN)" "big"
        RUN_MAKE_CHECK=y
    endif
  endif
  ifeq "$(ENABLE_JAVA)" "y"
    ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),$(OOO_JUNIT_ARCHS)))
        ENABLE_JUNIT4=y
    endif
  endif
  IGNORE_MAKE_CHECK_FAILURES=-
  ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),$(OOO_CHECK_FATAL_ARCHS)))
       IGNORE_MAKE_CHECK_FAILURES:=
  endif
endif

# Java...
ifeq "$(JDK)" "default"
OOO_JAVA_ARCHS = $(filter $(OOO_ARCHS),$(java6_architectures))
else
OOO_JAVA_ARCHS = $(OOO_ARCHS)
endif
$(eval $(call gen_no_archs,OOO_JAVA_ARCHS))

OOO_ARCH_DEP_EXTENSIONS_ARCHS := $(OOO_ARCHS)
OOO_EXTENSIONS_ARCHS := $(OOO_ARCH_DEP_EXTENSIONS_ARCHS)

OOO_BASE_ARCHS := $(OOO_JAVA_ARCHS)
$(eval $(call gen_no_archs,OOO_BASE_ARCHS))
OOO_REPORTBUILDER_ARCHS := $(OOO_BASE_ARCHS)
$(eval $(call gen_no_archs,OOO_REPORTBUILDER_ARCHS))
OOO_FIREBIRD_ARCHS := $(OOO_BASE_ARCHS)
$(eval $(call gen_no_archs,OOO_FIREBIRD_ARCHS))

ifneq (,$(findstring $(DEB_HOST_ARCH),$(OOO_NO_BASE_ARCHS)))
  ifneq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),$(OOO_BASE_ARCHS)))
	PACKAGE_BASE=n
	ENABLE_SDBC_POSTGRESQL=n
	ENABLE_MYSQLNATIVE=n
	ENABLE_EVO2=n
	ENABLE_REPORTBUILDER=n
	DEBHELPER_OPTIONS += -Nlibreoffice-base libreoffice-base-core -Nlibreoffice-base-drivers
	DEBHELPER_OPTIONS += -Nlibreoffice-evolution
	DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-postgresql -Nlibreoffice-mysql-connector
	DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-hsqldb -Nlibreoffice-sdbc-firebird 
	DEBHELPER_OPTIONS += -Nlibreoffice-report-builder-bin -Nlibreoffice-report-builder
#	CONFIGURE_FLAGS += --disable-database-connectivity
  endif
endif

ifeq (,$(findstring $(DEB_HOST_ARCH),$(OOO_ARCH_DEP_EXTENSIONS_ARCHS)))
	ENABLE_MYSQLNATIVE=n
	DEBHELPER_OPTIONS += -Nlibreoffice-mysql-connector
	DEBHELPER_OPTIONS += -Nlibreoffice-presentation-minimizer
endif
ifeq (,$(findstring $(DEB_HOST_ARCH),$(OOO_EXTENSIONS_ARCHS)))
	ENABLE_MEDIAWIKI=n
	ENABLE_REPORTBUILDER=n
	ENABLE_NLPSOLVER=n
	DEBHELPER_OPTIONS += -Nlibreoffice-wiki-publisher -Nlibreoffice-script-provider-python -Nlibreoffice-nlpsolver
	CONFIGURE_FLAGS += --disable-extension-integration --disable-extensions
else
	CONFIGURE_FLAGS += --enable-extension-integration
endif

ifeq (,$(filter $(DEB_HOST_ARCH),$(OOO_JAVA_ARCHS)))
	ENABLE_JAVA=n
	ENABLE_REPORTBUILDER=n
	ENABLE_MEDIAWIKI=n
	ENABLE_NLPSOLVER=n
	DEBHELPER_OPTIONS += -Nlibreoffice-wiki-publisher
	DEBHELPER_OPTIONS += -Nlibreoffice-report-builder-bin -Nlibreoffice-report-builder
	DEBHELPER_OPTIONS += -Nlibreoffice-nlpsolver
endif

# disable SRB on ia64 when building with internal jfreereport.
# fails to build. ("The system is out of resources."). FIXME.
ifeq (ia64,$(findstring ia64,$(OOO_OPENJDK_ARCHS)))
  ifeq (,$(findstring jfreereport,$(SYSTEM_STUFF))) 
    OOO_REPORTBUILDER_ARCHS := $(filter-out ia64,$(OOO_REPORTBUILDER_ARCHS))
    ifeq "$(DEB_HOST_ARCH)" "ia64"
	ENABLE_REPORTBUILDER=n
    endif
  endif
endif

ifeq "$(BUILD_TEST_PACKAGES)" "n"
	DEBHELPER_OPTIONS += -Nlibreoffice-subsequentcheckbase
endif

ifneq (,$(findstring mips, $(OOO_ARCHS)))
  BUILD_DEPS += , binutils (>= 2.23) [mips mipsel], libc6 (>= 2.17-6) [mips mipsel]
endif

#############
# Distro-specific overrides

# Debian Stretch
ifeq "$(DEB_DISTRIBUTION)" "stretch-backports"
  BUGS=mailto:debian-backports@lists.debian.org
  SYSTEM_STUFF := $(filter-out libzmf libstaroffice orcus cppunit xmlsec libqxp libepubgen mdds libnumbertext,$(SYSTEM_STUFF))
  # needs newer stuff for tests, we can't make it conditional on RUN_MAKE_CHECK since
  # BE archs don't run them anyway and this wouldn't be in effect...
  SYSTEM_STUFF := $(filter-out libwps libmwaw libetonyek,$(SYSTEM_STUFF))
  HELP_COMMON_DEPENDS :=
  USE_DWZ := n
  STRETCH_BACKPORT=y
endif

ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
UNO_LIBS_DBG=uno-libs3-dbgsym
URE_DBG=ure-dbgsym
CORE_DBG=libreoffice-core-dbgsym
WRITER_DBG=libreoffice-writer-dbgsym
URE_DBG_ROOT=.debhelper/ure/dbgsym-root
UNO_LIBS_DBG_ROOT=.debhelper/uno-libs3/dbgsym-root
CORE_DBG_ROOT=.debhelper/libreoffice-core/dbgsym-root
WRITER_DBG_ROOT=.debhelper/libreoffice-writer/dbgsym-root
else
DH_STRIP_DBG_OPTION_LO += --no-automatic-dbgsym
DH_STRIP_DBG_OPTION_URE += --no-automatic-dbgsym
DH_STRIP_DBG_OPTION_UNO_LIBS3 += --no-automatic-dbgsym
endif

CONFIGURE_FLAGS += $(foreach i, $(SYSTEM_STUFF),--with-system-$(i))

CC_PREFIX:=$(shell gcc -dumpmachine)-

USE_CLANG=n
ifeq "$(USE_CLANG)" "y"
  CLANG_VERSION=default
  ENABLE_COMPILER_PLUGINS=n
endif

ifneq "$(USE_CLANG)" "y"
  ifneq "$(GCC_VERSION)" ""
  ifneq "$(SYSTEM_GCC_VERSION)" "$(GCC_VERSION)"
    BUILD_DEPS += , gcc-$(GCC_VERSION), g++-$(GCC_VERSION)
    CONFIGURE_FLAGS+= \
      CC=$(CC_PREFIX)gcc-$(GCC_VERSION) \
      CXX=$(CC_PREFIX)g++-$(GCC_VERSION)
    endif
  endif
	BUILD_DEPS += , gcc (>= 4:7) [m68k], g++ (>= 4:7) [m68k]
else
  ifeq "$(CLANG_VERSION)" "default"
	CLANG=clang
	BUILD_DEPS += , clang
	CONFIGURE_FLAGS+= CC=clang CXX=clang++
  else
	CLANG=clang-$(CLANG_VERSION)
	BUILD_DEPS += , clang-$(CLANG_VERSION)
	CONFIGURE_FLAGS+= CC=clang-$(CLANG_VERSION) CXX=clang++-$(CLANG_VERSION)
  endif
  ifeq "$(ENABLE_COMPILER_PLUGINS)" "y"
  	CONFIGURE_FLAGS += --enable-compiler-plugins
  	CLANGDIR := /usr/lib/llvm-$(shell $(CLANG) --version | head -n 1 | awk '{ print $$3 }' | cut -d. -f1,2)
    ifeq "$(CLANG_VERSION)" "default"
	BUILD_DEPS += , libclang-dev
    else
	BUILD_DEPS += , libclang-$(CLANG_VERSION)-dev
    endif
  endif 
endif
USE_GOLD=n
ENABLE_CXX17=y
ifeq "$(ENABLE_CXX17)" "n"
	CONFIGURE_FLAGS += --disable-c++17
endif

ifeq "$(USE_DWZ)" "y"
	BUILD_DEPS += , debhelper (>= 10.10.4)
	BUILD_DEPS += , dwz
endif

ifneq "$(PACKAGE_SDK)" "y"
	CONFIGURE_FLAGS += --disable-odk
 ifneq "$(PACKAGE_SDK_DOCS)" "y"
	CONFIGURE_FLAGS += --without-doxygen --without-javadoc
 endif
else
  ifeq "$(PACKAGE_SDK_DOCS)" "y"
	BUILD_DEPS_INDEP += , doxygen (>= 1.8.4) <!nodoc>, graphviz <!nodoc>
  else
	CONFIGURE_FLAGS += --without-doxygen --without-javadoc
  endif
endif

	BUILD_DEPS += , libpoppler-dev (>= 0.12.0), libpoppler-private-dev, libpoppler-cpp-dev

ifeq "$(ENABLE_PDFIUM)" "n"
	CONFIGURE_FLAGS += --disable-pdfium
endif

ifneq (,$(filter graphite, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libgraphite2-dev (>= 0.9.3)
endif

ifneq (,$(filter harfbuzz, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libharfbuzz-dev (>= 0.9.42)
endif

ifneq (,$(filter libexttextcat, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libexttextcat-dev (>= 3.4.1)
	TEXTCAT_DATA_RECOMMENDS := libexttextcat-data
endif

ifeq "$(ENABLE_LIBNUMBERTEXT)" "y"
  ifneq (,$(filter libnumbertext, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libnumbertext-dev
	NUMBERTEXT_DATA_RECOMMENDS := libnumbertext-data
  endif
else
	CONFIGURE_FLAGS += --disable-libnumbertext
endif

ifneq (,$(filter jpeg, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libjpeg-dev
endif
ifneq (,$(filter libxml, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libxml2-dev (>= 2.8), libxml2-utils
       BUILD_DEPS += , libxslt1-dev
else
       CONFIGURE_FLAGS += --without-system-libxml
endif
ifneq (,$(filter xmlsec, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libxmlsec1-dev (>= 1.2.24)
endif
ifneq (,$(filter expat, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libexpat1-dev
endif
ifneq (,$(filter odbc, $(SYSTEM_STUFF)))
       BUILD_DEPS += , unixodbc-dev (>= 2.2.11)
endif
ifneq (,$(filter sane, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libsane-dev
endif
ifneq (,$(filter libpng, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libpng-dev
endif

ifneq (,$(filter curl, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libcurl4-$(CURL_SECTYPE)-dev
endif

ifeq "$(GCC_VERSION_5_OR_GREATER)" "y"
COINMP_MINVER=(>= 1.7.6+dfsg1-2)
  ifeq "$(STRETCH_BACKPORT)" "y"
	COINUTILS_MINVER=(>= 2.9.15-3.1)
  else
	COINUTILS_MINVER=(>= 2.10.14+repack1-1)
	# go sure given #873362
	COINMP_MINVER=(>= 1.8.3-2)
  endif
else
COINMP_MINVER=
COINUTILS_MINVER=
endif
ifneq ($(ENABLE_COINMP),y)
	CONFIGURE_FLAGS += --disable-coinmp
else
  ifneq (,$(filter coinmp, $(SYSTEM_STUFF)))
	BUILD_DEPS += , coinor-libcoinmp-dev $(COINMP_MINVER), coinor-libcoinutils-dev $(COINUTILS_MINVER)
    # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838620
    ifeq "$(STRETCH_BACKPORT)" "y"
	BUILD_DEPS += , libbz2-dev
    endif
  endif
endif

ifneq (,$(findstring i386,$(DEB_HOST_ARCH)))
	SMALL_SYMBOLS = n
else
  ifneq (,$(findstring amd64,$(DEB_HOST_ARCH)))
	SMALL_SYMBOLS = n
  endif
endif

ifeq "$(ENABLE_SYMBOLS)" "y"
  # Small symbols?
  ifeq "$(SMALL_SYMBOLS)" "y"
	CONFIGURE_FLAGS += --enable-symbols=SMALL
	DEB_CFLAGS_MAINT_STRIP := -g
	DEB_CXXFLAGS_MAINT_STRIP := -g
	DEB_CFLAGS_MAINT_PREPEND += -g1
	DEB_CXXFLAGS_MAINT_PREPEND += -g1
export DEB_CFLAGS_MAINT_STRIP DEB_CXXFLAGS_MAINT_STRIP
export DEB_CFLAGS_MAINT_PREPEND DEB_CXXFLAGS_MAINT_PREPEND
  else
	CONFIGURE_FLAGS += --enable-symbols
  endif
else
	DEB_CFLAGS_MAINT_STRIP := -g
	DEB_CXXFLAGS_MAINT_STRIP := -g
export DEB_CFLAGS_MAINT_STRIP DEB_CXXFLAGS_MAINT_STRIP
endif
export DPKG_EXPORT_BUILDFLAGS=y 
include /usr/share/dpkg/buildflags.mk
ifeq (debug,$(findstring debug,$(DEB_BUILD_OPTIONS)))
	CONFIGURE_FLAGS += --enable-debug
endif
ifeq (noopt,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CONFIGURE_FLAGS += --disable-optimized
endif

ifeq "$(ENABLE_PYTHON)" "y"
PYMAJOR:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[0])")
PYMINOR:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[1])")
PYMINORPLUS1:=$(shell $(PYTHON) -c "import sys; print (sys.version_info[1]+1)")
PYTHON_SITE:=debian/python3-uno/$(shell $(PYTHON) -c 'from distutils import sysconfig; print(sysconfig.get_python_lib())')
endif

	BUILD_DEPS += , $(PYTHON)
ifeq "$(ENABLE_PYTHON)" "y"
	BUILD_DEPS += , $(PYTHON)-dev (>= 3.3)
  ifneq "$(STRETCH_BACKPORT)" "y"
	BUILD_DEPS += , $(PYTHON)-distutils
  endif
	BUILD_DEPS += , dh-python
  ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	BUILD_DEPS += , $(PYTHON)-lxml <!nocheck>
  else
	CONFIGURE_FLAGS += --without-lxml
  endif
endif

	BUILD_DEPS += , debhelper (>= 10)
ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
	# from debhelper changelog
	BUILD_DEPS += , dpkg-dev (>= 1.18.2~)
else
	BUILD_DEPS += , dpkg-dev (>= 1.17.14)
endif

ifeq "$(RUN_TESTTOOL)" "y"
	CONFIGURE_FLAGS += --enable-hids
endif
	BUILD_DEPS += , locales$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , gdb$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , fontconfig$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , fonts-liberation2$(OOO_NO_CHECK_ARCHS) <!nocheck>
  	BUILD_DEPS += , fonts-crosextra-carlito$(OOO_NO_CHECK_ARCHS) <!nocheck>
        # https://lists.freedesktop.org/archives/libreoffice/2017-May/077764.html
        BUILD_DEPS += , fonts-dejavu$(OOO_NO_CHECK_ARCHS) <!nocheck>
  ifeq "$(RUN_MAKE_CHECK)" "y"
    ifneq (,$(filter cppunit, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libcppunit-dev (>= $(CPPUNIT_MINVER))$(OOO_NO_CHECK_ARCHS) <!nocheck>
    endif
	# 17:35 <@sberg_> vmiklos, oh, what kind of poor test is that? "warn:sal.osl:3785:2:sal/osl/unx/process.cxx:344: ChildStatusProc : starting 'pstoedit' failed" etc. is what I see in workdir/CppunitTest/filter_eps_test.test.log...
	BUILD_DEPS += , pstoedit$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , imagemagick$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , ghostscript$(OOO_NO_CHECK_ARCHS) <!nocheck>
	BUILD_DEPS += , hunspell-en-us$(OOO_NO_CHECK_ARCHS) <!nocheck>
  else
	CONFIGURE_FLAGS += --without-cppunit
  endif
  ifeq "$(ENABLE_JUNIT4)" "y"
	BUILD_DEPS += , junit4 $(JUNIT_MIN_VER) [$(OOO_JUNIT_ARCHS)] <!nocheck>
  else
	CONFIGURE_FLAGS += --without-junit
  endif
  ifeq "$(ENABLE_CHART_TESTS)" "y"
	CONFIGURE_FLAGS += --enable-chart-tests
  endif
  ifeq "$(ENABLE_EXPORT_VALIDATION_TESTS)" "y"
	BUILD_DEPS += , libofficeotron-java$(OOO_NO_CHECK_ARCHS) <!nocheck>, libodfvalidator-java$(OOO_NO_CHECK_ARCHS) <!nocheck>
  else
	CONFIGURE_FLAGS += --without-export-validation
  endif
ifneq "$(BUILD_ONLY_EN_US)" "y"
  ifeq (lang=,$(findstring lang=,$(DEB_BUILD_OPTIONS)))
	ISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g')
    ifeq "$(ENABLE_HELP)" "n"
	HELPISOS=
    else
	HELPISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g')
    endif
	LANGPACKISOS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^.*lang=\([^\s].*\)\s.*/\1/p' | awk '{ print $$1 }' | sed -e 's/,/ /g')
  else
	# Note that the first one here *has to be* en-US. the first one gets
	# gid_Module_Root as filelist later and the rest gid_Module_Root.$iso
	# but we can't/shouldn't do dynamic switching, so let en-US be the first
	# one to that gid_Module_Root always is english and the other langpacks
	# have gid_Module_Root.$iso
	#ISOS=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all')
	ISOS:=en-US af am ar as ast be bg bn br bs ca ca-valencia cs cy da de dz el \
	  en-GB en-ZA eo es et eu fa fi fr ga gd gl gu gug he hi hr hu id is it ja \
	  ka kk km kmr-Latn kn ko lt lv mk mn ml mr nb ne nl nn nr nso oc om or \
	  pa-IN pl pt pt-BR ro ru rw si sk sl sr sr-Latn ss st sv \
	  ta te tg th tn tr ts ug uk uz ve vi xh zh-CN zh-TW zu
    ifeq "$(ENABLE_HELP)" "n"
	HELPISOS:=
    else
	#HELPISOS:=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all') 
	HELPISOS:=en-US ca ca-valencia cs da de dz el en-GB es et eu fi fr gl hi hu it \
	  ja km ko nl om pl pt pt-BR ru sk sl sv tr vi zh-CN zh-TW
    endif
	#LANGPACKISOS:=$(shell $(SOURCE_TREE)/bin/lo-xlate-lang -i all')
	LANGPACKISOS:=en-US af am ar as ast be bg bn br bs ca ca-valencia cs cy da de dz el \
	  en-GB en-ZA eo es et eu fa fi fr ga gd gl gu gug he hi hr hu id is it ja \
	  ka kk km kmr-Latn kn ko lt lv mk mn ml mr nb ne nl nn nr nso oc om or \
	  pa-IN pl pt pt-BR ro ru rw si sk sl sr sr-Latn ss st sv \
	  ta te tg th tn tr ts ug uk uz ve vi xh zh-CN zh-TW zu
  endif
else
	ISOS=en-US
    ifeq "$(ENABLE_HELP)" "n"
    	HELPISOS=
    else
	HELPISOS=en-US
    endif
	LANGPACKISOS=en-US
endif
BUILD_ISOS = $(ISOS)

ifneq "$(BUILD_ONLY_EN_US)" "y"
  ifneq "$(BUILD_ISOS)" "en-US"
	CONFIGURE_FLAGS_LANG += --with-lang="$(BUILD_ISOS)"
	CONFIGURE_FLAGS_INDEP += $(CONFIGURE_FLAGS_LANG)
	BUILD_DEPS_INDEP += , gettext
  endif
endif

ifeq "$(ENABLE_JAVA)" "y"
  BUILD_DEPS += , maven-repo-helper
  ifeq "$(JDK)" "default"
	JAVA_HOME=/usr/lib/jvm/default-java
    ifneq "$(STRETCH_BACKPORT)" "y"
	BUILD_DEPS += , java-common (>= 0.61)
	DEFAULT_JDK := $(call java_dependency, default-jdk)
	BUILD_DEPS += , $(shell echo $(DEFAULT_JDK) | sed -e 's/default-jdk/default-jdk (>= 1:1.6)/' | sed -e "s/\]/ !i386]/")
    else
	BUILD_DEPS += , java-common (>= 0.49)
	BUILD_DEPS += , default-jdk (>= 1:1.6) $(shell echo "$(filter-out !ia64,$(OOO_NO_JAVA_ARCHS))")
    endif
    ifneq "$(STRETCH_BACKPORT)" "y"
      ifeq (i386,$(findstring i386,$(OOO_JAVA_ARCHS)))
	BUILD_DEPS += , default-jdk (>= 2:1.9) [i386]
      endif
    endif
    ifneq (,$(findstring ia64,$(OOO_JAVA_ARCHS)))
	BUILD_DEPS += , default-jdk (>= 1:1.7-48) [ia64]
    endif
    ifneq (,$(findstring kfreebsd,$(OOO_JAVA_ARCHS)))
	BUILD_DEPS += , default-jdk (>= 2:1.7-52.1) [kfreebsd-any]
    endif
    ifneq (,$(findstring sparc64,$(OOO_JAVA_ARCHS)))
	BUILD_DEPS += , default-jdk (>= 2:1.8-55) [sparc64]
    endif
  endif
  ifeq "$(JDK)" "openjdk"
    ifeq "$(JAVA_MAINVER)" "6"
	BUILD_DEPS += , openjdk-$(JAVA_MAINVER)-jdk (>= 6b23~pre8-2) [$(filter-out ia64,$(OOO_JAVA_ARCHS)])
    else
	BUILD_DEPS += , openjdk-$(JAVA_MAINVER)-jdk [$(filter-out mips mipsel,$(OOO_JAVA_ARCHS))]
      # no 7 on mips(el)
      ifneq (,$(findstring mips,$(OOO_JAVA_ARCHS)))
	BUILD_DEPS += , openjdk-6-jdk (>= 6b23~pre8-2) [mips mipsel]
        ifneq (,$(findstring mips,$(DEB_HOST_ARCH)))
          JAVA_MAINVER=6
        endif
      endif
    endif
	JAVA_HOME=/usr/lib/jvm/java-$(JAVA_MAINVER)-openjdk-$(DEB_HOST_ARCH)
  endif
        TEST_JAVA_HOME=$(JAVA_HOME)
  ifeq "$(ENABLE_MEDIAWIKI)" "y"
	BUILD_DEPS_INDEP += , ant (>= 1.7.0)$(OOO_NO_JAVA_ARCHS), ant-optional (>= 1.7.0)$(OOO_NO_JAVA_ARCHS)
  else
    # report-builder is done in build-arch already
    ifneq (,$(filter jfreereport, $(SYSTEM_STUFF)))
	BUILD_DEPS += , ant (>= 1.6.5)$(OOO_NO_JAVA_ARCHS)
    else
	BUILD_DEPS_INDEP += , ant (>= 1.6.5)$(OOO_NO_JAVA_ARCHS)
    endif
  endif
	JAVA_RUNTIME_DEPENDS = default-jre
  ifneq (,$(filter $(DEB_HOST_ARCH), $(OOO_OPENJDK_ARCHS)))
    ifneq "$(DEB_HOST_ARCH)" "ia64"
	JAVA_RUNTIME_DEPENDS += | openjdk-9-jre | openjdk-8-jre | openjdk-7-jre | openjdk-6-jre
    else
	JAVA_RUNTIME_DEPENDS += | openjdk-7-jre
    endif
  endif
  ifneq (,$(filter $(DEB_HOST_ARCH), amd64 i386))
	JAVA_RUNTIME_DEPENDS += | sun-java6-jre
  endif
	JAVA_RUNTIME_DEPENDS += | java6-runtime
	# Suns Java "packages"
	JAVA_RUNTIME_DEPENDS += | jre
export JAVA_HOME
	CONFIGURE_FLAGS += --with-jdk-home=$(JAVA_HOME)
	JAVA_COMMON_DEPENDS= , libreoffice-java-common
	JAVA_COMMON_DEPENDS_VERSION:= (>= $(BASE_VERSION)~)
  ifeq "$(PACKAGE_SDK)" "y"
    ifeq "$(PACKAGE_UNOWINREG_DLL)" "y"
      ifeq "$(BUILD_UNOWINREG_DLL)" "y"
	CONFIGURE_FLAGS_INDEP += --enable-build-unowinreg
	BUILD_DEPS_INDEP += , g++-mingw-w64-i686
	CONFIGURE_FLAGS_INDEP += --with-mingw-cross-compiler=i686-w64-mingw32-g++
      endif
    endif
  endif
  ifeq "$(ENABLE_MEDIAWIKI)" "y"
	CONFIGURE_FLAGS_INDEP += --enable-ext-wiki-publisher
  endif
  ifeq "$(ENABLE_REPORTBUILDER)" "y"
	# report-builder
    ifneq (,$(filter jfreereport, $(SYSTEM_STUFF)))
	REPORT_BUILDER_BUILD_DEPS += , libbase-java$(OOO_NO_REPORTBUILDER_ARCHS), libsac-java$(OOO_NO_REPORTBUILDER_ARCHS), libxml-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS), libflute-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS), libpentaho-reporting-flow-engine-java (>= 0.9.4)$(OOO_NO_REPORTBUILDER_ARCHS), liblayout-java (>= 0.2.10)$(OOO_NO_REPORTBUILDER_ARCHS), libloader-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS), libformula-java (>= 1.1.7)$(OOO_NO_REPORTBUILDER_ARCHS), librepository-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS), libfonts-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS), libserializer-java (>= 1.1.6)$(OOO_NO_REPORTBUILDER_ARCHS)
	REPORT_BUILDER_JAR_DEPENDS := , libbase-java, libsac-java, libxml-java (>= 1.1.6), libflute-java (>= 1.1.6), libpentaho-reporting-flow-engine-java (>= 0.9.4), liblayout-java (>= 0.2.10), libloader-java (>= 1.1.6), libformula-java (>= 1.1.7), librepository-java (>= 1.1.6), libfonts-java (>= 1.1.6), libserializer-java (>= 1.1.6)
	CONFIGURE_FLAGS += --with-libbase-jar=/usr/share/java/libbase.jar --with-libxml-jar=/usr/share/java/libxml.jar --with-flute-jar=/usr/share/java/flute.jar --with-jfreereport-jar=/usr/share/java/flow-engine.jar --with-liblayout-jar=/usr/share/java/liblayout.jar --with-libloader-jar=/usr/share/java/libloader.jar --with-libformula-jar=/usr/share/java/libformula.jar --with-librepository-jar=/usr/share/java/librepository.jar --with-libfonts-jar=/usr/share/java/libfonts.jar --with-libserializer-jar=/usr/share/java/libserializer.jar
    endif
    ifneq (,$(filter apache-commons, $(SYSTEM_STUFF)))
	REPORT_BUILDER_BUILD_DEPS += , libcommons-logging-java$(OOO_NO_JAVA_ARCHS)
	REPORT_BUILDER_JAR_DEPENDS += , libcommons-logging-java
	CONFIGURE_FLAGS += --with-commons-logging-jar=/usr/share/java/commons-logging.jar
    endif
	BUILD_DEPS += $(REPORT_BUILDER_BUILD_DEPS)
  else
	CONFIGURE_FLAGS += --disable-report-builder
  endif
  ifeq "$(ENABLE_NLPSOLVER)" "y"
	CONFIGURE_FLAGS_INDEP += --enable-ext-nlpsolver
  endif
	OOO_OFFICEBEAN_DEP = libreoffice-officebean
	BUILD_DEPS += , javahelper $(JAVAHELPER_MIN_VERSION)
else
	CONFIGURE_FLAGS += --without-java
	DEBHELPER_OPTIONS += -Nlibreoffice-officebean -Nlibreoffice-java-common -Nlibreoffice-script-provider-bsh -Nlibreoffice-script-provider-js
endif

ifeq "$(ENABLE_JAVA)" "y"
	ifeq "$(shell $(JAVA_HOME)/bin/java -version 2>&1 | grep -q Zero && echo true)" "true"
		#RUN_MAKE_CHECK:=n
		ENABLE_JUNIT4=n
	endif
endif

ifneq (,$(filter nss, $(SYSTEM_STUFF)))
	BUILD_DEPS+= , libnss3-dev (>= 3.12.3)
	BUILD_DEPS+= , libnspr4-dev
endif

ifeq "$(USE_UCPP)" "y"
  ifneq (,$(filter ucpp, $(SYSTEM_STUFF)))
	IDLC_CPP_DEPENDS := ucpp
  endif
else
# hardcode 4.7 as 4.8 fails:
# 14:17 <@caolan> ah, "build fails with cpp 4.8.0, this is fixable by passing 
#                -P, but then idlc produces empty urd files"
	IDLC_CPP_DEPENDS := cpp-4.7
	CONFIGURE_FLAGS += --with-idlc-cpp=cpp-4.7
endif
	BUILD_DEPS += , $(IDLC_CPP_DEPENDS)

ifneq (,$(filter hunspell, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libhunspell-dev $(HUNSPELL_MIN_VER)
endif
	CONFIGURE_FLAGS += --with-external-dict-dir=$(DICT_DIR)

ifneq (,$(filter altlinuxhyph, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libhyphen-dev $(LIBHYPHEN_MINVER)
endif
	CONFIGURE_FLAGS += --with-external-hyph-dir=$(HYPH_DIR)

ifneq (,$(filter boost, $(SYSTEM_STUFF)))
  ifneq "$(BOOST_VERSION)" "default"
	BUILD_DEPS += , libboost$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-date-time$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-iostreams$(BOOST_VERSION)-dev, libboost-filesystem$(BOOST_VERSION)-dev, libboost-locale$(BOOST_VERSION)-dev
	#BUILD_DEPS += , libboost-thread$(BOOST_VERSION)-dev, libboost-program-options$(BOOST_VERSION)-dev
    ifeq (,$(filter orcus, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libboost-system$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-iostreams$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-program-options$(BOOST_VERSION)-dev $(BOOST_MINVER), libboost-filesystem$(BOOST_VERSION)-dev $(BOOST_MINVER)
    endif
    ifeq ($(USE_VLC),y)
	BUILD_DEPS += , libboost-system$(BOOST_VERSION)-dev $(BOOST_MINVER)
    endif
  else
	BUILD_DEPS += , libboost-dev $(BOOST_MINVER), libboost-date-time-dev $(BOOST_MINVER), libboost-iostreams-dev $(BOOST_MINVER), libboost-filesystem-dev $(BOOST_MINVER), libboost-locale-dev $(BOOST_MINVER)
	#BUILD_DEPS += , libboost-thread-dev, libboost-program-options-dev
    ifeq (,$(filter orcus, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libboost-system-dev $(BOOST_MINVER), libboost-iostreams-dev $(BOOST_MINVER), libboost-program-options-dev $(BOOST_MINVER), libboost-filesystem-dev $(BOOST_MINVER)
    endif
    ifeq ($(USE_VLC),y)
	BUILD_DEPS += , libboost-system-dev $(BOOST_MINVER)
    endif
  endif
  ifeq "$(shell if [ -e /usr/lib/$(DEB_HOST_MULTIARCH)/libboost_date_time.so ]; then echo true; fi)" "true"
  	CONFIGURE_FLAGS += --with-boost-libdir=/usr/lib/$(DEB_HOST_MULTIARCH)
  endif
endif

ifneq (,$(filter mdds, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libmdds-dev (>= 1.4.1)
endif

ifneq (,$(filter orcus, $(SYSTEM_STUFF)))
	BUILD_DEPS += , liborcus-dev (>= $(LIBORCUS_MINVER))
endif

ifneq (,$(filter clucene, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libclucene-dev (>= $(CLUCENE_MINVER))
endif

ifeq "$(USE_EXTERNAL_CXXLIBS)" "y"
  ifneq (,$(filter librevenge, $(SYSTEM_STUFF)))
	BUILD_DEPS += , librevenge-dev
  endif
  ifneq (,$(filter libwpd, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libwpd-dev (>= 0.10)
  endif
  ifneq (,$(filter mythes, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libmythes-dev (>= 2:1.2)
  endif
  ifneq (,$(filter libwps, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libwps-dev (>= 0.4)
	BUILD_DEPS += , libwps-dev (>= 0.4.9) <!nocheck>
  endif
  ifneq (,$(filter libwpg, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libwpg-dev (>= 0.3)
  endif
  ifneq (,$(filter libvisio, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libvisio-dev (>= 0.1)
  endif
  ifneq (,$(filter libcdr, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libcdr-dev (>= 0.1)
  endif
  ifneq (,$(filter libmspub, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libmspub-dev (>= 0.1)
  endif
  ifneq (,$(filter libmwaw, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libmwaw-dev (>= 0.3.1)
	BUILD_DEPS += , libmwaw-dev (>= 0.3.13) <!nocheck>
  endif
  ifneq (,$(filter libodfgen, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libodfgen-dev (>= 0.1)
  endif
  ifneq (,$(filter libepubgen, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libepubgen-dev (>= 0.1.0)
  endif
  ifneq (,$(filter libetonyek, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libetonyek-dev
	BUILD_DEPS += , libetonyek-dev (>= 0.1.8) <!nocheck>
  endif
  ifneq (,$(filter libfreehand, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libfreehand-dev (>= 0.1)
  endif
  ifneq (,$(filter libabw, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libabw-dev (>= 0.1)
  endif
  ifneq (,$(filter libpagemaker, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libpagemaker-dev
  endif
  ifneq (,$(filter libzmf, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libzmf-dev
  endif
  ifneq (,$(filter libstaroffice, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libstaroffice-dev
	BUILD_DEPS += , libstaroffice-dev (>= 0.0.3) <!nocheck>
  endif
  ifneq (,$(filter libqxp, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libqxp-dev
  endif
  ifneq (,$(filter libebook, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libe-book-dev
	BUILD_DEPS += , libe-book-dev (>= 0.1.2) <!nocheck>
  endif
  ifneq (,$(filter libcmis, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libcmis-dev (>= $(LIBCMIS_MINVER))
  endif
endif
	CONFIGURE_FLAGS += --with-external-thes-dir=$(THES_DIR)

ifeq "$(INSTALL_APPARMOR_PROFILES)" "y"
  BUILD_DEPS += , dh-apparmor
  ifeq "$(CHECK_APPARMOR_PROFILES)" "true"
    BUILD_DEPS += , apparmor <!nocheck>
  endif
endif

ifeq "$(ENABLE_EOT)" "y"
 	CONFIGURE_FLAGS += --enable-eot
 ifneq (,$(filter libeot, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libeot-dev
 endif
endif

ifneq (,$(filter lcms2, $(SYSTEM_STUFF)))
	BUILD_DEPS += , liblcms2-dev
endif

ifneq (,$(filter openldap, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libldap2-dev
endif

ifneq (,$(filter liblangtag, $(SYSTEM_STUFF)))
	BUILD_DEPS += , liblangtag-dev (>= 0.4)
endif

ifneq (,$(filter icu, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libicu-dev $(ICU_MINVER)
endif


ifeq "$(BUILD_CAIROCANVAS)" "y"
  ifneq (,$(filter cairo, $(SYSTEM_STUFF)))
	BUILD_DEPS+= , libcairo2-dev
  endif
else
	CONFIGURE_FLAGS+= --disable-cairo
endif

ifeq "$(BUILD_KDE4)" "n"
	CONFIGURE_FLAGS += --disable-kde4
else
	CONFIGURE_FLAGS += --enable-kde4
	KDE_ICONSET_DEP=libreoffice-style-breeze
	BUILD_DEPS += , kdelibs5-dev $(KDELIBS_MINVER)
	BUILD_DEPS += , libqt4-dev $(QT4_MINVER)
endif

ifeq "$(BUILD_KDE5)" "y"
	KDE_ICONSET_DEP=libreoffice-style-breeze
  ifeq "$(ENABLE_GTK3_KDE5)" "y"
	CONFIGURE_FLAGS += --enable-gtk3-kde5
	# set them here as we don't build the Qt5 plugin. If it is built
	# it is set below
	BUILD_DEPS += , qtbase5-dev $(QT5_MINVER), qt5-qmake $(QT5_MINVER), qtbase5-dev-tools $(QT5_MINVER)
	BUILD_DEPS += , libglib2.0-dev (>= 2.4)
        # for correct qmake/moc
	BUILD_DEPS += , qtchooser
	export QT_SELECT=5
  endif
  ifeq "$(ENABLE_KDE5)" "y"
	CONFIGURE_FLAGS += --enable-kde5
  endif
	BUILD_DEPS += , libqt5x11extras5-dev $(QT5_MINVER)
	BUILD_DEPS += , libkf5coreaddons-dev, libkf5i18n-dev, libkf5config-dev, libkf5windowsystem-dev, libkf5kio-dev
	BUILD_DEPS += , libxcb1-dev
endif

ifeq "$(ENABLE_QT5)" "y"
	CONFIGURE_FLAGS += --enable-qt5
	BUILD_DEPS += , qtbase5-dev $(QT5_MINVER), qt5-qmake $(QT5_MINVER), qtbase5-dev-tools $(QT5_MINVER)
	BUILD_DEPS += , libglib2.0-dev (>= 2.4)
        # for correct qmake/moc
	BUILD_DEPS += , qtchooser
	export QT_SELECT=5
endif

ifeq "$(ENABLE_MYSQLNATIVE)" "y"
	CONFIGURE_FLAGS += --enable-ext-mariadb-connector
  ifeq "$(MYSQL_FLAVOUR)" "default"
      ifneq (,$(filter mariadb, $(SYSTEM_STUFF)))
	BUILD_DEPS += , default-libmysqlclient-dev
      endif
  else
    ifeq "$(MYSQL_FLAVOUR)" "mysql"
      ifneq (,$(filter mysql-cppconn, $(SYSTEM_STUFF)))
      ifneq (,$(filter mariadb, $(SYSTEM_STUFF)))
        BUILD_DEPS += , libmysqlclient-dev
      endif
      endif
      MARIADBCONFIG=/usr/bin/mysql_config
    endif
    ifeq "$(MYSQL_FLAVOUR)" "mariadb"
      ifneq (,$(filter mariadb, $(SYSTEM_STUFF)))
	# deducted from default-libmysqlclient-dev Depends
	BUILD_DEPS += , libmariadbclient-dev-compat
      endif
      MARIADBCONFIG=/usr/bin/mariadb_config
    endif
  endif
  ifneq (,$(filter mysql-cppconn, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libmysqlcppconn-dev $(MYSQLCPPCONN_MINVER)
  endif
endif

ifeq "$(ENABLE_FIREBIRD)" "y"
	BASE_FIREBIRD_RECOMMENDS = libreoffice-sdbc-firebird [$(OOO_FIREBIRD_ARCHS)]
  ifneq (,$(filter libatomic-ops, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libatomic-ops-dev (>= 7.3~alpha1+git20110913-1)$(OOO_NO_FIREBIRD_ARCHS)
  endif
  ifneq (,$(filter libtommath, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libtommath-dev$(OOO_NO_FIREBIRD_ARCHS)
  endif
  ifneq (,$(filter firebird, $(SYSTEM_STUFF)))
	BUILD_DEPS += , firebird-dev (>= 3.0.0.32483.ds4-4)$(OOO_NO_FIREBIRD_ARCHS)
	# we need libEngine12.so
	BUILD_DEPS += , firebird3.0-server-core $(OOO_NO_FIREBIRD_ARCHS) <!nocheck>
	FIREBIRD_ENGINE_DEPENDS += firebird3.0-server-core
  endif
else
	CONFIGURE_FLAGS += --disable-firebird-sdbc
	DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-firebird
endif

ifeq "$(BUILD_GTK)" "n"
	CONFIGURE_FLAGS+= --disable-gtk
	DEBHELPER_OPTIONS+= -Nlibreoffice-gtk2 -Nlibreoffice-gnome
else
	BUILD_DEPS += , libgtk2.0-dev (>= 2.18.0)
endif
ifeq "$(BUILD_GTK3)" "y"
	BUILD_DEPS += , libgtk-3-dev (>= 3.18.0), libglib2.0-dev (>= 2.38.0)
  ifneq (cairo,$(findstring cairo,$(SYSTEM_STUFF)))
  $(error GTK3 build fails without system-cairo!!)
  endif
  ifeq (,$(filter epoxy, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libegl1-mesa-dev
  endif
	GNOME_GTK_RECOMMENDS += libreoffice-gtk3
  ifeq "$(ENABLE_INTROSPECTION)" "y"
	BUILD_DEPS += , gobject-introspection (>= 1.32.0), libgirepository1.0-dev (>= 1.32)
  else
	CONFIGURE_FLAGS += --enable-introspection=no
	DEBHELPER_OPTIONS+= -Ngir1.2-lokdocview-0.1
  endif
else
       CONFIGURE_FLAGS+= --disable-gtk3
       GNOME_GTK_DEPENDS += libreoffice-gtk2
endif

ifeq "$(ENABLE_EVO2)" "n"
	CONFIGURE_FLAGS += --disable-evolution2
	DEBHELPER_OPTIONS += -Nlibreoffice-evolution
else
	CONFIGURE_FLAGS += --enable-evolution2
	BUILD_DEPS += , libebook1.2-dev
	LIBEBOOK_DEP = $(shell debian/scripts/get_libebook_dep.sh)
endif

ifeq "$(ENABLE_SDBC_POSTGRESQL)" "y"
  ifneq (,$(filter postgresql, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libpq-dev (>= 9.0~)
  else
	BUILD_DEPS += , libkrb5-dev
  endif
else
	CONFIGURE_FLAGS += --disable-postgresql-sdbc
	DEBHELPER_OPTIONS += -Nlibreoffice-sdbc-postgresql
endif

ifeq "$(ENABLE_RANDR)" "y"
	BUILD_DEPS += , libxrandr-dev
else
	CONFIGURE_FLAGS += --disable-randr
endif

ifneq "$(ENABLE_PYTHON)" "y"
	DEBHELPER_OPTIONS+= -Npython3-uno -Nlibreoffice-script-provider-python
	CONFIGURE_FLAGS += --disable-python
else
	PYUNO_DEPENDS = python3-uno (>= 4.4.0~beta2)
  CONFIGURE_FLAGS += --enable-python=system
endif

ifneq "$(PACKAGE_LIBRELOGO)" "y"
	DEBHELPER_OPTIONS+= -Nlibreoffice-librelogo
endif

ifeq "$(ENABLE_JAVA)" "y"
  ifneq (,$(filter hsqldb, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libhsqldb1.8.0-java $(HSQLDB_MINVER)$(OOO_NO_JAVA_ARCHS), libarchive-zip-perl$(OOO_NO_JAVA_ARCHS)
	BASE_HSQLDB_DEPENDS = libhsqldb1.8.0-java $(HSQLDB_MINVER)
	CONFIGURE_FLAGS += --with-hsqldb-jar=$(HSQLDB_JAR)
  else
	BUILD_DEPS += , libservlet3.1-java
  endif
  ifeq "$(ENABLE_SCRIPT_PROVIDER_BSH)" "y"
    ifneq (,$(filter beanshell, $(SYSTEM_STUFF)))
	BUILD_DEPS_INDEP += , libbsh-java
    endif
	CONFIGURE_FLAGS += --enable-scripting-beanshell
  else
	CONFIGURE_FLAGS += --disble-scripting-beanshell
 	DEBHELPER_OPTIONS += -Nlibreoffice-script-provider-bsh
  endif
  ifeq "$(ENABLE_SCRIPT_PROVIDER_JS)" "y"
	CONFIGURE_FLAGS += --enable-scripting-javascript	
  else
	CONFIGURE_FLAGS += --disable-scripting-javascript	
	DEBHELPER_OPTIONS += -Nlibreoffice-script-provider-js
  endif
endif

ifneq (,$(filter lpsolve, $(SYSTEM_STUFF)))
  ifeq "$(USE_SHARED_LPSOLVE)" "y"
	BUILD_DEPS += , liblpsolve55-dev $(LPSOLVE_MIN_VERSION), lp-solve $(LPSOLVE_MIN_VERSION)
	LPSOLVE_DEP = lp-solve $(LPSOLVE_MIN_VERSION)
  else
	BUILD_DEPS += , liblpsolve55-dev $(LPSOLVE_MIN_VERSION)
  endif
  ifeq "$(USE_LIBSUITESPARSE)" "y"
	BUILD_DEPS += , libsuitesparse-dev $(SUITESPARSE_MIN_VERSION)
  else
	BUILD_DEPS += , libufsparse-dev
  endif
endif

ifeq "$(USE_DBUS)" "y"
	BUILD_DEPS += , libdbus-glib-1-dev (>= 0.70)
	CONFIGURE_FLAGS += --enable-dbus
  ifeq "$(ENABLE_BLUETOOTH)" "y"
    ifneq (,$(filter bluez, $(SYSTEM_STUFF)))
       BUILD_DEPS += , libbluetooth-dev [linux-any]
    endif
  else
	CONFIGURE_FLAGS += --disable-sdremote-bluetooth
  endif
  ifeq "$(ENABLE_PACKAGEKIT)" "y"
	CONFIGURE_FLAGS += --enable-packagekit
  endif
endif

ifeq "$(ENABLE_AVAHI)" "y"
	BUILD_DEPS += , libavahi-client-dev
	CONFIGURE_FLAGS += --enable-avahi
endif

ifeq "$(USE_GSTREAMER)" "y"
	BUILD_DEPS += , libgstreamer1.0-dev
	CONFIGURE_FLAGS += --enable-gstreamer-1-0
	BUILD_DEPS += , libgstreamer-plugins-base1.0-dev
	GSTREAMER_PLUGINS_SUGGESTS += , gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, gstreamer1.0-plugins-ugly, gstreamer1.0-plugins-bad, gstreamer1.0-libav
	AVMEDIA_BE_DEPENDS += , libreoffice-avmedia-backend-gstreamer
else
	CONFIGURE_FLAGS += --disable-gstreamer-1-0
	DEBHELPER_OPTIONS += -Nlibreoffice-avmedia-backend-gstreamer
endif

ifeq "$(USE_VLC)" "y"
	CONFIGURE_FLAGS += --enable-vlc
	LIBVLC_DEP = $(shell debian/scripts/get_libvlc_dep.sh) (>= 2.0.8)
	BUILD_DEPS += , $(LIBVLC_DEP)
  ifeq "$(AVMEDIA_BE_DEPENDS)" ""
	AVMEDIA_BE_DEPENDS += , libreoffice-avmedia-backend-vlc
  else
	AVMEDIA_BE_DEPENDS += | libreoffice-avmedia-backend-vlc
  endif
else
	DEBHELPER_OPTIONS += -Nlibreoffice-avmedia-backend-vlc
endif

ifeq "$(ENABLE_WEBDAV)" "y"
  ifeq "$(WEBDAV_LIB)" "neon"
    ifneq (,$(filter neon, $(SYSTEM_STUFF)))
      ifneq "$(NEON_SECTYPE)" "openssl"
	BUILD_DEPS += , libneon$(NEONSONR)-$(NEON_SECTYPE)-dev
      else
	BUILD_DEPS += , libneon$(NEONSONR)-dev
      endif
    endif
  else
    ifneq (,$(filter apr, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libaprutil1-dev
    endif
    ifneq (,$(filter serf, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libserf-dev
    endif
  endif
  CONFIGURE_FLAGS += --with-webdav=$(WEBDAV_LIB)
else
  CONFIGURE_FLAGS += --with-webdav=no
endif

ifeq "$(ENABLE_HELP)" "n"
	CONFIGURE_FLAGS += --without-helppack-integration --without-help
endif

ifneq (,$(filter redland, $(SYSTEM_STUFF)))
	BUILD_DEPS += , librdf0-dev (>= 1.0.16-2)
	SHLIBS_OVERRIDE += -Xunordf
endif

ifneq (,$(filter epoxy, $(SYSTEM_STUFF)))
	BUILD_DEPS += , libepoxy-dev (>= 1.2)
else
	BUILD_DEPS += , libegl1-mesa-dev
endif
ifneq (,$(filter glm, $(SYSTEM_STUFF)))
  ifeq "$(shell dpkg --compare-versions $(SYSTEM_GCC_VERSION) ge 7.3 && echo true)" "true"
	BUILD_DEPS += , libglm-dev (>= 0.9.9~a2)
  else
	BUILD_DEPS += , libglm-dev (>= 0.9.6.3)
  endif
endif

ifneq (,$(filter gpgmepp, $(SYSTEM_STUFF)))
	BUILD_DEPS+= , libgpgmepp-dev, libgpgme-dev, libgpg-error-dev
endif
ifeq "$(STRETCH_BACKPORT)" "y"
	BUILD_DEPS+= , gnupg <!nocheck>
	BUILD_DEPS+= , gnupg-agent <!nocheck>
else
	BUILD_DEPS+= , gpg <!nocheck>
	BUILD_DEPS+= , gpgconf <!nocheck>
	BUILD_DEPS+= , gpg-agent <!nocheck>
endif

ifeq "$(ENABLE_GIO)" "y"
  ifneq "$(BUILD_GTK3)" "y"
	BUILD_DEPS += , libglib2.0-dev (>= 2.26.0)
  endif
else
	CONFIGURE_FLAGS += --disable-gio
endif

ifeq "$(ENABLE_DCONF)" "y"
	BUILD_DEPS += , libdconf-dev (>= 0.15.2)
else
	CONFIGURE_FLAGS += --disable-dconf
endif

ifeq ($(ENABLE_MERGELIBS),y)
	CONFIGURE_FLAGS += --enable-mergelibs
endif

ifeq ($(ENABLE_LTO),y)
	CONFIGURE_FLAGS += --enable-lto
endif

ifeq ($(USE_GOLD),y)
       DEB_LDFLAGS_MAINT_APPEND += -fuse-ld=gold
export DEB_LDFLAGS_MAINT_APPEND
endif

# Use compiler cache?  Include ccache in DEB_BUILD_OPTIONS for much faster rebuild times
# A complete build uses about 9G of compiler cache.
ifneq (ccache,$(findstring ccache,$(DEB_BUILD_OPTIONS)))
	CONFIGURE_FLAGS += --disable-ccache
endif

## Build n projects in parallel?
## DEB_BUILD_OPTIONS=parallel=<n>
## if not specified LibreOffices configure tries to find it out itself
NUM_CPUS=$(shell echo "$(DEB_BUILD_OPTIONS) " | sed -n 's/^\(.* \)\?parallel=\([0-9]\+\).*$$/\2/p')
AVAIL_CPUS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1)
ifeq "$(PARALLEL_BUILD)" "y"
  # we need to specify it only if it differs, otherwise configure autodetects
  # it.
  ifneq "$(NUM_CPUS)" "$(AVAIL_CPUS)"
	CONFIGURE_FLAGS += --with-parallelism=$(NUM_CPUS)
  endif
else
	CONFIGURE_FLAGS += --without-parallelism
endif

ifeq ($(GCC_VERSION),snapshot)
	BUILD_PATH = /usr/lib/gcc-snapshot/bin:$$PATH
	BUILD_LD_LIBRARY_PATH = /usr/lib/gcc-snapshot/lib:$$LD_LIBRARY_PATH
	BUILD_DEPS += , gcc-snapshot
else
	BUILD_PATH = $(CURDIR)/debian/usr/bin:$$PATH
endif
BUILD_PATH := $(CURDIR)/debian/usr/bin:$(BUILD_PATH)

ifneq "$(ENABLE_DEPENDENCY_TRACKING)" "y"
CONFIGURE_FLAGS += --disable-dependency-tracking
endif

# Because of the stampdir magic, when you actually want to run a rule
# over, you would have to remove the stamp manually.  Now, just do
# 'debian/rules <target> <target> ... FORCE=1', and the stamp files
# that match the given targets will be removed automagically.
stampdir_targets+=prepare
stampdir_targets+=build build-arch build-indep maintscripts
stampdir_targets+=install-common install-arch install-indep langpacks
stampdir_targets+=binary-arch binary-indep
ifdef FORCE
 DUMMY:=$(shell rm -f $(patsubst %,$(STAMP_DIR)/%,$(filter $(stampdir_targets),$(MAKECMDGOALS))))
endif

# If this is defined, then none of the 'long' commands will be run.  Useful
# for testing.
# test_rules=1

# Since the final stages use up a large amount of diskspace, provide targets to
# remove them without needing a full rebuild

# Clean up the package directories (about 830M) 
clean-debdir:
	dh_testdir
	# remove generated symlinks / java wrappers
	rm -rf debian/usr

	find debian -name "*.links" ! -name "libreoffice-dev-doc.links" \
		! -name "libreoffice-java-common.links" \
		! -name "liblibreofficekitgtk.links" \
		! -name "libreoffice-help-common.links" -exec rm {} \;
	if [ -d "$(STAMP_DIR)" ]; then rm -rf "$(STAMP_DIR)"; fi
	rm -f debian/*.bug-script

	rm -f debian/shlibs.local

	rm -f debian/libreoffice-dev-doc.doc-base.* \
		debian/libreoffice-help-*.doc-base
	rm -f debian/libreoffice-help-*.lintian-overrides
	rm -f debian/*.install debian/*.dirs debian/*.changelog
	rm -f debian/*.postinst debian/*.postrm debian/*.preinst debian/*.prerm debian/*.triggers
	rm -f debian/pom*.xml

	rm -rf $(CURDIR)/debian/locales

ifeq "$(ENABLE_JAVA)" "y"
	mh_clean
endif
	dh_clean

clean:
	dh_testroot
	dh_testdir

	if [ -f config.status ]; then \
		$(MAKE) distclean; \
		rm -f config.status; \
	fi
	find $(SOURCE_TREE) -name "*.pyc" -exec rm {} \;
	rm -rf */*.pro.obsolete

	rm -rf $(SOURCE_TREE)/file-lists
	rm -rf $(SOURCE_TREE)/pyuno-for*
	rm -f autogen.lastrun
	rm -f build_error.log
	rm -f config/config_version.h

ifeq "$(HELPISOS)" ""
	rm -rf images*
endif

	rm -f download.list

	rm -f extras/source/truetype/symbol/opens___.ttf

	# obsolete lock file not cleaned up....
	rm -f dbaccess/qa/extras/testdocuments/fdo84315.odb.lck

	# Files created in debian directory
	$(MAKE) -f debian/rules clean-debdir

	$(MAKE) -f debian/rules control


# Generate control file, because we have so many different languages
# Based on script by Martin Quinson <Martin.Quinson@tuxfamily.org>
control: debian/control
debian/control: $(wildcard debian/control*in) $(SOURCE_TREE)/bin/lo-xlate-lang  debian/rules
	chmod 755 $(SOURCE_TREE)/bin/lo-xlate-lang
	sed -e "s#%$(DEB_VENDOR)=\([^%]*\)%#, \1#g#" \
	    -e "s#%[A-Za-z]*=[^%]*%##g#" \
	    -e "s#%BUILD_DEPS_INDEP%#$(strip $(BUILD_DEPS_INDEP))#g" \
	    -e "s#@BUGS@#$(BUGS)#g" \
	    < debian/control.in > debian/control

	for LNUM in $(filter-out en-US,$(LANGPACKISOS)) ; do \
	    LNAME=`$(SOURCE_TREE)/bin/lo-xlate-lang -l $$LNUM | perl -e 'print ucfirst(<STDIN>);'`; \
	    LCODE=`$(SOURCE_TREE)/bin/lo-xlate-lang -i $$LNUM | tr A-Z a-z`; \
	    [ "$$LNUM" = ca-valencia ] && continue; \
	    [ "$$LNUM" = sr-Latn ] && continue; \
	    [ "$$LCODE" = kmr-latn ] && LCODE=kmr; \
	    CCODE=`echo $$LCODE | sed 's/-.*//'`; \
	    case "$$LCODE" in \
		bn) \
			FONT_RECOMMENDS=", fonts-beng"; \
			;; \
		gu) \
			FONT_RECOMMENDS=", fonts-gujr"; \
			;; \
		pa-in) \
			FONT_RECOMMENDS=", fonts-guru"; \
			;; \
		ml) \
			FONT_RECOMMENDS=", fonts-mlym"; \
			;; \
		or) \
			FONT_RECOMMENDS=", fonts-orya"; \
			;; \
		te) \
			FONT_RECOMMENDS=", fonts-telu"; \
			;; \
		ta) \
			FONT_RECOMMENDS=", fonts-taml"; \
			;; \
		hi-in|ne|mr) \
			FONT_RECOMMENDS=", fonts-deva"; \
			;; \
		he) \
			FONT_RECOMMENDS=", culmus"; \
			;; \
		km) \
			FONT_RECOMMENDS=", fonts-khmeros"; \
			;; \
		ar) \
			FONT_RECOMMENDS=", fonts-kacst, fonts-hosny-amiri, fonts-sil-scheherazade, fonts-hosny-thabit"; \
			;; \
		fa) \
			FONT_RECOMMENDS=", fonts-farsiweb"; \
			;; \
		dz) \
			FONT_RECOMMENDS=", fonts-dzongkha"; \
			;; \
		th) \
			FONT_RECOMMENDS=", fonts-thai-tlwg"; \
			;; \
		*) \
			FONT_RECOMMENDS= ;; \
	    esac; \
	    case "$$LCODE" in \
		rw) \
			LOCALES_DEPENDS="locales (>= 2.3.6) | locales-all (>= 2.3.6)" \
			;; \
		ss|ts|km|ns|tn) \
			LOCALES_DEPENDS="locales (>= 2.3.5-12) | locales-all" \
			;; \
		sr) \
			LOCALES_DEPENDS="locales (>= 2.3.6.ds1-5) | locales-all" \
			;; \
		as|or|nr) \
			LOCALES_DEPENDS="locales (>= 2.3.6.ds1-1) | locales-all (>= 2.3.6.ds1-1)" \
			;; \
		sw) \
			LOCALES_DEPENDS="locales (>= 2.13-5) | locales-all (>= 2.13-5)" \
			;; \
		*) \
			LOCALES_DEPENDS="locales | locales-all" \
			;; \
	    esac; \
	    sed -e "s|@LNAME@|$$LNAME|g" -e "s|@LCODE@|$$LCODE|g" \
		-e "s|@CCODE@|$$CCODE|g" \
	        -e "s|@FONT_RECOMMENDS@|$$FONT_RECOMMENDS|g" \
	        -e "s:@LOCALES_DEPENDS@:$$LOCALES_DEPENDS:g" \
		-e "s|@LDAP_LIB@|$(LDAP_LIB)|g" \
	        >> debian/control < debian/control.lang.in; \
	done

ifneq "$(ENABLE_HELP)" "n"
	for LNUM in $(HELPISOS) ; do \
	    LNAME=`$(SOURCE_TREE)/bin/lo-xlate-lang -l $$LNUM | perl -e 'print ucfirst(<STDIN>);'`; \
	    LCODE=`$(SOURCE_TREE)/bin/lo-xlate-lang -i $$LNUM | tr A-Z a-z`; \
	    [ "$$LNUM" = ca-valencia ] && continue; \
	    CCODE=`echo $$LCODE | sed 's/-.*//'`; \
	    sed -e "s|@LNAME@|$$LNAME|g" -e "s|@LCODE@|$$LCODE|g" \
		-e "s|@CCODE@|$$CCODE|g" \
	        >> debian/control < debian/control.help.in; \
	done
	# en_US is in -common
	perl -pi -e 's|(Depends: libreoffice-writer \| language-support-translations-en), libreoffice-l10n-en-us|\1|' \
		debian/control
	perl -pi -e 's|(Depends: libreoffice-writer, libreoffice-l10n-en-us)|\1, fonts-deva|' \
		debian/control
endif
	cat debian/control.ure.in >> debian/control
ifeq "$(ENABLE_JAVA)" "y"
  ifeq "$(ENABLE_MEDIAWIKI)" "y"
	cat debian/control.mediawiki.in >> debian/control
  endif
  ifeq "$(ENABLE_REPORTBUILDER)" "y"
	cat debian/control.reportbuilder.in >> debian/control
  endif
  ifeq "$(ENABLE_NLPSOLVER)" "y"
	cat debian/control.nlpsolver.in >> debian/control
  endif
endif
	cat debian/control.fonts.in >> debian/control
ifeq "$(PACKAGE_SDK)" "y"
	cat debian/control.sdk.in >> debian/control
endif
ifeq "$(PACKAGE_LOKIT)" "y"
	cat debian/control.lokit.in >> debian/control
endif
ifeq "$(BUILD_GTK)" "y"
	cat debian/control.gtk2.in >> debian/control
endif
ifeq "$(BUILD_GTK3)" "y"
	cat debian/control.gtk3.in >> debian/control
endif
ifeq "$(BUILD_KDE)" "y"
	cat debian/control.kde$(KDE_MAJOR).in >> debian/control
endif
ifeq "$(ENABLE_QT5)" "y"
	cat debian/control.qt5.in >> debian/control
endif
	cat debian/control.postgresql.in >> debian/control
ifeq "$(ENABLE_MYSQLNATIVE)" "y"
	cat debian/control.mysql.in >> debian/control
endif
ifeq "$(ENABLE_EVO2)" "y"
	cat debian/control.evolution.in >> debian/control
endif
	cat debian/control.test-packages.in >> debian/control
ifeq "$(PACKAGE_LIBRELOGO)" "y"
	cat debian/control.librelogo.in >> debian/control
endif
	cat debian/control.firebird.in >> debian/control

	cat debian/control.transitionals.in >> debian/control

	perl -pi -e "s,%OOO_ARCHS%,$(OOO_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_64BIT_ARCHS%,$(OOO_64BIT_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_BE_ARCHS%,$(OOO_BE_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_LE_ARCHS%,$(OOO_LE_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_BASE_ARCHS%,$(OOO_BASE_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_NO_BASE_ARCHS%,$(OOO_NO_BASE_ARCHS),"g debian/control
	perl -pi -e "s,%OOO_JAVA_ARCHS%,$(OOO_JAVA_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_ARCH_DEP_EXTENSIONS_ARCHS%,$(OOO_ARCH_DEP_EXTENSIONS_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_REPORTBUILDER_ARCHS%,$(OOO_REPORTBUILDER_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_NO_REPORTBUILDER_ARCHS%,$(OOO_NO_REPORTBUILDER_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_FIREBIRD_ARCHS%,$(OOO_FIREBIRD_ARCHS),g" debian/control
	perl -pi -e "s,%OOO_NO_FIREBIRD_ARCHS%,$(OOO_NO_FIREBIRD_ARCHS),g" debian/control
	perl -pi -e "s#%BUILD_DEPS%#$(strip $(BUILD_DEPS))#g" debian/control
	perl -pi -e "s#%JUNIT_MIN_VER%#$(JUNIT_MIN_VER)#g" debian/control
ifeq "$(BUILD_KDE)" "y"
	perl -pi -e 's/%LO-DESKTOP-INTEGRATION%/libreoffice-gnome | libreoffice-kde$(KDE_MAJOR)/' debian/control
else
	perl -pi -e 's/%LO-DESKTOP-INTEGRATION%/libreoffice-gnome/' debian/control
endif

ifeq (sk,$(findstring sk,$(HELPISOS)))
	perl -pi -e 's/(Depends:.*)libreoffice-l10n-sk(.*)$$/\1libreoffice-l10n-sk, libreoffice-help-cs\2/' debian/control
endif
ifeq (pt-BR,$(findstring pt-BR,$(LANGPACKISOS)))
	perl -pi -e 's/libreoffice2-l10n-pt-br$$/libreoffice2-l10n-pt-br, broffice/' debian/control
	perl -pi -e 's/libreoffice2-l10n-pt-br$$/libreoffice2-l10n-pt-br, broffice/' debian/control
	perl -pi -e 's/libreoffice2-l10n-pt-br$$/libreoffice2-l10n-pt-br, broffice/' debian/control
endif

ifeq "$(MYSQL_FLAVOUR)" "mysql"
	perl -pi -e "s/(Build-Conflicts: .*)/\1,libmariadbclient-dev,/" debian/control
endif
ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-liberation2 (= 2.00.1-4) <!nocheck>,/" debian/control
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-liberation2 (= 2.00.1-5) <!nocheck>,/" debian/control
	# be safe.
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-liberation (= 1:1.07.4-3) <!nocheck>,/" debian/control
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-liberation (= 1:1.07.4-4) <!nocheck>,/" debian/control
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-liberation (= 1:1.07.4-5) <!nocheck>,/" debian/control
	# be sure to use our rebuilt font
	perl -pi -e "s/(Build-Conflicts: .*)/\1,fonts-opensymbol <!nocheck>,/" debian/control
endif

ifeq "$(STRETCH_BACKPORTS)" "y"
	perl -pi -e 's/fonts-noto-mono/fonts-noto-hinted, fonts-noto-mono/' debian/control
else
	perl -pi -e 's/fonts-noto-mono/fonts-noto-core, fonts-noto-ui-core, fonts-noto-mono/' debian/control
endif

	$(PYTHON) debian/scripts/joinctrl.py < debian/control > debian/control.tmp
	mv debian/control.tmp debian/control

	# make -l10n-fi suggest libreoffice-spellcheck-fi to
	# match myspell-fi and libreoffice-soikko/-voikko
	perl -pi -e 's/myspell-dictionary-fi/myspell-dictionary-fi | libreoffice-spellcheck-fi/' debian/control
	perl -pi -e 's/hyphen-fi/hyphen-fi | libreoffice-hyphenation-fi/' debian/control

ifeq "$(USE_DBUS)" "y"
  ifeq "$(ENABLE_BLUETOOTH)" "y"
	perl -pi -e 's/paperconf$$/paperconf\n  * bluez: Bluetooth support for Impress (slideshow remote control)/' debian/control
  endif
	perl -pi -e 's/Description: office productivity suite -- presentation/Suggests: bluez\nDescription: office productivity suite -- presentation/' debian/control
endif

ifneq "$(DICT_DIR)" "/usr/share/hunspell"
	perl -pi -e 's/^Breaks:.*myspell.*\n//' debian/control
endif

ifeq "$(ENABLE_APPARMOR_PROFILES)" "y"
	perl -pi -e 's/ttf-mscorefonts-installer/ttf-mscorefonts-installer, apparmor (>= 2.13.1~)/' debian/control
	perl -pi -e 's/openoffice-unbundled/openoffice-unbundled, apparmor (<< 2.13.1~)/' debian/control

endif

.DELETE_ON_ERROR: debian/control

# All 'important' targets have 2 lines.  The one that is run by
# dpkg-buildpackage or the user, and the one that does the actual work.  This
# indirection is needed so that the 'stamp' files that signify when a rule is
# done can be located in a separate 'stampdir'.  Recall that make has no way to
# know when a goal has been met for a phony target (like "build" or "install").
#
# At the end of each stampdir target, be sure to run the command 'touch $@'
# so that the target will not be run again.  Removing the file will make
# make run the target over.

prepare: $(STAMP_DIR)/prepare
$(STAMP_DIR)/prepare:
	dh_testdir

	# Make sure needed scripts are executable
	set -e;\
	for FILE in debian/scripts/move-if-change \
		    debian/scripts/get_libebook_dep.sh \
		    debian/scripts/get_libvlc_dep.sh \
		    debian/scripts/locale-gen \
		    autogen.sh; \
	do \
	  chmod 755 $$FILE ;\
	done

	mkdir -p $(STAMP_DIR)

	# Make sure we have /proc mounted - otherwise idlc will fail later.
	test -r /proc/version

	# create fake file if file not there; we don't use it anyways.
	if [ ! -f $(TARFILE_LOCATION)/185d60944ea767075d27247c3162b3bc-unowinreg.dll ]; then \
		touch $(TARFILE_LOCATION)/185d60944ea767075d27247c3162b3bc-unowinreg.dll; \
	fi

ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
ifeq (terse,$(findstring terse,$(DEB_BUILD_OPTIONS)))
	if [ -d .pc/do-not-hide-test-output.diff ]; then \
		patch -p1 -R < debian/patches/do-not-hide-test-output.diff; \
		TMP=`mktemp -q`; grep -v do-not-hide-test-output .pc/applied-patches \
			> $$TMP && mv $$TMP .pc/applied-patches; \
		rm -rf .pc/do-not-hide-test-output.diff; \
	fi
endif
endif

	touch $@

.PHONY: config_host.mk
config_host.mk:
	rm -f config.status autogen.lastrun
	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) \
	CLANGDIR=$(CLANGDIR) \
	MARIADBCONFIG=$(MARIADBCONFIG) \
	FIREBIRD_CFLAGS=$(FIREBIRD_CFLAGS) FIREBIRD_LIBS=$(FIREBIRD_LIBS) \
	./autogen.sh $(CONFIGURE_FLAGS)

build:
	$(CURDIR)/debian/rules build-arch
	$(CURDIR)/debian/rules build-indep
	touch $(STAMP_DIR)/$@

build-arch: $(STAMP_DIR)/prepare $(STAMP_DIR)/build-arch
$(STAMP_DIR)/build-arch:
#build-arch: ENABLE_HELP = n PACKAGE_SDK_DOCS = n ENABLE_MEDIAWIKI = n ENABLE_SCRIPT_PROVIDER_BSH = n ENABLE_SCRIPT_PROVIDER_JS = n
	dh_testdir

	# Theoretically this should call ./configure instead of
	# it exists but that causes the configure flags NOT to be hnoured
	# somehow...
	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) \
	CLANGDIR=$(CLANGDIR) \
	MARIADBCONFIG=$(MARIADBCONFIG) \
	FIREBIRD_CFLAGS=$(FIREBIRD_CFLAGS) FIREBIRD_LIBS=$(FIREBIRD_LIBS) \
	./autogen.sh $(CONFIGURE_FLAGS) \
		--without-junit --without-cppunit \
		--disable-ext-wiki-publisher \
		--disable-scripting-javascript --disable-scripting-beanshell \
		--without-doxygen --without-javadoc \
		--with-galleries=no --with-theme="$(DEFAULT_IMAGE)"

	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) ARCH_FLAGS=$(ARCH_FLAGS) TMP=`mktemp -q -d` $(MAKE) build-non-l10n-only

ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	$(CURDIR)/debian/rules check
endif

ifneq "$(BUILD_ISOS)" "en-US"
	# build sysui and some extensions again with all languages; as it contains language-specific help
	# and/or descriptions...
	$(MAKE) sysui.clean
	$(MAKE) mysqlc.clean
	make cmd cmd="cd sysui; export WITH_LANG='$(LANGPACKISOS)'; export WITH_LANG_LIST='$(LANGPACKISOS)'; $(MAKE)"
	make cmd cmd="cd mysqlc; export WITH_LANG='$(LANGPACKISOS)'; export WITH_LANG_LIST='$(LANGPACKISOS)'; $(MAKE)"
endif

	touch $@

build-indep: $(STAMP_DIR)/prepare $(STAMP_DIR)/build-indep
$(STAMP_DIR)/build-indep:
	dh_testdir

ifeq "$(PACKAGE_SDK)" "y"
	if [ -f Makefile ]; then $(MAKE) odk.clean; fi
endif
	if [ -f Makefile ]; then $(MAKE) scp2.clean; fi

	rm -f config.status autogen.lastrun

	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) \
	MARIADBCONFIG=$(MARIADBCONFIG) \
	FIREBIRD_CFLAGS=$(FIREBIRD_CFLAGS) FIREBIRD_LIBS=$(FIREBIRD_LIBS) \
	./autogen.sh $(CONFIGURE_FLAGS) $(CONFIGURE_FLAGS_INDEP)

	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) ARCH_FLAGS=$(ARCH_FLAGS) TMP=`mktemp -q -d` $(MAKE) build-nocheck
ifeq "$(BUILD_TEST_PACKAGES)" "y"
  ifeq "$(ENABLE_JUNIT4)" "y"
	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) ARCH_FLAGS=$(ARCH_FLAGS) TMP=`mktemp -q -d` $(MAKE) Jar_{OOoRunner,test,ConnectivityTools}
  endif
endif

ifeq "$(BUILD_TEST_PACKAGES)" "y"
	find workdir/Zip -name "smoketestdoc*" | xargs rm
	patch -p0 < $(CURDIR)/debian/tests/patches/smoketest-disable-extension-tests.diff
	cd smoketest && $(MAKE) Zip_smoketestdoc
	patch -p0 -R < $(CURDIR)/debian/tests/patches/smoketest-disable-extension-tests.diff
	cp workdir/Zip/smoketestdoc.zip workdir/Zip/smoketestdoc.sxw
endif

ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	$(CURDIR)/debian/rules check-indep
endif

	touch $@


check: 
ifeq "$(RUN_MAKE_CHECK)" "y"
ifneq (,$(findstring $(DEB_HOST_ARCH),$(OOO_NO_BASE_ARCHS)))
	patch -p1 < $(CURDIR)/debian/tests/patches/disable-db-tests.diff
endif
ifeq (,$(findstring $(DEB_HOST_ARCH),$(OOO_EXTENSIONS_ARCHS)))
	cd $(SOURCE_TREE)/smoketest && \
		patch -p1 < $(CURDIR)/debian/tests/patches/smoketest-disable-extension-tests.diff
endif

	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) \
	CLANGDIR=$(CLANGDIR) \
	MARIADBCONFIG=$(MARIADBCONFIG) \
	FIREBIRD_CFLAGS=$(FIREBIRD_CFLAGS) FIREBIRD_LIBS=$(FIREBIRD_LIBS) \
	./autogen.sh $(CONFIGURE_FLAGS) \
		--disable-ext-wiki-publisher \
		--disable-scripting-javascript --disable-scripting-beanshell \
		--without-doxygen --without-javadoc \
		--with-galleries=no --with-theme="$(DEFAULT_IMAGE)"

	# generate the needed en_US.UTF-8 locale
	mkdir -p $(CURDIR)/debian/locales
	USE_CPUS=$(NUM_CPUS) debian/scripts/locale-gen

	# build the tests first
	export gb_SUPPRESS_TESTS=true; \
		$(MAKE) check

        # and now run them
	$(IGNORE_MAKE_CHECK_FAILURES)t=`mktemp -q -d`; \
	cd $(SOURCE_TREE) && \
		export PATH=$(BUILD_PATH); \
		export TMPDIR=$$t; \
		export HOME=$$t; \
		export LOCPATH=$(CURDIR)/debian/locales; \
		export LANG=en_US.UTF-8; \
		export LC_ALL=en_US.UTF-8; \
		unset DISPLAY; \
		if [ -x /usr/bin/gdb ]; then ulimit -c unlimited; fi && \
		$(MAKE) -k check || PARALLELISM=1 $(MAKE) check && \
	rm -rf $$t
ifneq (,$(findstring $(DEB_HOST_ARCH),$(OOO_NO_BASE_ARCHS)))
	patch -p1 -R < $(CURDIR)/debian/tests/patches/disable-db-tests.diff
endif
ifeq (,$(findstring $(DEB_HOST_ARCH),$(OOO_EXTENSIONS_ARCHS)))
	cd $(SOURCE_TREE)/smoketest && \
		patch -p1 -R < $(CURDIR)/debian/tests/patches/smoketest-disable-extension-tests.diff
endif
endif

check-indep:
ifneq (nocheck,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
  ifeq "$(ENABLE_JAVA)" "y"
	# since the gb_SUPPRESS_CHECK stuff in build this isn't checked.
	# probably should, so do it here manually.
	$(IGNORE_MAKE_CHECK_FAILURES)cd odk && \
		$(MAKE) CustomTarget_odk/check
    ifneq (,$(findstring -indep,$(MAKECMDGOALS)))
	# was already checked in check
	$(IGNORE_MAKE_CHECK_FAILURES)if [ ! -e $(STAMP_DIR)/build-arch ]; then \
		cd odk && $(MAKE) CustomTarget_odk/build-examples && \
			$(MAKE) CustomTarget_odk/build-examples_java; \
	fi
    endif
  endif
endif

install: $(STAMP_DIR)/install-common $(STAMP_DIR)/install-arch $(STAMP_DIR)/install-indep

install-common: $(STAMP_DIR)/install-common
$(STAMP_DIR)/install-common:
	dh_testdir
	dh_testroot

	dh_prep
	rm -f debian/*.install debian/*.dirs

	# remove those for safety in case the languages might change on
	# testbuilds. then the /*/ in dh_installdocs in binary-* won't work
	# anymore (different dirs)
	rm -rf $(SOURCE_TREE)/instsetoo_native/util/LibreOffice

	rm -rf $(SOURCE_TREE)/file-lists

	# install LibreOffice.
	cd $(SOURCE_TREE)/; \
		 PATH=$(BUILD_PATH) \
		 DESTDIR=$(CURDIR)/debian/tmp \
		 $(MAKE) distro-pack-install
	export DESTDIR=$(CURDIR)/debian/tmp ;\
	export VERSION=$(OOVER); \
	export OOINSTBASE=$(OODIR); \
	export OOO_LANGS_LIST="$(ISOS)"; \
	$(CURDIR)/debian/scripts/gid2pkgdirs.sh
ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
	make cmd cmd="export DESTDIR=$(CURDIR)/debian/tmp; $(CURDIR)/solenv/bin/install-gdb-printers -a /usr/share/gdb/auto-load/$(OODIR) -c -i /$(OODIR) -p /usr/share/libreoffice/gdb"
endif

	# FIXME
	cd $(CURDIR)/debian/tmp/pkg && rm -rf \*

ifeq "$(ENABLE_QT5)" "y"
	# we need to do it here. If -kde isn't built
	# there's no -kde.install generated, so dh_missing complains later
	mkdir -p debian/tmp/pkg/libreoffice-qt5/$(OODIR)/program
	mv debian/tmp/pkg/libreoffice-kde/$(OODIR)/program/libvclplug_qt5lo.so\
		debian/tmp/pkg/libreoffice-qt5/$(OODIR)/program
endif
ifeq "$(BUILD_KDE)" "y"
	mv debian/tmp/pkg/libreoffice-kde \
		debian/tmp/pkg/libreoffice-kde$(KDE_MAJOR)
endif

ifeq "$(ENABLE_HELP)" "y"
ifeq "$(ENABLE_HTML_HELP)" "y"
	mkdir -p debian/tmp/pkg/libreoffice-help-common/$(OODIR); \
	mv debian/tmp/pkg/libreoffice-common/$(OODIR)/help \
		debian/tmp/pkg/libreoffice-help-common/$(OODIR)
endif
endif

	# prepare install/dir files for dh
	for i in `cd $(CURDIR)/debian/tmp/pkg; ls -1 | xargs`; do \
		echo "$${i}/usr/* usr" > debian/$$i.install; \
		(cd debian/tmp/pkg/$$i; find . -type d | sed -e "s,\./,,") \
			> debian/$$i.dirs; \
	done

	# the english resources should be in -common
	cat debian/libreoffice-l10n-en-US.dirs >> debian/libreoffice-common.dirs
	cat debian/libreoffice-l10n-en-US.install >> debian/libreoffice-common.install
	rm -f debian/libreoffice-l10n-en-US.dirs debian/libreoffice-l10n-en-US.install

	# and ca-valencia in -ca...
ifeq (ca-valencia,$(findstring ca-valencia,$(LANGPACKISOS)))
	if [ -f debian/libreoffice-l10n-ca-valencia.dirs -a -f debian/libreoffice-l10n-ca-valencia.install ]; then \
		cat debian/libreoffice-l10n-ca-valencia.dirs >> debian/libreoffice-l10n-ca.dirs; \
		cat debian/libreoffice-l10n-ca-valencia.install >> debian/libreoffice-l10n-ca.install; \
		rm -f debian/libreoffice-l10n-ca-valencia.dirs debian/libreoffice-l10n-ca-valencia.install; \
	fi
endif
ifeq "$(ENABLE_HELP)" "y"
ifeq (ca-valencia,$(findstring ca-valencia,$(HELPISOS)))
	if [ -f debian/libreoffice-help-ca-valencia.dirs -a -f debian/libreoffice-help-ca-valencia.install ]; then \
		cat debian/libreoffice-help-ca-valencia.dirs >> debian/libreoffice-help-ca.dirs; \
		cat debian/libreoffice-help-ca-valencia.install >> debian/libreoffice-help-ca.install; \
		rm -f debian/libreoffice-help-ca-valencia.dirs debian/libreoffice-help-ca-valencia.install; \
	fi
endif
endif
	# and sr-Latn should be in -sr
ifeq (sr-Latn,$(findstring sr-Latn,$(LANGPACKISOS)))
	if [ -f debian/libreoffice-l10n-sr-Latn.dirs -a -f debian/libreoffice-l10n-sr-Latn.install ]; then \
		cat debian/libreoffice-l10n-sr-Latn.dirs >> debian/libreoffice-l10n-sr.dirs; \
		cat debian/libreoffice-l10n-sr-Latn.install >> debian/libreoffice-l10n-sr.install; \
		rm -f debian/libreoffice-l10n-sr-Latn.dirs debian/libreoffice-l10n-sr-Latn.install; \
	fi
endif

	# This should be in -kmr... This is different like the above where
	# we move different "variants" into the "base" but there's only kmr-Latn
	# for Kurmanji, but I don't really want to have that -latn suffix in 
	# the packages
ifeq (kmr-Latn,$(findstring kmr-Latn,$(LANGPACKISOS)))
	if [ -f debian/libreoffice-l10n-kmr-Latn.dirs -a -f debian/libreoffice-l10n-kmr-Latn.install ]; then \
		cat debian/libreoffice-l10n-kmr-Latn.dirs >> debian/libreoffice-l10n-kmr.dirs; \
		cat debian/libreoffice-l10n-kmr-Latn.install >> debian/libreoffice-l10n-kmr.install; \
		rm -f debian/libreoffice-l10n-kmr-Latn.dirs debian/libreoffice-l10n-kmr-Latn.install; \
	fi
endif

	# fixup case (-l10n-pt-BR -> l10n-pt-br etc.)
	for iso in $(ISOS); do \
		pkgiso=`echo $$iso | tr A-Z a-z`; \
		if [ "$$iso" != "$$pkgiso" ]; then \
			if [ "$$iso" != "en-US" -a \
			  -e debian/libreoffice-l10n-$$iso.dirs -a \
			  -e debian/libreoffice-l10n-$$iso.install ]; then \
				mv debian/libreoffice-l10n-$$iso.dirs \
					debian/libreoffice-l10n-$$pkgiso.dirs; \
				mv debian/libreoffice-l10n-$$iso.install \
					debian/libreoffice-l10n-$$pkgiso.install; \
			fi; \
			if [ -e debian/libreoffice-help-$$iso.dirs -a \
			  -e debian/libreoffice-help-$$iso.install ]; then \
				mv debian/libreoffice-help-$$iso.dirs \
					debian/libreoffice-help-$$pkgiso.dirs; \
				mv debian/libreoffice-help-$$iso.install \
					debian/libreoffice-help-$$pkgiso.install; \
			fi; \
		fi; \
	done

	# fix up still sneaking in ./. They break dh_install (it installs
	# but wrongly complains about it as not-installed files)
	perl -pi -e 's,\./,,' debian/libreoffice-common.install
	perl -pi -e 's,\./,,' debian/ure.install

ifneq "$(ENABLE_HELP)" "n"
	# remove non-packaged localized help. This a) saves space 
	# and b) we need this for the following dh_install as there will be
	# no .install files created and dh_install will warn/fail due
	# to non-installed files.
	for iso in $(filter-out en-US,$(LANGPACKISOS)); do \
		if ! `echo $(HELPISOS) | grep -q $$iso` || [ "$$iso" = "sk" ] ; then \
			pkgiso=`echo $$iso | tr A-Z a-z`; \
			rm -rf debian/tmp/pkg/libreoffice-help-$$iso; \
			rm -f debian/libreoffice-help-$$pkgiso.dirs; \
			rm -f debian/libreoffice-help-$$pkgiso.install; \
		fi; \
	done
endif

ifneq "$(PACKAGE_LIBRELOGO)" "y"
	rm -rf debian/tmp/pkg/libreoffice-librelogo
endif

	for i in calc impress draw base writer; do \
		echo "../usr/share/appdata/libreoffice-$$i.appdata.xml /usr/share/metainfo/" >> $(PKGDIR)-$$i.install; \
	done

ifeq "$(BUILD_KDE)" "y"
	echo "../usr/share/appdata/org.libreoffice.kde.metainfo.xml /usr/share/metainfo/" >> $(PKGDIR)-kde$(KDE_MAJOR).install
endif

ifeq "$(PACKAGE_LOKIT)" "y"
	echo "../../../include/LibreOfficeKit usr/include" > debian/libreofficekit-dev.install
endif
ifeq "$(ENABLE_INTROSPECTION)" "y"
	echo "../usr/share/gir-1.0/LOKDocView-0.1.gir /usr/share/gir-1.0/" >> debian/libreofficekit-dev.install
	echo "../usr/lib/girepository-1.0/LOKDocView-0.1.typelib /usr/lib/$(DEB_HOST_MULTIARCH)/girepository-1.0" >> debian/gir1.2-lokdocview-0.1.install
endif

	dh_installdirs -A
	if [ -x /usr/bin/dh_missing ]; then \
		dh_install -A --sourcedir=debian/tmp/pkg && \
		dh_missing -A --sourcedir=debian/tmp/pkg --fail-missing; \
	else \
		dh_install -A --sourcedir=debian/tmp/pkg --fail-missing; \
	fi

	# somehow this isn't installed anymore on -B builds...
	if [ ! -f debian/libreoffice-report-builder/$(OODIR)/program/librptlo.so ]; then \
		mkdir -p debian/libreoffice-report-builder/$(OODIR)/program/; \
		for i in librptlo.so librptuilo.so librptxmllo.so; do \
			cp $(CURDIR)/instdir/program/$$i \
				 debian/libreoffice-report-builder/$(OODIR)/program/; \
		done; \
	fi

	rm -rf debian/tmp/pkg

	# fix the desktop files....
	cd $(PKGDIR)-common/$(OODIR)/share/xdg/ && \
		for i in *.desktop; do \
			sed -i -e "s/$(OOVER)//" $$i; \
	done
ifneq "$(RELEASE_BUILD)" "y"
	cd $(PKGDIR)-common/$(OODIR)/share/xdg/ && \
		for i in *.desktop; do \
			sed -i -e "s/libreofficedev/libreoffice/" $$i; \
			sed -i -e "s/LibreOfficeDev/LibreOffice/" $$i; \
	done
endif

	# move desktop files to their correct packages (and correct dir)
	# looks like it's pretty nonstandard to have symlinks; this breaks
	# e.g. the  generation from the appdata files. So get rid of those
	# and move them to the libreoffice-* names after all.
	for i in base calc draw impress math writer; do \
		mkdir -p $(PKGDIR)-$$i/usr/share/applications; \
		rm -f $(PKGDIR)-$$i/usr/share/applications/libreoffice-$$i.desktop; \
		mv $(PKGDIR)-common/$(OODIR)/share/xdg/$$i.desktop \
			$(PKGDIR)-$$i/usr/share/applications/libreoffice-$$i.desktop; \
	done

	# move pagein files
	for i in calc draw impress writer; do \
		mv $(PKGDIR)-core/$(OODIR)/program/pagein-$$i \
			$(PKGDIR)-$$i/$(OODIR)/program; \
	done

ifeq "$(ENABLE_HELP)" "y"
	# move help to /usr/share
  ifeq "$(ENABLE_HTML_HELP)" "y"
	mv $(PKGDIR)-help-common/usr/lib \
		$(PKGDIR)-help-common/usr/share
  endif
	for iso in $(HELPISOS); do \
		pkgiso=`echo $$iso | tr A-Z a-z`; \
		if [ -e $(PKGDIR)-help-$$pkgiso/usr ]; then \
			mv $(PKGDIR)-help-$$pkgiso/usr/lib \
				$(PKGDIR)-help-$$pkgiso/usr/share; \
		fi; \
	done

ifeq (sk,$(findstring sk,$(HELPISOS)))
	# add fake sk help
	mkdir -p $(PKGDIR)-help-sk/$(shell echo $(OODIR) | sed -e s/lib/share/)/help
	ln -s cs \
		$(PKGDIR)-help-sk/$(shell echo $(OODIR) | sed -e s/lib/share/)/help/sk
endif
endif

ifeq "$(ENABLE_JAVA)" "y"
	# move officebean.jar into -officebean (They will be moved out of -core
	# in the install-arch target). Do the /usr/share move here already
	mkdir -p $(PKGDIR)-core/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes; \
	mv $(PKGDIR)-common/$(OODIR)/program/classes/officebean.jar \
		$(PKGDIR)-core/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes
	# fix the classpath
	jh_classpath --classpath="ridl.jar unoil.jar jurt.jar juh.jar" \
		$(PKGDIR)-core/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes/officebean.jar
	
  ifeq "$(PACKAGE_BASE)" "y"
	# move sdbc_hsqldb.jar into -base (do the move
	# to /usr/share/java here directly, we do it for the "rest"
	# later
	mkdir -p $(PKGDIR)-base/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes; \
	mkdir -p $(PKGDIR)-base/$(OODIR)/program/classes; \
	mv $(PKGDIR)-common/$(OODIR)/program/classes/sdbc_hsqldb.jar \
		$(PKGDIR)-base/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes; \
	ln -s $(shell echo /$(OODIR) | sed -e s/lib/share/)/program/classes/sdbc_hsqldb.jar \
		$(PKGDIR)-base/$(OODIR)/program/classes/sdbc_hsqldb.jar
    ifneq (,$(filter hsqldb, $(SYSTEM_STUFF)))
	# fix the classpath (file:// breaks javahelper)
	jh_classpath --classpath="$(HSQLDB_JAR) .." \
		$(PKGDIR)-base/$(shell echo /$(OODIR) | sed -e s/lib/share/)/program/classes/sdbc_hsqldb.jar
    endif
    ifeq (,$(filter hsqldb, $(SYSTEM_STUFF)))
	# we need this in -base. Otherwise we get unwanted package differences
	# in the unstable version and backports which might use internal hsqldb
	mkdir -p $(PKGDIR)-base/$(OODIR)/program/classes
	mv $(PKGDIR)-common/$(OODIR)/program/classes/hsqldb.jar \
		$(PKGDIR)-base/$(OODIR)/program/classes
    endif
  else
	# remove sdbc_hsqldb.jar. otherwise ends up in -java-common
	rm -f $(PKGDIR)-common/$(OODIR)/program/classes/sdbc_hsqldb.jar
  endif
endif

ifeq "$(PACKAGE_SDK)" "y"
	# move arch-indep stuff into a libreoffice-dev-common
	mkdir -p $(PKGDIR)-dev-common/usr/include
	mv $(PKGDIR)-dev/usr/include/libreoffice \
		$(PKGDIR)-dev-common/usr/include
	# except include/sal/typesizes.h
	mkdir -p $(PKGDIR)-dev/usr/include/$(DEB_HOST_MULTIARCH)/libreoffice/sal
	mkdir -p $(PKGDIR)-dev/usr/include/libreoffice/sal
	mv $(PKGDIR)-dev-common/usr/include/libreoffice/sal/typesizes.h \
		$(PKGDIR)-dev/usr/include/$(DEB_HOST_MULTIARCH)/libreoffice/sal
	cd $(PKGDIR)-dev/usr/include/libreoffice/sal/ && \
		ln -s /usr/include/$(DEB_HOST_MULTIARCH)/libreoffice/sal/typesizes.h
	mkdir -p $(PKGDIR)-dev-common/usr/share/idl
	mv $(PKGDIR)-dev/usr/share/idl/libreoffice \
		$(PKGDIR)-dev-common/usr/share/idl
	mkdir -p $(PKGDIR)-dev-common/$(OOSDKDIR)
	mv $(PKGDIR)-dev/$(OOSDKDIR)/classes \
		$(PKGDIR)-dev-common/$(OOSDKDIR)
	mv $(PKGDIR)-dev/$(OOSDKDIR)/set* \
		$(PKGDIR)-dev-common/$(OOSDKDIR)
	# settings/dk.mk is not arch-indep
	mkdir -p $(PKGDIR)-dev/$(OOSDKDIR)/settings
	mv $(PKGDIR)-dev-common/$(OOSDKDIR)/settings/dk.mk \
		$(PKGDIR)-dev/$(OOSDKDIR)/settings
	mv $(PKGDIR)-dev/$(OOSDKDIR)/config* \
		$(PKGDIR)-dev-common/$(OOSDKDIR)
	mv $(PKGDIR)-dev/$(OOSDKDIR)/index.html* \
		$(PKGDIR)-dev-common/$(OOSDKDIR)
  ifeq "$(ENABLE_JAVA)" "y"
	mkdir -p $(PKGDIR)-dev-common/usr/share/libreoffice/sdk
	mv $(PKGDIR)-dev/usr/share/libreoffice/sdk/classes \
		$(PKGDIR)-dev-common/usr/share/libreoffice/sdk
  endif
	mkdir -p $(PKGDIR)-dev-common/$(OODIR)/share/glade
	mv $(PKGDIR)-common/$(OODIR)/share/glade/libreoffice-catalog.xml \
		$(PKGDIR)-dev-common/$(OODIR)/share/glade
else
	rm -rf $(PKGDIR)-common/$(OODIR)/share/glade
endif

 ifeq "$(PACKAGE_SDK_DOCS)" "y"
	# move SDK documentation into own package
	rm -rf $(PKGDIR)-dev-doc
	mkdir -p $(PKGDIR)-dev-doc/usr/share/doc/libreoffice
	mv $(PKGDIR)-dev/usr/share/doc/libreoffice/sdk \
		$(PKGDIR)-dev-doc/usr/share/doc/libreoffice
	mkdir -p $(PKGDIR)-dev-doc/$(OOSDKDIR)
	ln -sf /usr/share/doc/libreoffice/sdk/docs \
		$(PKGDIR)-dev-doc/$(OOSDKDIR)/docs
	mv $(PKGDIR)-dev/$(OOSDKDIR)/examples \
		$(PKGDIR)-dev-doc/$(OOSDKDIR)
	rm -f $(PKGDIR)-dev-doc/usr/share/doc/libreoffice/sdk/readme/LICENSE*
	# and fix the symlink now dangling due to the move above
	cd $(PKGDIR)-dev-common/$(OOSDKDIR) && \
		ln -sf /usr/share/doc/libreoffice/sdk/index.html
  endif

ifeq "$(PACKAGE_SDK)" "y"
  ifeq "$(ENABLE_JAVA)" "y"
	# compat/safety symlink for SDK Java stuff moved to /usr/share
	rm -f $(PKGDIR)-dev-common/$(OOSDKDIR)/classes
	mkdir -p $(PKGDIR)-dev-common/$(OOSDKDIR)/classes/com/sun/star/lib/loader
	cd $(PKGDIR)-dev-common/$(OOSDKDIR)/classes/com/sun/star/lib/loader && \
		for i in $(CURDIR)/$(PKGDIR)-dev-common/$(shell echo $(OOSDKDIR) | sed -e s/lib/share/)/classes/com/sun/star/lib/loader/*.class; do \
			ln -s `echo $$i | sed -e 's,$(CURDIR)/$(PKGDIR)-dev-common,,'` `basename $$i`; \
		done
    ifeq "$(PACKAGE_UNOWINREG_DLL)" "y"
	mkdir -p $(PKGDIR)-dev-common/$(OOSDKDIR)/classes/win
	chmod 644 $(PKGDIR)-dev-common/$(shell echo $(OOSDKDIR) | sed -e s/lib/share/)/classes/win/unowinreg.dll
	ln -s /$(shell echo $(OOSDKDIR) | sed -e s/lib/share/)/classes/win/unowinreg.dll \
		$(PKGDIR)-dev-common/$(OOSDKDIR)/classes/win/unowinreg.dll
    else
	rm -rf $(PKGDIR)-dev-common/$(shell echo $(OOSDKDIR) | sed -e s/lib/share/)/classes/win 
    endif
  endif
	chmod 644 $(PKGDIR)-dev-common/$(OOSDKDIR)/configure.pl
	chmod 755 $(PKGDIR)-dev-common/$(OOSDKDIR)/setsdkenv_unix

	# fix permissions
	find $(PKGDIR)-dev-common/usr/share/idl/$(OODIRNAME) -type f -exec chmod 644 {} \;
endif

ifeq "$(ENABLE_EVO2)" "y"
	mkdir -p $(PKGDIR)-evolution/$(OODIR)/presets/database
	mkdir -p $(PKGDIR)-evolution/$(OODIR)/share/registry
	mv $(PKGDIR)-common/$(OODIR)/presets/database/evolocal.odb \
		$(PKGDIR)-evolution/$(OODIR)/presets/database
endif

	# Access2Base IMHO clearly is -base specific :-)
ifeq "$(PACKAGE_BASE)" "y"
	mkdir -p $(PKGDIR)-base/$(OODIR)/share/basic
	mv $(PKGDIR)-common/$(OODIR)/share/basic/Access2Base \
		$(PKGDIR)-base/$(OODIR)/share/basic
	cp $(PKGDIR)-common/$(OODIR)/share/basic/dialog.xlc \
		$(PKGDIR)-base/$(OODIR)/share/basic
	cp $(PKGDIR)-common/$(OODIR)/share/basic/script.xlc \
		$(PKGDIR)-base/$(OODIR)/share/basic
	# FIXME. Does not scale. This has to be a diversion...
	t=`mktemp -q`; grep -v Access2Base $(PKGDIR)-common/$(OODIR)/share/basic/dialog.xlc > \
		$$t && mv $$t $(PKGDIR)-common/$(OODIR)/share/basic/dialog.xlc && rm -f $$t
	t=`mktemp -q`; grep -v Access2Base $(PKGDIR)-common/$(OODIR)/share/basic/script.xlc > \
		$$t && mv $$t $(PKGDIR)-common/$(OODIR)/share/basic/script.xlc && rm -f $$t
else
	rm -rf $(PKGDIR)-common/$(OODIR)/share/basic/Access2Base
	t=`mktemp -q`; grep -v Access2Base $(PKGDIR)-common/$(OODIR)/share/basic/dialog.xlc > \
		$$t && mv $$t $(PKGDIR)-common/$(OODIR)/share/basic/dialog.xlc && rm -f $$t
	t=`mktemp -q`; grep -v Access2Base $(PKGDIR)-common/$(OODIR)/share/basic/script.xlc > \
		$$t && mv $$t $(PKGDIR)-common/$(OODIR)/share/basic/script.xlc && rm -f $$t
endif

ifeq "$(PACKAGE_SDK)" "y"
	# move gengal stuff into -dev
	mkdir -p $(PKGDIR)-dev/$(OODIR)/program
	mv $(PKGDIR)-core/$(OODIR)/program/gengal.bin \
		$(PKGDIR)-dev/$(OODIR)/program
	mv $(PKGDIR)-common/$(OODIR)/program/gengal \
		$(PKGDIR)-dev/$(OODIR)/program
else
	rm -f $(PKGDIR)-core/$(OODIR)/program/gengal.bin
	rm -f $(PKGDIR)-common/$(OODIR)/program/gengal
endif

ifneq "$(ENABLE_REPORTBUILDER)" "y"
	# unneeded. a no-Java arch, so the report-builder can't work anyway.
	# (and we need to remove it here anyway as it otherwise would end up
	# in -base/-core)
	rm -rf $(PKGDIR)-report-builder
	rm -f $(PKGDIR)-core/$(OODIR)/program/librpt*
else
  ifeq "$(PACKAGE_BASE)" "y"
	# move rpt stuff into -report-builder-bin
	rm -rf $(PKGDIR)-report-builder-bin
	mkdir -p $(PKGDIR)-report-builder-bin/$(OODIR)/program
	# it seems that --enable/--disable-reportbuiler affects the install
	# location. sigh.
	if [ -e $(PKGDIR)-core/$(OODIR)/program/librptlo.so ]; then \
		i=core; else i=report-builder; fi; \
	mv $(PKGDIR)-$$i/$(OODIR)/program/librpt* \
		$(PKGDIR)-report-builder-bin/$(OODIR)/program
  endif
endif

	# move uno_packages/cache to /var and create symlink for for
	# documentation referencing it...
	rm -rf $(PKGDIR)-common/$(OODIR)/share/uno_packages
	mkdir -p $(PKGDIR)-core/var/spool/$(OODIRNAME)/uno_packages/cache
	mkdir -p $(PKGDIR)-core/$(OODIR)/share/uno_packages
	ln -s /var/spool/$(OODIRNAME)/uno_packages/cache \
		$(PKGDIR)-core/$(OODIR)/share/uno_packages/cache
	perl -pi -e \
	      's,\$$UNO_SHARED_PACKAGES/cache,file:///var/spool/$(OODIRNAME)/uno_packages/cache,g' \
		$(PKGDIR)-common/$(OODIR)/program/unorc
	# What is this? unorc per default only mentiones
	# share/uno_packages/cache...
	rm -rf $(PKGDIR)-common/$(OODIR)/presets/uno_packages

ifeq "$(ENABLE_FIREBIRD)" "y"
  ifeq (,$(filter firebird, $(SYSTEM_STUFF)))
	mkdir -p $(PKGDIR)-sdbc-firebird/$(OODIR)/share
	mv $(PKGDIR)-common/$(OODIR)/share/firebird \
		$(PKGDIR)-sdbc-firebird/$(OODIR)/share
  endif
endif

	find debian/tmp ! -perm -200 | xargs -r chmod u+w

	touch $@

#
# Generate maintainer scripts
maintscripts: $(STAMP_DIR)/maintscripts
$(STAMP_DIR)/maintscripts: $(wildcard debian/shell-lib*.sh) $(wildcard debian/*.preinst.in) $(wildcard debian/*.postinst.in) $(wildcard debian/*.prerm.in) $(wildcard debian/*.postrm.in) debian/control
	dh_testdir

	rm -f debian/*.{pre,post}{inst,rm}

	# generate maintainer scripts from *.in
	for PKG in $(PACKAGES); do \
	  for FILE in postinst postrm preinst prerm triggers; do \
	    MAINTSCRIPT=debian/$$PKG.$$FILE ; \
	    if [ -e $$MAINTSCRIPT.in ]; then \
	      sed -n '1,/^#INCLUDE_SHELL_LIB#$$/p' < $$MAINTSCRIPT.in | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' > $$MAINTSCRIPT; \
	      if grep -q "lool" $$MAINTSCRIPT.in; then \
		cat debian/shell-lib-lool.sh >> $$MAINTSCRIPT; \
	      fi; \
	      if egrep -q "(validate_extension|sync_extension)" $$MAINTSCRIPT.in; then \
		 cat debian/shell-lib-extensions.sh >> $$MAINTSCRIPT; \
	      fi; \
	      sed -n '/^#INCLUDE_SHELL_LIB#$$/,$$p' < $$MAINTSCRIPT.in | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >> $$MAINTSCRIPT; \
	      perl -pi -e "s/\@LANGPACKISOS\@/$(LANGPACKISOS)/" $$MAINTSCRIPT; \
	      perl -pi -e "s,\@OODIR\@,$(OODIR),g" $$MAINTSCRIPT; \
	    fi; \
	  done; \
	done

	touch $@

# Install files generated by setup into package directories
langpacks: $(STAMP_DIR)/langpacks
$(STAMP_DIR)/langpacks: $(STAMP_DIR)/build-indep $(STAMP_DIR)/install-indep $(SOURCE_TREE)/bin/lo-xlate-lang

	# remove empty uno_packages dirs somehow in the langpacks(?)
	for iso in `echo $(LANGPACKISOS) | tr A-Z a-z`; do \
		rm -rf $(PKGDIR)-l10n-$$iso/$(OODIR)/share/uno_packages; \
	done

	# remove ooo dirs somehow in the langpacks(?)
	for iso in `echo $(LANGPACKISOS) | tr A-Z a-z`; do \
		rm -rf $(PKGDIR)-l10n-$$iso/$(OODIR)/share/dict/ooo; \
	done

	# remove extra license files
	for iso in `echo $(LANGPACKISOS) | tr A-Z a-z`; do \
		rm -rf $(PKGDIR)-l10n-$$iso/$(OODIR)/licenses; \
		rm -f $(PKGDIR)-l10n-$$iso/$(OODIR)/share/readme/LICENSE*; \
	done

	# remove extra readme files
	for iso in `echo $(LANGPACKISOS) | tr A-Z a-z`; do \
		rm -rf $(PKGDIR)-l10n-$$iso/$(OODIR)/readmes; \
		rm -f $(PKGDIR)-l10n-$$iso/$(OODIR)/share/readme/README*; \
	done

	# remove empty help directories
	for iso in `echo $(LANGPACKISOS) | tr A-Z a-z`; do \
		rm -rf $(PKGDIR)-l10n-$$iso/$(shell echo $(OODIR) | sed -e s/lib/share/)/help; \
		rm -rf $(PKGDIR)-l10n-$$iso/$(OODIR)/help; \
	done

	# install technical.dic
	for iso in $(LANGPACKISOS); do \
		if [ "$$iso" = "en-US" ]; then pkg=common; \
		elif [ "$$iso" = "ca-valencia" ]; then pkg=l10n-ca; \
		elif [ "$$iso" = "sr-Latn" ]; then pkg=l10n-sr; \
		elif [ "$$iso" = "kmr-Latn" ]; then pkg=l10n-kmr; \
		else pkg=l10n-`echo $$iso | tr A-Z a-z`; \
		fi; \
		mkdir -p $(PKGDIR)-$$pkg/$(OODIR)/share/wordbook/$$iso; \
		install -m644 $(SOURCE_TREE)/extras/source/wordbook/technical.dic \
			$(PKGDIR)-$$pkg/$(OODIR)/share/wordbook/$$iso/technical.dic; \
	done

ifeq "$(DEB_VENDOR)" "Debian"
	# install Debian presentation template
	otps=`cd debian/templates; echo *.otp`; \
	for iso in $(LANGPACKISOS); do \
	  [ "$$iso" = "en-US" ] && continue; \
	  pkgiso=`echo $$iso | tr \[:upper:\] \[:lower:\]`; \
	  [ "$$pkgiso" = "ca-valencia" ] && pkgiso=ca; \
	  [ "$$pkgiso" = "sr-latn" ] && pkgiso=sr; \
	  [ "$$pkgiso" = "kmr-latn" ] && pkgiso=kmr; \
	  mkdir -p $(PKGDIR)-l10n-$$pkgiso/$(OODIR)/share/template/$$iso/presnt; \
	  for otp in $$otps; do \
	    ln -sf ../../en-US/presnt/$$otp \
	    $(PKGDIR)-l10n-$$pkgiso/$(OODIR)/share/template/$$iso/presnt/$$odt; \
	  done; \
	done
endif

ifeq (he,$(findstring he,$(LANGPACKISOS)))
	perl -pi -e 's#<prop oor:name="CTLSequenceChecking"><value>true</value></prop>#<prop oor:name="CTLSequenceChecking"><value>false</value></prop>#' $(PKGDIR)-l10n-he/$(OODIR)/share/registry/ctl_he.xcd
endif

	touch $@

# Install files generated by setup into arch-dependent package directories
install-arch: $(STAMP_DIR)/install-arch
$(STAMP_DIR)/install-arch: $(STAMP_DIR)/build-arch $(STAMP_DIR)/install-common
	dh_testdir
	dh_testroot
	umask 022

	# move URE Java stuff to /usr/share/java
	mkdir -p debian/ure/usr/share/java
ifeq "$(ENABLE_JAVA)" "y"
	mv debian/ure/$(OODIR)/program/classes/* \
		debian/ure/usr/share/java
	cd debian/ure/$(OODIR)/program/classes && \
		for i in $(CURDIR)/debian/ure/usr/share/java/*.jar; do \
			ln -sf `echo $$i | sed -e 's,$(CURDIR)/debian/ure,,'` `basename $$i`; \
		done
	# fix up Class-Path of jurt.jar to be able to find libjpipe.so.
	# See http://markmail.org/message/yacqa7oowugxwmn2
	jh_classpath --classpath="ridl.jar unoloader.jar ../../lib /$(OODIR)/program ../bin/" \
		$(CURDIR)/debian/ure/usr/share/java/jurt.jar
endif
	# and the public libs to uno-libs3
	mkdir -p debian/uno-libs3/$(OODIR)/program
	mkdir -p debian/uno-libs3/usr/lib/$(DEB_HOST_MULTIARCH)
	for i in debian/ure/$(OODIR)/program/libuno_*so.3; do \
		mv $$i debian/uno-libs3/$(OODIR)/program; \
		ln -sf /$(OODIR)/program/`basename $$i` debian/uno-libs3/usr/lib/$(DEB_HOST_MULTIARCH)/`basename $$i`; \
	done
	# we also need libxmlreaderlo.so, libreglo.so and libunoidllo.so (libuno_cppuhelpergcc3.so.3
        # needs it) and libstorelo.so (libreglo.so needs it)
	for i in libxmlreaderlo.so libreglo.so libstorelo.so libunoidllo.so; do \
		mv debian/ure/$(OODIR)/program/$$i \
			debian/uno-libs3/$(OODIR)/program; \
	done


ifeq "$(BUILD_KDE)" "y"
	# install files for KDEs "create new" ...
	mkdir -p $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/.source
	for i in $(SOURCE_TREE)/extras/source/shellnew/*; do \
		cp $$i $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/.source/`basename $$i`; \
	done
	cat debian/templates/soffice-template.desktop.in \
		| sed -e "s/@APP@/Writer/" \
		| sed -e "s/@EXT@/odt/" \
		| sed -e "s/@TYPE@/text/" \
		> $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/soffice.odt.desktop
	cat debian/templates/soffice-template.desktop.in \
		| sed -e "s/@APP@/Calc/" \
		| sed -e "s/@EXT@/ods/" \
		| sed -e "s/@TYPE@/spreadsheet/" \
		> $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/soffice.ods.desktop
	cat debian/templates/soffice-template.desktop.in \
		| sed -e "s/@APP@/Impress/" \
		| sed -e "s/@EXT@/odp/" \
		| sed -e "s/@TYPE@/presentation/" \
		> $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/soffice.odp.desktop
	cat debian/templates/soffice-template.desktop.in \
		| sed -e "s/@APP@/Draw/" \
		| sed -e "s/@EXT@/odg/" \
		| sed -e "s/@TYPE@/drawing/" \
		> $(PKGDIR)-kde$(KDE_MAJOR)/usr/share/templates/soffice.odg.desktop
endif

	# split out gtk stuff
	rm -rf $(PKGDIR)-gtk2
	mkdir -p -m755 $(PKGDIR)-gtk2/$(OODIR)/program
ifeq "$(BUILD_GTK3)" "y"
	rm -rf $(PKGDIR)-gtk3
	mkdir -p -m755 $(PKGDIR)-gtk3/$(OODIR)/program
	mkdir -p -m755 debian/liblibreofficekitgtk/$(OODIR)/program
	mv $(PKGDIR)-gnome/$(OODIR)/program/libvclplug_gtk3lo.so $(PKGDIR)-gtk3/$(OODIR)/program/
	mv $(PKGDIR)-core/$(OODIR)/program/liblibreofficekitgtk.so debian/liblibreofficekitgtk/$(OODIR)/program/
endif
	mv $(PKGDIR)-gnome/$(OODIR)/program/* $(PKGDIR)-gtk2/$(OODIR)/program/
ifeq "$(BUILD_GTK)" "y"
	mkdir -p -m755 $(PKGDIR)-gtk2/$(OODIR)/share
  ifeq "$(ENABLE_GIO)" "y"
	mv $(PKGDIR)-gtk2/$(OODIR)/program/libucpgio1lo.so \
		$(PKGDIR)-gnome/$(OODIR)/program/
  endif
  ifeq "$(ENABLE_PACKAGEKIT)" "y"
	mv $(PKGDIR)-gtk2/$(OODIR)/program/liblosessioninstalllo.so \
		$(PKGDIR)-gnome/$(OODIR)/program/
  endif
endif

ifeq "$(ENABLE_EVO2)" "y"
	mkdir -p -m755 $(PKGDIR)-evolution/$(OODIR)/program
	mv $(PKGDIR)-gtk2/$(OODIR)/program/libevoab*.so $(PKGDIR)-evolution/$(OODIR)/program
	mv $(PKGDIR)-gnome/$(OODIR)/share/registry/evoab.xcd \
		$(PKGDIR)-evolution/$(OODIR)/share/registry
endif

ifeq "$(PACKAGE_BASE)" "y"
	mkdir -p $(PKGDIR)-base-core/$(OODIR)/program
	mv $(PKGDIR)-base/$(OODIR)/program/libdbalo.so \
		$(PKGDIR)-base-core/$(OODIR)/program
	mv $(PKGDIR)-base/$(OODIR)/program/libdbahsqllo.so \
		$(PKGDIR)-base-core/$(OODIR)/program
endif

ifeq "$(ENABLE_JAVA)" "y"
  ifneq (,$(filter hsqldb, $(SYSTEM_STUFF)))
	# link to system hsqldb
	mkdir -p $(PKGDIR)-base/$(OODIR)/program/classes
	ln -sf $(HSQLDB_JAR) \
	        $(PKGDIR)-base/$(OODIR)/program/classes/hsqldb.jar
  endif
endif

ifeq "$(ENABLE_JAVA)" "y"
	rm -rf $(PKGDIR)-officebean
	mkdir -p -m755 $(PKGDIR)-officebean/$(OODIR)/program/classes
	mkdir -p -m755 $(PKGDIR)-officebean/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes
	mv $(PKGDIR)-core/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes/officebean.jar \
		$(PKGDIR)-officebean/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes
	ln -s $(shell echo /$(OODIR) | sed -e s/lib/share/)/program/classes/officebean.jar \
		 $(PKGDIR)-officebean/$(OODIR)/program/classes/officebean.jar
	mv $(PKGDIR)-core/$(OODIR)/program/libofficebean.so \
		$(PKGDIR)-officebean/$(OODIR)/program
endif

	mkdir -p -m755 $(PKGDIR)-base/usr/share/applications \
	               $(PKGDIR)-core/usr/share/applications

	sed -i -e 's/Office;/Office;Graphics;/' $(PKGDIR)-draw/usr/share/applications/libreoffice-draw.desktop
	# invalid, according to lintian. make it shut up.
	for i in writer calc impress draw math base; do \
		perl -pi -e 's/Application;//; s/X-Red-Hat-Base;//; s/X-SuSE-Core-Office;//; s/X-MandrivaLinux-.*;//;' $(PKGDIR)-$$i/usr/share/applications/libreoffice-$$i.desktop; \
	done

ifeq "$(ENABLE_PYTHON)" "y"
	# PyUNO packaging
	install -d $(PYTHON_SITE)
	# prepend stuff so that it works when the module is not in LOs
	# directories but in $(PYTHON_SITE). Can't be a patch (anymore)
	# as otherwise the python-based unittests fail miserably.
	echo "import sys, os" > $(PYTHON_SITE)/uno.py
	echo "sys.path.append('/$(OODIR)/program')" >> $(PYTHON_SITE)/uno.py
	echo "os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:/$(OODIR)/program/fundamentalrc')" >> $(PYTHON_SITE)/uno.py
	cat debian/python3-uno/$(OODIR)/program/uno.py >> $(PYTHON_SITE)/uno.py
	rm -f debian/python3-uno/$(OODIR)/program/uno.py
	mv debian/python3-uno/$(OODIR)/program/unohelper.py $(PYTHON_SITE)
	touch debian/python3-uno/$(OODIR)/program/pythonloader.unorc
	chmod u+w debian/python3-uno/$(OODIR)/program/pythonloader.unorc
	( echo 'PYTHONHOME=file:///usr/lib/python$(PYMAJOR).$(PYMINOR)' ;\
	  echo 'PYTHONPATH=$$PYTHONHOME $$PYTHONHOME/site-packages $$PYTHONHOME/lib-dynload $$PYTHONHOME/lib-tk $$ORIGIN' \
	) >> debian/python3-uno/$(OODIR)/program/pythonloader.unorc
	chmod u-w debian/python3-uno/$(OODIR)/program/pythonloader.unorc
  ifeq "$(ENABLE_SCRIPT_PROVIDER_PYTHON)" "y"
	rm -f debian/libreoffice-script-provider-python/$(OODIR)/share/extensions/script-provider-for-python/registration/LICENSE
  endif

	mkdir -p debian/python3-uno/usr/share/doc/python3-uno
	cp -r $(SOURCE_TREE)/pyuno/demo \
	  debian/python3-uno/usr/share/doc/python3-uno; \
	for i in $(SOURCE_TREE)/pyuno/doc/*; do \
		cp $$i debian/python3-uno/usr/share/doc/python3-uno; \
	done
	cd debian/python3-uno/usr/share/doc/python3-uno && \
		find . -type d -name "CVS" | xargs -r rm -rf
endif

	# should be empty now, remove if there
	rm -rf $(PKGDIR)-core/$(OODIR)/ure

ifeq "$(PACKAGE_SDK)" "y"
	# create wrapper scripts
	cd $(PKGDIR)-dev/$(OOSDKDIR)/bin && \
	for i in *; do \
		mv $$i $$i.bin && \
		( \
		  echo "#!/bin/sh"; \
		  echo "# wrapper script for OOos SDK programs"; \
		  echo ""; \
		  echo 'LD_LIBRARY_PATH=/$(OODIR)/program /$(OOSDKDIR)/bin/`basename $$0`.bin "$$@"'; \
		) > $$i; \
		chmod 755 $$i; \
	done
        # remove symlink, it should be in -dev-doc
	cd $(PKGDIR)-dev/$(OOSDKDIR) && \
		rm docs

	rm -f $(PKGDIR)-dev/usr/share/doc/libreoffice/sdk/readme/LICENSE.gz
endif

	# remove empty resource directories
	for i in draw base writer impress calc math; do \
		rm -rf $(PKGDIR)-$$i/$(OODIR)/program/resource; \
	done

ifeq "$(ENABLE_MINIMIZER)" "y"
	rm -f $(PKGDIR)-presentation-minimizer/$(OODIR)/share/extensions/presentation-minimizer/registration/LICENSE
endif

ifeq "$(ENABLE_PRESENTER_CONSOLE)" "y"
	rm -f usr/lib/libreoffice/share/extensions/presenter-screen/registration/LICENSE
endif

ifeq "$(ENABLE_MYSQLNATIVE)" "y"
	rm -f $(PKGDIR)-mysql-connector/$(OODIR)/share/extensions/mysql-connector-ooo/registration/LICENSE
endif

ifeq "$(PACKAGE_SDK)" "y"
	# move ui-previewer into -dev
	mkdir -p $(PKGDIR)-dev/$(OODIR)/program
	mv $(PKGDIR)-core/$(OODIR)/program/ui-previewer \
		$(PKGDIR)-dev/$(OODIR)/program
else
	rm -f $(PKGDIR)-core/$(OODIR)/program/ui-previewer
endif

ifeq "$(USE_GSTREAMER)" "y"
	mkdir -p $(PKGDIR)-avmedia-backend-gstreamer/$(OODIR)/program
	mv $(PKGDIR)-core/$(OODIR)/program/libavmediagst.so \
		$(PKGDIR)-avmedia-backend-gstreamer/$(OODIR)/program
endif
ifeq "$(USE_VLC)" "y"
	mkdir -p $(PKGDIR)-avmedia-backend-vlc/$(OODIR)/program
	mv $(PKGDIR)-core/$(OODIR)/program/libavmediavlc.so \
		$(PKGDIR)-avmedia-backend-vlc/$(OODIR)/program
endif

ifeq "$(ENABLE_JAVA)" "y"
	mkdir -p $(PKGDIR)-sdbc-hsqldb/$(OODIR)/program
	mkdir -p $(PKGDIR)-sdbc-hsqldb/usr/lib/libreoffice/program/classes
	mkdir -p $(PKGDIR)-sdbc-hsqldb/usr/share/libreoffice/program/classes
	mv $(PKGDIR)-base/$(OODIR)/program/libhsqldb.so \
		$(PKGDIR)-sdbc-hsqldb/$(OODIR)/program
  ifneq (,$(filter hsqldb, $(SYSTEM_STUFF)))
	mv $(PKGDIR)-base/usr/lib/libreoffice/program/classes/hsqldb.jar \
		$(PKGDIR)-sdbc-hsqldb/usr/lib/libreoffice/program/classes
  endif
	for i in lib share; do \
		mv $(PKGDIR)-base/usr/$$i/libreoffice/program/classes/sdbc_hsqldb.jar \
			$(PKGDIR)-sdbc-hsqldb/usr/$$i/libreoffice/program/classes; \
	done
endif
ifeq "$(ENABLE_FIREBIRD)" "y"
	mkdir -p $(PKGDIR)-sdbc-firebird/$(OODIR)/program
	mv $(PKGDIR)-core/$(OODIR)/program/libfirebird_sdbclo.so \
		$(PKGDIR)-sdbc-firebird/$(OODIR)/program
  ifeq (,$(filter firebird, $(SYSTEM_STUFF)))
	for i in libEngine12.so libfbclient.so.2; do \
		mv $(PKGDIR)-core/$(OODIR)/program/$$i \
			$(PKGDIR)-sdbc-firebird/$(OODIR)/program; \
	done
  endif
endif
	mkdir -p $(PKGDIR)-base-drivers/$(OODIR)/program
	for i in `find $(PKGDIR)-base/$(OODIR)/program/ -name "*.so" \
		-a \! -name "libdbulo*" -a \! -name "libdbaxml*" -a \! -name "libdbp*" -a \! -name "libabplo.so"`; do \
		mv $$i \
			$(PKGDIR)-base-drivers/$(OODIR)/program; \
	done

ifeq "$(ENABLE_JAVA)" "y"
	# somehow --has-package-version doesn't overwrite version and without <version>...</version>
	# we get a NullPointerException when calling mh_installjar
	for i in ridl unoloader; do \
		sed -e s/@version@/$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d~ -f1)/ \
			< $(SOURCE_TREE)/ridljar/pom.$$i.xml > debian/pom.$$i.xml; \
	done
		sed -e s/@version@/$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d~ -f1)/ \
			< $(SOURCE_TREE)/jurt/pom.jurt.xml > debian/pom.jurt.xml
		sed -e s/@version@/$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d~ -f1)/ \
			< $(SOURCE_TREE)/javaunohelper/pom.juh.xml > debian/pom.juh.xml
	
	mh_installpoms -pure
	for i in juh jurt ridl unoloader; do \
		mh_installjar -pure -l debian/pom.$$i.xml instdir/program/classes/$$i.jar; \
	done
	sed -e s/@version@/$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d~ -f1)/ \
		< $(SOURCE_TREE)/bean/pom.officebean.xml > debian/pom.officebean.xml
	mh_installpoms -plibreoffice-officebean
	mh_installjar -plibreoffice-officebean -l debian/pom.officebean.xml instdir/program/classes/officebean.jar
endif

	# fix permission
	chmod 644 $(PKGDIR)-impress/$(OODIR)/program/opengl/vortexVertexShader.glsl

	for i in $(ARCH_DEP_PACKAGES); do \
		if [ -e debian/$$i.bug-script.in ]; then \
			cat debian/$$i.bug-script.in \
				| sed -e "s/@PLATFORMID@/$(PLATFORMID)/" \
				| sed -e "s/@OOVER@/$(OOVER)/" \
				> debian/$$i.bug-script; \
		fi ;\
	done
	# generate .links files from *.in	
	for PKG in $(ARCH_DEP_PACKAGES); do \
	  LINKS=debian/$$PKG.links ; \
	  if [ -e $$LINKS.in ]; then \
	    sed -e "s#\@OODIR\@#$(OODIR)#g" \
		< $$LINKS.in > $$LINKS ; \
	  fi; \
	done
	for PKG in $(ARCH_DEP_PACKAGES); do \
		case $$PKG in \
		uno-libs*|ure*) \
			;; \
		*) \
			cat debian/changelog \
			| sed -e '/^openoffice/,$$d' \
			> debian/$$PKG.changelog; \
			;; \
		esac; \
	done

	touch $@

# Install files generated by setup into arch-independent package directories
install-indep: $(STAMP_DIR)/install-indep
#$(STAMP_DIR)/install-indep: debian/libreoffice.install 
#$(STAMP_DIR)/install-indep: debian/libreoffice.dirs
$(STAMP_DIR)/install-indep: $(STAMP_DIR)/build-indep $(STAMP_DIR)/install-common
	dh_testdir
	dh_testroot

ifneq "$(shell echo $(USE_GSTREAMER)$(USE_VLC) | grep -q y && echo 0)" "0"
	# sound doesn't work anyway, remove the .wav files to save space
	rm -rf $(PKGDIR)-common/$(OODIR)/share/gallery/sounds
	rm -f $(PKGDIR)-common/$(OODIR)/share/gallery/sg9.*
endif

	rm -f $(PKGDIR)-common/$(OODIR)/program/oo_product.bmp

	# install openoffice-xlate-lang
	install -d -m755 $(PKGDIR)-common/usr/share/$(OODIRNAME)/bin
	install -m755 $(SOURCE_TREE)/bin/lo-xlate-lang \
		$(PKGDIR)-common/usr/share/$(OODIRNAME)/bin

ifeq "$(ENABLE_HELP)" "n"
	# when we don't build helpcontent2 here we are missing helpxsl.zip so
	# this file doesn't get installed either. Do it manually..
	mkdir -p -m755 $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/help && \
	cp $(SOURCE_TREE)/xmlhelp/util/main_transform.xsl \
		$(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/help
	cp $(SOURCE_TREE)/xmlhelp/util/idxcaption.xsl \
		$(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/help
	cp $(SOURCE_TREE)/xmlhelp/util/idxcontent.xsl \
		$(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/help
endif

ifeq "$(PACKAGE_SDK)" "y"
  ifeq "$(PACKAGE_SDK_DOCS)" "y"
	rm -f $(PKGDIR)-dev-doc/usr/share/doc/libreoffice-dev-doc/LICENSE
	perl -pi -e 's,license.html,http://www.gnu.org/licenses/lgpl.html,' \
		$(PKGDIR)-dev-doc/$(OOSDKDIR)/index.html
	find $(PKGDIR)-dev-doc/$(OODIR)/sdk/examples -type f -exec chmod 644 {} \;
  endif
endif

ifeq "$(ENABLE_JAVA)" "y"
	# move common Java stuff to -java-common
	rm -rf $(PKGDIR)-java-common
	mkdir -p $(PKGDIR)-java-common/$(OODIR)/program/classes
	mkdir -p $(PKGDIR)-java-common/$(OODIR)/share/Scripts
	mkdir -p $(PKGDIR)-java-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes
	mv $(PKGDIR)-common/$(OODIR)/share/Scripts/java \
		$(PKGDIR)-java-common/$(OODIR)/share/Scripts
	mv $(PKGDIR)-common/$(OODIR)/program/classes/* \
		$(PKGDIR)-java-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes
	cd $(PKGDIR)-java-common/$(OODIR)/program/classes && \
		for i in $(CURDIR)/$(PKGDIR)-java-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/program/classes/*; do \
			case "`basename $$i`" in aportisdoc.jar|pexcel.jar|pocketword.jar) continue ;; \
			*) ln -s `echo $$i | sed -e 's,$(CURDIR)/$(PKGDIR)-java-common,,'` `basename $$i` ;; esac; \
	done

ifeq "$(BUILD_TEST_PACKAGES)" "y"
  ifeq "$(ENABLE_JUNIT4)" "y"
	rm -rf $(PKGDIR)-subsequentcheckbase
	mkdir -p $(PKGDIR)-subsequentcheckbase/$(OODIR)/program/classes/
	for jar in OOoRunner test test-tools ConnectivityTools; do \
		cp workdir/Jar/$$jar.jar $(PKGDIR)-subsequentcheckbase/$(OODIR)/program/classes/; \
	done
  endif

	rm -rf $(PKGDIR)-smoketest-data
	mkdir -p $(PKGDIR)-smoketest-data/usr/share/libreoffice
	cp workdir/Extension/TestExtension.oxt \
		$(PKGDIR)-smoketest-data/usr/share/libreoffice
	cp workdir/Zip/smoketestdoc.sxw \
		$(PKGDIR)-smoketest-data/usr/share/libreoffice
endif
endif

	# fix permissions
	for i in editpic poll savepic show webcast; do \
		chmod 755 $(PKGDIR)-common/$(OODIR)/share/config/webcast/$$i.pl; \
	done
	chmod 644 $(PKGDIR)-common/$(OODIR)/LICENSE.fodt
	chmod 644 $(PKGDIR)-common/$(OODIR)/CREDITS.fodt
	# Do we really need this (ALV2 mandating it) or can this go?
	chmod 644 $(PKGDIR)-common/$(OODIR)/NOTICE
	rm -rf $(PKGDIR)-common/$(OODIR)/LICENSE

	# set PYTHONPATH in unopkg
	perl -pi -e 's,unset XENVIRONMENT,unset XENVIRONMENT\n\nexport PYTHONPATH=\"/$(OODIR)/program\"\n\n,' \
		$(PKGDIR)-common/$(OODIR)/program/unopkg

	mkdir -p debian/fonts-opensymbol/usr/share/fonts/truetype/openoffice
	mv $(PKGDIR)-common/$(OODIR)/share/fonts/truetype/opens___.ttf \
		debian/fonts-opensymbol/usr/share/fonts/truetype/openoffice
	mkdir -p debian/fonts-opensymbol/etc/fonts/conf.d
	mkdir -p debian/fonts-opensymbol/usr/share/fontconfig/conf.avail
	# this only works with --without-fonts. Otherwise we get all stuff here,
	# not only the Symbol->OpenSymbol part... But we don't support --with-fonts
	# build here right now anyway.
	mv $(PKGDIR)-common/$(OODIR)/share/fonts/truetype/fc_local.conf \
		debian/fonts-opensymbol/usr/share/fontconfig/conf.avail/30-opensymbol.conf
	cd debian/fonts-opensymbol/etc/fonts/conf.d/ && \
		ln -s /usr/share/fontconfig/conf.avail/30-opensymbol.conf

	# remove extra license files
	rm -rf $(PKGDIR)-common/$(OODIR)/licenses
	rm -f $(PKGDIR)-common/$(OODIR)/share/readme/LICENSE*
	rm -f $(PKGDIR)-common/$(OODIR)/THIRDPARTYLICENSEREADME.html
	rm -f $(PKGDIR)-common/$(OODIR)/LICENSE.html

	# remove extra readme files
	rm -rf $(PKGDIR)-common/$(OODIR)/readmes
	rm -f $(PKGDIR)-common/$(OODIR)/share/readme/README*
	rm -f $(PKGDIR)-common/$(OODIR)/README.html
	rm -f $(PKGDIR)-common/$(OODIR)/README

	# URE got moved to /usr/lib, so this is obsolete
	for i in ure/lib ure; do \
		if [ -e $(PKGDIR)-common/$(OODIR)/$$i ]; then \
			rmdir $(PKGDIR)-common/$(OODIR)/$$i; \
		fi; \
	done

	# move psprint.conf into /etc
	mkdir -p $(PKGDIR)-common/etc/$(OODIRNAME)
	mv $(PKGDIR)-common/$(OODIR)/share/psprint/psprint.conf \
		$(PKGDIR)-common/etc/$(OODIRNAME)
	ln -s /etc/$(OODIRNAME)/psprint.conf \
		$(PKGDIR)-common/$(OODIR)/share/psprint/psprint.conf

	# prepare a fake sofficerc in the place where OOo expects it
	# which does nothing except reference the "normal" one
	# which we put into /etc
	mv $(PKGDIR)-common/$(OODIR)/program/sofficerc \
		$(PKGDIR)-common/etc/$(OODIRNAME)/sofficerc
	( \
	  echo "# *DO NOT* CHANGE THIS FILE. IT ONLY TAKES THE SETTINGS FROM"; \
	  echo "# /etc/$(OODIRNAME)/sofficerc. CHANGE THAT FILE IF YOU"; \
	  echo "# REALLY WANT TO CHANGE SOMETHING."; \
	  echo "FHS_CONFIG_FILE=file:///etc/$(OODIRNAME)/sofficerc"; \
	  echo "" >> $(PKGDIR)-common/$(OODIR)/program/sofficerc; \
	) > $(PKGDIR)-common/$(OODIR)/program/sofficerc
	cat $(PKGDIR)-common/etc/$(OODIRNAME)/sofficerc \
		| perl -p -e 's/(.*)=(.*)/$$1=\$${\$$FHS_CONFIG_FILE:Bootstrap:$$1}/' \
		>> $(PKGDIR)-common/$(OODIR)/program/sofficerc
	# except for URE_BOOTSTRAP...
	TMP=`mktemp -q`; \
		grep -v URE_BOOTSTRAP $(PKGDIR)-common/$(OODIR)/program/sofficerc > $$TMP && mv $$TMP $(PKGDIR)-common/$(OODIR)/program/sofficerc && \
		grep URE_BOOTSTRAP $(PKGDIR)-common/etc/$(OODIRNAME)/sofficerc >> $(PKGDIR)-common/$(OODIR)/program/sofficerc && \
		grep -v URE_BOOTSTRAP $(PKGDIR)-common/etc/$(OODIRNAME)/sofficerc > $$TMP && mv $$TMP $(PKGDIR)-common/etc/$(OODIRNAME)/sofficerc

	install -m 644 debian/soffice.sh \
	  $(PKGDIR)-common/etc/$(OODIRNAME)/soffice.sh

	set -e; \
	for i in $(IMAGES); do \
		z=images_$$i.zip; p=$$i; \
		if [ "$$i" = "breeze_dark" ]; then p=breeze; fi; \
		if [ "$$i" = "sifr_dark" ]; then p=sifr; fi; \
		mkdir -p $(PKGDIR)-style-$$p/$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config; \
		mv $(PKGDIR)-common/$(OODIR)/share/config/$$z \
			$(PKGDIR)-style-$$p/$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config/; \
		mkdir -p $(PKGDIR)-style-$$p/$(OODIR)/share/config; \
		ln -s /$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config/$$z \
			$(PKGDIR)-style-$$p/$(OODIR)/share/config/$$z; \
	done
	mkdir -p $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config; \
	mv $(PKGDIR)-common/$(OODIR)/share/config/images_helpimg.zip \
		$(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config/; \
	mkdir -p $(PKGDIR)-common/$(OODIR)/share/config; \
	ln -s /$(shell echo $(OODIR) | sed -e s/lib/share/)/share/config/images_helpimg.zip \
		$(PKGDIR)-common/$(OODIR)/share/config/images_helpimg.zip; \

ifeq "$(DEB_VENDOR)" "Debian"
	# install Debian presentation template
	mkdir -p $(PKGDIR)-common/$(OODIR)/share/template/en-US/presnt
	install -m644 debian/templates/*.otp $(PKGDIR)-common/$(OODIR)/share/template/en-US/presnt/
endif

ifeq "$(PACKAGE_SDK)" "y"
	# add symlinks for docs and examples
	cd $(PKGDIR)-dev-doc/$(OOSDKDIR) && \
		rm -rf docs && \
		ln -sf /usr/share/doc/libreoffice/sdk/docs docs
endif

ifeq "$(ENABLE_JAVA)" "y"
  ifeq "$(ENABLE_SCRIPT_PROVIDER_BSH)" "y"
	mkdir -p $(PKGDIR)-script-provider-bsh/$(OODIR)/share/Scripts
	mv $(PKGDIR)-common/$(OODIR)/share/Scripts/beanshell \
		$(PKGDIR)-script-provider-bsh/$(OODIR)/share/Scripts
  endif

  ifeq "$(ENABLE_SCRIPT_PROVIDER_JS)" "y"
	mkdir -p $(PKGDIR)-script-provider-js/$(OODIR)/share/Scripts
	mv $(PKGDIR)-common/$(OODIR)/share/Scripts/javascript \
		$(PKGDIR)-script-provider-js/$(OODIR)/share/Scripts
  endif

  ifeq "$(ENABLE_MEDIAWIKI)" "y"
	rm -f $(PKGDIR)-wiki-publisher/$(OODIR)/share/extensions/wiki-publisher/registration/LICENSE
	rm -f $(PKGDIR)-wiki-publisher/$(OODIR)/share/extensions/wiki-publisher/license/THIRDPARTYLICENSEREADME.html
  endif

  ifeq "$(ENABLE_NLPSOLVER)" "y"
	rm -f $(PKGDIR)-nlpsolver/$(OODIR)/share/extensions/nlpsolver/registration/LICENSE
  endif
endif

	# unopkg creates stuff in there.
	mkdir -p $(PKGDIR)-common/$(OODIR)/share/prereg
	mkdir -p $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/usr/var/)/share/prereg/bundled
	ln -s /$(shell echo $(OODIR) | sed -e s/usr/var/)/share/prereg/bundled \
		$(PKGDIR)-common/$(OODIR)/share/prereg/bundled

	# dedup
	cd $(PKGDIR)-common/usr/share/icons && \
 		rdfind -outputname /dev/null -makesymlinks true hicolor gnome
	# should happen on dh_link, apparently didn't fix the /home/... symlinks
	# so do this...
	symlinks -r -s -c $(PKGDIR)-common

	# looks like it's pretty nonstandard to have symlinks; this breaks
	# e.g. thegeneration from the appdata files. So get rid of those
	# and move them to the libreoffice-* names after all.
	mkdir -p $(PKGDIR)-common/usr/share/applications
	for i in startcenter xsltfilter; do \
		rm -f $(PKGDIR)-common/usr/share/applications/libreoffice-$$i.desktop; \
	mv $(PKGDIR)-common/$(OODIR)/share/xdg/$$i.desktop \
		$(PKGDIR)-common/usr/share/applications/libreoffice-$$i.desktop; \
	done

	# fix the shebangs to make lintian happy
	sed -i "s,/usr/bin/env perl,/usr/bin/perl,g" \
		$(PKGDIR)-common/usr/share/$(OODIRNAME)/bin/lo-xlate-lang
	for i in $(PKGDIR)-common/$(OODIR)/share/config/webcast/*.pl; do \
		sed -i "s,/usr/bin/env perl,/usr/bin/perl,g" $$i; \
	done

	for i in $(ARCH_INDEP_PACKAGES); do \
		if [ -e debian/$$i.bug-script.in ]; then \
			cat debian/$$i.bug-script.in \
				| sed -e "s/@PLATFORMID@/$(PLATFORMID)/" \
				> debian/$$i.bug-script; \
		fi ;\
	done
	# generate .links files from *.in	
	for PKG in $(ARCH_INDEP_PACKAGES); do \
	  LINKS=debian/$$PKG.links ; \
	  if [ -e $$LINKS.in ]; then \
	    sed -e "s#\@OODIR\@#$(OODIR)#g" \
		< $$LINKS.in > $$LINKS ; \
	  fi; \
	done
	for PKG in $(ARCH_INDEP_PACKAGES); do \
		case $$PKG in \
		*-opensymbol) \
			;; \
		*) \
			cat debian/changelog \
			| sed -e '/^openoffice/,$$d' \
			> debian/$$PKG.changelog; \
			;; \
		esac; \
	done

	# install extension shell lib for use by extensions not from here
	install -D -m644 debian/shell-lib-extensions.sh \
		$(PKGDIR)-common/usr/share/$(OODIRNAME)/shell-lib-extensions.sh

ifneq "$(ENABLE_HELP)" "n"
  ifneq "$(ENABLE_HTML_HELP)" "y"
	# those are needed in /usr/share, too
	mkdir -p $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)
	mv $(PKGDIR)-common/$(OODIR)/help \
		$(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)
  endif
endif
	# help is in /usr/share
	sed -i 's,$$(instpath)/help,/$(shell echo $(OODIR) | sed -e s/lib/share/)/help,' \
		$(PKGDIR)-common/$(OODIR)/share/registry/main.xcd

	# compat dirs, the split icons thing need it
	mkdir -p $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/program
	mkdir -p $(PKGDIR)-common/$(shell echo $(OODIR) | sed -e s/lib/share/)/program

	# enable session handling and recovery
	perl -pi -e 's,<prop oor:name="DocumentStoreUIEnabled" oor:type="xs:boolean"><value>false</value></prop>,<prop oor:name="DocumentStoreUIEnabled" oor:type="xs:boolean"><value>true</value></prop>,' $(PKGDIR)-common/$(OODIR)/share/registry/main.xcd

	# examples. move where they belong
	mkdir -p $(PKGDIR)-common/usr/share/doc/libreoffice-common/examples
	for i in oo-ldap.xcd.sample oo-ad-ldap.xcd.sample; do \
		mv $(PKGDIR)-common/$(OODIR)/share/registry/$$i \
			$(PKGDIR)-common/usr/share/doc/libreoffice-common/examples; \
		ln -s /usr/share/doc/libreoffice-common/examples/$$i $(PKGDIR)-common/$(OODIR)/share/registry/$$i; \
	done

	# register technical.dic
	perl -pi -e 's/standard.dic;/standard.dic;technical.dic;/' $(PKGDIR)-common/$(OODIR)/share/registry/main.xcd

#ifeq "$(PACKAGE_SDK)" "y"
#	# install gengal stuff into -dev
#	mkdir -p $(PKGDIR)-dev/$(OODIR)/program
#	install -m644 $(SOURCE_TREE)/svx/$(shell .  $(SOURCE_TREE)/bin/get_config_variables OUTPATH PROEXT; echo $$OUTPATH$$PROEXT)/bin/gengalrc \
#		$(PKGDIR)-common/$(OODIR)/program/gengalrc
#endif

ifeq "$(ENABLE_JAVA)" "y"
	# somehow --has-package-version doesn't overwrite version and without <version>...</version>
	# we get a NullPointerException when calling mh_installjar
	sed -e s/@version@/$(shell echo $(DEB_VERSION_UPSTREAM) | cut -d~ -f1)/ \
		< $(SOURCE_TREE)/unoil/pom.unoil.xml > debian/pom.unoil.xml
	mh_installpoms -plibreoffice-java-common
	mh_installjar -plibreoffice-java-common -l debian/pom.unoil.xml instdir/program/classes/unoil.jar
	# dedup. But why is this NOT a symlink from the start whereas the ure
	# stuff is?
	ln -sf /usr/share/java/unoil.jar $(PKGDIR)-java-common/usr/share/libreoffice/program/classes/unoil.jar
endif

ifeq "$(INSTALL_APPARMOR_PROFILES)" "y"
	mkdir -p $(PKGDIR)-common/etc/apparmor.d
	./sysui/desktop/share/apparmor.sh /$(OODIR)/ sysui/desktop/apparmor/ \
			$(PKGDIR)-common/etc/apparmor.d/ false $(CHECK_APPARMOR_PROFILES)
  ifneq "$(ENABLE_APPARMOR_PROFILES)" "y"
	# disable the apparmor files per default
	mkdir -p $(PKGDIR)-common/etc/apparmor.d/disable
	cd $(PKGDIR)-common/etc/apparmor.d/disable && \
	for i in oosplash senddoc soffice.bin xpdfimport; do \
		ln -sf /etc/apparmor.d/usr.lib.libreoffice.program.$$i \
			usr.lib.libreoffice.program.$$i; \
	done
  endif
endif

	# fix fundamentalrc to not cause 
	# /usr/lib/libreoffice/program/../program/xpdfimport calls
	# we know the path and the apparmor profiles disallow this...
	sed -i "s,^BRAND_BASE_DIR=.*,BRAND_BASE_DIR=file:///$(OODIR)," \
		$(PKGDIR)-common/$(OODIR)/program/fundamentalrc

	touch $@

binary-arch: $(STAMP_DIR)/binary-arch
$(STAMP_DIR)/binary-arch: $(STAMP_DIR)/install-arch debian/control $(STAMP_DIR)/maintscripts
	dh_testdir
	dh_testroot

	for pkg in $(ARCH_DEP_PACKAGES) ; do \
	  rm -f debian/$$pkg.*.debhelper;\
	  rm -rf debian/$$pkg/DEBIAN;\
	done

	# not for uno-libs3/ure, as it otherwise picks up a (wrong) dependency on -core.
	# maybe we should --link-doc=uno-libs3 as everything arch-dep needs it anyway?
	# But how does it play with .symbols then?
	# Also not for extensions, as they have an own version
	# python3-uno has additional examples...
	dh_installdocs -a -A -Nure -Nuno-libs3 \
		-Npython3-uno -Nlibreoffice-mysql-connector -Nlibreoffice -Nlibreofficekit-dev \
		--link-doc=libreoffice-core
	dh_installdocs -pure -puno-libs3 -ppython3-uno -plibreoffice-mysql-connector -plibreoffice -plibreofficekit-dev
	cp workdir/CustomTarget/readlicense_oo/readme/README_en-US \
		$(PKGDIR)-core/usr/share/doc/libreoffice-core/README
	dh_installdebconf -a
	dh_installman -a
	for i in writer calc draw base math impress; do \
		for i in `find $(PKGDIR)-$$i -type l -name "lo*.1"`; do \
			mv $$i $$i.gz; \
			if [ "`readlink $$i`" != "libreoffice.1.gz" ]; then \
				ln -sf libreoffice.1.gz $$i.gz; \
			fi; \
		done; \
	done
	dh_installchangelogs -a -XChangeLog -k
	dh_installmime -a
ifeq "$(ENABLE_PYTHON)" "y"
	dh_python3 -ppython3-uno --no-ext-rename --no-guessing-deps
	dh_python3 -ppython3-uno --no-ext-rename --no-guessing-deps $(OODIR)/program
endif
	dh_lintian -a
	dh_bugfiles -a -A
	dh_link -a
ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
	rm -rf debian/$(UNO_LIBS_DBG_ROOT) debian/$(URE_DBG_ROOT) debian/$(CORE_DBG_ROOT) \
		debian/$(WRITER_DBG_ROOT)
  ifeq "$(USE_DWZ)" "y"
	dh_dwz -a -- $(DWZ_ARGS)
  endif
	dh_strip -a -Nure -Nuno-libs3 $(DH_STRIP_DBG_OPTION_LO)
	dh_strip -pure $(DH_STRIP_DBG_OPTION_URE)
	dh_strip -puno-libs3 $(DH_STRIP_DBG_OPTION_UNO_LIBS)
	# dh_strip --dbg-package= is not idempotent, force copying of the binaries
	# again...
	rm -f $(STAMP_DIR)/install-common
	mkdir -p debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)
	mv $(CURDIR)/debian/tmp/usr/share/gdb/auto-load/$(OODIR)/program \
		debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)
	# I think a -dbg-common is overkill. Although this means that this all only
	# will work if libreoffice-dbg is installed..
	mkdir -p debian/$(CORE_DBG_ROOT)/usr/share/libreoffice/gdb
	mv $(CURDIR)/debian/tmp/usr/share/libreoffice/gdb/libreoffice \
		debian/$(CORE_DBG_ROOT)/usr/share/libreoffice/gdb
	mkdir -p debian/$(WRITER_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program
	mkdir -p debian/$(WRITER_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice/
	for i in sw writerfilter; do \
		if [ -f debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program/lib$${i}lo.so-gdb.py ]; then \
		mv debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program/lib$${i}lo.so-gdb.py \
				debian/$(WRITER_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program/; \
		fi; \
		mv debian/$(CORE_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice/$$i.py \
			debian/$(WRITER_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice; \
	done

	# FIXME: or better ure-dbg (ure/lib?). Then again ure is a link which is in -common
	# anyways...
	mkdir -p debian/$(UNO_LIBS_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program
	mv debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program/libuno_cppu.so.3-gdb.py \
		debian/$(UNO_LIBS_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program
	mv debian/$(CORE_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program/libuno_sal.so.3-gdb.py \
		debian/$(UNO_LIBS_DBG_ROOT)/usr/share/gdb/auto-load/$(OODIR)/program
	mkdir -p debian/$(UNO_LIBS_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice
	mv debian/$(CORE_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice/cppu.py \
		debian/$(UNO_LIBS_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice
	mv debian/$(CORE_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice/sal.py \
		debian/$(UNO_LIBS_DBG_ROOT)/usr/share/libreoffice/gdb/libreoffice
else
	dh_strip -a
endif
	dh_fixperms -a
ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
	# dh_fixperms is not run on -dbgsym. And we get 0775 directories. Fix it
	# manually
	#16:29 < nthykier> _rene_: I would recommend a "find debian/$(CORE_DBG_ROOT) 
	#	debian/$(UNO_LIBS_DBG_ROOT) debian/$(WRITER_DBG_ROOT) -exec 
	#	chmod go=rX,u+rw,a-s {} +"
	#16:29 < nthykier> Should be faster and is the same expression as used by 
	#	dh_fixperms
	find debian/$(CORE_DBG_ROOT) debian/$(UNO_LIBS_DBG_ROOT) debian/$(WRITER_DBG_ROOT) ! -type l -exec chmod go=rX,u+rw,a-s {} +
endif
	dh_icons -a
	dh_compress -a -X.py -X.mk -X.sxd
ifeq "$(ENABLE_INTROSPECTION)" "y"
	dh_girepository -a debian/liblibreofficekitgtk/$(OODIR)/program
endif
	dh_strip_nondeterminism -a
	dh_makeshlibs -puno-libs3 -V"uno-libs3 (>= $(shell grep UREPACKAGEVERSION $(SOURCE_TREE)/instsetoo_native/util/openoffice.lst | awk '{ print $$2 }' | cut -d. -f1-3)~), ure" -- -c0 -d -V -v`echo $(BINARY_VERSION) | cut -d: -f2`
	dh_makeshlibs -n -pure -V"ure (>= $(shell grep UREPACKAGEVERSION $(SOURCE_TREE)/instsetoo_native/util/openoffice.lst | awk '{ print $$2 }' | cut -d. -f1-3)~)" -- -d -V -v`echo $(BINARY_VERSION) | cut -d: -f2`
	dh_installdeb -a
	rm -f debian/shlibs.local
ifeq "$(BUILD_KFREEBSD)" "y"
	cat debian/shlibs.override.libc >> debian/shlibs.local
endif
	# no shlibs dependencies on internal libs (which are dynamic)
ifeq (,$(filter icu, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.icu >> debian/shlibs.local
endif
ifeq (,$(filter libvisio, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libvisio >> debian/shlibs.local
endif
ifeq (,$(filter libwpd, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libwpd >> debian/shlibs.local
endif
ifeq (,$(filter libwpg, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libwpg >> debian/shlibs.local
endif
ifeq (,$(filter libwps, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libwps >> debian/shlibs.local
endif
ifeq (,$(filter libodfgen, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libodfgen >> debian/shlibs.local
endif
ifeq (,$(filter libmwaw, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libmwaw >> debian/shlibs.local
endif
ifeq (,$(filter librevenge, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.librevenge >> debian/shlibs.local
endif
ifeq (,$(filter libetonyek, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libetonyek >> debian/shlibs.local
endif
ifeq (,$(filter libstaroffice, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libstaroffice >> debian/shlibs.local
endif
ifeq (,$(filter orcus, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.orcus >> debian/shlibs.local
endif
ifeq (,$(filter liblangtag, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.liblangtag >> debian/shlibs.local
endif
	# the other way as the above, depend on a newer libcmis to that the
	# advertised google 2-factor-auth fixes are present
ifneq (,$(filter libcmis, $(SYSTEM_STUFF)))
	cat debian/shlibs.override.libcmis >> debian/shlibs.local
endif
ifeq "$(ENABLE_FIREBIRD)" "y"
ifneq (,$(filter firebird, $(SYSTEM_STUFF)))
	# force the values of .shlibs which  gives us a (wanted) (>= 3.0.0~)
	# instead of .symbols which gives os only a (>= 2.5.0.25784~ReleaseCandidate1.ds2)...
	cat /var/lib/dpkg/info/libfbclient2*.shlibs >> debian/shlibs.local
endif
endif

	LD_LIBRARY_PATH="$(FAKEROOT_LIBDIR):debian/uno-libs3/$(OODIR)/program:debian/ure/$(OODIR)/program:$(PKGDIR)-core/$(OODIR)/program:$(PKGDIR)-base-core/$(OODIR)/program:$(PKGDIR)-base/$(OODIR)/program:$(PKGDIR)-writer/$(OODIR)/program" \
		dh_shlibdeps -a \
			-Lure -Luno-libs3 \
			-ldebian/uno-libs3/$(OODIR)/program:debian/ure/$(OODIR)/program:$(PKGDIR)-core/$(OODIR)/program:$(PKGDIR)-base/$(OODIR)/program \
			$(SHLIBS_OVERRIDE)
ifneq (,$(filter redland, $(SYSTEM_STUFF)))
	# dpkg-shlibdeps "in practice" always will look for this in
        # /usr/lib/openoffice/basisX.Y/program due to the RPATH and the
	# dh_shlibdeps would fail. It's excluded, and we now need to do it
	# manually. Saves us a versioned build-conflict with ourselves
	# which quickly can get outdated
	perl -pi -e 's/(shlibs.*$$)/$$1, $(shell cat /var/lib/dpkg/info/$(shell dpkg -S /usr/lib/$(DEB_HOST_MULTIARCH)/`objdump -p $(PKGDIR)-core/$(OODIR)/program/libunordf*.so | grep NEEDED | grep librdf | awk '{ print $$2 }'` | cut -d: -f1)\:$(DEB_HOST_ARCH).shlibs | awk '{ print $$3,$$4,$$5 }')/' $(PKGDIR)-core.substvars
endif
	# Clean up .substvars values added by uno-libs3.symbols (adds uno-libs3, ure):
	# 1) don't make uno-libs3 depend on ure...
	perl -pi -e 's/, ure$$//' debian/uno-libs3.substvars
	# 2) and prevent ure to depend on itself..
	perl -pi -e 's/, ure \(.*\)$$//' debian/ure.substvars
  ifneq (,$(filter coinmp, $(SYSTEM_STUFF)))
	perl -pi -e "s/coinor-libcoinutils3v5/coinor-libcoinutils3v5 $(COINUTILS_MINVER)/" \
		debian/libreoffice-calc.substvars
	perl -pi -e "s/coinor-libcoinmp1v5/coinor-libcoinmp1v5 $(COINMP_MINVER)/" \
		debian/libreoffice-calc.substvars
  endif
ifeq "$(ENABLE_JAVA)" "y"
	for p in $(ARCH_DEP_PACKAGES); do \
		if [ "$$p" = "libreoffice-presentation-console" ]; then continue; fi; \
		jh_depends -p$$p -Xure; \
	done
  ifeq "$(PACKAGE_BASE)" "y"
	perl -pi -e "s/base-files,//" \
		debian/libreoffice-sdbc-hsqldb.substvars
  endif
	# jh_depends adds ure (${source:Version}) entries. They are overly strict
	# and do not fit anyway given ure has a different versioning scheme. Excluded
	# above, readd here  unversioned
	perl -pi -e 's/^(java:Depends.*$$)/\1, ure/' \
		debian/libreoffice-officebean.substvars
endif
# This switch to dh_shlibdeps reduces the 'libXXX not found' warnings but
# causes ldd crashes sometimes when used with fakeroot:
#          -l $(PKGDIR)-core/$(OPENOFFICEDIR)/program
	dh_gencontrol -a $(DEBHELPER_OPTIONS) -Nure -Nuno-libs3 \
		-Nlibreoffice-mysql-connector -- \
		-V"ure:Version=$(shell grep UREPACKAGEVERSION $(SOURCE_TREE)/instsetoo_native/util/openoffice.lst | awk '{ print $$2 }')" \
		-V'base-version=$(BASE_VERSION)' \
		-V'oover=$(OOVER)' \
		-V'next-oover=$(NEXT_OOVER)' \
		-V'help-l10n-virtual-version=$(HELP_L10N_VIRTUAL_VERSION)' \
		-V'base-hsqldb-depends=$(BASE_HSQLDB_DEPENDS)' \
		-V'base-firebird-recommends=$(BASE_FIREBIRD_RECOMMENDS)' \
		-V'java-common-depends=$(JAVA_COMMON_DEPENDS) $(JAVA_COMMON_DEPENDS_VERSION)' \
		-V'java-runtime-depends=$(JAVA_RUNTIME_DEPENDS)' \
		-V'Binary-Version=$(BINARY_VERSION)' \
		-V'ooo-officebean-dep=$(OOO_OFFICEBEAN_DEP)' \
		-V'kde-iconset-dep=$(KDE_ICONSET_DEP)' \
		-V'lpsolve-dep=$(LPSOLVE_DEP)' \
		-V'gstreamer-plugins-suggests=$(GSTREAMER_PLUGINS_SUGGESTS)' \
		-V'libebook-dep=$(LIBEBOOK_DEP)' \
		-V'libvlc-dep=$(LIBVLC_DEP)' \
		-V'idlc-cpp-depends=$(IDLC_CPP_DEPENDS)' \
		-V'pyuno-depends=$(PYUNO_DEPENDS)' \
		-V'avmedia-be-depends=$(AVMEDIA_BE_DEPENDS)' \
		-V'gnome-gtk-recommends=$(GNOME_GTK_RECOMMENDS)' \
		-V'firebird-engine-depends=$(FIREBIRD_ENGINE_DEPENDS)' \
		-V'libsane-suggests=$(shell dpkg -S /usr/lib/$(DEB_HOST_MULTIARCH)/libsane.so.1 | cut -d: -f1)' \
		-v$(BINARY_VERSION)
ifneq (,$(findstring $(DEB_HOST_ARCH),$(OOO_ARCH_DEP_EXTENSIONS_ARCHS)))
ifeq "$(PACKAGE_BASE)" "y"
  ifeq "$(ENABLE_MYSQLNATIVE)" "y"
	dh_gencontrol -plibreoffice-mysql-connector -- \
		-v$(shell grep "<version" $(SOURCE_TREE)/mysqlc/source/description.xml | perl -pi -e 's,<version value=\"(.*)\" />,\1,; s/^\s+//; s/\s+$$//')+LibO`echo $(BINARY_VERSION) | cut -d: -f2`
  endif
endif
endif
	dh_gencontrol -pure -puno-libs3 -- \
		-V"ure:Version=`echo $(BINARY_VERSION) | cut -d: -f2`" \
		-v"`echo $(BINARY_VERSION) | cut -d: -f2`"
ifeq "$(BUILD_DBGSYM_PACKAGES)" "y"
	for i in libreoffice-core libreoffice-writer uno-libs3; do \
		perl -pi -e 's/^(Depends:.*)/\1\nRecommends: gdb, python3-six/' \
		debian/.debhelper/$$i/dbgsym-root/DEBIAN/control; \
	done
	for i in $(filter-out uno-libs3,$(ARCH_DEP_PACKAGES)); do \
		perl -pi -e 's/^(Depends:.*)/\1, uno-libs3-dbgsym/' \
		debian/.debhelper/$$i/dbgsym-root/DEBIAN/control; \
	done
	perl -pi -e 's/Recommends: /Recommends: libreoffice-core-dbgsym, /' \
		debian/$(WRITER_DBG_ROOT)/DEBIAN/control
endif

	dh_md5sums -a
	dh_builddeb -a $(DEBHELPER_OPTIONS)

	touch $@

binary-indep: $(GSI_EXPORT_STAMP) $(STAMP_DIR)/binary-indep
$(STAMP_DIR)/binary-indep: $(STAMP_DIR)/install-indep debian/control $(STAMP_DIR)/maintscripts $(STAMP_DIR)/langpacks
ifneq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),$(OOO_JAVA_ARCHS)))
	echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
	echo "For uploads with binary-all packages, please use arches where Java is enabled"
	echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
endif
	dh_testdir
ifneq ($(PACKAGE_SDK_DOCS),y)
	echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
	echo "For uploads with binary-all packages, please use arches where the SDK docs are enabled!!!!"
	echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
endif
	dh_testdir
	dh_testroot

	for pkg in $(ARCH_INDEP_PACKAGES) ; do \
	  rm -f debian/$$pkg.*.debhelper;\
	  rm -rf debian/$$pkg/DEBIAN;\
	done

ifeq "$(ENABLE_HELP)" "y"
ifeq "$(ENABLE_HTML_HELP)" "y"
	HELP_FILES_COMMON=`find $(CURDIR)/debian/libreoffice-help-common/usr/share -type f | sed -e 's,$(CURDIR)/debian/libreoffice-help-common,,g' | xargs`; \
	for iso in $(HELPISOS); do \
		pkgiso=`echo $$iso | tr A-Z a-z`; \
		HELP_FILES_LANG=`find $(CURDIR)/debian/libreoffice-help-$$pkgiso/usr/share | sed -e "s,$(CURDIR)/debian/libreoffice-help-$$pkgiso,,g" | xargs`; \
		TMP=`mktemp -q`; \
		cp debian/libreoffice-help.doc-base.in $$TMP; \
		echo "Files: $$HELP_FILES_COMMON $$HELP_FILES_LANG" >> $$TMP; \
		cat $$TMP | perl -e 'while(<>) { if (/^Files/) {$$f=1;} if ($$f eq "1") { chomp(); } print $$_; }' > debian/libreoffice-help-$$pkgiso.doc-base; \
		rm -f $$TMP; \
		perl -pi -e 's,([a-z])\/usr/,$$1 \/usr/,g' debian/libreoffice-help-$$pkgiso.doc-base; \
		perl -pi -e 's,([0-9])\/usr/,$$1 \/usr/,g' debian/libreoffice-help-$$pkgiso.doc-base; \
		sed -i s/@LCODE@/$$pkgiso/ debian/libreoffice-help-$$pkgiso.doc-base; \
		sed -i s/@HELPISO@/$$iso/ debian/libreoffice-help-$$pkgiso.doc-base; \
	done
endif
endif

ifeq "$(PACKAGE_SDK)" "y"
	for i in idl cpp java; do \
		cat debian/lo-$$i-ref.in \
			| sed -e "s/@lo_sources_ver@/$(lo_sources_ver)/" \
			> debian/libreoffice-dev-doc.doc-base.lo-$$i-ref; \
	done
	for i in idl cpp; do \
		UDK_FILES=`find $(CURDIR)/debian/libreoffice-dev-doc/usr/share/doc/libreoffice/sdk/docs/$$i/ref -type f ! -name "*.map" -a ! -name "*.md5" | sed -e 's,$(CURDIR)/debian/libreoffice-dev-doc,,g' | xargs`; \
		TMP=`mktemp -q`; \
		cp debian/libreoffice-dev-doc.doc-base.lo-$$i-ref $$TMP; \
		echo "Files: $$UDK_FILES" >> $$TMP; \
		cat $$TMP | perl -e 'while(<>) { if (/^Files/) {$$f=1;} if ($$f eq "1") { chomp(); } print $$_; }' > debian/libreoffice-dev-doc.doc-base.lo-$$i-ref; \
		rm -f $$TMP; \
		perl -pi -e 's,([a-z])\/usr/,$$1 \/usr/,g' debian/libreoffice-dev-doc.doc-base.lo-$$i-ref; \
	done
  ifeq "$(ENABLE_JAVA)" "y"
	UDK_JAVA_FILES=`find $(CURDIR)/debian/libreoffice-dev-doc/usr/share/doc/libreoffice/sdk/docs/java/ref -type f ! -name "javadoc_log.txt" | sed -e 's,$(CURDIR)/debian/libreoffice-dev-doc,,g' | xargs`; \
	echo "Files: $$UDK_JAVA_FILES" >> debian/libreoffice-dev-doc.doc-base.lo-java-ref
	rm -f $(CURDIR)/debian/libreoffice-dev-doc/usr/share/doc/libreoffice-dev/sdk/docs/java/ref/javadoc_log.txt
  endif
endif
	# not for fonts-opensymbol and extensions, as they have an own version.
	# And librelogo gets an own changelog
	# And libreofficekit gets an own README
	# libreoffice-dev-doc installs directly into /usr/share/doc/libreoffice-dev...
	dh_installdocs -i -A -Nlibreoffice-librelogo -Nfonts-opensymbol \
		-Nlibreoffice-wiki-publisher -Nlibreoffice-nlpsolver \
		-Nlibreoffice-dev-doc -Nlibreoffice-smoketest-data \
		--link-doc=libreoffice-common
	dh_installdocs -plibreoffice-librelogo -pfonts-opensymbol -plibreoffice-wiki-publisher -plibreoffice-nlpsolver -plibreoffice-smoketest-data \
		-plibreoffice-dev-doc
	cp workdir/CustomTarget/readlicense_oo/readme/README_en-US \
		$(PKGDIR)-common/usr/share/doc/libreoffice-common/README
	dh_installman -i
	for i in `find $(PKGDIR)-common -type l -name "lo*.1"`; do \
		mv $$i $$i.gz; \
		if [ "`readlink $$i`" != "libreoffice.1.gz" ]; then \
			ln -sf libreoffice.1.gz $$i.gz; \
		fi; \
	done
	dh_installchangelogs -i -XChangeLog -Nlibreoffice-librelogo -k
ifeq "$(PACKAGE_LIBRELOGO)" "y"
	 dh_installchangelogs -plibreoffice-librelogo -k librelogo/source/ChangeLog
endif
ifeq "$(PACKAGE_SDK_DOCS)" "y"
	dh_doxygen -plibreoffice-dev-doc
endif
	dh_installmime -i
ifeq "$(ENABLE_HELP)" "y"
  ifeq "$(ENABLE_HTML_HELP)" "y"
	for iso in $(shell echo $(HELPISOS) | tr A-Z a-z); do \
		sed -e s/@LCODE@/$$iso/ < debian/libreoffice-help.lintian-overrides.in \
			> debian/libreoffice-help-$$iso.lintian-overrides; \
	done
  endif
endif
	dh_lintian -i
	dh_bugfiles -i -A
ifeq "$(STRETCH_BACKPORT)" "y"
	dh_link -i -Nlibreoffice-help-common
else
	dh_link -i
endif
	dh_fixperms -i
	dh_icons -i
ifeq "$(INSTALL_APPARMOR_PROFILES)" "y"
	for i in oosplash senddoc soffice.bin xpdfimport; do \
		dh_apparmor -plibreoffice-common --profile-name=usr.lib.libreoffice.program.$$i; \
	done
endif
	dh_compress -i -X.py -X.mk -X.sxd -X.xcd.sample
	dh_strip_nondeterminism -i
	dh_installdeb -i
ifeq "$(ENABLE_JAVA)" "y"
	for p in $(ARCH_INDEP_PACKAGES); do \
                if echo "$$p" | grep -q help; then continue; fi; \
                jh_depends -p$$p \
			-Xlibreoffice-report-builder; \
        done
endif
	# and it adds a librhino-java Depends where we still use internal rhino
	perl -pi -e "s/librhino-java//" \
		debian/libreoffice-script-provider-js.substvars
ifeq "$(BUILD_TEST_PACKAGES)" "y"
	perl -pi -e 's/junit4/junit4 $(JUNIT_MIN_VER)/' \
		debian/libreoffice-subsequentcheckbase.substvars
endif
	dh_gencontrol -i $(DEBHELPER_OPTIONS) \
		-Nlibreoffice-wiki-publisher \
		-Nlibreoffice-nlpsolver \
		-Nfonts-opensymbol -- \
		-V'base-version=$(BASE_VERSION)' \
		-V'oover=$(OOVER)' \
		-V'next-oover=$(NEXT_OOVER)' \
		-V'help-l10n-virtual-version=$(HELP_L10N_VIRTUAL_VERSION)' \
		-V'java-common-depends=$(JAVA_COMMON_DEPENDS)' \
		-V'java-runtime-depends=$(JAVA_RUNTIME_DEPENDS)' \
		-V'textcat-data-recommends=$(TEXTCAT_DATA_RECOMMENDS)' \
		-V'numbertext-data-recommends=$(NUMBERTEXT_DATA_RECOMMENDS)' \
		-V'pyuno-depends=$(PYUNO_DEPENDS)' \
		-V'help-depends=$(HELP_DEPENDS)' \
		-V'help-common-depends=$(HELP_COMMON_DEPENDS)' \
		-V'Binary-Version=$(BINARY_VERSION)' \
		-v$(BINARY_VERSION)
	dh_gencontrol -pfonts-opensymbol -- \
		-v$(shell echo `echo $(BINARY_VERSION) | cut -d: -f1` + 1 | bc):$(shell fontforge -lang=ff -c 'Open($$1); Print ($$fontversion); Quit(0);' debian/fonts-opensymbol/usr/share/fonts/truetype/openoffice/opens___.ttf)+LibO`echo $(BINARY_VERSION) | cut -d: -f2`
ifeq "$(ENABLE_MEDIAWIKI)" "y"
	dh_gencontrol -plibreoffice-wiki-publisher -- \
		-V'java-common-depends=$(JAVA_COMMON_DEPENDS)' \
		-V'java-runtime-depends=$(JAVA_RUNTIME_DEPENDS)' \
		-v$(shell grep "<version" $(SOURCE_TREE)/swext/mediawiki/src/description.xml | perl -pi -e 's,<version value=\"(.*)\"/>,\1,; s/^\s+//')+LibO`echo $(BINARY_VERSION) | cut -d: -f2`
endif
ifeq "$(ENABLE_NLPSOLVER)" "y"
	dh_gencontrol -plibreoffice-nlpsolver -- \
		-V'java-common-depends=$(JAVA_COMMON_DEPENDS)' \
		-V'java-runtime-depends=$(JAVA_RUNTIME_DEPENDS)' \
		-v$(shell grep "<version" $(SOURCE_TREE)/nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/description.xml | perl -pi -e 's,<version value=\"(.*)\"/>,\1,; s/^\s+//')+LibO`echo $(BINARY_VERSION) | cut -d: -f2`
endif
ifeq "$(ENABLE_REPORTBUILDER)" "y"
	dh_gencontrol -plibreoffice-report-builder -- \
		-V'base-version=$(BASE_VERSION)' \
		-V'report-builder-jar-depends=$(REPORT_BUILDER_JAR_DEPENDS)' \
		-V'java-runtime-depends=$(JAVA_RUNTIME_DEPENDS)'
endif
	dh_md5sums -i
	dh_builddeb -i $(DEBHELPER_OPTIONS)

	touch $@

binary: binary-arch binary-indep

ifeq "$(USE_GIT_TARBALLS)" "y"

# $(1) is the upstream name of the repo
# $(2) is the name of the tarball
# $(3) is the path to archive (empty for everything)
#
# according to policy get-orig-source has to download to the current dir, thus
# should not require a dh_testdir. However, like this we can have clean deps
# from build and download the source, configure, build, pack in on piece. As
# get-orig-source is an optional target anyway, we stick to support only this
# case and not random dirs. see also: debian bug 494141
# also, we need to run configure to create the external tarball anyway

GIT_INSTALLED:=$(shell which git >/dev/null 2>/dev/null && echo "y")

get_orig_tarball=$(CURDIR)/../libreoffice_$(DEB_VERSION_UPSTREAM).orig$(1).tar.xz

define pack_gittarball
$(if $(GIT_INSTALLED),,$(error You need git.))
dh_testdir
TMPD=`mktemp -d $(if $(TMP),-p $(TMP))` && \
mkdir $${TMPD}/archive && \
git clone --bare $(GIT_BASEURL)/$(1) $${TMPD}/repo -b $(GIT_BRANCH) && \
git archive --remote $${TMPD}/repo --format=tar --prefix libreoffice-$(DEB_VERSION_UPSTREAM)/ $(GIT_TAG) |tar x -C $${TMPD}/archive && \
tar cvJf $(2) -C $${TMPD}/archive/$(3) --transform 's,./,,' . && \
rm -rf $${TMPD}
endef

define unpack_gittarball
dh_testdir
mkdir -p $(CURDIR)/$(1)
test -f $(CURDIR)/$(1)/.gitignore || tar xvJf $(2) -C $(CURDIR)/$(1) $(3)
endef

ifneq ($(filter get-orig-source unpack,$(MAKECMDGOALS)),)
$(call get_orig_tarball):
	$(call pack_gittarball,core,$@,)

$(call get_orig_tarball,-helpcontent2):
	$(call pack_gittarball,help,$@,libreoffice-$(DEB_VERSION_UPSTREAM)/)

$(call get_orig_tarball,-%):
	$(call pack_gittarball,$*,$@,libreoffice-$(DEB_VERSION_UPSTREAM)/)

# Get upstream external sources
$(call get_orig_tarball,-tarballs): helpcontent2/makefile.pmk translations/makefile.mk .gitignore
	dh_testdir
	rm -rf tarballs
	mkdir -p tarballs
	quilt push -a
	./autogen.sh $(filter-out --disable-fetch-external,$(CONFIGURE_FLAGS)) --with-all-tarballs
	$(MAKE) download gb_LO_VER=$(DEB_VERSION_UPSTREAM)
	tar cvJf $@ -C tarballs --transform 's,./,,' .

# using flag files for unpacking
.gitignore: $(call get_orig_tarball)
	$(call unpack_gittarball,,$<,--strip-components=1)

translations/makefile.mk:  $(call get_orig_tarball,-translations)
	$(call unpack_gittarball,translations,$<,)

helpcontent2/makefile.pmk:  $(call get_orig_tarball,-helpcontent2)
	$(call unpack_gittarball,helpcontent2,$<,)

tarballs/fetch.log: $(call get_orig_tarball,-tarballs) patched
	$(call unpack_gittarball,tarballs,$<,)

get-orig-source: $(call get_orig_tarball,-tarballs) tarballs/fetch.log
	dh_testdir

unpack: tarballs/fetch.log
	dh_testdir
endif
else
get-orig-source:
	PATH=$(CURDIR)/debian/scripts:$$PATH uscan --watchfile=$(CURDIR)/debian/watch --verbose --force
endif

.PHONY: control
.PHONY: clean-debdir clean-instsetoo clean-objectdirs clean default
.PHONY: prepare build build-indep build-arch install-arch install-indep
.PHONY: get-orig-source unpack patched
.PHONY: $(stampdir_targets)

# vim:set noet ai sts=8 sw=8 tw=0: