summaryrefslogtreecommitdiffstats
path: root/java/jc/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'java/jc/Makefile')
-rw-r--r--java/jc/Makefile108
1 files changed, 108 insertions, 0 deletions
diff --git a/java/jc/Makefile b/java/jc/Makefile
new file mode 100644
index 0000000..409517e
--- /dev/null
+++ b/java/jc/Makefile
@@ -0,0 +1,108 @@
+# New ports collection makefile for: jc
+# Date created: 20 Feb 2004
+# Whom: Archie Cobbs <archie@freebsd.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= jc
+PORTVERSION= 1.0.0
+CATEGORIES= java
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \
+ http://ftp.gnu.org/gnu/classpath/:CLASSPATH
+MASTER_SITE_SUBDIR=jcvm/
+DISTFILES= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} \
+ classpath-${CLASSPATHVERSION}${EXTRACT_SUFX}:CLASSPATH
+
+MAINTAINER= archie@freebsd.org
+COMMENT= JVM that converts class files to C source and compiles them with GCC
+
+BUILD_DEPENDS= jikes:${PORTSDIR}/java/jikes \
+ zip:${PORTSDIR}/archivers/zip
+LIB_DEPENDS= popt.0:${PORTSDIR}/devel/popt \
+ ffi.2:${PORTSDIR}/devel/libffi
+
+#USE_LIBTOOL= yes
+#LIBTOOLFILES= ${JCDIR}/aclocal.m4 ${CLASSPATHDIR}/aclocal.m4
+USE_GMAKE= yes
+INSTALLS_SHLIB= yes
+PLIST_SUB= PORTVERSION=${PORTVERSION}
+GNU_CONFIGURE= yes
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS} -I${PREFIX}/include" \
+ LDFLAGS="${LDFLAGS} -L${PREFIX}/lib"
+PATCH_WRKSRC= ${WRKDIR}
+INFO= jc
+
+.if defined(WITH_GNOMELIBS) || exists(${X11BASE}/include/gnome-1.0/libart_lgpl/art_misc.h)
+USE_GNOME= gnomelibs
+PLIST_SUB+= GNOME:=""
+.else
+PLIST_SUB+= GNOME:="@comment "
+.endif
+
+# Directories for the two source components
+JCDIR= ${PORTNAME}-${PORTVERSION}
+CLASSPATHDIR= classpath-${CLASSPATHVERSION}
+
+# Classpath version
+CLASSPATHVERSION=0.07
+
+# Jikes version expected
+JIKESVERSION= 1.18
+
+# Configure args
+CLASSPATH_CONF= --prefix=${PREFIX}/jc --enable-jni --with-jikes
+CONFIGURE_ARGS= --prefix=${PREFIX}
+
+# Conditionally compile the gnome-dependent stuff
+.if !defined(WITH_GNOMELIBS) && !exists(${X11BASE}/include/gnome-1.0/libart_lgpl/art_misc.h)
+CLASSPATH_CONF+=--disable-gtk-peer
+pre-fetch:
+ @${ECHO} ''
+ @${ECHO} '***' ' ' NOTICE
+ @${ECHO} '***'
+ @${ECHO} '***' You do not seem to have the Gnome libraries installed.
+ @${ECHO} '***' Therefore, Classpath will be built without graphics
+ @${ECHO} '***' support. If you would like to install the Classpath
+ @${ECHO} '***' libraries to include graphics support, hit Control-C
+ @${ECHO} '***' now and type \'make WITH_GNOMELIBS=yes\'.
+ @${ECHO} '***'
+ @${ECHO} ''
+ @sleep 3
+.endif
+
+pre-configure:
+ @${ECHO} "===> Configuring ${CLASSPATHDIR}"
+ @( cd ${.CURDIR} && ${MAKE} do-configure \
+ CONFIGURE_WRKSRC=${WRKDIR}/${CLASSPATHDIR} \
+ CONFIGURE_ARGS="${CLASSPATH_CONF}" )
+ @${ECHO} "===> Configuring ${JCDIR}"
+
+pre-build:
+ @JIKESVER=`jikes -version 2>&1 | ${GREP} -wi version | ${SED} -E 's/^.*[Vv]ersion[[:space:]]+([0-9.]+).*$$/\1/g'`; \
+ if [ "$${JIKESVER}" != "" -a "$${JIKESVER}" != "${JIKESVERSION}" ]; then \
+ ${ECHO} ''; \
+ ${ECHO} '***' ' ' WARNING; \
+ ${ECHO} '***'; \
+ ${ECHO} '***' You have jikes version $${JIKESVER} installed instead of version ${JIKESVERSION}.; \
+ ${ECHO} '***' This will cause JC to have to bootstrap re-generate all JC and; \
+ ${ECHO} '***' Classpath source files when it first runs, which requires that; \
+ ${ECHO} '***' the JDK \(or some other JVM\) be installed. To avoid this, hit; \
+ ${ECHO} '***' CTRL-C now and install jikes version ${JIKESVERSION}.; \
+ ${ECHO} '***' ; \
+ ${ECHO} ''; \
+ sleep 10; \
+ fi
+ exit 1
+ @${ECHO} "===> Building ${CLASSPATHDIR}"
+ @( cd ${.CURDIR} && ${MAKE} do-build \
+ BUILD_WRKSRC=${WRKDIR}/${CLASSPATHDIR} )
+ @${ECHO} "===> Building ${JCDIR}"
+
+pre-install:
+ @${ECHO} "===> Installing ${CLASSPATHDIR}"
+ @( cd ${.CURDIR} && ${MAKE} do-install \
+ INSTALL_WRKSRC=${WRKDIR}/${CLASSPATHDIR} )
+ @${ECHO} "===> Installing ${JCDIR}"
+
+.include <bsd.port.mk>
OpenPOWER on IntegriCloud