Bug 48946 - New Port: ohugs, a Haskell interpreter with object-oriented features
Summary: New Port: ohugs, a Haskell interpreter with object-oriented features
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Oliver Braun
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-05 15:40 UTC by steffen.mazanek
Modified: 2003-03-05 16:10 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description steffen.mazanek 2003-03-05 15:40:13 UTC
OHugs is an interpreter for the functional programming
language Haskell enriched by object-oriented features.
Furthermore it comes with an advanced interface to the
Tcl-Tk-Tix libraries and network programming support.
The graphic support is installed by default except 
-DWITHOUT_X11 is set.
http://www.cs.chalmers.se/~nordland/ohugs/

--- ohugs.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	ohugs
#	ohugs/distinfo
#	ohugs/pkg-plist
#	ohugs/pkg-descr
#	ohugs/Makefile
#	ohugs/files
#	ohugs/files/extra-patch-graphics
#	ohugs/files/extra-patch-text
#
echo c - ohugs
mkdir -p ohugs > /dev/null 2>&1
echo x - ohugs/distinfo
sed 's/^X//' >ohugs/distinfo << 'END-of-ohugs/distinfo'
XMD5 (ohugs-0.5.src.tar.gz) = 9bdf37d0fc944dd64ed877a493d33b31
END-of-ohugs/distinfo
echo x - ohugs/pkg-plist
sed 's/^X//' >ohugs/pkg-plist << 'END-of-ohugs/pkg-plist'
Xbin/ohugs
Xbin/rohugs
Xlib/ohugs/lib/Array.hs
Xlib/ohugs/lib/Char.hs
Xlib/ohugs/lib/Complex.hs
Xlib/ohugs/lib/IO.hs
Xlib/ohugs/lib/Ix.hs
Xlib/ohugs/lib/List.hs
Xlib/ohugs/lib/Maybe.hs
Xlib/ohugs/lib/Monad.hs
Xlib/ohugs/lib/Prelude.hs
Xlib/ohugs/lib/Random.hs
Xlib/ohugs/lib/Rational.hs
Xlib/ohugs/lib/System.hs
Xlib/ohugs/lib/Tix.hs
Xlib/ohugs/lib/Tk.hs
Xlib/ohugs/lib/TkUtil.hs
Xlib/ohugs/libhugs/AnsiInteract.hs
Xlib/ohugs/libhugs/AnsiScreen.hs
Xlib/ohugs/libhugs/HugsLibs.hs
Xlib/ohugs/libhugs/IORef.hs
Xlib/ohugs/libhugs/Interact.hs
Xlib/ohugs/libhugs/Number.hs
Xlib/ohugs/libhugs/ParseLib.hs
Xlib/ohugs/libhugs/ST.hs
Xlib/ohugs/libhugs/STArray.hs
Xlib/ohugs/libhugs/StdLibs.hs
Xlib/ohugs/libhugs/Trace.hs
Xlib/ohugs/rohugs
Xlib/ohugs/ohugs
X@dirrm lib/ohugs/libhugs
X@dirrm lib/ohugs/lib
X@dirrm lib/ohugs
END-of-ohugs/pkg-plist
echo x - ohugs/pkg-descr
sed 's/^X//' >ohugs/pkg-descr << 'END-of-ohugs/pkg-descr'
XOHugs is an approach to combine the features of functional programming
Xlanguages (Haskell) with object-oriented languages.
X
XWWW: http://www.math.chalmers.se/~nordland/ohugs/
X
XSteffen Mazanek
X<steffen.mazanek@unibw-muenchen.de>
END-of-ohugs/pkg-descr
echo x - ohugs/Makefile
sed 's/^X//' >ohugs/Makefile << 'END-of-ohugs/Makefile'
X# New ports collection makefile for:	ohugs
X# Date created:				03.03.03
X# Whom:					Steffen Mazanek <steffen.mazanek@unibw-muenchen.de>
X# $FreeBSD$
X#
X
XPORTNAME=	ohugs
XPORTVERSION=	0.5
XCATEGORIES=	lang haskell
XMASTER_SITES=	http://www.math.chalmers.se/~nordland/ohugs/
XDISTNAME=	${PORTNAME}-${PORTVERSION}.src
X
XMAINTAINER=	steffen.mazanek@unibw-muenchen.de
XCOMMENT=	Interpreter for Haskell with object-oriented features
X
X.if !defined(WITHOUT_X11)
XLIB_DEPENDS=	tix4182:${PORTSDIR}/x11-toolkits/tix
X.endif
X
XWRKSRC=		${DISTNAME:S/.src//}
XUSE_BISON=	yes
X
Xpost-patch:
X.if !defined(WITHOUT_X11)
X	cd ${WRKDIR} && ${PATCH} < ${FILESDIR}/extra-patch-graphics
X.else
X	cd ${WRKDIR} && ${PATCH} < ${FILESDIR}/extra-patch-text
X.endif
X
X.include <bsd.port.mk>
END-of-ohugs/Makefile
echo c - ohugs/files
mkdir -p ohugs/files > /dev/null 2>&1
echo x - ohugs/files/extra-patch-graphics
sed 's/^X//' >ohugs/files/extra-patch-graphics << 'END-of-ohugs/files/extra-patch-graphics'
Xdiff -ruN ohugs-0.5/src/Makefile ohugs-0.5-graphics/src/Makefile
X--- ohugs-0.5/src/Makefile	Fri Jan 26 19:37:15 2001
X+++ ohugs-0.5-graphics/src/Makefile	Wed Mar  5 13:39:23 2003
X@@ -41,12 +41,12 @@
X # and set O_TK to 0 in prelude.h.
X 
X # Solaris
X-CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
X-LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
X+#CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
X+#LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
X 
X # NetBSD
X-#CFLAGS		= -g -I/usr/X11/include -I/usr/pkg/include/tk8.0  -I/usr/pkg/include -I/usr/pkg/include/tcl8.0
X-#LDFLAGS    	= -lm -lreadline -ltermcap -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/X11/lib -Wl,-R/usr/X11/lib -lX11 -ltk80 -ltcl80 -ltix4180
X+CFLAGS		= -g -I/usr/local/include/tcl8.2 -I/usr/local/include/tk8.2 -I/usr/local/include -I/usr/X11R6/include 
X+LDFLAGS    	= -lm -lreadline -ltermcap -L/usr/local/lib -ltk82 -ltcl82 -L/usr/local/lib -ltix4182 
X 
X # Linux
X #CFLAGS		= -g -I/usr/X11R6/include
Xdiff -ruN ohugs-0.5/src/parser.y ohugs-0.5-graphics/src/parser.y
X--- ohugs-0.5/src/parser.y	Wed Nov 29 23:13:01 2000
X+++ ohugs-0.5-graphics/src/parser.y	Wed Mar  5 13:38:25 2003
X@@ -564,7 +564,7 @@
X handle    : HANDLE beg malts end        {$$ = gc4(rev($3));}
X           ;
X ohandle   : handle                      {$$ = $1;}
X-          | /*empty*/                   {$$ = gc0(NIL);}
X+          | /*empty*/                   {$$ = gc0(NIL);};
X mexp      : mopExp COCO sigType         {$$ = gc3(ap(ESIGN,pair($1,$3)));}
X 	  | mopExp                      {$$ = $1;}
X 	  ;
Xdiff -ruN ohugs-0.5/src/prelude.h ohugs-0.5-graphics/src/prelude.h
X--- ohugs-0.5/src/prelude.h	Wed Jan 31 00:18:40 2001
X+++ ohugs-0.5-graphics/src/prelude.h	Wed Mar  5 13:37:59 2003
X@@ -22,7 +22,7 @@
X  * update the source.
X  *-------------------------------------------------------------------------*/
X 
X-#define SOLARIS  1	/* For Solaris 2.4				   */
X+#define SOLARIS  0	/* For Solaris 2.4				   */
X #define SUNOS    0      /* For Sun 3/Sun 4 running SunOs 4.x		   */
X #define BCWIN16	 0	/* For Windows 3.1, Borland C++ 4.52		   */
X #define BCWIN32  0	/* For Windows 32,  Borland C++ 4.52		   */
X@@ -44,7 +44,7 @@
X #define AIX	 0	/* For IBM AIX on RS/6000 using GCC		UN */
X #define ATARI	 0	/* For Atari ST/STE/TT/Falcon w/ Lattice C 5.52 UN */
X #define SGI4	 0	/* For SiliconGraphics Indigo, IRIX v*4*.0.5	UN */
X-#define NETBSD	 0	/* For NetBSD-current				UN */
X+#define NETBSD	 1	/* For NetBSD-current				UN */
X #define MACWP	 0	/* For Macintosh PPC/68K using CodeWarrior Pro     */
X 
X /*---------------------------------------------------------------------------
END-of-ohugs/files/extra-patch-graphics
echo x - ohugs/files/extra-patch-text
sed 's/^X//' >ohugs/files/extra-patch-text << 'END-of-ohugs/files/extra-patch-text'
Xdiff -ruN ohugs-0.5/src/Makefile ohugs-0.5-text/src/Makefile
X--- ohugs-0.5/src/Makefile	Fri Jan 26 19:37:15 2001
X+++ ohugs-0.5-text/src/Makefile	Wed Mar  5 13:42:16 2003
X@@ -41,12 +41,12 @@
X # and set O_TK to 0 in prelude.h.
X 
X # Solaris
X-CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
X-LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
X+#CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
X+#LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
X 
X # NetBSD
X-#CFLAGS		= -g -I/usr/X11/include -I/usr/pkg/include/tk8.0  -I/usr/pkg/include -I/usr/pkg/include/tcl8.0
X-#LDFLAGS    	= -lm -lreadline -ltermcap -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/X11/lib -Wl,-R/usr/X11/lib -lX11 -ltk80 -ltcl80 -ltix4180
X+CFLAGS		= -g
X+LDFLAGS    	= -lm -lreadline -ltermcap
X 
X # Linux
X #CFLAGS		= -g -I/usr/X11R6/include
Xdiff -ruN ohugs-0.5/src/parser.y ohugs-0.5-text/src/parser.y
X--- ohugs-0.5/src/parser.y	Wed Nov 29 23:13:01 2000
X+++ ohugs-0.5-text/src/parser.y	Wed Mar  5 13:42:25 2003
X@@ -564,7 +564,7 @@
X handle    : HANDLE beg malts end        {$$ = gc4(rev($3));}
X           ;
X ohandle   : handle                      {$$ = $1;}
X-          | /*empty*/                   {$$ = gc0(NIL);}
X+          | /*empty*/                   {$$ = gc0(NIL);};
X mexp      : mopExp COCO sigType         {$$ = gc3(ap(ESIGN,pair($1,$3)));}
X 	  | mopExp                      {$$ = $1;}
X 	  ;
Xdiff -ruN ohugs-0.5/src/prelude.h ohugs-0.5-text/src/prelude.h
X--- ohugs-0.5/src/prelude.h	Wed Jan 31 00:18:40 2001
X+++ ohugs-0.5-text/src/prelude.h	Wed Mar  5 13:40:56 2003
X@@ -22,7 +22,7 @@
X  * update the source.
X  *-------------------------------------------------------------------------*/
X 
X-#define SOLARIS  1	/* For Solaris 2.4				   */
X+#define SOLARIS  0	/* For Solaris 2.4				   */
X #define SUNOS    0      /* For Sun 3/Sun 4 running SunOs 4.x		   */
X #define BCWIN16	 0	/* For Windows 3.1, Borland C++ 4.52		   */
X #define BCWIN32  0	/* For Windows 32,  Borland C++ 4.52		   */
X@@ -44,7 +44,7 @@
X #define AIX	 0	/* For IBM AIX on RS/6000 using GCC		UN */
X #define ATARI	 0	/* For Atari ST/STE/TT/Falcon w/ Lattice C 5.52 UN */
X #define SGI4	 0	/* For SiliconGraphics Indigo, IRIX v*4*.0.5	UN */
X-#define NETBSD	 0	/* For NetBSD-current				UN */
X+#define NETBSD	 1	/* For NetBSD-current				UN */
X #define MACWP	 0	/* For Macintosh PPC/68K using CodeWarrior Pro     */
X 
X /*---------------------------------------------------------------------------
X@@ -103,8 +103,8 @@
X #define HAS_FLOATS	(REGULAR_HUGS | LARGE_HUGS | BREAK_FLOATS)
X 
X #define OBJ		1 /* Object-oriented extensions                    */
X-#define O_TK            1 /* Tcl/Tk extension (needs OBJ)                  */
X-#define O_TIX           1 /* Tix extension (needs O_TK)                    */
X+#define O_TK            0 /* Tcl/Tk extension (needs OBJ)                  */
X+#define O_TIX           0 /* Tix extension (needs O_TK)                    */
X #define O_IP		1 /* TCP/UDP/IP support (needs OBJ)		   */
X #define HASKELL_ARRAYS	1
X #define FLAT_ARRAYS	0 /* Warning: Setting 1 is not currently supported */
END-of-ohugs/files/extra-patch-text
exit
--- ohugs.shar ends here ---
Comment 1 Oliver Braun freebsd_committer freebsd_triage 2003-03-05 15:44:17 UTC
Responsible Changed
From-To: freebsd-ports-bugs->obraun

This is haskell and I have helped with the submitter with this port.
Comment 2 corecode@corecode.ath.cx 2003-03-05 16:02:45 UTC
Lately steffen.mazanek@unibw-muenchen.de told:

> sed 's/^X//' >ohugs/files/extra-patch-graphics << 'END-of-ohugs/files/extra-patch-graphics'
> Xdiff -ruN ohugs-0.5/src/Makefile ohugs-0.5-graphics/src/Makefile
> X--- ohugs-0.5/src/Makefile	Fri Jan 26 19:37:15 2001
> X+++ ohugs-0.5-graphics/src/Makefile	Wed Mar  5 13:39:23 2003
> X@@ -41,12 +41,12 @@
> X # and set O_TK to 0 in prelude.h.
> X 
> X # Solaris
> X-CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
> X-LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
> X+#CFLAGS		= -g -I/usr/X11/include -I/usr/pd/tcl/8.0/include
> X+#LDFLAGS    	= -lm -lX11 -lsocket -lreadline -ltermcap -lnsl -R/usr/X11/lib -R/usr/pd/tcl/8.0/lib -L/usr/pd/tcl/8.0/lib -ltk8.0 -ltcl8.0 -ltix4.1.8.0
> X 
> X # NetBSD
> X-#CFLAGS		= -g -I/usr/X11/include -I/usr/pkg/include/tk8.0  -I/usr/pkg/include -I/usr/pkg/include/tcl8.0
> X-#LDFLAGS    	= -lm -lreadline -ltermcap -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/X11/lib -Wl,-R/usr/X11/lib -lX11 -ltk80 -ltcl80 -ltix4180
> X+CFLAGS		= -g -I/usr/local/include/tcl8.2 -I/usr/local/include/tk8.2 -I/usr/local/include -I/usr/X11R6/include 
> X+LDFLAGS    	= -lm -lreadline -ltermcap -L/usr/local/lib -ltk82 -ltcl82 -L/usr/local/lib -ltix4182 

this doesn't feel good at all.
please use += for CFLAGS (and LDFLAGS)
don't use plain /usr/local, instead use ${LOCALBASE}.
you might want and set this from the port's Makefile.

> Xdiff -ruN ohugs-0.5/src/parser.y ohugs-0.5-graphics/src/parser.y
> X--- ohugs-0.5/src/parser.y	Wed Nov 29 23:13:01 2000
> X+++ ohugs-0.5-graphics/src/parser.y	Wed Mar  5 13:38:25 2003
[...]
this patch appears both times, so you may want to create a regular patch
file for it

cheers
  simon

-- 
/"\   http://corecode.ath.cx/#donate
\ /
 \     ASCII Ribbon Campaign
/ \  Against HTML Mail and News
Comment 3 Oliver Braun freebsd_committer freebsd_triage 2003-03-05 16:08:00 UTC
State Changed
From-To: open->closed

New port added, thanks!