# New ports collection makefile for: jdk12 # Date created: 10 October 2000 # Whom: Maxim Sobolev # # $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/jdk.html SRCFILE= ${PORTNAME}${JDK_VERSION:S/./_/g}-src${EXTRACT_SUFX} PATCHSETFILE= bsd-jdk122-patches-${JDK_PATCHSET_VERSION}.tar.gz DISTFILES= ${SRCFILE} ${PATCHSETFILE} MAINTAINER= glewis@FreeBSD.org COMMENT= Java Development Kit 1.2 BUILD_DEPENDS= gm4:${PORTSDIR}/devel/m4 \ zip:${PORTSDIR}/archivers/zip \ ${JDK11DIR}/bin/javac:${PORTSDIR}/java/jdk11 \ ${X11BASE}/lib/libXm.so:${PORTSDIR}/x11-toolkits/open-motif .if !defined(NATIVE_BOOTSTRAP) BUILD_DEPENDS+= ${JDK12DIR}/bin/javac:${PORTSDIR}/java/linux-sun-jdk12 .endif PATCH_DEPENDS= ${NONEXISTENT}:${PORTSDIR}/java/jfc:extract LIB_DEPENDS= odbc.1:${PORTSDIR}/databases/unixODBC RUN_DEPENDS= javavm:${PORTSDIR}/java/javavmwrapper \ ${X11BASE}/lib/libXm.so:${PORTSDIR}/x11-toolkits/open-motif \ ${X11BASE}/lib/X11/fonts/URW/fonts.dir:${PORTSDIR}/x11-fonts/urwfonts WRKSRC= ${WRKDIR}/build/bsd JDK_VERSION= 1.2.2 JDK_PATCHSET_VERSION= 11 JDK11DIR?= ${LOCALBASE}/jdk1.1.8 JFC11DIR?= ${WRKDIRPREFIX}${.CURDIR}/../../java/jfc/work/swing-1.1.1fcs .if defined(NATIVE_BOOTSTRAP) JDK12DIR?= ${LOCALBASE}/jdk${JDK_VERSION} .else JDK12DIR?= ${LOCALBASE}/linux-sun-jdk${JDK_VERSION} .endif ONLY_FOR_ARCHS= i386 USE_GMAKE= yes RESTRICTED= "Redistribution of pre-compiled binaries is not permitted" NO_CDROM= "Redistribution of pre-compiled binaries is not permitted" MAKEFILE= GNUmakefile MAKE_ENV= HAVE_DPS="no" \ ALT_BOOTDIR="${JDK12DIR}" \ ALT_ODBCDIR="${LOCALBASE}" \ ALT_MOTIF_DIR="${X11BASE}" \ OPENWINHOME="${X11BASE}" \ _JDK11DIR="${JDK11DIR}" \ SYS_CFLAGS="${CFLAGS}" \ CLASSPATH="" \ JAVA_COMPILER="" ALL_TARGET= release-images PATCH_CMD= ${PATCH} -p1 < PLIST_SUB+= JDK_VERSION=${JDK_VERSION} JDKIMAGEDIR= ${WRKSRC}/jdk-image-i386 JDKIMAGEDIR_G= ${WRKSRC}/jdk-debug-image-i386 JREIMAGEDIR= ${WRKSRC}/jre-image-i386 CPIO?= /usr/bin/cpio .if defined(NODEBUG) PLIST_SUB+= DEBUG:="@comment " PKGNAMESUFFIX= -nodebug .else PLIST_SUB+= DEBUG:="" .endif .include # Check for JDK sources .if !exists(${DISTDIR}/${SRCFILE}) && !defined(PACKAGE_BUILDING) ECHO_MSG=/usr/bin/printf IGNORE= :\n\ Because of licensing restrictions, you must fetch the source distribution\n\ manually. Please access http://www.sun.com/software/java2/download.html\n\ with a web browser and follow the second \"Download\" link for the\n\ \"Java(TM) SDK ${JDK_VERSION}\". You will be required to log in and register,\n\ but you can create an account on this page. After registration and\n\ accepting the Sun Community Source License, select \"JDK-${JDK_VERSION}\" and\n\ download the file \"${SRCFILE}\". Please place this file in\n\ ${DISTDIR}.\n .endif # Check for patchset .if !exists(${DISTDIR}/${PATCHSETFILE}) && !defined(PACKAGE_BUILDING) ECHO_MSG=/usr/bin/printf IGNORE= :\n\ The source distribution exists on your system, but due to\n\ licensing restrictions you still need to download the\n\ patchset, ${PATCHSETFILE}, from\n\ http://www.eyesbeyond.com/freebsddom/java/jdk.html.\n\ Please place the patchset in ${DISTDIR}.\n .endif pre-patch: @${MKDIR} ${WRKSRC} .for dir in build src ext/i18n/build ext/i18n/src ext/iiimp/build @cd ${WRKDIR}/${dir} && ${RM} -rf bsd && ${CP} -R solaris bsd .endfor @cd ${WRKSRC} && ${PATCH_CMD} ${WRKDIR}/build.patches && \ cd ../share && ${PATCH_CMD} ${WRKDIR}/buildshare.patches && \ cd ../../src/bsd && ${PATCH_CMD} ${WRKDIR}/src.patches && \ cd ../share && ${PATCH_CMD} ${WRKDIR}/srcshare.patches && \ cd ../../ext && ${PATCH_CMD} ${WRKDIR}/ext.patches @${MKDIR} ${WRKSRC}/1.1_libs @${CP} ${JFC11DIR}/*.jar ${WRKSRC}/1.1_libs .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_MSG} "Please set WRKDIRPREFIX to something which doesn't"; \ ${ECHO_MSG} "have a matching symbolic link in /compat/linux."; \ ${ECHO_MSG} "This is known to cause problems during bootstrapping."; \ exit 1; \ fi @if [ `/sbin/sysctl -n compat.linux.osname` != "Linux" ]; \ then \ ${ECHO_MSG} "Please set the value of the sysctl compat.linux.osname"; \ ${ECHO_MSG} "to 'Linux' with the command:"; \ ${ECHO_MSG} " /sbin/sysctl compat.linux.osname=Linux"; \ ${ECHO_MSG} "Having it set to other values, such as 'FreeBSD',"; \ ${ECHO_MSG} "is known to cause problems during bootstrapping."; \ exit 1; \ fi .endif post-build: for dir in ${JDKIMAGEDIR} ${JDKIMAGEDIR_G} ${JREIMAGEDIR}; do \ for file in `${FIND} $${dir} -type f -name "*.so"`; do \ if [ -f $${file}.${JDK_VERSION} ]; then \ ${RM} $${file}.${JDK_VERSION}; \ ${LN} -sf `${BASENAME} $${file}` $${file}.${JDK_VERSION}; \ fi; \ done; \ done for dir in ${JDKIMAGEDIR} ${JREIMAGEDIR}; do \ find $${dir} -type f | xargs file | ${GREP} 'not stripped$$' | \ ${SED} 's|:.*$$||' | xargs strip; \ done .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 post-install: ${LOCALBASE}/bin/registervm "${PREFIX}/jdk${JDK_VERSION}/bin/java # JDK${JDK_VERSION}" .include