mirror of
https://github.com/yann64/haikuports.git
synced 2026-05-06 06:58:57 +02:00
Emacs: bump (#4087)
This commit is contained in:
138
app-editors/emacs/emacs-26.2.recipe
Normal file
138
app-editors/emacs/emacs-26.2.recipe
Normal file
@@ -0,0 +1,138 @@
|
||||
SUMMARY="The famous text editor"
|
||||
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.
|
||||
|
||||
* 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.
|
||||
* A packaging system for downloading and installing extensions."
|
||||
HOMEPAGE="https://gnu.org/s/emacs/"
|
||||
COPYRIGHT="2001-2019 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"
|
||||
ADDITIONAL_FILES="emacs.rdef.in"
|
||||
|
||||
ARCHITECTURES="?x86_gcc2 ?x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/.
|
||||
commandSuffix=$secondaryArchSuffix
|
||||
commandBinDir=$binDir
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
commandSuffix=
|
||||
commandBinDir=$prefix/bin
|
||||
fi
|
||||
|
||||
PROVIDES="
|
||||
emacs$secondaryArchSuffix = $portVersion
|
||||
cmd:ctags.emacs$commandSuffix = $portVersion
|
||||
cmd:ebrowse$commandSuffix = $portVersion
|
||||
cmd:emacs$commandSuffix = $portVersion
|
||||
cmd:emacs_$portVersion$commandSuffix = $portVersion
|
||||
cmd:emacsclient$commandSuffix = $portVersion
|
||||
cmd:etags$commandSuffix = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libexecinfo$secondaryArchSuffix
|
||||
lib:libglib_2.0$secondaryArchSuffix
|
||||
lib:libgnutls$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libncurses$secondaryArchSuffix
|
||||
lib:libxml2$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libexecinfo$secondaryArchSuffix
|
||||
devel:libglib_2.0$secondaryArchSuffix
|
||||
devel:libgnutls$secondaryArchSuffix
|
||||
devel:libiconv$secondaryArchSuffix
|
||||
devel:libintl$secondaryArchSuffix
|
||||
devel:libncurses$secondaryArchSuffix
|
||||
devel:libxml2$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:aclocal
|
||||
cmd:autoconf
|
||||
cmd:find
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:makeinfo
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:tar
|
||||
cmd:which
|
||||
"
|
||||
|
||||
defineDebugInfoPackage emacs$secondaryArchSuffix \
|
||||
$commandBinDir/ctags.emacs \
|
||||
$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
|
||||
|
||||
runConfigure --omit-dirs "binDir sbinDir" ./configure \
|
||||
--bindir "$commandBinDir" \
|
||||
--sbindir="$commandBinDir" \
|
||||
--with-modules \
|
||||
CANNOT_DUMP=yes # known bug in emacs
|
||||
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
# Install fix, emacs is stupid
|
||||
for f in emacs bootstrap-emacs; do
|
||||
rm -rf src/$f
|
||||
done
|
||||
|
||||
make install
|
||||
|
||||
# ctags fix
|
||||
mv $commandBinDir/ctags $commandBinDir/ctags.emacs
|
||||
|
||||
# Cleanup
|
||||
for f in appdata applications icons; do
|
||||
rm -rf $dataDir/$f
|
||||
done
|
||||
rm -rf $libDir/systemd
|
||||
|
||||
# Icon
|
||||
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`"
|
||||
|
||||
sed \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
$portDir/additional-files/emacs.rdef.in > emacs.rdef
|
||||
|
||||
addResourcesToBinaries emacs.rdef \
|
||||
$commandBinDir/emacs
|
||||
}
|
||||
Reference in New Issue
Block a user