summaryrefslogtreecommitdiffstats
path: root/debian/_base/common
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2021-05-14 13:01:32 +0200
committerSlávek Banko <slavek.banko@axis.cz>2021-05-16 10:45:34 +0200
commit938a9897e75d1d2359dd48025a35c31ba9af06a2 (patch)
tree252db1d5adae729db0a4679c848f7862c8f4d76e /debian/_base/common
parent1b7fda4f91482574988731a5753c9bbd40dee0e7 (diff)
downloadtde-packaging-938a9897e75d1d2359dd48025a35c31ba9af06a2.tar.gz
tde-packaging-938a9897e75d1d2359dd48025a35c31ba9af06a2.zip
DEB cmake: Add a standalone package for TDE CMake modules.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz> (cherry picked from commit 72eecb73e30b9ef2e6ead11d41efe256d7246567)
Diffstat (limited to 'debian/_base/common')
-rw-r--r--debian/_base/common/cmake/debian/cdbs/cmake-versions.pl19
-rw-r--r--debian/_base/common/cmake/debian/cdbs/debian-tde.mk246
-rw-r--r--debian/_base/common/cmake/debian/cdbs/versions.pl19
-rw-r--r--debian/_base/common/cmake/debian/changelog5
-rw-r--r--debian/_base/common/cmake/debian/compat1
-rw-r--r--debian/_base/common/cmake/debian/control16
-rw-r--r--debian/_base/common/cmake/debian/copyright18
-rw-r--r--debian/_base/common/cmake/debian/patches/series0
-rwxr-xr-xdebian/_base/common/cmake/debian/rules18
-rw-r--r--debian/_base/common/cmake/debian/source/format1
-rw-r--r--debian/_base/common/cmake/debian/source/options6
11 files changed, 349 insertions, 0 deletions
diff --git a/debian/_base/common/cmake/debian/cdbs/cmake-versions.pl b/debian/_base/common/cmake/debian/cdbs/cmake-versions.pl
new file mode 100644
index 000000000..6bbbec325
--- /dev/null
+++ b/debian/_base/common/cmake/debian/cdbs/cmake-versions.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+
+my $version = `cmake --version | awk '/^cmake version/ {print \$3}' | tr -d '\n'`;
+my ($version3, $version3_next);
+my ($version2, $version2_next);
+
+($version3 = $version) =~ s/^(([^.]+\.){2}[^.+~-]+)[.+~-]?[^-]*-[^-]+$/$1/;
+($version2 = $version3) =~ s/\.[^.]+$//;
+
+($version3_next = $version3) =~ s/(?<=\.)(\d+)[a-z]?$/($1+1)/e;
+($version2_next = $version2) =~ s/(?<=\.)(\d+)$/($1+1)/e;
+
+print "CMake-Version3=$version3\n";
+print "CMake-Version2=$version2\n";
+print "CMake-Next-Version3=$version3_next\n";
+print "CMake-Next-Version2=$version2_next\n";
diff --git a/debian/_base/common/cmake/debian/cdbs/debian-tde.mk b/debian/_base/common/cmake/debian/cdbs/debian-tde.mk
new file mode 100644
index 000000000..f36e3527c
--- /dev/null
+++ b/debian/_base/common/cmake/debian/cdbs/debian-tde.mk
@@ -0,0 +1,246 @@
+# -*- mode: makefile; coding: utf-8 -*-
+# Copyright © 2003 Christopher L Cheney <ccheney@debian.org>
+# Copyright © 2019 TDE Team
+# Description: A class for TDE packages; sets TDE environment variables, etc
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2, or (at
+# your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+ifndef _cdbs_bootstrap
+_cdbs_scripts_path ?= /usr/lib/cdbs
+_cdbs_rules_path ?= /usr/share/cdbs/1/rules
+_cdbs_class_path ?= /usr/share/cdbs/1/class
+endif
+
+ifndef _cdbs_class_debian-qt-kde
+_cdbs_class_debian-qt-kde := 1
+
+# for dh_icons
+CDBS_BUILD_DEPENDS := $(CDBS_BUILD_DEPENDS), debhelper (>= 5.0.7ubuntu4)
+
+# Note: This _must_ be included before autotools.mk, or it won't work.
+common-configure-arch common-configure-indep:: debian/stamp-cvs-make
+debian/stamp-cvs-make:
+ifndef _cdbs_class_cmake
+ cp -Rp /usr/share/aclocal/libtool.m4 admin/libtool.m4.in
+ifneq "$(wildcard /usr/share/libtool/config/ltmain.sh)" ""
+ cp -Rp /usr/share/libtool/config/ltmain.sh admin/ltmain.sh
+endif
+ifneq "$(wildcard /usr/share/libtool/build-aux/ltmain.sh)" ""
+ cp -Rp /usr/share/libtool/build-aux/ltmain.sh admin/ltmain.sh
+endif
+ $(MAKE) -C $(DEB_SRCDIR) -f admin/Makefile.common dist;
+endif
+ touch debian/stamp-cvs-make
+
+include $(_cdbs_rules_path)/buildcore.mk$(_cdbs_makefile_suffix)
+
+ifdef _cdbs_tarball_dir
+DEB_BUILDDIR = $(_cdbs_tarball_dir)/obj-$(DEB_BUILD_GNU_TYPE)
+else
+DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE)
+endif
+
+ifndef _cdbs_class_cmake
+include $(_cdbs_class_path)/autotools.mk$(_cdbs_makefile_suffix)
+endif
+
+ifdef _cdbs_class_cmake
+ifneq "$(wildcard /usr/bin/ninja)" ""
+MAKE = ninja -v
+DEB_MAKE_ENVVARS += DESTDIR=$(DEB_DESTDIR)
+DEB_MAKE_INSTALL_TARGET = install
+DEB_CMAKE_NORMAL_ARGS += -GNinja
+endif
+endif
+
+ifndef _cdbs_rules_patchsys_quilt
+DEB_PATCHDIRS := debian/patches/common debian/patches
+endif
+
+export kde_cgidir = \$${libdir}/cgi-bin
+export kde_confdir = \$${sysconfdir}/trinity
+export kde_htmldir = \$${datadir}/doc/tde/HTML
+
+DEB_KDE_ENABLE_FINAL := yes
+DEB_INSTALL_DOCS_ALL :=
+
+DEB_DH_MAKESHLIBS_ARGS_ALL := -V
+DEB_SHLIBDEPS_INCLUDE = $(foreach p,$(PACKAGES_WITH_LIBS),debian/$(p)/usr/lib)
+
+DEB_AC_AUX_DIR = $(DEB_SRCDIR)/admin
+DEB_CONFIGURE_INCLUDEDIR = "\$${prefix}/include"
+DEB_COMPRESS_EXCLUDE = .dcl .docbook -license .tag .sty .el
+
+# The default gzip compressor has been changed in dpkg >= 1.17.0.
+deb_default_compress = $(shell LANG=C dpkg-deb --version | head -n1 | \
+ sed -e "s|.*version ||" -e "s| .*||" | \
+ xargs -r dpkg --compare-versions 1.17.0 lt \
+ && echo xz || echo gzip)
+ifeq ($(deb_default_compress),gzip)
+DEB_DH_BUILDDEB_ARGS += -- -Z$(shell dpkg-deb --help | grep -q ":.* xz[,.]" \
+ && echo xz || echo bzip2)
+endif
+
+ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ cdbs_treat_me_gently_arches := arm m68k alpha ppc64 armel armeb
+ ifeq (,$(filter $(DEB_HOST_ARCH_CPU),$(cdbs_treat_me_gently_arches)))
+ cdbs_kde_enable_final = $(if $(DEB_KDE_ENABLE_FINAL),--enable-final,)
+ else
+ cdbs_kde_enable_final =
+ endif
+endif
+
+ifneq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
+ cdbs_kde_enable_final =
+ cdbs_kde_enable_debug = --enable-debug=yes
+else
+ cdbs_kde_enable_debug = --disable-debug
+endif
+
+ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS)))
+ cdbs_kde_enable_debug = --enable-debug=full
+endif
+
+DEB_BUILD_PARALLEL ?= true
+
+cdbs_configure_flags += \
+ --with-qt-dir=/usr/share/qt3 \
+ --disable-rpath \
+ --with-xinerama \
+ $(cdbs_kde_enable_final) \
+ $(cdbs_kde_enable_debug)
+
+
+# This is a convenience target for calling manually.
+# It's not part of the build process.
+buildprep: clean apply-patches
+ifndef _cdbs_class_cmake
+ $(MAKE) -f admin/Makefile.common dist
+endif
+ debian/rules clean
+
+.tdepkginfo:
+ echo "# TDE package information" >.tdepkginfo
+ dpkg-parsechangelog | sed -n "s|^Source: |Name: |p" >>.tdepkginfo
+ dpkg-parsechangelog | sed -n "s|^Version: |Version: |p" >>.tdepkginfo
+ date +"DateTime: %m/%d/%Y %H:%M" -u -d "$$(dpkg-parsechangelog | sed -n 's|^Date: ||p')" >>.tdepkginfo
+
+post-patches:: .tdepkginfo
+
+common-build-arch:: debian/stamp-man-pages
+debian/stamp-man-pages:
+ if ! test -d debian/man/out; then mkdir -p debian/man/out; fi
+ for f in $$(find debian/man -name '*.sgml'); do \
+ docbook-to-man $$f > debian/man/out/`basename $$f .sgml`.1; \
+ done
+ for f in $$(find debian/man -name '*.man'); do \
+ soelim -I debian/man $$f \
+ > debian/man/out/`basename $$f .man`.`head -n1 $$f | awk '{print $$NF}'`; \
+ done
+ touch debian/stamp-man-pages
+
+common-binary-indep::
+ ( set -e; \
+ tmpf=`mktemp debian/versions.XXXXXX`; \
+ perl debian/cdbs/versions.pl >$$tmpf; \
+ for p in $(DEB_INDEP_PACKAGES); do \
+ cat $$tmpf >>debian/$$p.substvars; \
+ done; \
+ rm -f $$tmpf )
+
+common-binary-arch::
+ ( set -e; \
+ tmpf=`mktemp debian/versions.XXXXXX`; \
+ perl debian/cdbs/versions.pl >$$tmpf; \
+ for p in $(DEB_ARCH_PACKAGES); do \
+ cat $$tmpf >>debian/$$p.substvars; \
+ done; \
+ rm -f $$tmpf )
+ # update multi-arch path in install files
+ ls -d debian/* | \
+ grep -E "(install|links)$$" | \
+ while read a; do \
+ [ -d $$a ] || [ -f $$a.arch ] || \
+ ! grep -q "\$$(DEB_HOST_MULTIARCH)" $$a || \
+ sed -i.arch "s|\$$(DEB_HOST_MULTIARCH)|$(DEB_HOST_MULTIARCH)|g" $$a; \
+ done
+
+clean::
+ rm -rf debian/man/out
+ -rmdir debian/man
+ rm -f debian/stamp-man-pages
+ rm -rf debian/shlibs-check
+ # revert multi-arch path in install files
+ ls -d debian/* | \
+ grep -E "(install|links)$$" | \
+ while read a; do \
+ [ ! -f $$a.arch ] || \
+ mv $$a.arch $$a; \
+ done
+
+$(patsubst %,binary-install/%,$(DEB_PACKAGES)) :: binary-install/%:
+ if test -x /usr/bin/dh_icons; then dh_icons -p$(cdbs_curpkg) $(DEB_DH_ICONCACHE_ARGS); fi
+ if test -x /usr/bin/dh_desktop; then dh_desktop -p$(cdbs_curpkg) $(DEB_DH_DESKTOP_ARGS); fi
+ if test -e debian/$(cdbs_curpkg).lintian; then \
+ install -p -D -m644 debian/$(cdbs_curpkg).lintian \
+ debian/$(cdbs_curpkg)/usr/share/lintian/overrides/$(cdbs_curpkg); \
+ fi
+ if test -e debian/$(cdbs_curpkg).presubj; then \
+ install -p -D -m644 debian/$(cdbs_curpkg).presubj \
+ debian/$(cdbs_curpkg)/usr/share/bug/$(cdbs_curpkg)/presubj; \
+ fi
+
+binary-install/$(DEB_SOURCE_PACKAGE)-doc-html::
+ set -e; \
+ for doc in `cd $(DEB_DESTDIR)/opt/trinity/share/doc/tde/HTML/en; find . -name index.docbook`; do \
+ pkg=$${doc%/index.docbook}; pkg=$${pkg#./}; \
+ echo Building $$pkg HTML docs...; \
+ mkdir -p $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
+ cd $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
+ /opt/trinity/bin/meinproc $(DEB_DESTDIR)/opt/trinity/share/doc/tde/HTML/en/$$pkg/index.docbook; \
+ done
+ for pkg in $(DOC_HTML_PRUNE) ; do \
+ rm -rf debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
+ done
+
+common-build-indep:: debian/stamp-kde-apidox
+debian/stamp-kde-apidox:
+ $(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) apidox)
+ touch $@
+
+common-install-indep:: common-install-kde-apidox
+common-install-kde-apidox::
+ $(if $(DEB_KDE_APIDOX),+DESTDIR=$(DEB_DESTDIR) $(DEB_MAKE_INVOKE) install-apidox)
+
+cleanbuilddir::
+ -$(if $(call cdbs_streq,$(DEB_BUILDDIR),$(DEB_SRCDIR)),,rm -rf $(DEB_BUILDDIR))
+
+clean::
+ifndef _cdbs_class_cmake
+ if test -n "$(DEB_KDE_CVS_MAKE)" && test -d $(DEB_SRCDIR); then \
+ cd $(DEB_SRCDIR); \
+ find . -name Makefile.in -print | \
+ xargs --no-run-if-empty rm -f; \
+ rm -f Makefile.am acinclude.m4 aclocal.m4 config.h.in \
+ configure configure.files configure.in stamp-h.in \
+ subdirs; \
+ fi
+endif
+ rm -f .tdepkginfo
+ rm -f debian/stamp-kde-apidox
+ rm -f debian/stamp-cvs-make
+
+endif
diff --git a/debian/_base/common/cmake/debian/cdbs/versions.pl b/debian/_base/common/cmake/debian/cdbs/versions.pl
new file mode 100644
index 000000000..1b110f7af
--- /dev/null
+++ b/debian/_base/common/cmake/debian/cdbs/versions.pl
@@ -0,0 +1,19 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+
+my $version = `dpkg-parsechangelog | awk '/^Version/ {print \$2}'`;
+my ($version3, $version3_next);
+my ($version2, $version2_next);
+
+($version3 = $version) =~ s/^(([^.]+\.){2}[^.+~-]+)[.+~-]?[^-]*-[^-]+$/$1/;
+($version2 = $version3) =~ s/\.[^.]+$//;
+
+($version3_next = $version3) =~ s/(?<=\.)(\d+)[a-z]?$/($1+1)/e;
+($version2_next = $version2) =~ s/(?<=\.)(\d+)$/($1+1)/e;
+
+print "TDE-Version3=$version3\n";
+print "TDE-Version2=$version2\n";
+print "TDE-Next-Version3=$version3_next\n";
+print "TDE-Next-Version2=$version2_next\n";
diff --git a/debian/_base/common/cmake/debian/changelog b/debian/_base/common/cmake/debian/changelog
new file mode 100644
index 000000000..fc715f18c
--- /dev/null
+++ b/debian/_base/common/cmake/debian/changelog
@@ -0,0 +1,5 @@
+cmake-trinity (4:14.0.11~pre-0debian10.0.0+0) buster; urgency=low
+
+ * Initial release as a standalone package.
+
+ -- Slávek Banko <slavek.banko@axis.cz> Fri, 14 May 2021 12:50:36 +0200
diff --git a/debian/_base/common/cmake/debian/compat b/debian/_base/common/cmake/debian/compat
new file mode 100644
index 000000000..ec635144f
--- /dev/null
+++ b/debian/_base/common/cmake/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/_base/common/cmake/debian/control b/debian/_base/common/cmake/debian/control
new file mode 100644
index 000000000..4984a8d5d
--- /dev/null
+++ b/debian/_base/common/cmake/debian/control
@@ -0,0 +1,16 @@
+Source: cmake-trinity
+Section: tde
+Priority: optional
+Maintainer: TDE Debian Team <team-debian@trinitydesktop.org>
+Build-Depends: cdbs, debhelper (>= 9~), quilt, cmake
+Standards-Version: 3.8.4
+
+Package: cmake-trinity
+Architecture: all
+Depends: cmake (>= ${CMake-Version2}~), cmake (<< ${CMake-Next-Version2}~), perl-base
+Description: TDE CMake modules
+ TDE uses its own set of modules and macros to simplify CMake rules.
+ .
+ This also includes the TDEL10n module that is used to generate and
+ update templates for translations and the modified version of
+ intltool-merge used to merge translations into desktop files.
diff --git a/debian/_base/common/cmake/debian/copyright b/debian/_base/common/cmake/debian/copyright
new file mode 100644
index 000000000..82d825030
--- /dev/null
+++ b/debian/_base/common/cmake/debian/copyright
@@ -0,0 +1,18 @@
+This package was debianized by Slávek Banko <slavek.banko@axis.cz> on
+Fri, 14 May 2021 04:20:08 +0200.
+
+Copyright Holder: TDE Team <devels@trinitydesktop.org>
+
+License:
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License, version 2
+as published by the Free Software Foundation.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANDABILITY of FITNESS FOR A PARTICULAR PURPOSE.
+See the GNU General Public License for details.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in /usr/share/common-licenses/GPL.
diff --git a/debian/_base/common/cmake/debian/patches/series b/debian/_base/common/cmake/debian/patches/series
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/debian/_base/common/cmake/debian/patches/series
diff --git a/debian/_base/common/cmake/debian/rules b/debian/_base/common/cmake/debian/rules
new file mode 100755
index 000000000..95a42b3f7
--- /dev/null
+++ b/debian/_base/common/cmake/debian/rules
@@ -0,0 +1,18 @@
+#!/usr/bin/make -f
+
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/cmake.mk
+include debian/cdbs/debian-tde.mk
+
+DEB_CMAKE_EXTRA_FLAGS := \
+ -DCMAKE_VERBOSE_MAKEFILE="ON" \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo
+
+common-binary-indep::
+ ( set -e; \
+ tmpf=`mktemp debian/cmake-versions.XXXXXX`; \
+ perl debian/cdbs/cmake-versions.pl >$$tmpf; \
+ for p in $(DEB_INDEP_PACKAGES); do \
+ cat $$tmpf >>debian/$$p.substvars; \
+ done; \
+ rm -f $$tmpf )
diff --git a/debian/_base/common/cmake/debian/source/format b/debian/_base/common/cmake/debian/source/format
new file mode 100644
index 000000000..163aaf8d8
--- /dev/null
+++ b/debian/_base/common/cmake/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/_base/common/cmake/debian/source/options b/debian/_base/common/cmake/debian/source/options
new file mode 100644
index 000000000..72f1f5450
--- /dev/null
+++ b/debian/_base/common/cmake/debian/source/options
@@ -0,0 +1,6 @@
+# Use xz instead of gzip
+compression = "xz"
+compression-level = 9
+
+# Don't run differences
+diff-ignore = .*