aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYasuhiro Kimura <yasu@FreeBSD.org>2023-07-29 21:16:31 +0000
committerYasuhiro Kimura <yasu@FreeBSD.org>2023-08-12 04:33:54 +0000
commit6496ce594ccf63cb82502aba18138a089f08c681 (patch)
treef366e3a0107b98a845551e2d64d561b201f227b1
parent9f4f67450ce3d96c03a3217fb241abe9c624aa3c (diff)
downloadports-6496ce594ccf63cb82502aba18138a089f08c681.tar.gz
ports-6496ce594ccf63cb82502aba18138a089f08c681.zip
editors/emacs-devel: Miscellaneous refinements
* Use "USES=makeinfo" instead of adding print/texinfo to BUILD_DEPENDS. * When PGTK option is ON and SCROLLBARS is OFF, configure fails as following ---------------------------------------------------------------------- checking for gnutls >= 2.12.2... yes checking for jansson >= 2.7... yes checking for tree-sitter >= 0.20.2... yes checking for libkqueue... no checking for library containing kqueue... none required configure: error: Non-toolkit scroll bars are not implemented for your system ---------------------------------------------------------------------- So add SCROLLBARS to PGTK_IMPLIES to avoid such options setting. * When MODULES option is OFF and TREESITTER is ON, link error happens as following. ---------------------------------------------------------------------- cc -o temacs.tmp \ -Demacs -I. -I. -I../lib -I../lib -I/usr/local/include -I/usr/local/include/librsvg-2.0 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include -I/usr/local/include/gdk-pixbuf-2.0 -pthread -I/usr/local/include/cairo -I/usr/local/include/pixman-1 -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -D_THREAD_SAFE -I/usr/local/include/libpng16 -I/usr/local/include/libxml2 -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/local/include -D_THREAD_SAFE -I/usr/local/include -D_THREAD_SAFE -I/usr/local/include -D_THREAD_SAFE -I/usr/local/include -D_THREAD_SAFE -I/usr/local/include -I/usr/local/include/webp -I/usr/local/include -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -pthread -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include -I/usr/local/include -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include/harfbuzz -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -MMD -MF deps/.d -MP -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include/p11-kit-1 -I/usr/local/include/cairo -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/pixman-1 -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -D_THREAD_SAFE -Wno-switch -Wno-pointer-sign -Wno-string-plus-int -Wno-unknown-attributes -Wno-unknown-pragmas -Wno-initializer-overrides -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -fstack-protector-strong -L/usr/local/lib -L/usr/local/lib \ dispnew.o frame.o scroll.o xdisp.o menu.o xmenu.o window.o charset.o coding.o category.o ccl.o character.o chartab.o bidi.o cm.o term.o terminal.o xfaces.o xterm.o xfns.o xselect.o xrdb.o xsmfns.o xsettings.o dbusbind.o emacs.o keyboard.o macros.o keymap.o sysdep.o bignum.o buffer.o filelock.o insdel.o marker.o minibuf.o fileio.o dired.o cmds.o casetab.o casefiddle.o indent.o search.o regex-emacs.o undo.o alloc.o pdumper.o data.o doc.o editfns.o callint.o eval.o floatfns.o fns.o sort.o font.o print.o lread.o syntax.o bytecode.o comp.o process.o gnutls.o callproc.o region-cache.o sound.o timefns.o atimer.o doprnt.o intervals.o textprop.o composite.o xml.o lcms.o kqueue.o profiler.o decompress.o thread.o systhread.o sqlite.o treesit.o itree.o xfont.o ftfont.o ftcrfont.o hbfont.o fontset.o fringe.o image.o xgselect.o json.o terminfo.o lastfile.o ../lib/libgnu.a ../oldXMenu/libXMenu11.a -ltiff -ljpeg -L/usr/local/lib -lpng16 -lgif -L/usr/local/lib -lwebpdemux -lwebpdecoder -lSM -lICE -lX11 -lXrender -L/usr/local/lib -lrsvg-2 -lm -lgio-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lintl -lcairo -lrt -L/usr/local/lib -ldbus-1 -lexecinfo -L/usr/local/lib -lXrandr -L/usr/local/lib -lXinerama -L/usr/local/lib -lXfixes -lXext -lXext -L/usr/local/lib -lxml2 -lutil -L/usr/local/lib -lcairo -lncurses -L/usr/local/lib -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -L/usr/local/lib -lgobject-2.0 -lglib-2.0 -lintl -L/usr/local/lib -lfreetype -L/usr/local/lib -lfontconfig -lfreetype -L/usr/local/lib -lharfbuzz -L/usr/local/lib -lgnutls -lpthread -L/usr/local/lib -llcms2 -llcms2_fast_float -llcms2_threaded -lm -lz -L/usr/local/lib -ljansson -lgmp -L/usr/local/lib -lXi -L/usr/local/lib -ltree-sitter -lsqlite3 -lXcomposite -lXext ld: error: undefined symbol: dynlib_error >>> referenced by treesit.c >>> treesit.o:(treesit_load_language) >>> referenced by treesit.c >>> treesit.o:(treesit_load_language) >>> referenced by treesit.c >>> treesit.o:(treesit_load_language) >>> referenced 1 more times ld: error: undefined symbol: dynlib_sym >>> referenced by treesit.c >>> treesit.o:(treesit_load_language) ld: error: undefined symbol: dynlib_open >>> referenced by treesit.c >>> treesit.o:(treesit_load_language) cc: error: linker command failed with exit code 1 (use -v to see invocation) ---------------------------------------------------------------------- So add MODULES to TREESITTER_IMPLIES to avoid such options setting. * Revive MOTIF option. Upstream once removed support of Motif but they reverted it later. * Update CAIRO_DESC. This option prevents XFT now. * Update OTF_DESC. This option doesn't imply XTF any more. * Pet portclippy. Reviewed by: ashish, jrm Differential Revision: https://reviews.freebsd.org/D41233
-rw-r--r--editors/emacs-devel/Makefile25
1 files changed, 14 insertions, 11 deletions
diff --git a/editors/emacs-devel/Makefile b/editors/emacs-devel/Makefile
index 141a9529d21a..f9b64d65e431 100644
--- a/editors/emacs-devel/Makefile
+++ b/editors/emacs-devel/Makefile
@@ -12,7 +12,6 @@ COMMENT_nox= (No X flavor)
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
-BUILD_DEPENDS= texinfo>=6.5,1:print/texinfo
LIB_DEPENDS= libgmp.so:math/gmp
FLAVORS= full nox
@@ -20,7 +19,8 @@ full_CONFLICTS_INSTALL= emacs-devel-nox
nox_PKGNAMESUFFIX= -devel-nox
nox_CONFLICTS_INSTALL= emacs-devel
-USES= autoreconf:build cpe gmake localbase:ldflags ncurses pkgconfig
+USES= autoreconf:build cpe gmake localbase:ldflags makeinfo ncurses \
+ pkgconfig
CPE_VENDOR= gnu
USE_GITHUB= yes
GH_ACCOUNT= emacs-mirror
@@ -94,17 +94,17 @@ OPTIONS_GROUP_GRAPHICS= CAIRO GIF JPEG MAGICK PNG SVG TIFF WEBP XPM
OPTIONS_RADIO= FILENOTIFY SOUND X11TOOLKIT
OPTIONS_RADIO_FILENOTIFY= GFILE KQUEUE
OPTIONS_RADIO_SOUND= ALSA OSS
-OPTIONS_RADIO_X11TOOLKIT= GTK2 GTK3 XAW XAW3D
+OPTIONS_RADIO_X11TOOLKIT= GTK2 GTK3 MOTIF XAW XAW3D
.if ${FLAVOR:U} == nox
OPTIONS_EXCLUDE= ALSA CAIRO DBUS GFILE GIF GSETTINGS GTK2 GTK3 \
- HARFBUZZ JPEG LCMS2 M17N MAGICK OSS OTF PGTK \
- PNG SCROLLBARS SVG TIFF WEBP XAW XAW3D XFT XIM \
- XPM XWIDGETS
+ HARFBUZZ JPEG LCMS2 M17N MAGICK MOTIF OSS OTF \
+ PGTK PNG SCROLLBARS SVG TIFF WEBP XAW XAW3D XFT \
+ XIM XPM XWIDGETS
.endif
OPTIONS_SUB= YES
ACL_DESC= Access control list support
-CAIRO_DESC= Cairo graphics library support [implies PNG]
+CAIRO_DESC= Cairo graphics library support [implies PNG, prevents XFT]
FILENOTIFY_DESC= File notification support
GFILE_DESC= File notification via gfile
GRAPHICS_DESC= Graphics support
@@ -116,7 +116,7 @@ MAGICK_DESC= ImageMagick image processing support (deprecated)
MAILUTILS_DESC= Mail framework via GNU Mailutils
MODULES_DESC= Dynamic modules support
NATIVECOMP_DESC= Emacs Lisp native compiler support
-OTF_DESC= Opentype fonts [implies XFT]
+OTF_DESC= Opentype fonts
PGTK_DESC= Pure GTK GUI [implies CAIRO, GTK3]
SCROLLBARS_DESC= Toolkit scroll-bars
SOURCES_DESC= Install sources
@@ -133,9 +133,9 @@ ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
ALSA_CONFIGURE_ON= --with-sound=alsa
CAIRO_IMPLIES= PNG
CAIRO_PREVENTS= XFT
+CAIRO_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2
CAIRO_USE= GNOME=cairo
-CAIRO_LIB_DEPENDS= libfreetype.so:print/freetype2 \
- libfontconfig.so:x11-fonts/fontconfig
CAIRO_CONFIGURE_WITH= cairo
DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus
DBUS_CONFIGURE_WITH= dbus
@@ -175,12 +175,14 @@ MAILUTILS_CONFIGURE_WITH= mailutils
MAILUTILS_CONFIGURE_ENV_OFF= ac_cv_lib_lockfile_maillock=no \
ac_cv_prog_liblockfile=no
MODULES_CONFIGURE_WITH= modules
+MOTIF_USES= motif
+MOTIF_CONFIGURE_ON= --with-x-toolkit=motif
NATIVECOMP_USE= GCC=yes
NATIVECOMP_CONFIGURE_WITH= native-compilation=aot
OSS_CONFIGURE_ON= --with-sound=oss
OTF_LIB_DEPENDS= libotf.so:print/libotf
OTF_CONFIGURE_WITH= libotf
-PGTK_IMPLIES= CAIRO GTK3
+PGTK_IMPLIES= CAIRO GTK3 SCROLLBARS
PGTK_PREVENTS= M17N XFT XPM
PGTK_CATEGORIES= wayland
PGTK_CONFIGURE_WITH= pgtk
@@ -195,6 +197,7 @@ SVG_CONFIGURE_WITH= rsvg
THREADS_CONFIGURE_WITH= threads
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
TIFF_CONFIGURE_WITH= tiff
+TREESITTER_IMPLIES= MODULES
TREESITTER_LIB_DEPENDS= libtree-sitter.so:devel/tree-sitter
TREESITTER_CONFIGURE_WITH= tree-sitter
WEBP_LIB_DEPENDS= libwebp.so:graphics/webp