openbsd-ports/lang/scm/Makefile
2010-10-24 21:06:28 +00:00

124 lines
3.1 KiB
Makefile

# $OpenBSD: Makefile,v 1.28 2010/10/24 21:06:28 sthen Exp $
# losely based on the FreeBSD port
.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "vax" || \
${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc" || \
${MACHINE_ARCH} == "sparc64"
BROKEN= segfaults in longjump return while testing continuations
.endif
COMMENT= scheme r5 interpreter
CATEGORIES= lang
V=5e5
DISTNAME= scm-$V
REVISION= 0
EXTRACT_SUFX= .zip
HOMEPAGE= http://people.csail.mit.edu/jaffer/SCM
MASTER_SITES= http://groups.csail.mit.edu/mac/ftpdir/scm/ \
http://groups.csail.mit.edu/mac/ftpdir/scm/OLD/
MAINTAINER= Marc Espie <espie@openbsd.org>
WRKDIST= ${WRKDIR}/scm
# LGPLv3
PERMIT_PACKAGE_CDROM= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB= c curses termcap m readline
FLAVORS=no_x11
FLAVOR?=
SUBST_VARS= V
USE_GROFF = Yes
SCM_DATA= COPYING Idiffer.scm Iedline.scm Init${V}.scm Link.scm \
Macexp.scm Macro.scm Transcen.scm Tscript.scm \
build build.scm compile.scm hobbit.scm mkimpcat.scm \
r4rstest.scm scmhob.scm \
disarm.scm split.scm
SCM_INFO= scm.info hobbit.info
SCM_INCLUDES= scmflags.h scmfig.h patchlvl.h scmhob.h
.if !{FLAVOR:L:Mno_x11}
SCM_DATA+= keysymdef.scm x11.scm xatoms.scm xevent.scm
SCM_INFO+= Xlibscm.info
.endif
FEATURES=arrays bignums cautious edit-line curses posix socket unix \
dynamic-linking i/o-extensions inexact regex
.if ${FLAVOR:L:Mno_x11}
.else
FEATURES+=x
OPTIONS+=--compiler-options=-I${X11BASE}/include --compiler-options=-O2
OPTIONS+=--linker-options=-L${X11BASE}/lib
SCM_DATA+= x11.scm xevent.scm
WANTLIB+= X11 pthread-stubs xcb
USE_X11= Yes
.endif
BUILD_DEPENDS=::devel/slib
RUN_DEPENDS=::devel/slib
FEATURE_LIST=
.for f in ${FEATURES}
FEATURE_LIST+=-F $f
.endfor
pre-build:
@echo "srcdir=${WRKSRC}" >${WRKSRC}/srcdir.mk
post-build:
cd ${WRKSRC} && ${MAKE_ENV} PATH=${WRKSRC}:${PORTPATH} /bin/sh ./build \
${FEATURE_LIST} \
${OPTIONS} \
-h system \
-o scm \
-s "${PREFIX}/share/scm/"
cd ${WRKSRC} && ${MAKE_ENV} PATH=${WRKSRC}:${PORTPATH} /bin/sh ./build \
${FEATURE_LIST} -F sicp \
${OPTIONS} \
-h system \
-o scm-sicp \
-s "${PREFIX}/share/scm/"
ALL_TARGET= scmlit
#CFLAGS+= -Dunix
MAKE_FLAGS= CFLAGS='${CFLAGS}' LD='${CC}'
MAKE_ENV= SCHEME_LIBRARY_PATH=${LOCALBASE}/share/slib/
do-install:
${INSTALL_PROGRAM} ${WRKBUILD}/scm ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKBUILD}/scmlit ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKBUILD}/scm-sicp ${PREFIX}/bin
${INSTALL_MAN} ${WRKBUILD}/scm.1 ${PREFIX}/man/man1
${INSTALL_DATA_DIR} ${PREFIX}/share/scm
${INSTALL_DATA_DIR} ${PREFIX}/include/scm
sed -e 's,@PREFIX@,${TRUEPREFIX},' \
<${FILESDIR}/require.scm.in \
>${PREFIX}/share/scm/require.scm
.for file in ${SCM_INCLUDES}
${INSTALL_DATA} ${WRKBUILD}/${file} ${PREFIX}/include/scm
.endfor
.for file in ${SCM_DATA}
${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/share/scm
.endfor
.for file in ${SCM_INFO}
${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/info
.endfor
FAKE_FLAGS=exec_prefix=${WRKINST}${TRUEPREFIX}/
REGRESS_TARGET= check
.include <bsd.port.mk>