diff options
author | dholland <dholland@pkgsrc.org> | 2014-12-27 00:13:28 +0000 |
---|---|---|
committer | dholland <dholland@pkgsrc.org> | 2014-12-27 00:13:28 +0000 |
commit | 56fa37d7a35fec056ec3ad6f42a9e25096a899cb (patch) | |
tree | 0fa97ed92ebe85ea28867abb226fe084455cc236 /lang/smalltalk | |
parent | b2cea3375b616c3e9f97b18b815bc81b56ffb563 (diff) | |
download | pkgsrc-56fa37d7a35fec056ec3ad6f42a9e25096a899cb.tar.gz |
Sort out depends.
- Add options.mk and make most of the heavy depends optional.
- Add optional support for SDL, disabled by default.
- Fix curses buildlinking; closes PR 49478.
- Update readline support for semi-recent API changes.
- Update PLIST accordingly.
PKGREVISION -> 20.
Diffstat (limited to 'lang/smalltalk')
-rw-r--r-- | lang/smalltalk/Makefile | 26 | ||||
-rw-r--r-- | lang/smalltalk/PLIST | 42 | ||||
-rw-r--r-- | lang/smalltalk/distinfo | 5 | ||||
-rw-r--r-- | lang/smalltalk/options.mk | 102 | ||||
-rw-r--r-- | lang/smalltalk/patches/patch-ae | 20 | ||||
-rw-r--r-- | lang/smalltalk/patches/patch-libgst_input.c | 23 |
6 files changed, 178 insertions, 40 deletions
diff --git a/lang/smalltalk/Makefile b/lang/smalltalk/Makefile index fc360e06edf..3f428657060 100644 --- a/lang/smalltalk/Makefile +++ b/lang/smalltalk/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.84 2014/06/19 15:15:38 asau Exp $ +# $NetBSD: Makefile,v 1.85 2014/12/27 00:13:28 dholland Exp $ DISTNAME= smalltalk-3.2.4 -PKGREVISION= 19 +PKGREVISION= 20 CATEGORIES= lang MASTER_SITES= ${MASTER_SITE_GNU:=smalltalk/} @@ -19,16 +19,10 @@ GNU_CONFIGURE= YES CONFIGURE_ARGS+= --with-system-ltdl CONFIGURE_ARGS+= --with-system-libsigsegv=${BUILDLINK_PREFIX.libsigsegv}/lib CONFIGURE_ARGS+= --with-system-libffi=${BUILDLINK_PREFIX.libffi}/lib -CONFIGURE_ARGS+= --with-gdbm=${BUILDLINK_PREFIX.gdbm}/lib CONFIGURE_ARGS+= --with-gmp=${BUILDLINK_PREFIX.gmp}/lib CONFIGURE_ARGS+= --with-lispdir=${PREFIX}/share/emacs/site-lisp -CONFIGURE_ARGS+= --with-readline=${BUILDLINK_PREFIX.readline}/lib -CONFIGURE_ARGS+= --with-tcl=${BUILDLINK_PREFIX.tcl}/lib -CONFIGURE_ARGS+= --with-tk=${BUILDLINK_PREFIX.tk}/lib CONFIGURE_ARGS+= --without-emacs -#CONFIGURE_ARGS+= --without-glib --without-gtk #CONFIGURE_ENV+= CFLAGS="-O2 -fsigned-char" -CONFIGURE_ENV+= ac_cv_header_sqlite3_h=no IGNORE_LIBTOOLIZE= lib/smalltalk/libc.la INFO_FILES= YES @@ -59,19 +53,15 @@ post-extract: -e "s/LDBL_EPSILON/FLT_EPSILON/g" -e "s/truncl/truncf/g" \ ${WRKSRC}/lib-src/truncl.c > ${WRKSRC}/lib-src/truncf.c -.include "../../graphics/glut/buildlink3.mk" -.include "../../graphics/glu/buildlink3.mk" -.include "../../x11/libICE/buildlink3.mk" +.include "options.mk" + + .include "../../converters/libiconv/buildlink3.mk" -.include "../../databases/gdbm/buildlink3.mk" -.include "../../devel/libsigsegv/buildlink3.mk" +.include "../../devel/gettext-lib/buildlink3.mk" +.include "../../devel/gmp/buildlink3.mk" .include "../../devel/libffi/buildlink3.mk" .include "../../devel/libltdl/buildlink3.mk" -.include "../../devel/gmp/buildlink3.mk" -.include "../../devel/gettext-lib/buildlink3.mk" -.include "../../devel/readline/buildlink3.mk" +.include "../../devel/libsigsegv/buildlink3.mk" .include "../../devel/zlib/buildlink3.mk" -.include "../../x11/gtk2/buildlink3.mk" -.include "../../x11/tk/buildlink3.mk" .include "../../mk/pthread.buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/lang/smalltalk/PLIST b/lang/smalltalk/PLIST index 07891b43c52..74decc288be 100644 --- a/lang/smalltalk/PLIST +++ b/lang/smalltalk/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.23 2013/03/24 16:54:59 joerg Exp $ +@comment $NetBSD: PLIST,v 1.24 2014/12/27 00:13:28 dholland Exp $ bin/gst bin/gst-blox bin/gst-browser @@ -18,13 +18,15 @@ info/gst-libs.info info/gst.info lib/libgst.la lib/pkgconfig/gnu-smalltalk.pc -lib/smalltalk/blox-tk.la +${PLIST.tk}lib/smalltalk/blox-tk.la +${PLIST.sqlite}lib/smalltalk/dbd-sqlite3.la lib/smalltalk/digest.la -lib/smalltalk/expat.la -lib/smalltalk/gdbm.la -lib/smalltalk/gst-gtk.la -lib/smalltalk/gstglut.la -lib/smalltalk/gstopengl.la +${PLIST.expat}lib/smalltalk/expat.la +${PLIST.gdbm}lib/smalltalk/gdbm.la +${PLIST.gtk}lib/smalltalk/gst-gtk.la +${PLIST.opengl}lib/smalltalk/gstglut.la +${PLIST.opengl}lib/smalltalk/gstopengl.la +${PLIST.sdl}lib/smalltalk/sdl.la lib/smalltalk/i18n.la lib/smalltalk/iconv.la lib/smalltalk/zlib.la @@ -53,32 +55,40 @@ share/aclocal/gst-package.m4 share/aclocal/gst.m4 share/smalltalk/Announcements.star share/smalltalk/BLOXBrowser.star -share/smalltalk/Blox.star -share/smalltalk/BloxGTK.star -share/smalltalk/BloxTK.star +${PLIST.blox}share/smalltalk/Blox.star +${PLIST.gtk}share/smalltalk/BloxGTK.star +${PLIST.tk}share/smalltalk/BloxTK.star share/smalltalk/CParser.star -share/smalltalk/Cairo.star +${PLIST.cairo}share/smalltalk/Cairo.star share/smalltalk/ClassPublisher.star share/smalltalk/Compiler.star share/smalltalk/Complex.star share/smalltalk/Continuations.star share/smalltalk/DBD-MySQL.star +${PLIST.sqlite}share/smalltalk/DBD-SQLite.star share/smalltalk/DBI.star share/smalltalk/DebugTools.star share/smalltalk/DhbNumericalMethods.star share/smalltalk/Digest.star -share/smalltalk/GDBM.star -share/smalltalk/GLUT.star +${PLIST.gdbm}share/smalltalk/GDBM.star +${PLIST.opengl}share/smalltalk/GLUT.star share/smalltalk/GNUPlot.star -share/smalltalk/GTK.star +${PLIST.gtk}share/smalltalk/GTK.star share/smalltalk/Glorp.star share/smalltalk/I18N.star share/smalltalk/Iconv.star share/smalltalk/Java.star +${PLIST.sdl}share/smalltalk/LibSDL.star +${PLIST.sdl}share/smalltalk/LibSDL_GL.star +${PLIST.sdl}share/smalltalk/LibSDL_image.star +${PLIST.sdl}share/smalltalk/LibSDL_mixer.star +${PLIST.sdl}share/smalltalk/LibSDL_sound.star +${PLIST.sdl}share/smalltalk/LibSDL_ttf.star share/smalltalk/Magritte-Seaside.star share/smalltalk/Magritte.star +${PLIST.curses}share/smalltalk/NCurses.star share/smalltalk/NetClients.star -share/smalltalk/OpenGL.star +${PLIST.opengl}share/smalltalk/OpenGL.star share/smalltalk/Parser.star share/smalltalk/ProfileTools.star share/smalltalk/ROE.star @@ -95,7 +105,7 @@ share/smalltalk/VFSAddOns.star share/smalltalk/VisualGST.star share/smalltalk/WebServer.star share/smalltalk/XML-DOM.star -share/smalltalk/XML-Expat.star +${PLIST.expat}share/smalltalk/XML-Expat.star share/smalltalk/XML-ParserTests.star share/smalltalk/XML-PullParser.star share/smalltalk/XML-SAXDriver.star diff --git a/lang/smalltalk/distinfo b/lang/smalltalk/distinfo index e3bbe02cdae..c0daf0f3a23 100644 --- a/lang/smalltalk/distinfo +++ b/lang/smalltalk/distinfo @@ -1,8 +1,9 @@ -$NetBSD: distinfo,v 1.24 2013/03/24 16:54:59 joerg Exp $ +$NetBSD: distinfo,v 1.25 2014/12/27 00:13:28 dholland Exp $ SHA1 (smalltalk-3.2.4.tar.gz) = 6b164e145c1118ad74770bb15614478d47f55523 RMD160 (smalltalk-3.2.4.tar.gz) = d8ca6b888311a70748071ff4024e31adeb0a920f Size (smalltalk-3.2.4.tar.gz) = 5877496 bytes -SHA1 (patch-ae) = c92422f2ac5378dafc65762a69c0dc840d974363 +SHA1 (patch-ae) = aa64f95b4aec8117655ebd7fe07a6c0ffa7018fe SHA1 (patch-ah) = eaa03cf41f1c30acd1762cb6389dfe0157ce551b +SHA1 (patch-libgst_input.c) = 06168ed6decd6d42838e76ada81717e3f599d733 SHA1 (patch-snprintfv_snprintfv_format.c) = 3e44d61ac38197066b0a56e15c2e519a2b7d1661 diff --git a/lang/smalltalk/options.mk b/lang/smalltalk/options.mk new file mode 100644 index 00000000000..652593aa810 --- /dev/null +++ b/lang/smalltalk/options.mk @@ -0,0 +1,102 @@ +# $NetBSD: options.mk,v 1.1 2014/12/27 00:13:28 dholland Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.smalltalk +PKG_SUPPORTED_OPTIONS= cairo curses expat gdbm gtk opengl readline sdl sqlite tk +PKG_SUGGESTED_OPTIONS= cairo curses expat gdbm gtk opengl readline tk + +PLIST_VARS+= ${PKG_SUPPORTED_OPTIONS} +PLIST_VARS+= blox + +.include "../../mk/bsd.options.mk" + +.if !empty(PKG_OPTIONS:Mcairo) +PLIST.cairo= yes +. include "../../graphics/cairo/buildlink3.mk" +.else +CONFIGURE_ARGS+= --disable-cairo +.endif + +.if !empty(PKG_OPTIONS.Mcurses) +PLIST.curses= yes +# it only searches for ncurses but seems to be ok with at least netbsd's curses +FAKE_NCURSES= yes +.include "../../mk/curses.buildlink3.mk" +.else +CONFIGURE_ARGS+= --without-ncurses +.endif + +.if !empty(PKG_OPTIONS:Mexpat) +PLIST.expat= yes +.include "../../textproc/expat/buildlink3.mk" +.else +CONFIGURE_ENV+= ac_cv_header_expat_h=no +.endif + +# XXX: there are mysql, postgres modules too +.if !empty(PKG_OPTIONS:Mgdbm) +PLIST.gdbm= yes +CONFIGURE_ARGS+= --with-gdbm=${BUILDLINK_PREFIX.gdbm}/lib +. include "../../databases/gdbm/buildlink3.mk" +.else +CONFIGURE_ARGS+= --without-gdbm +.endif + +.if !empty(PKG_OPTIONS:Mgtk) +PLIST.gtk= yes +PLIST.blox= yes +. include "../../devel/atk/buildlink3.mk" +. include "../../devel/glib2/buildlink3.mk" +. include "../../devel/pango/buildlink3.mk" +. include "../../x11/gtk2/buildlink3.mk" +.else +CONFIGURE_ARGS+= --without-glib --without-gtk +.endif + +.if !empty(PKG_OPTIONS:Mopengl) +PLIST.opengl= yes +. include "../../graphics/MesaLib/buildlink3.mk" +. include "../../graphics/glu/buildlink3.mk" +. include "../../graphics/glut/buildlink3.mk" +. include "../../x11/libICE/buildlink3.mk" +.else +CONFIGURE_ARGS+= --disable-opengl +CONFIGURE_ARGS+= --disable-glut +.endif + +.if !empty(PKG_OPTIONS:Mreadline) +PLIST.readline= yes +CONFIGURE_ARGS+= --with-readline=${BUILDLINK_PREFIX.readline}/lib +. include "../../devel/readline/buildlink3.mk" +.else +CONFIGURE_ARGS+= --without-readline +.endif + +.if !empty(PKG_OPTIONS:Msdl) +PLIST.sdl= yes +. include "../../devel/SDL/buildlink3.mk" +. include "../../graphics/SDL_image/buildlink3.mk" +. include "../../audio/SDL_mixer/buildlink3.mk" +. include "../../audio/SDL_sound/buildlink3.mk" +. include "../../devel/SDL_ttf/buildlink3.mk" +.else +CONFIGURE_ARGS+= --disable-SDL +.endif + +.if !empty(PKG_OPTIONS:Msqlite) +PLIST.sqlite= yes +. include "../../databases/sqlite3/buildlink3.mk" +.else +CONFIGURE_ENV+= ac_cv_header_sqlite3_h=no +.endif + +.if !empty(PKG_OPTIONS:Mtk) +PLIST.tk= yes +PLIST.blox= yes +CONFIGURE_ARGS+= --with-tcl=${BUILDLINK_PREFIX.tcl}/lib +CONFIGURE_ARGS+= --with-tk=${BUILDLINK_PREFIX.tk}/lib +. include "../../lang/tcl/buildlink3.mk" +. include "../../x11/tk/buildlink3.mk" +.else +CONFIGURE_ARGS+= --without-tcl +CONFIGURE_ARGS+= --without-tk +.endif diff --git a/lang/smalltalk/patches/patch-ae b/lang/smalltalk/patches/patch-ae index 73d34401526..5c0de379107 100644 --- a/lang/smalltalk/patches/patch-ae +++ b/lang/smalltalk/patches/patch-ae @@ -1,8 +1,11 @@ -$NetBSD: patch-ae,v 1.5 2011/04/30 11:46:15 asau Exp $ +$NetBSD: patch-ae,v 1.6 2014/12/27 00:13:28 dholland Exp $ ---- configure.orig 2010-04-21 14:03:23.000000000 +0400 -+++ configure 2010-05-02 22:52:09.000000000 +0400 -@@ -15539,7 +15539,8 @@ +- add more functions to check for (XXX: why is half the line duplicated?) +- update for readline API changes + +--- configure.orig 2011-03-21 18:12:58.000000000 +0000 ++++ configure +@@ -16069,7 +16069,8 @@ fi for ac_func in putenv strdup strerror strsignal mkstemp getpagesize \ getdtablesize strstr ftruncate floorl ceill sqrtl frexpl ldexpl asinl \ @@ -12,3 +15,12 @@ $NetBSD: patch-ae,v 1.5 2011/04/30 11:46:15 asau Exp $ lrint trunc strsep strpbrk symlink mkdtemp do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +@@ -17737,7 +17738,7 @@ main() + { + rl_bind_key ('\t', rl_insert); + /* This is missing in BSD libedit! */ +- rl_filename_quoting_function = (CPFunction *) readline_quote_filename; ++ rl_filename_quoting_function = (rl_quote_func_t *) readline_quote_filename; + exit(0); + } + EOF diff --git a/lang/smalltalk/patches/patch-libgst_input.c b/lang/smalltalk/patches/patch-libgst_input.c new file mode 100644 index 00000000000..4077f877023 --- /dev/null +++ b/lang/smalltalk/patches/patch-libgst_input.c @@ -0,0 +1,23 @@ +$NetBSD: patch-libgst_input.c,v 1.1 2014/12/27 00:13:28 dholland Exp $ + +Update for readline API changes. + +--- libgst/input.c~ 2011-03-21 11:32:44.000000000 +0000 ++++ libgst/input.c +@@ -1142,13 +1142,13 @@ _gst_initialize_readline (void) + rl_special_prefixes = (char *) "+-=*<>~?%/@|&\\"; + + /* Our rules for quoting are a bit different from the default */ +- rl_filename_quoting_function = (CPFunction *) readline_quote_filename; ++ rl_filename_quoting_function = (rl_quote_func_t *) readline_quote_filename; + rl_filename_dequoting_function = +- (CPFunction *) readline_dequote_filename; ++ (rl_dequote_func_t *) readline_dequote_filename; + + /* Try to match a symbol before a filename */ + rl_attempted_completion_function = +- (CPPFunction *) readline_match_symbols; ++ (rl_completion_func_t *) readline_match_symbols; + + /* Since we have to sort the array to perform the binary search, + remove duplicates and avoid that readline resorts the result. */ |