freebsd-ports/java/jdk14/Makefile
2002-08-10 10:31:09 +00:00

186 lines
5.7 KiB
Makefile

# New ports collection makefile for: jdk13
# Date created: 10 October 2000
# Whom: Maxim Sobolev <sobomax@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= jdk
PORTVERSION= ${JDK_VERSION}p${JDK_PATCHSET_VERSION}
CATEGORIES= java devel
MASTER_SITES= # http://www.sun.com/software/java2/download.html
# http://www.eyesbeyond.com/freebsddom/java/jdk13.html
DISTFILES= j2sdk-${JDK_VERSION:S/./_/g}-src${EXTRACT_SUFX} \
bsd-jdk131-patches-${JDK_PATCHSET_VERSION}.tar.gz
MAINTAINER= glewis@FreeBSD.org
BUILD_DEPENDS= gm4:${PORTSDIR}/devel/m4 \
zip:${PORTSDIR}/archivers/zip \
${X11BASE}/lib/libMrm.a:${PORTSDIR}/x11-toolkits/open-motif
.if !defined(NATIVE_BOOTSTRAP)
BUILD_DEPENDS+= ${JDK13DIR}/bin/javac:${PORTSDIR}/java/linux-sun-jdk13
.endif
.if !defined(WITHOUT_PLUGIN)
BUILD_DEPENDS+= msgfmt:${PORTSDIR}/devel/gettext
LIB_DEPENDS= glib12.3:$(PORTSDIR)/devel/glib12 \
gtk12.2:$(PORTSDIR)/x11-toolkits/gtk12 \
nspr4.1:$(PORTSDIR)/devel/nspr
.endif
RUN_DEPENDS= javavm:${PORTSDIR}/java/javavmwrapper \
${X11BASE}/lib/libMrm.a:${PORTSDIR}/x11-toolkits/open-motif \
${X11BASE}/lib/X11/fonts/URW/fonts.dir:${PORTSDIR}/x11-fonts/urwfonts
WRKSRC= ${WRKDIR}/j2sdk1.3.1/make
JDK_VERSION= 1.3.1
JDK_PATCHSET_VERSION= 7
.if defined(NATIVE_BOOTSTRAP)
JDK13DIR?= ${LOCALBASE}/jdk${JDK_VERSION}
.else
JDK13DIR?= ${LOCALBASE}/linux-sun-jdk${JDK_VERSION}
.endif
ONLY_FOR_ARCHS= i386
USE_GMAKE= yes
RESTRICTED= "Redistribution of pre-compiled binaries isn't permitted"
MAKE_ENV= ALT_BOOTDIR="${JDK13DIR}" \
ALT_MOTIF_DIR="${X11BASE}" \
OPENWINHOME="${X11BASE}" \
SYS_CFLAGS="${CFLAGS}" \
CLASSPATH="" \
LD_LIBRARY_PATH="" \
JAVA_COMPILER=""
.if !defined(WITHOUT_PLUGIN)
MAKE_ENV += LIBG_HDRS="${LOCALBASE}/include/glib12" \
GTK_HDRS="${X11BASE}/include/gtk12" \
LIBIDL_HDRS=
.endif
.if !defined(WITHOUT_PLUGIN)
ALL_TARGET= all plugin images
.else
ALL_TARGET= all images
.endif
PLIST_SUB+= JDK_VERSION=${JDK_VERSION}
JDKIMAGEDIR= ${WRKSRC}/../build/bsd-i386/jdk-image-i386
JDKIMAGEDIR_G= ${WRKSRC}/../build/bsd-i386/jdk-debug-image-i386
SORT?= /usr/bin/sort
CPIO?= /usr/bin/cpio
.if defined(NODEBUG)
PLIST_SUB+= DEBUG:="@comment "
PKGNAMESUFFIX= -nodebug
.else
PLIST_SUB+= DEBUG:=""
.endif
.if defined(WITH_NATIVE_THREADS)
PLIST_SUB+= NATIVE:=""
MAKE_ARGS+= HPIS="green native"
.else
PLIST_SUB+= NATIVE:="@comment "
.endif
.if defined(WITHOUT_PLUGIN)
PLIST_SUB+= PLUGIN:="@comment "
.else
PLIST_SUB+= PLUGIN:=""
.endif
.if defined(BATCH) || defined(PACKAGE_BUILDING)
IGNORE= "You can not legally distribute pre-compiled binaries"
.endif
.include <bsd.port.pre.mk>
.if ${OSVERSION} < 460101 || ( ${OSVERSION} >= 500000 && ${OSVERSION} < 500038 )
BUILD_DEPENDS+= gtar:${PORTSDIR}/archivers/gtar
TAR= gtar # Necessary for proper extraction of sources
.endif
.for file in ${DISTFILES}
.if !exists(${DISTDIR}/${file})
IGNORE=You must manually fetch the source distribution and FreeBSD patches (${DISTFILES}) from http://www.sun.com/software/java2/download.html and http://www.eyesbeyond.com/freebsddom/java/jdk13.html, place it in ${DISTDIR} and then run make again
.endif
.endfor
pre-patch:
@cd ${WRKDIR} && \
${CHMOD} -R u+w * && \
${MKDIR} j2sdk1.3.1/ext/plugin/oji-plugin/include/bsd/jdk12 && \
${MKDIR} j2sdk1.3.1/ext/plugin/oji-plugin/include/solaris/navig5/private && \
${MKDIR} j2sdk1.3.1/src/bsd/doc/man && \
${MKDIR} hotspot1.3.1/build/bsd && \
${MKDIR} hotspot1.3.1/build/bsd/makefiles && \
${MKDIR} hotspot1.3.1/build/bsd/package && \
${MKDIR} hotspot1.3.1/src/os/bsd/launcher && \
${MKDIR} hotspot1.3.1/src/os/bsd/vm && \
${MKDIR} hotspot1.3.1/src/os_cpu/bsd_i486/vm && \
${PATCH} < ${WRKDIR}/jdk131.patches
.if !defined(NATIVE_BOOTSTRAP)
pre-build:
@if [ "$${WRKDIRPREFIX}" -a \
-L "/compat/linux/$${WRKDIRPREFIX}" -a \
x`ls -ld "/compat/linux/$${WRKDIRPREFIX}" 2>/dev/null | awk '/->/{print $$NF;exit 0}END{exit 1}'` = x"$${WRKDIRPREFIX}" ]; \
then \
echo "Please set WRKDIRPREFIX to something which doesn't"; \
echo "have a matching symbolic link in /compat/linux."; \
echo "This is known to cause problems during bootstrapping."; \
exit 1; \
fi
@if [ `sysctl -n compat.linux.osname` != "Linux" ]; \
then \
echo "Please set the value of the sysctl compat.linux.osname"; \
echo "to 'Linux' with the command:"; \
echo " sysctl compat.linux.osname=Linux"; \
echo "Having it set to other values, such as 'FreeBSD',"; \
echo "is known to cause problems during bootstrapping."; \
exit 1; \
fi
.endif
post-build:
# Prune empty dirs
${FIND} ${JDKIMAGEDIR} -type d | ${SORT} -r | \
${XARGS} ${RMDIR} 2> /dev/null || ${TRUE}
${FIND} ${JDKIMAGEDIR_G} -type d | ${SORT} -r | \
${XARGS} ${RMDIR} 2> /dev/null || ${TRUE}
.if !defined(NODEBUG)
pre-install:
@${ECHO_MSG}
@${ECHO_MSG} "Please use \`make -DNODEBUG' if you don't want to install libraries and binaries"
@${ECHO_MSG} "with debugging support."
@${ECHO_MSG}
.endif
do-install:
${MKDIR} ${PREFIX}/jdk${JDK_VERSION}
cd ${JDKIMAGEDIR} && ${FIND} . \
| ${CPIO} -pdmu -R ${LIBOWN}:${LIBGRP} ${PREFIX}/jdk${JDK_VERSION}
.if !defined(NODEBUG)
cd ${JDKIMAGEDIR_G} && ${FIND} . \
| ${CPIO} -pdmu -R ${LIBOWN}:${LIBGRP} ${PREFIX}/jdk${JDK_VERSION}
.endif
${MKDIR} ${PREFIX}/jdk${JDK_VERSION}/jre/lib/ext
post-install:
@${LOCALBASE}/bin/registervm "${PREFIX}/jdk${JDK_VERSION}/bin/java # FREEBSD-JDK${JDK_VERSION}"
.if !defined(WITHOUT_PLUGIN)
@${ECHO_MSG}
@${ECHO_MSG} To use the Java plugin with Mozilla you must create a
@${ECHO_MSG} symbolic link from
@${ECHO_MSG}
@${ECHO_MSG} ${PREFIX}/jdk${JDK_VERSION}/jre/plugin/i386/ns600/libjavaplugin_oji.so
@${ECHO_MSG}
@${ECHO_MSG} to your Mozilla plugins directory, which is usually found at
@${ECHO_MSG}
@${ECHO_MSG} ${X11BASE}/lib/mozilla/plugins
@${ECHO_MSG}
.endif
.include <bsd.port.post.mk>