the Fink project is an effort to port
popular Unix programs to Mac OS X
Package: aplus-fsf
Version: 4.22-1
Revision: 1004
Distribution: 10.5, 10.6
GCC: 4.0
Maintainer: Dave Morrison
Depends: x11, xfontpath, %N-shlibs (>= %v-%r)
Suggests: xemacs
BuildDepends: fink (>= 0.24.12), ttfmkfontdir, x11-dev
#Source: http://www.aplusdev.org/Download/aplus-fsf-%v.tar.gz
Source: mirror:sourceforge:fink/aplus-fsf-%v.tar.gz
Source-MD5: 27cb5f78c81dee06127f63e982bd0aaf
SourceDirectory: %n-4.22
PatchFile: %n.patch
PatchFile-MD5: 8c1e79e53ad7d948ea78e7a4b1d2de13
PatchScript: <<
#!/bin/sh -ev
%{default_script}
sed -i.bak -e '1i \
#include
<<
ConfigureParams: --disable-dependency-tracking
NoSetLDFLAGS: true
SetLIBRARY_PATH: %p/lib
# ./fix4mac
CompileScript: <<
#!/bin/sh -ev
darwinvers=`uname -r|cut -f1 -d.`
if [ $darwinvers == 8 ]; then CPPFLAGS="-DNO_TIMEZONE ${CPPFLAGS}"; fi
./configure %c
make
<<
InstallScript: <<
mkdir -p %i/share/%n/tests
cp src/a/apter.+ src/a/fsftest.+ %i/share/%n/tests
make install prefix=%i
mkdir -p %i/etc
mv %i/app-defaults %i/etc
mkdir -p %i/share/%n
mv %i/contrib %i/lisp.0 %i/lisp.1 %i/scripts %i/share/%n
mkdir -p %i/share/doc/%n
mv %i/doc/* %i/share/doc/%n
rmdir %i/doc
mkdir -p %i/lib/X11/fonts/kapl/TrueType
mv %i/fonts/X11/pcf/* %i/lib/X11/fonts/kapl
mv %i/lib/X11/fonts/kapl/Kapl.alias %i/lib/X11/fonts/kapl/fonts.alias
mkfontdir %i/lib/X11/fonts/kapl
mv %i/fonts/TrueType/* %i/lib/X11/fonts/kapl/TrueType
ttfmkfontdir %i/lib/X11/fonts/kapl/TrueType
mv %i/fonts/X11/bdf %i/lib/X11/fonts/kapl
rmdir %i/fonts/X11/pcf
rmdir %i/fonts/X11
rmdir %i/fonts/TrueType
rmdir %i/fonts
<<
DocFiles: ANNOUNCE AUTHORS COPYING NEWS README LICENSE
PostInstScript: <<
if [ -x %p/bin/xfontpath ]; then %p/bin/xfontpath install kapl kapl/TrueType; fi
<<
PostRmScript: <<
if [ -x %p/bin/xfontpath ]; then %p/bin/xfontpath remove kapl kapl/TrueType; fi
<<
Splitoff: <<
Package: %N-shlibs
Depends: x11-shlibs
Files: lib/lib*.0.dylib
Shlibs: <<
%p/lib/liba.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libAplusGUI.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libcxb.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libcxc.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libcxs.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libcxsys.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libdap.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libesf.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libIPC.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libMSGUI.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libMSIPC.0.dylib 1.0.0 %n (>= 4.20-2-1001)
%p/lib/libMSTypes.0.dylib 1.0.0 %n (>= 4.20-2-1001)
<<
DocFiles: ANNOUNCE AUTHORS COPYING NEWS README LICENSE
<<
Splitoff2: <<
Package: %N-dev
Depends: %N (>= %v-%r), %N-shlibs (= %v-%r)
BuildDependsOnly: true
Conflicts: libdap3, libdap6, libdap8
Replaces: libdap3, libdap6, libdap8
Files: include lib/lib*.dylib lib/lib*.a lib/lib*.la
DocFiles: ANNOUNCE AUTHORS COPYING NEWS README LICENSE
<<
Description: APL based programming system
DescDetail: <<
A+ is a powerful and efficient programming language. It embodies
a rich set of functions and operators, a modern graphical user
interface with many widgets and automatic synchronization of
widgets and variables, asynchronous execution of functions associated
with variables and events, dynamic loading of user compiled
subroutines, and many other features. Execution is by a rather
efficient interpreter.
<<
DescUsage: <<
The XEmacs support works pretty well. You'll need a line like
(autoload 'a "/sw/share/aplus-fsf-4.20/lisp/aplus"
"Start an A+ interpreter session" t)
or
(load-file "/sw/share/aplus-fsf-4.20/lisp/.emacs")
in your .xemacs/init.el file. The former approach is recommended
by one who knows better than I citing the loading of A+ support
will slow down font handling for all xemacs files. Pressing F4
will start an A+ session with the default APL font, load the A+
menus into the menu bar (i.e. load A+ support).
Note that this support is NOT designed for regular emacs.
When using an xterm or Terminal.app window with the A+ fonts be
sure to turn off istrip (stty -istrip). I've found the font doesn't
work in an xterm with tcsh or bash but does with zsh. Even with
istrip off tcsh and bash seem to strip the high bit or disable the
modifier keys. With zsh the modifier is APPLE/CMD and the shift
sense is inverterted even using the supplied XTerm app-default.
!!?! Feel free to play around with
/sw/share/aplus-fsf-4.20/app-defaults/XTerm and report your results
For setting up a Terminal.app window see the A+ FAQ at
http://aplusdev.org/FAQ/index.html. The same observations
apply with reagrd to choice of shell.
<<
DescPort: <<
Most of the changes involve adapting the installation
locations to fink conventions.
The PatchScript addresses a problem on intel; thanks to Matthew Sachs and
JF Mertens for this.
The Patch fixes some "incompatible implicit declaration" warnings and
adds hook for timezone symbol control.
10.4's "timezone" symbol (libSystem) is a pointer to the timezone
name, not a number-of-seconds offset as on linux (and as on 10.5, via
$UNIX2003 decoration), so use the alternate timegm approach.
The "NoSetLDFLAGS: true" and "SetLIBRARY_PATH: %p/lib" lines are to prevent
linking to fink's libdap3 instead of the supplied libdap0; thanks to JF Mertens
for help with this as well.
Original fink package by Brian Redman
Doesn't currently compile under 10.7.
<<
License: GPL/GFDL
Homepage: http://www.aplusdev.org/
diff -Nurd aplus-fsf-4.22.orig/src/a/beamconv.c aplus-fsf-4.22/src/a/beamconv.c
--- aplus-fsf-4.22.orig/src/a/beamconv.c 2008-03-27 15:09:34.000000000 -0400
+++ aplus-fsf-4.22/src/a/beamconv.c 2008-04-19 13:35:46.000000000 -0400
@@ -11,6 +11,7 @@
* formats of mmap'd files used by A+
*/
+#include
#include
#include
#include
diff -Nurd aplus-fsf-4.22.orig/src/a/bstub.c aplus-fsf-4.22/src/a/bstub.c
--- aplus-fsf-4.22.orig/src/a/bstub.c 2008-03-31 12:45:24.000000000 -0400
+++ aplus-fsf-4.22/src/a/bstub.c 2008-04-19 13:34:32.000000000 -0400
@@ -19,6 +19,7 @@
#include
#include
+#include
#include
#include
diff -Nurd aplus-fsf-4.22.orig/src/cxc/c.c aplus-fsf-4.22/src/cxc/c.c
--- aplus-fsf-4.22.orig/src/cxc/c.c 2008-03-27 15:09:32.000000000 -0400
+++ aplus-fsf-4.22/src/cxc/c.c 2008-04-19 13:26:04.000000000 -0400
@@ -9,6 +9,7 @@
#include
#include
+#include
#include
#include
diff -Nurd aplus-fsf-4.22.orig/src/cxsys/asock.c aplus-fsf-4.22/src/cxsys/asock.c
--- aplus-fsf-4.22.orig/src/cxsys/asock.c 2008-03-27 15:09:32.000000000 -0400
+++ aplus-fsf-4.22/src/cxsys/asock.c 2008-04-19 13:27:41.000000000 -0400
@@ -7,6 +7,7 @@
/*****************************************************************************/
#include
#include
+#include
#include
#include
#include
diff -Nurd aplus-fsf-4.22.orig/src/cxsys/eponymous.c aplus-fsf-4.22/src/cxsys/eponymous.c
--- aplus-fsf-4.22.orig/src/cxsys/eponymous.c 2008-03-27 15:09:31.000000000 -0400
+++ aplus-fsf-4.22/src/cxsys/eponymous.c 2008-04-19 13:45:48.000000000 -0400
@@ -531,7 +531,7 @@
lt.tm_sec=a->p[5]; /* second */
lt.tm_isdst=0; /* daylight savings NOT in effect */
/* z->p[0]=mktime(<)-altzone; */
-#if defined(_AIX) || defined(HAVE_SVR4) || defined (__osf__) || defined(HAVE_MKTIME)
+#if ( defined(_AIX) || defined(HAVE_SVR4) || defined (__osf__) || defined(HAVE_MKTIME) ) && !defined(NO_TIMEZONE)
z->p[0]=mktime(<);
if( z->p[0] != -1)
z->p[0]=z->p[0]-timezone;
diff -Nurd aplus-fsf-4.22.orig/src/cxsys/sfe.c aplus-fsf-4.22/src/cxsys/sfe.c
--- aplus-fsf-4.22.orig/src/cxsys/sfe.c 2008-03-27 15:09:32.000000000 -0400
+++ aplus-fsf-4.22/src/cxsys/sfe.c 2008-04-19 13:31:22.000000000 -0400
@@ -13,7 +13,9 @@
* Creation Date: Sat Jan 21 13:52:42 EST 1989
\*********************************************************************/
+#include
#include
+#include
#include
#include
diff -Nurd aplus-fsf-4.22.orig/src/esf/primpro.c aplus-fsf-4.22/src/esf/primpro.c
--- aplus-fsf-4.22.orig/src/esf/primpro.c 2008-03-27 15:09:33.000000000 -0400
+++ aplus-fsf-4.22/src/esf/primpro.c 2008-04-19 13:32:26.000000000 -0400
@@ -7,6 +7,7 @@
/*****************************************************************************/
#include
#include
+#include
#include
#include
#include