summaryrefslogtreecommitdiffstats
path: root/debian
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2022-12-13 18:23:50 +0100
committerSlávek Banko <slavek.banko@axis.cz>2022-12-13 18:23:50 +0100
commit9814f52b6d666d5c1bb3f0ba34f8606533add1de (patch)
tree717ee08d8d925d055d6128cf5e95ec331eb2247c /debian
parentd0e8a3990aefc09884046917b16d03f72f802eef (diff)
downloadtde-packaging-9814f52b6d666d5c1bb3f0ba34f8606533add1de.tar.gz
tde-packaging-9814f52b6d666d5c1bb3f0ba34f8606533add1de.zip
DEB desktop-effects-tde: Switch to CMake build system.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'debian')
-rw-r--r--debian/_base/applications/misc/desktop-effects-tde/debian/cdbs/debian-tde.mk246
-rw-r--r--debian/_base/applications/misc/desktop-effects-tde/debian/cdbs/versions.pl19
-rw-r--r--debian/_base/applications/misc/desktop-effects-tde/debian/control3
-rw-r--r--debian/_base/applications/misc/desktop-effects-tde/debian/desktop-effects-tde-trinity.install8
-rwxr-xr-xdebian/_base/applications/misc/desktop-effects-tde/debian/rules32
5 files changed, 281 insertions, 27 deletions
diff --git a/debian/_base/applications/misc/desktop-effects-tde/debian/cdbs/debian-tde.mk b/debian/_base/applications/misc/desktop-effects-tde/debian/cdbs/debian-tde.mk
new file mode 100644
index 000000000..f36e3527c
--- /dev/null
+++ b/debian/_base/applications/misc/desktop-effects-tde/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/applications/misc/desktop-effects-tde/debian/cdbs/versions.pl b/debian/_base/applications/misc/desktop-effects-tde/debian/cdbs/versions.pl
new file mode 100644
index 000000000..1b110f7af
--- /dev/null
+++ b/debian/_base/applications/misc/desktop-effects-tde/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/applications/misc/desktop-effects-tde/debian/control b/debian/_base/applications/misc/desktop-effects-tde/debian/control
index 9c981fe54..ebdad17ab 100644
--- a/debian/_base/applications/misc/desktop-effects-tde/debian/control
+++ b/debian/_base/applications/misc/desktop-effects-tde/debian/control
@@ -2,7 +2,8 @@ Source: desktop-effects-tde-trinity
Section: tde
Priority: optional
Maintainer: TDE Debian Team <team-debian@trinitydesktop.org>
-Build-Depends-Indep: cdbs (>= 0.4.43), debhelper (>= 9~), python-support (>= 0.6) | dh-python, python-all-dev
+Build-Depends-Indep: cdbs, debhelper (>= 9~), quilt, cmake-trinity, ninja-build, tdelibs-trinity-dev,
+ python-support (>= 0.6) | dh-python, python-all-dev, python-trinity-trinity-dev
Standards-Version: 3.8.4
XS-Python-Version: all
diff --git a/debian/_base/applications/misc/desktop-effects-tde/debian/desktop-effects-tde-trinity.install b/debian/_base/applications/misc/desktop-effects-tde/debian/desktop-effects-tde-trinity.install
deleted file mode 100644
index 2b6b93781..000000000
--- a/debian/_base/applications/misc/desktop-effects-tde/debian/desktop-effects-tde-trinity.install
+++ /dev/null
@@ -1,8 +0,0 @@
-desktop-effects-tde /opt/trinity/bin/
-25enable-compiz /etc/X11/Xsession.d/
-DesktopEffects/DesktopEffectsCommon.py /opt/trinity/share/pyshared/DesktopEffects/
-DesktopEffects/DesktopEffectsDialog.py /opt/trinity/share/pyshared/DesktopEffects/
-DesktopEffects/DesktopEffectsTDE.py /opt/trinity/share/pyshared/DesktopEffects/
-DesktopEffects/__init__.py /opt/trinity/share/pyshared/DesktopEffects/
-data/* /opt/trinity/share/apps/desktop-effects-tde/
-desktop-effects-tde.desktop /opt/trinity/share/applications/
diff --git a/debian/_base/applications/misc/desktop-effects-tde/debian/rules b/debian/_base/applications/misc/desktop-effects-tde/debian/rules
index eef8add16..123031e6f 100755
--- a/debian/_base/applications/misc/desktop-effects-tde/debian/rules
+++ b/debian/_base/applications/misc/desktop-effects-tde/debian/rules
@@ -1,26 +1,22 @@
#!/usr/bin/make -f
-DEB_PYTHON_SYSTEM = $(if $(wildcard /usr/bin/dh_python2),,pysupport)
-DH_PYTHON2 = $(if $(wildcard /usr/bin/dh_python2),dh_python2,dh_pysupport)
-
include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/cmake.mk
+include debian/cdbs/debian-tde.mk
-DEB_CONFIGURE_INCLUDEDIR := /opt/trinity/include/tde
-DEB_CONFIGURE_MANDIR := /opt/trinity/share/man
-DEB_CONFIGURE_PREFIX := /opt/trinity
-DEB_CONFIGURE_INFODIR := /opt/trinity/share/info
+DEB_CMAKE_EXTRA_FLAGS := \
+ -DCMAKE_EXPORT_COMPILE_COMMANDS="ON" \
+ -DCMAKE_INSTALL_PREFIX="/opt/trinity" \
+ -DCONFIG_INSTALL_DIR="/etc/trinity" \
+ -DSYSCONF_INSTALL_DIR="/etc/trinity" \
+ -DXDG_MENU_INSTALL_DIR="/etc/xdg/menus" \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_VERBOSE_MAKEFILE="ON" \
+ -DCMAKE_SKIP_RPATH="OFF" \
+ -DBUILD_ALL="ON" \
+ -DWITH_ALL_OPTIONS="ON"
-cdbs_configure_flags := --with-qt-dir=/usr/share/qt3 --disable-rpath --with-xinerama $(cdbs_kde_enable_final) $(cdbs_kde_enable_debug)
-
-# 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
+DH_PYTHON2 = $(if $(wildcard /usr/bin/dh_python2),dh_python2,dh_pysupport)
binary-install/desktop-effects-tde-trinity::
${DH_PYTHON2} -pdesktop-effects-tde-trinity