/*-stamp
/.debhelper/
/build-gtk/
+/build-pgtk/
/build-lucid/
/build-nox/
/build-src/
/emacs-gtk.postrm.debhelper
/emacs-gtk.prerm
/emacs-gtk.substvars
+/emacs-pgtk
+/emacs-pgtk.README.Debian
+/emacs-pgtk.debhelper.log
+/emacs-pgtk.desktop
+/emacs-pgtk.links
+/emacs-pgtk.lintian-overrides
+/emacs-pgtk.menu
+/emacs-pgtk.postinst
+/emacs-pgtk.postinst.debhelper
+/emacs-pgtk.postrm
+/emacs-pgtk.postrm.debhelper
+/emacs-pgtk.prerm
+/emacs-pgtk.substvars
/emacs-lucid
/emacs-lucid.README.Debian
/emacs-lucid.debhelper.log
Package: emacs
Architecture: all
Depends:
- emacs-gtk (>= 1:27.1) | emacs-lucid (>= 1:27.1) | emacs-nox (>= 1:27.1),
+ emacs-gtk (>= 1:27.1) | emacs-pgtk (>= 1:27.1) | emacs-lucid (>= 1:27.1) | emacs-nox (>= 1:27.1),
${misc:Depends},
Description: GNU Emacs editor (metapackage)
GNU Emacs is the extensible self-documenting text editor.
Provides: editor, emacs, emacsen, info-browser, mail-reader, news-reader
Recommends: fonts-noto-color-emoji
Suggests: emacs-common-non-dfsg
-Conflicts: emacs-gtk, emacs-nox
-Replaces: emacs-gtk, emacs-nox
+Conflicts: emacs-gtk, emacs-pgtk, emacs-nox
+Replaces: emacs-gtk, emacs-pgtk, emacs-nox
Description: GNU Emacs editor (with Lucid GUI support)
GNU Emacs is the extensible self-documenting text editor. This
package contains a version of Emacs with support for a graphical user
${shlibs:Depends},
Provides: editor, emacs, emacsen, info-browser, mail-reader, news-reader
Suggests: emacs-common-non-dfsg
-Conflicts: emacs-gtk, emacs-lucid
-Replaces: emacs-gtk, emacs-lucid
+Conflicts: emacs-gtk, emacs-pgtk, emacs-lucid
+Replaces: emacs-gtk, emacs-pgtk, emacs-lucid
Description: GNU Emacs editor (without GUI support)
GNU Emacs is the extensible self-documenting text editor. This
package contains a version of Emacs compiled without support for X,
Provides: editor, emacs, emacsen, info-browser, mail-reader, news-reader
Recommends: fonts-noto-color-emoji
Suggests: emacs-common-non-dfsg
-Conflicts: emacs-lucid, emacs-nox
-Replaces: emacs-lucid, emacs-nox
+Conflicts: emacs-pgtk, emacs-lucid, emacs-nox
+Replaces: emacs-pgtk, emacs-lucid, emacs-nox
Description: GNU Emacs editor (with GTK+ GUI support)
GNU Emacs is the extensible self-documenting text editor. This
package contains a version of Emacs with a graphical user interface
- based on GTK+ (instead of the Lucid toolkit provided by the
- emacs-lucid package).
+ based on GTK+ for X11 and Wayland (instead of the Lucid toolkit
+ provided by the emacs-lucid package).
+ .
+ If you are using Wayland, you may wish to install emacs-pgtk instead.
+
+Package: emacs-pgtk
+Architecture: any
+Depends:
+ emacs-bin-common (= ${binary:Version}),
+ emacs-common (= ${source:Version}),
+ ${misc:Depends},
+ ${shlibs:Depends},
+Provides: editor, emacs, emacsen, info-browser, mail-reader, news-reader
+Recommends: fonts-noto-color-emoji
+Suggests: emacs-common-non-dfsg
+Conflicts: emacs-gtk, emacs-lucid, emacs-nox
+Replaces: emacs-gtk, emacs-lucid, emacs-nox
+Description: GNU Emacs editor (with GTK+ Wayland GUI support)
+ GNU Emacs is the extensible self-documenting text editor. This
+ package contains a version of Emacs with a graphical user interface
+ based on GTK+ for Wayland.
+ .
+ If you are using exclusively X11, install emacs-gtk instead. The
+ PGTK port works less well than the standard GTK+ build in a number of
+ respects.
Package: emacs-bin-common
Architecture: any
Description: GNU Emacs editor's shared, architecture dependent files
GNU Emacs is the extensible self-documenting text editor.
This package contains the architecture dependent infrastructure
- that's shared by emacs-gtk, emacs-lucid, and emacs-nox.
+ that's shared by emacs-gtk, emacs-pgtk, emacs-lucid, and emacs-nox.
Package: emacs-common
Architecture: all
Description: GNU Emacs editor's shared, architecture independent infrastructure
GNU Emacs is the extensible self-documenting text editor.
This package contains the architecture independent infrastructure
- that's shared by emacs-gtk, emacs-lucid, and emacs-nox.
+ that's shared by emacs-gtk, emacs-pgtk, emacs-lucid, and emacs-nox.
Package: emacs-el
Architecture: all
debian/emacs-lucid.prerm \
debian/emacs-gtk.lintian-overrides \
debian/emacs-gtk.postinst \
- debian/emacs-gtk.prerm
+ debian/emacs-gtk.prerm \
+ debian/emacs-pgtk.lintian-overrides \
+ debian/emacs-pgtk.postinst \
+ debian/emacs-pgtk.prerm
autogen_build_files := \
$(nonpersistent_autogen_build_files) $(persistent_autogen_build_files)
pkgdir_common := $(CURDIR)/debian/emacs-common
pkgdir_bin_common := $(CURDIR)/debian/emacs-bin-common
pkgdir_gtk := $(CURDIR)/debian/emacs-gtk
+pkgdir_pgtk := $(CURDIR)/debian/emacs-pgtk
pkgdir_nox := $(CURDIR)/debian/emacs-nox
pkgdir_lucid := $(CURDIR)/debian/emacs-lucid
pkgdir_el := $(CURDIR)/debian/emacs-el
install_dir_gtk := $(CURDIR)/debian/install-gtk
+install_dir_pgtk := $(CURDIR)/debian/install-pgtk
install_dir_nox := $(CURDIR)/debian/install-nox
install_dir_lucid := $(CURDIR)/debian/install-lucid
debian/emacs-gtk.%: xsupport := "gtk"
debian/emacs-gtk.%: pkg_name := emacs-gtk
+debian/emacs-pgtk.%: xsupport := "pgtk"
+debian/emacs-pgtk.%: pkg_name := emacs-pgtk
+
debian/emacs-nox.%: xsupport := "nox"
debian/emacs-nox.%: pkg_name := emacs-nox
debian/emacs-gtk.%: debian/emacsVAR.% debian/changelog debian/rules
$(call deb_sub,$<,$@)
+debian/emacs-pgtk.%: debian/emacsVAR.% debian/changelog debian/rules
+ $(call deb_sub,$<,$@)
+
debian/emacs-lucid.%: debian/emacsVAR.% debian/changelog debian/rules
$(call deb_sub,$<,$@)
# resulting emacs-gtk package will have the old scrollbars.
confflags_gtk += --with-toolkit-scroll-bars
+# pgtk configure flags
+confflags_pgtk := $(confflags)
+confflags_pgtk += --with-pgtk
+
# nox configure flags
confflags_nox := $(confflags)
confflags_nox += --with-x=no
debian/stamp-configured: $(autogen_build_files)
# If the deps for this target change, start over
- rm -rf debian/build-src debian/build-gtk debian/build-lucid debian/build-nox
+ rm -rf debian/build-src debian/build-gtk debian/build-pgtk debian/build-lucid debian/build-nox
mkdir debian/build-src
cp -a $$(ls -A | egrep -v '^(\.git|\.pc|debian)$$') debian/build-src
cp -a /usr/share/misc/config.guess /usr/share/misc/config.sub \
debian/build-src
cd debian/build-src && ./autogen.sh
- mkdir debian/build-lucid debian/build-nox debian/build-gtk
+ mkdir debian/build-lucid debian/build-nox debian/build-gtk debian/build-pgtk
# Create one VPATH build per-config
$(call cfg_tree,debian/build-gtk,$(confflags_gtk))
+ $(call cfg_tree,debian/build-pgtk,$(confflags_pgtk))
$(call cfg_tree,debian/build-nox,$(confflags_nox))
$(call cfg_tree,debian/build-lucid,$(confflags_lucid))
touch $@
# The first build will bootstrap build-src, which will speed
# the remaining builds.
$(call build_cmd,debian/build-gtk)
+ $(call build_cmd,debian/build-pgtk)
$(call build_cmd,debian/build-nox)
$(call build_cmd,debian/build-lucid)
$(MAKE) -C debian/build-lucid check
$(MAKE) -C debian/build-nox check
$(MAKE) -C debian/build-gtk check
+ $(MAKE) -C debian/build-pgtk check
endif
ifdef deb_native_compilation_enabled
$(pkgdir_common)/* \
$(pkgdir_bin_common)/* \
$(pkgdir_gtk)/* \
+ $(pkgdir_pgtk)/* \
$(pkgdir_nox)/* \
$(pkgdir_lucid)/* \
$(pkgdir_el)/*
$(pkgdir_gtk)/usr/share/applications/
endif
+ ##################################################
+ # emacs-pgtk
+ ifneq (,$(findstring emacs, $(shell dh_listpackages)))
+ $(call emacs_inst,build-pgtk,$(install_dir_pgtk))
+ $(call install_common_binpkg_bits,\
+ $(install_dir_pgtk),$(pkgdir_pgtk),emacs-pgtk,pgtk)
+
+ # install desktop entries
+ install -d $(pkgdir_pgtk)/usr/share/applications
+ install -m 0644 \
+ debian/emacs.desktop \
+ debian/emacs-term.desktop \
+ $(pkgdir_pgtk)/usr/share/applications/
+ endif
+
##################################################
# emacs-nox
ifneq (,$(findstring emacs-nox, $(shell dh_listpackages)))
##################################################
# final cleanup
rm -rf $(install_dir_gtk)
+ rm -rf $(install_dir_pgtk)
rm -rf $(install_dir_nox)
rm -rf $(install_dir_lucid)
debian/build-nox \
debian/build-src \
debian/build-gtk \
+ debian/build-pgtk \
debian/elgz-canary \
debian/elgz-info \
debian/emacs-common.README.00 \
debian/emacs-common.README.01 \
debian/install-lucid \
debian/install-nox \
- debian/install-gtk
+ debian/install-gtk \
+ debian/install-pgtk
rm -f $(nonpersistent_autogen_files)