development/icon: Updated for version 9.5.20i.

Signed-off-by: Kyle Guinn <elyk03@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Kyle Guinn 2021-01-02 02:48:29 -06:00 committed by Willy Sudiarto Raharjo
parent 128be70ecd
commit f78e9f1c06
No known key found for this signature in database
GPG key ID: 3F617144D7238786
7 changed files with 17 additions and 283 deletions

View file

@ -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

View file

@ -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=""

View file

@ -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) {

View file

@ -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);

View file

@ -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 */

View file

@ -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;
}

View file

@ -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.