From be896abe402242fa7fc8c3923e6191d2a2f4076d Mon Sep 17 00:00:00 2001 From: augiedoggie Date: Sun, 23 Jan 2022 14:38:56 -0700 Subject: [PATCH] emacs: update to 29.0.50~git (#6557) --- .../emacs/additional-files/emacs.rdef.in | 8 +- ...s-26.2.recipe => emacs-29.0.50~git.recipe} | 99 ++++++++++--------- app-editors/emacs/patches/emacs-26.2.patchset | 63 ------------ 3 files changed, 57 insertions(+), 113 deletions(-) rename app-editors/emacs/{emacs-26.2.recipe => emacs-29.0.50~git.recipe} (55%) delete mode 100644 app-editors/emacs/patches/emacs-26.2.patchset diff --git a/app-editors/emacs/additional-files/emacs.rdef.in b/app-editors/emacs/additional-files/emacs.rdef.in index a83b87548..1631a3d89 100644 --- a/app-editors/emacs/additional-files/emacs.rdef.in +++ b/app-editors/emacs/additional-files/emacs.rdef.in @@ -1,5 +1,5 @@ -resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY; +resource app_flags B_EXCLUSIVE_LAUNCH | B_ARGV_ONLY; resource app_version { major = @MAJOR@, @@ -7,11 +7,11 @@ resource app_version { minor = @MINOR@, variety = B_APPV_FINAL, internal = 0, - short_info = "Emacs", - long_info = "The famous text editor" + short_info = "GNU Emacs text editor", + long_info = "An extensible, customizable, free/libre text editor — and more" }; -resource app_signature "application/x-vnd.emacs-editor"; +resource app_signature "application/x-vnd.GNU-emacs"; resource vector_icon { $"6E6369660503953AC403703AA9010A0B1B6705FF0501060204CB45BFC3CB45B9" diff --git a/app-editors/emacs/emacs-26.2.recipe b/app-editors/emacs/emacs-29.0.50~git.recipe similarity index 55% rename from app-editors/emacs/emacs-26.2.recipe rename to app-editors/emacs/emacs-29.0.50~git.recipe index 3ddbd0a67..9b486afde 100644 --- a/app-editors/emacs/emacs-26.2.recipe +++ b/app-editors/emacs/emacs-29.0.50~git.recipe @@ -1,25 +1,26 @@ -SUMMARY="The famous text editor" +SUMMARY="An extensible, customizable, free/libre text editor — and more" DESCRIPTION="An extensible, customizable, free/libre text editor — and more. -At its core is an interpreter for Emacs Lisp, a dialect of the Lisp \ -programming language with extensions to support text editing. +At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with \ +extensions to support text editing. * Content-aware editing modes, including syntax coloring, for many file types. * Complete built-in documentation, including a tutorial for new users. * Full Unicode support for nearly all human scripts. * Highly customizable, using Emacs Lisp code or a graphical interface. -* An entire ecosystem of functionality beyond text editing, including a \ -project planner, mail and news reader, debugger interface, calendar, and more. +* An entire ecosystem of functionality beyond text editing, including a project planner, mail and \ +news reader, debugger interface, calendar, and more. * A packaging system for downloading and installing extensions." HOMEPAGE="https://gnu.org/s/emacs/" -COPYRIGHT="2001-2019 Free Software Foundation, Inc." +COPYRIGHT="2001-2022 Free Software Foundation, Inc." LICENSE="GNU GPL v3" REVISION="1" -SOURCE_URI="http://www.artfiles.org/gnu.org/emacs/emacs-$portVersion.tar.xz" -CHECKSUM_SHA256="151ce69dbe5b809d4492ffae4a4b153b2778459de6deb26f35691e1281a9c58e" -PATCHES="emacs-$portVersion.patchset" +srcGitRev="5d257a99b7a67ffb61b315480182593f48ceee5f" +SOURCE_URI="https://github.com/emacs-mirror/emacs/archive/$srcGitRev.tar.gz" +SOURCE_DIR="emacs-$srcGitRev" +CHECKSUM_SHA256="866a0ff5dca658f0563ae24217e62810a00681df30433f42fd4ed1990ddc1ba0" ADDITIONAL_FILES="emacs.rdef.in" -ARCHITECTURES="all ?x86_gcc2 ?x86" +ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" # On x86_gcc2 we don't want to install the commands in bin//, but in bin/. @@ -32,107 +33,113 @@ fi PROVIDES=" emacs$secondaryArchSuffix = $portVersion + app:Emacs = $portVersion cmd:ctags.emacs$commandSuffix = $portVersion cmd:ebrowse$commandSuffix = $portVersion cmd:emacs$commandSuffix = $portVersion - cmd:emacs_$portVersion$commandSuffix = $portVersion cmd:emacsclient$commandSuffix = $portVersion + cmd:emacs_${portVersion%\~*}$commandSuffix = $portVersion cmd:etags$commandSuffix = $portVersion " REQUIRES=" haiku$secondaryArchSuffix + lib:libcairo$secondaryArchSuffix lib:libexecinfo$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libgio_2.0$secondaryArchSuffix lib:libglib_2.0$secondaryArchSuffix + lib:libgmp$secondaryArchSuffix lib:libgnutls$secondaryArchSuffix - lib:libiconv$secondaryArchSuffix + lib:libgobject_2.0$secondaryArchSuffix + lib:libharfbuzz$secondaryArchSuffix lib:libintl$secondaryArchSuffix + lib:libjansson$secondaryArchSuffix lib:libncurses$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libsqlite3$secondaryArchSuffix lib:libxml2$secondaryArchSuffix lib:libz$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel + devel:libcairo$secondaryArchSuffix devel:libexecinfo$secondaryArchSuffix + devel:libfontconfig$secondaryArchSuffix + devel:libfreetype$secondaryArchSuffix + devel:libgio_2.0$secondaryArchSuffix devel:libglib_2.0$secondaryArchSuffix + devel:libgmp$secondaryArchSuffix devel:libgnutls$secondaryArchSuffix - devel:libiconv$secondaryArchSuffix + devel:libgobject_2.0$secondaryArchSuffix + devel:libharfbuzz$secondaryArchSuffix devel:libintl$secondaryArchSuffix + devel:libjansson$secondaryArchSuffix devel:libncurses$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix + devel:libsqlite3$secondaryArchSuffix devel:libxml2$secondaryArchSuffix devel:libz$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:aclocal cmd:autoconf + cmd:autoreconf + cmd:awk cmd:find cmd:gcc$secondaryArchSuffix + cmd:g++$secondaryArchSuffix + cmd:gzip + cmd:install_info cmd:make cmd:makeinfo cmd:pkg_config$secondaryArchSuffix - cmd:tar - cmd:which " defineDebugInfoPackage emacs$secondaryArchSuffix \ + $appsDir/Emacs \ $commandBinDir/ctags.emacs \ - $commandBinDir/emacs-$portVersion \ + $commandBinDir/emacs-${portVersion%\~*} \ $commandBinDir/emacsclient \ $commandBinDir/etags -PATCH() -{ - # Hard links not supported on BFS. - sed -i 's/ln -f/ln -s/g' src/Makefile.in -} - BUILD() { - export LDFLAGS="-lnetwork -lbsd" - CFLAGS="-D_BSD_SOURCE" - export HOME=/boot/home - - autoreconf -fi + autoreconf -vfi -I m4 runConfigure --omit-dirs "binDir sbinDir" ./configure \ - --bindir "$commandBinDir" \ + --bindir="$commandBinDir" \ --sbindir="$commandBinDir" \ - --with-modules \ - CANNOT_DUMP=yes # known bug in emacs + --with-be-app \ + --with-be-cairo make $jobArgs } INSTALL() { - # Install fix, emacs is stupid - for f in emacs bootstrap-emacs; do - rm -rf src/$f - done + # 'make install' assumes this directory already exists + mkdir -p $appsDir make install - # ctags fix + # rename ctags so that the official ctags can be installed alongside without conflicting mv $commandBinDir/ctags $commandBinDir/ctags.emacs - # Cleanup - for f in appdata applications icons; do - rm -rf $dataDir/$f - done - rm -rf $libDir/systemd - - # Icon + # add our version and vector icon resources local MAJOR="`echo "$portVersion" | cut -d. -f1`" local MIDDLE="`echo "$portVersion" | cut -d. -f2`" - #local MINOR="`echo "$portVersion" | cut -d. -f3`" - local MINOR="`echo 0`" + local MINOR="`echo "${portVersion%\~*}" | cut -d. -f3`" sed \ -e "s|@MAJOR@|$MAJOR|" \ -e "s|@MIDDLE@|$MIDDLE|" \ -e "s|@MINOR@|$MINOR|" \ + -e "s|B_APPV_FINAL|B_APPV_DEVELOPMENT|" \ $portDir/additional-files/emacs.rdef.in > emacs.rdef - addResourcesToBinaries emacs.rdef \ - $commandBinDir/emacs + addResourcesToBinaries emacs.rdef $appsDir/Emacs + + addAppDeskbarSymlink $appsDir/Emacs Emacs } diff --git a/app-editors/emacs/patches/emacs-26.2.patchset b/app-editors/emacs/patches/emacs-26.2.patchset deleted file mode 100644 index fe693a944..000000000 --- a/app-editors/emacs/patches/emacs-26.2.patchset +++ /dev/null @@ -1,63 +0,0 @@ -From 9147d8c6da14fbc6241c378b97d6f908c2df1dad Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= -Date: Sun, 28 May 2017 12:53:20 +0200 -Subject: Introduce Haiku as supported platform - - -diff --git a/configure.ac b/configure.ac -index 256b954..d3926e8 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -719,6 +719,7 @@ case "${canonical}" in - *-sysv4.2uw* ) opsys=unixware ;; - *-sysv5uw* ) opsys=unixware ;; - *-sysv5OpenUNIX* ) opsys=unixware ;; -+ *-haiku* ) opsys=haiku ;; - ## Otherwise, we'll fall through to the generic opsys code at the bottom. - esac - ;; -@@ -731,6 +732,7 @@ case "${canonical}" in - # MinGW overrides and adds some system headers in nt/inc. - GCC_TEST_OPTIONS="-I $srcdir/nt/inc" - ;; -+ *-haiku* ) opsys=haiku ;; - ## Otherwise, we'll fall through to the generic opsys code at the bottom. - esac - ;; -@@ -4614,7 +4616,7 @@ case $opsys in - AC_DEFINE(PTY_TTY_NAME_SPRINTF, []) - ;; - -- gnu | openbsd | qnxnto ) -+ gnu | openbsd | qnxnto | haiku ) - AC_DEFINE(FIRST_PTY_LETTER, ['p']) - ;; - --- -2.19.1 - - -From 2049cf47c4f7e7aea12a3fd87e2ddf0e9fed89b1 Mon Sep 17 00:00:00 2001 -From: Peter Kosyh -Date: Sun, 28 Oct 2018 15:30:55 +0300 -Subject: CANNOT_DUMP workaround - - -diff --git a/lisp/loadup.el b/lisp/loadup.el -index 5ecfae1..355d77e 100644 ---- a/lisp/loadup.el -+++ b/lisp/loadup.el -@@ -393,7 +393,9 @@ lost after dumping"))) - (message "Warning: Change in load-path due to site-init will be \ - lost after dumping"))) - --(setq current-load-list nil) -+;; See https://github.com/termux/termux-packages/issues/423 -+;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=14120 -+;; (setq current-load-list nil) - ;; Avoid storing references to build directory in the binary. - (setq custom-current-group-alist nil) - --- -2.19.1 -