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 | |
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')
-rw-r--r-- | debian/changelog | 2 | ||||
-rw-r--r-- | debian/compat | 2 | ||||
-rw-r--r-- | debian/control | 35 | ||||
-rwxr-xr-x | debian/rules | 53 | ||||
-rw-r--r-- | debian/sciteco-common.install | 11 | ||||
-rw-r--r-- | debian/sciteco-curses.install | 5 | ||||
-rwxr-xr-x | debian/sciteco-gtk.install | 16 | ||||
-rw-r--r-- | debian/sciteco-gtk.links | 9 | ||||
-rw-r--r-- | debian/sciteco.desktop | 8 |
9 files changed, 125 insertions, 16 deletions
diff --git a/debian/changelog b/debian/changelog index 303002e..a9cf041 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -sciteco (2.0.0-0) unstable; urgency=low +sciteco (2.0.0-1) unstable; urgency=low * new upstream version v2.0.0 diff --git a/debian/compat b/debian/compat index 7f8f011..f599e28 100644 --- a/debian/compat +++ b/debian/compat @@ -1 +1 @@ -7 +10 diff --git a/debian/control b/debian/control index 6607b5c..5852e5a 100644 --- a/debian/control +++ b/debian/control @@ -2,8 +2,9 @@ Source: sciteco Section: editors Priority: optional Maintainer: Robin Haberkorn <robin.haberkorn@googlemail.com> -Build-Depends: debhelper (>= 7.4), g++ (>= 4:4.4), - libglib2.0-dev (>= 2.44), ncurses-base, ncurses-term, libncurses5-dev, +Build-Depends: debhelper (>= 10), dh-exec, g++ (>= 4:4.4), libglib2.0-dev (>= 2.44), + ncurses-base, ncurses-term, libncurses5-dev, + libgtk-3-dev (>= 3.12), gob2 (>= 2.0.20), xvfb, groff-base Standards-Version: 3.9.2 Homepage: http://sciteco.sf.net/ @@ -12,12 +13,36 @@ Vcs-Git: git://github.com/rhaberkorn/sciteco.git Package: sciteco-curses Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} -Description: Scintilla-based Text Editor and Corrector +Depends: ${shlibs:Depends}, ${misc:Depends}, sciteco-common (= ${binary:Version}) +Description: Scintilla-based Text Editor and Corrector (curses) SciTECO is an interactive TECO dialect, similar to Video TECO. It also adds features from classic Standard TECO-11, and incorporates many unique new ideas. It is geared towards UNIX-like operating systems but also natively supports Microsoft Windows NT. . - This package contains the ncurses version of SciTECO. + This package contains the curses (terminal) version of SciTECO. + +Package: sciteco-gtk +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, sciteco-common (= ${binary:Version}) +Description: Scintilla-based Text Editor and Corrector (GTK+) + SciTECO is an interactive TECO dialect, similar to Video TECO. + It also adds features from classic Standard TECO-11, + and incorporates many unique new ideas. + It is geared towards UNIX-like operating systems but also + natively supports Microsoft Windows NT. + . + This package contains the GTK+ 3 (graphical) version of SciTECO. + +Package: sciteco-common +Architecture: all +Description: Scintilla-based Text Editor and Corrector (common files) + SciTECO is an interactive TECO dialect, similar to Video TECO. + It also adds features from classic Standard TECO-11, + and incorporates many unique new ideas. + It is geared towards UNIX-like operating systems but also + natively supports Microsoft Windows NT. + . + This package contains architecture-independant files + and the SciTECO standard library. 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 diff --git a/debian/sciteco-common.install b/debian/sciteco-common.install new file mode 100644 index 0000000..4c51ec1 --- /dev/null +++ b/debian/sciteco-common.install @@ -0,0 +1,11 @@ +# Explicitly does not contain fallback.css, which goes into sciteco-gtk. +usr/share/sciteco/lib +usr/share/sciteco/*.teco_ini +usr/share/sciteco/*.tmac + +# FIXME: Including the manpages here provokes lintian warnings. +# Perhaps sciteco-curses and sciteco-gtk should just ship their own versions. +usr/share/man/man1/sciteco.1 +usr/share/man/man1/grosciteco.tes.1 +usr/share/man/man1/tedoc.tes.1 +usr/share/man/man7/sciteco.7 diff --git a/debian/sciteco-curses.install b/debian/sciteco-curses.install new file mode 100644 index 0000000..4173a3e --- /dev/null +++ b/debian/sciteco-curses.install @@ -0,0 +1,5 @@ +usr/bin/sciteco +# Theoretically, these scripts could be in sciteco-common, +# but they need an interpreter and the name depends on the version installed. +usr/bin/grosciteco.tes +usr/bin/tedoc.tes diff --git a/debian/sciteco-gtk.install b/debian/sciteco-gtk.install new file mode 100755 index 0000000..303187c --- /dev/null +++ b/debian/sciteco-gtk.install @@ -0,0 +1,16 @@ +#!/usr/bin/dh-exec +usr/bin/gsciteco +# Theoretically, these scripts could be in sciteco-common, +# but they need an interpreter and the name depends on the version installed. +usr/bin/ggrosciteco.tes +usr/bin/gtedoc.tes + +usr/share/sciteco/*.css + +ico/sciteco-16.png => usr/share/icons/hicolor/16x16/apps/sciteco.png +ico/sciteco-32.png => usr/share/icons/hicolor/32x32/apps/sciteco.png +ico/sciteco-48.png => usr/share/icons/hicolor/48x48/apps/sciteco.png +ico/sciteco-256.png => usr/share/icons/hicolor/256x256/apps/sciteco.png + +# Not currently part of source tree: +debian/sciteco.desktop usr/share/applications diff --git a/debian/sciteco-gtk.links b/debian/sciteco-gtk.links new file mode 100644 index 0000000..04a9057 --- /dev/null +++ b/debian/sciteco-gtk.links @@ -0,0 +1,9 @@ +usr/share/man/man1/sciteco.1.gz usr/share/man/man1/gsciteco.1.gz +usr/share/man/man1/grosciteco.tes.1.gz usr/share/man/man1/ggrosciteco.tes.1.gz +usr/share/man/man1/tedoc.tes.1.gz usr/share/man/man1/gtedoc.tes.1.gz + +# FIXME: The Gtk UI currently expects the icons in /usr/share/sciteco. +# Perhaps they should be installed into usr/share/icons/hicolor in the first place. +usr/share/icons/hicolor/16x16/apps/sciteco.png usr/share/sciteco/sciteco-16.png +usr/share/icons/hicolor/32x32/apps/sciteco.png usr/share/sciteco/sciteco-32.png +usr/share/icons/hicolor/48x48/apps/sciteco.png usr/share/sciteco/sciteco-48.png diff --git a/debian/sciteco.desktop b/debian/sciteco.desktop new file mode 100644 index 0000000..f2fbd0e --- /dev/null +++ b/debian/sciteco.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=SciTECO +Comment=Scintilla-based Text Editor and Corrector +Exec=gsciteco +Icon=sciteco +Type=Application +Categories=Utility;TextEditor; +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; |