diff options
Diffstat (limited to 'development/icon')
-rw-r--r-- | development/icon/icon.SlackBuild | 29 | ||||
-rw-r--r-- | development/icon/icon.info | 6 | ||||
-rw-r--r-- | development/icon/patches/display.patch | 44 | ||||
-rw-r--r-- | development/icon/patches/glibc.patch | 23 | ||||
-rw-r--r-- | development/icon/patches/implicit-defs.patch | 162 | ||||
-rw-r--r-- | development/icon/patches/lexer.patch | 18 | ||||
-rw-r--r-- | development/icon/patches/maxtype.patch | 18 |
7 files changed, 17 insertions, 283 deletions
diff --git a/development/icon/icon.SlackBuild b/development/icon/icon.SlackBuild index c444ae2fbe06..6867d68aa94b 100644 --- a/development/icon/icon.SlackBuild +++ b/development/icon/icon.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for icon -# Copyright 2010-2019 Kyle Guinn <elyk03@gmail.com> +# Copyright 2010-2021 Kyle Guinn <elyk03@gmail.com> # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,9 +23,8 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=icon -VERSION=${VERSION:-9.5.1} -SRCVER=v$(echo $VERSION | tr -d .)src -BUILD=${BUILD:-2} +VERSION=${VERSION:-9.5.20i} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -68,19 +67,19 @@ set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP -rm -rf $PRGNAM-$SRCVER -tar xvf $CWD/$PRGNAM-$SRCVER.tgz -cd $PRGNAM-$SRCVER +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION chown -R root:root . chmod -R u+w,go-w,a+rX-st . -# Cherry-picked bugfix and ftbfs patches from upstream -# https://github.com/gtownsend/icon -patch -p1 < $CWD/patches/display.patch -patch -p1 < $CWD/patches/maxtype.patch -patch -p1 < $CWD/patches/lexer.patch -patch -p1 < $CWD/patches/implicit-defs.patch -patch -p1 < $CWD/patches/glibc.patch +# Use the system XPM. https://github.com/gtownsend/icon/pull/2 +sed -i -e 's|"../xpm/xpm.h"|<X11/xpm.h>|' src/common/xwindow.c src/h/sys.h +# Neuter the $XL variable, replace with $XLIBS which includes -lXpm. +# Set $XLIBS to empty if building without graphics (make Configure). +sed -i -e 's|-lX11|-lXpm -lX11|' config/linux/Makedefs +sed -i -e 's|XL=.*|XL= ;;|' config/setup.sh +sed -i -e 's|XL|XLIBS|' src/runtime/Makefile # Installation creates bin, lib, man, and doc dirs inside the "dest" dir. # Edit the Install rule to avoid having to manually rearrange files. @@ -112,7 +111,7 @@ find $PKG -exec file {} + | grep -e "executable" -e "shared object" | grep ELF \ find $PKG/usr/man -type f -exec gzip -9 {} + mv $PKG/README $PKG/usr/doc/$PRGNAM-$VERSION -rm $PKG/usr/doc/$PRGNAM-$VERSION/clnroff.sed +rm $PKG/usr/doc/$PRGNAM-$VERSION/*.sed cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/development/icon/icon.info b/development/icon/icon.info index 0df2ab5bd931..828871c28499 100644 --- a/development/icon/icon.info +++ b/development/icon/icon.info @@ -1,8 +1,8 @@ PRGNAM="icon" -VERSION="9.5.1" +VERSION="9.5.20i" HOMEPAGE="https://www2.cs.arizona.edu/icon/" -DOWNLOAD="https://www2.cs.arizona.edu/icon/ftp/packages/unix/icon-v951src.tgz" -MD5SUM="8fdeb7c5408d9d9bf06bc5e7f4f54498" +DOWNLOAD="https://github.com/gtownsend/icon/archive/v9.5.20i/icon-9.5.20i.tar.gz" +MD5SUM="2c8803b42ae0512981855e9147738efd" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/development/icon/patches/display.patch b/development/icon/patches/display.patch deleted file mode 100644 index 05eab35d2cfb..000000000000 --- a/development/icon/patches/display.patch +++ /dev/null @@ -1,44 +0,0 @@ -commit d0cd013653360f6f11e3b5dbdbbf3788a5c08b02 -Author: Gregg Townsend <gmt@cs.arizona.edu> -Date: Thu Dec 4 15:37:39 2014 -0700 - - Handle $DISPLAY longer than 63 characters. - First seen as a problem on Macintosh OS X 10.10 ("Yosemite"). - Side effects revealed other bugs in cross-display CopyArea and - gamma correction. - -diff --git a/src/h/graphics.h b/src/h/graphics.h ---- a/src/h/graphics.h -+++ b/src/h/graphics.h -@@ -201,7 +201,7 @@ - typedef struct _wdisplay { - int refcount; - int serial; /* serial # */ -- char name[MAXDISPLAYNAME]; -+ char *name; - Display * display; - Visual * visual; - GC icongc; -diff --git a/src/h/xwin.h b/src/h/xwin.h ---- a/src/h/xwin.h -+++ b/src/h/xwin.h -@@ -73,7 +73,6 @@ - */ - #define WMAXCOLORS 256 - #define MAXCOLORNAME 40 --#define MAXDISPLAYNAME 64 - #define CSHARED 0 - #define CMUTABLE 1 - #define NUMCURSORSYMS 78 -diff --git a/src/runtime/rxrsc.ri b/src/runtime/rxrsc.ri ---- a/src/runtime/rxrsc.ri -+++ b/src/runtime/rxrsc.ri -@@ -376,7 +376,7 @@ - - GRFX_ALLOC(wd, _wdisplay); - -- strcpy(wd->name,s); -+ wd->name = salloc(s); - wd->display = XOpenDisplay((*s=='\0') ? NULL : s); - - if (wd->display == NULL) { diff --git a/development/icon/patches/glibc.patch b/development/icon/patches/glibc.patch deleted file mode 100644 index b0629d0cc893..000000000000 --- a/development/icon/patches/glibc.patch +++ /dev/null @@ -1,23 +0,0 @@ -commit bfc4a6004d0d3984c8066289b8d8e563640c4ddd -Author: Gregg Townsend <gmt@cs.arizona.edu> -Date: Mon Oct 29 10:07:31 2018 -0700 - - Adapt to change in GLIBC v2.28 internals (thx Cheyenne Wills). - -diff --git a/ipl/cfuncs/fpoll.c b/ipl/cfuncs/fpoll.c ---- a/ipl/cfuncs/fpoll.c -+++ b/ipl/cfuncs/fpoll.c -@@ -60,12 +64,9 @@ - - /* check for data already in buffer */ - /* there's no legal way to do this in C; we cheat */ --#if defined(__GLIBC__) && defined(_STDIO_USES_IOSTREAM) /* new GCC library */ -+#if defined(__GLIBC__) /* new GCC library */ - if (f->_IO_read_ptr < f->_IO_read_end) - RetArg(1); --#elif defined(__GLIBC__) /* old GCC library */ -- if (f->__bufp < f->__get_limit) -- RetArg(1); - #elif defined(_FSTDIO) /* new BSD library */ - if (f->_r > 0) - RetArg(1); diff --git a/development/icon/patches/implicit-defs.patch b/development/icon/patches/implicit-defs.patch deleted file mode 100644 index 9e015c7ad71f..000000000000 --- a/development/icon/patches/implicit-defs.patch +++ /dev/null @@ -1,162 +0,0 @@ -commit 8cb4887b886ad0c9caf0be595e236d2a74a41a8d -Author: Gregg Townsend <gmt@cs.arizona.edu> -Date: Mon Aug 28 09:10:00 2017 -0700 - - Fix compilation warnings in xpm code (thx Sean Jensen). - -diff --git a/src/xpm/create.c b/src/xpm/create.c ---- a/src/xpm/create.c -+++ b/src/xpm/create.c -@@ -344,6 +344,7 @@ - - #endif - -+int - xpmCreateImage(display, attrib, image_return, shapeimage_return, attributes) - Display *display; - xpmInternAttrib *attrib; -diff --git a/src/xpm/data.c b/src/xpm/data.c ---- a/src/xpm/data.c -+++ b/src/xpm/data.c -@@ -110,6 +110,7 @@ - /* - * skip to the end of the current string and the beginning of the next one - */ -+void - xpmNextString(mdata) - xpmData *mdata; - { -@@ -277,6 +278,7 @@ - /* - * get the current comment line - */ -+void - xpmGetCmt(mdata, cmt) - xpmData *mdata; - char **cmt; -@@ -403,6 +405,7 @@ - /* - * close the file related to the xpmData if any - */ -+void - XpmDataClose(mdata) - xpmData *mdata; - { -diff --git a/src/xpm/misc.c b/src/xpm/misc.c ---- a/src/xpm/misc.c -+++ b/src/xpm/misc.c -@@ -14,6 +14,7 @@ - * Free the computed color table - */ - -+void - xpmFreeColorTable(colorTable, ncolors) - char ***colorTable; - int ncolors; -@@ -39,6 +40,7 @@ - * which ones must be freed later on. - */ - -+void - xpmInitInternAttrib(attrib) - xpmInternAttrib *attrib; - { -@@ -55,6 +57,7 @@ - * Free the xpmInternAttrib pointers which have been allocated - */ - -+void - xpmFreeInternAttrib(attrib) - xpmInternAttrib *attrib; - { -@@ -80,6 +83,7 @@ - /* - * Free array of extensions - */ -+void - XpmFreeExtensions(extensions, nextensions) - XpmExtension *extensions; - int nextensions; -@@ -108,6 +112,7 @@ - * Return the XpmAttributes structure size - */ - -+int - XpmAttributesSize() - { - return sizeof(XpmAttributes); -@@ -119,6 +124,7 @@ - * but the structure itself - */ - -+void - XpmFreeAttributes(attributes) - XpmAttributes *attributes; - { -@@ -167,6 +173,7 @@ - * the xpmInternAttrib structure. - */ - -+void - xpmSetAttributes(attrib, attributes) - xpmInternAttrib *attrib; - XpmAttributes *attributes; -diff --git a/src/xpm/xpm.h b/src/xpm/xpm.h ---- a/src/xpm/xpm.h -+++ b/src/xpm/xpm.h -@@ -191,8 +191,8 @@ - XpmAttributes * attributes)); - - FUNC(XpmAttributesSize, int, ()); -- FUNC(XpmFreeAttributes, int, (XpmAttributes * attributes)); -- FUNC(XpmFreeExtensions, int, (XpmExtension * extensions, int nextensions)); -+ FUNC(XpmFreeAttributes, void, (XpmAttributes * attributes)); -+ FUNC(XpmFreeExtensions, void, (XpmExtension * extensions, int nextensions)); - - #ifdef __cplusplus - } /* for C++ V2.0 */ -diff --git a/src/xpm/xpmP.h b/src/xpm/xpmP.h ---- a/src/xpm/xpmP.h -+++ b/src/xpm/xpmP.h -@@ -159,13 +159,13 @@ - XpmAttributes * attributes, - xpmInternAttrib * attrib)); - --FUNC(xpmFreeColorTable, int, (char ***colorTable, int ncolors)); -+FUNC(xpmFreeColorTable, void, (char ***colorTable, int ncolors)); - --FUNC(xpmInitInternAttrib, int, (xpmInternAttrib * xmpdata)); -+FUNC(xpmInitInternAttrib, void, (xpmInternAttrib * xmpdata)); - --FUNC(xpmFreeInternAttrib, int, (xpmInternAttrib * xmpdata)); -+FUNC(xpmFreeInternAttrib, void, (xpmInternAttrib * xmpdata)); - --FUNC(xpmSetAttributes, int, (xpmInternAttrib * attrib, -+FUNC(xpmSetAttributes, void, (xpmInternAttrib * attrib, - XpmAttributes * attributes)); - - FUNC(xpmGetAttributes, int, (XpmAttributes * attributes, -@@ -173,18 +173,20 @@ - - /* I/O utility */ - --FUNC(xpmNextString, int, (xpmData * mdata)); -+FUNC(atoui, unsigned int, (char *p, unsigned int l, unsigned int *ui_return)); -+FUNC(xpmGetString, int, (xpmData *mdata, char **sptr, unsigned int *l)); -+FUNC(xpmNextString, void, (xpmData * mdata)); - FUNC(xpmNextUI, int, (xpmData * mdata, unsigned int *ui_return)); - - #define xpmGetC(mdata) \ - (mdata->type ? (getc(mdata->stream.file)) : (*mdata->cptr++)) - - FUNC(xpmNextWord, unsigned int, (xpmData * mdata, char *buf)); --FUNC(xpmGetCmt, int, (xpmData * mdata, char **cmt)); -+FUNC(xpmGetCmt, void, (xpmData * mdata, char **cmt)); - FUNC(xpmReadFile, int, (char *filename, xpmData * mdata)); - FUNC(xpmWriteFile, int, (char *filename, xpmData * mdata)); - FUNC(xpmOpenArray, void, (char **data, xpmData * mdata)); --FUNC(XpmDataClose, int, (xpmData * mdata)); -+FUNC(XpmDataClose, void, (xpmData * mdata)); - - /* RGB utility */ - diff --git a/development/icon/patches/lexer.patch b/development/icon/patches/lexer.patch deleted file mode 100644 index 290ed6736469..000000000000 --- a/development/icon/patches/lexer.patch +++ /dev/null @@ -1,18 +0,0 @@ -commit bb7c6b5232d8cf0ad98e5ab8e8e3afd3a249751f -Author: Gregg Townsend <gmt@cs.arizona.edu> -Date: Mon Aug 28 08:08:32 2017 -0700 - - Fix ancient potential lexer bug (thx Sean Jensen). - -diff --git a/src/common/yylex.h b/src/common/yylex.h ---- a/src/common/yylex.h -+++ b/src/common/yylex.h -@@ -263,7 +263,7 @@ - { - register char *s1; - s1 = lex_sbuf.strtimage; -- while (s != '\0' && s1 < lex_sbuf.endimage && *s == *s1) { -+ while (*s != '\0' && s1 < lex_sbuf.endimage && *s == *s1) { - ++s; - ++s1; - } diff --git a/development/icon/patches/maxtype.patch b/development/icon/patches/maxtype.patch deleted file mode 100644 index 4e4651cc9621..000000000000 --- a/development/icon/patches/maxtype.patch +++ /dev/null @@ -1,18 +0,0 @@ -commit e91f59f3affe69043586cb171ad1f8027e31d930 -Author: Gregg Townsend <gmt@cs.arizona.edu> -Date: Sat Mar 11 08:41:26 2017 -0700 - - Fix innocuous MaxType definition bug (thx Don Ward). - -diff --git a/src/h/rmacros.h b/src/h/rmacros.h ---- a/src/h/rmacros.h -+++ b/src/h/rmacros.h -@@ -301,7 +301,7 @@ - #define T_Kywdstr 24 /* string keyword */ - #define T_Kywdevent 25 /* keyword &eventsource, etc. */ - --#define MaxType 26 /* maximum type number */ -+#define MaxType 25 /* maximum type number */ - - /* - * Definitions for keywords. |