diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2021-06-01 00:36:58 +0200 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2021-06-01 00:36:58 +0200 |
commit | 0dcfb82c706585d1ed5bd700a88cc9ddc6a8751d (patch) | |
tree | f55e25a2f81f8c86dfa214d395c2fa60f852fb78 /debian/rules | |
parent | d0c8cb91b089e735fb288cf0fd44afb20e08a89c (diff) | |
download | sciteco-0dcfb82c706585d1ed5bd700a88cc9ddc6a8751d.tar.gz |
debianized the Gtk UI (sciteco-gtk)
* Added a Freedesktop file - only as part of the debian package yet.
`make install` won't install a Desktop file since it would have to be
generated.
* Just like when installing manually, you can have a Curses and Gtk installation
side by side using the same .teco_ini.
* Common data between the Curses UI (sciteco-curses) and Gtk UI are in a new
architecture-independant package sciteco-common.
* The Gtk+ binaries are prefixed with `g` (gsciteco, gtedoc.tes, ggrosciteco.tes).
* Debian source and binary packages can be built using `./distribute.mk debian`
as usual.
It should also be possible to push everything to the PPA for the next release,
although that is not yet tested.
Diffstat (limited to 'debian/rules')
-rwxr-xr-x | debian/rules | 53 |
1 files changed, 44 insertions, 9 deletions
diff --git a/debian/rules b/debian/rules index 7d6302c..64b5f16 100755 --- a/debian/rules +++ b/debian/rules @@ -13,23 +13,58 @@ export TERM= # Build with link-time-optimizations +# FIXME: This is not passed down to Scintilla. +# Once we support an --enable-lto site-config-option, we should rather use that. export DEB_CFLAGS_MAINT_APPEND=-flto export DEB_CXXFLAGS_MAINT_APPEND=-flto export DEB_LDFLAGS_MAINT_APPEND=-flto +# Since we override a few `dh` commands, it cannot care about +# parallel builds. +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +MAKEFLAGS += -j$(NUMJOBS) +endif + %: dh $@ -build: +build build-arch build-indep: build-curses-stamp build-gtk-stamp + dh_testdir + +build-curses-stamp: dh_testdir - dh_auto_configure -- \ - --enable-bootstrap \ - --with-interface=ncurses \ - $(shell dpkg-buildflags --export=configure) - dh_auto_build + rm -rf build-curses + mkdir build-curses + cp -r scintilla build-curses/ + dh_auto_configure -Bbuild-curses -- \ + --with-interface=ncurses + dh_auto_build -Bbuild-curses + dh_auto_test -Bbuild-curses touch $@ -clean: +# NOTE: This does not depend on install-curses-stamp and uses +# --disable-bootstrap to speed up builds since that would prevent parallel builds. +build-gtk-stamp: dh_testdir - dh_auto_clean - dh_clean + rm -rf build-gtk + mkdir build-gtk + cp -r scintilla build-gtk/ + dh_auto_configure -Bbuild-gtk -- \ + --program-prefix=g \ + --with-interface=gtk +# NOTE: Since the Gtk+ version of SciTECO is called during the build, +# we need an XServer which may be missing on the build server. +# That's why we use xvfb. + xvfb-run -a dh_auto_build -Bbuild-gtk +# FIXME: The test suite can be ridiculously lengthy with Gtk binaries. +# xvfb-run -a dh_auto_test -Bbuild-gtk + touch $@ + +install: + xvfb-run -a dh install -Bbuild-gtk -psciteco-gtk + dh install -Bbuild-curses -psciteco-curses -psciteco-common + +clean: + dh clean -Bbuild-gtk + dh clean -Bbuild-curses |