- USE_LINUX now implies NO_FILTER_SHLIBS=yes. It also doesn't use FreeBSD tools to strip binaries anymore, so it's not neccesary anymore to override STRIP and STRIP_CMD. - USE_LINUX_PREFIX implies NO_MTREE now. - In the USE_LINUX case, USE_XLIB now depends upon the linux X11 libraries instead upon the native FreeBSD libraries. - The variable LINUX_BASE_PORT contains a string which is suitable as an item in *_DEPENDS, so if a port BATCH_DEPENDS or FETCH_DEPENDS upon the default (or overriden) linux base, ${LINUX_BASE_PORT} should be used instead of a hardcoded reference. - Change all ports to comply to the "new world order". - The Ports Collection now allows to override the default linux_base port. Specify e.g. OVERRIDE_LINUX_BASE_PORT=rh-9 in /etc/make.conf to use ${PORTSDIR}/emulators/linux_base-rh-9 (the logic is to use ${PORTSDIR}/emulators/linux_base-${OVERRIDE_LINUX_BASE_PORT}). - If USE_LINUX or OVERRIDE_LINUX_BASE doesn't point to an existing linux_base port and if USE_LINUX isn't set to "yes" (case insensitive), the port will be marked as IGNORE. [1] - Readd USE_LINUX knobs into several ports and make several uses of a conditional dependency ("USE_LINUX?=") into an unconditional one ("USE_LINUX=") which where removed/changed by Trevor to allow the use of alternative linux_base ports. While this is a nice goal, the implementation resulted in missing dependencies. The OVERRIDE_LINUX_BASE_PORT knob in this commit is supposed to fix the problem while keeping the feature. Basicaly this includes a backout of Trevor's commit, to prevent confusion I mention it here explicitely. - Use the correct prefix (X11- instead of LOCAL- or LINUX-) for some ports. Chase dependencies for this. - Changes to make linux_devtools installable on amd64, remove some stray device nodes (they don't work on recent OS versions and aren't really needed). - Make linux_base-8 PREFIX clean and remove some stray device nodes. Additionally tell a little bit more about how to setup NIS/YP [2]. - Update the PGSQL dependency in the linux-opengroupware port to a recent version (the old one isn't available anymore), I don't know if this works (at least it isn't more broken than before). - Use PREFIX/usr/share/doc instead of PREFIX/usr/doc in the divx4linux ports, the former path exists already and gets populated by other packages too (PREFIX=LINUXPREFIX!). - Fix some obvious (non-linuxolator) bugs in some linux ports while being there. - Bump PORTREVISION where neccesary. Requested by: portmgr (linimon) [1] Submittted by: Gerrit Kuehn <gerrit_huehn@gruft.fido.de [2] Approved by: portmgr (kris, linimon), maintainers (or maintainer timeout) Tested on: ports cluster (kris) Reviewed by: silence on emulation@ Superseedes PR: 69997 Maintainer approval from: chris@chrisburkert.de cracauer@cons.org des girgen jamie@bishopston.net mezz mi nivit@users.sf.net pat simond@irrelevant.org riggs@rrr.de Udo.Schweigert@Siemens.com
87 lines
2.8 KiB
Makefile
87 lines
2.8 KiB
Makefile
# New ports collection makefile for: Sun Linux JDK 1.5.x
|
|
# Date created: 24 December 2001
|
|
# Whom: Ernst de Haan <znerd@FreeBSD.org>
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= jdk
|
|
PORTVERSION= ${DL_JDK_VERSION:S/_/./g}
|
|
PORTREVISION= 1
|
|
PORTEPOCH= 2
|
|
CATEGORIES= java devel
|
|
MASTER_SITES= #
|
|
PKGNAMEPREFIX= linux-sun-
|
|
DISTNAME= jdk-${DL_JDK_VERSION:S/./_/g}-linux-i586
|
|
EXTRACT_SUFX= .bin
|
|
|
|
MAINTAINER= java@FreeBSD.org
|
|
COMMENT= Sun Java Development Kit 1.5 for Linux
|
|
|
|
EXTRACT_DEPENDS=${LINUX_BASE_PORT}
|
|
RUN_DEPENDS= javavm:${PORTSDIR}/java/javavmwrapper
|
|
|
|
NO_CDROM= "License does not allow distribution with fee"
|
|
RESTRICTED= "Redistribution of repackaged binaries not permitted"
|
|
LATEST_LINK= linux-sun-jdk15
|
|
|
|
WRKSRC= ${WRKDIR}/jdk${DL_JDK_VERSION}
|
|
PLIST_SUB+= T=${APP_HOME:S/^${PREFIX}\///} PORTVERSION=${PORTVERSION}
|
|
PKGINSTALL= ${WRKDIR}/pkg-install
|
|
|
|
NO_BUILD= yes
|
|
USE_LINUX= yes
|
|
USE_XLIB= yes
|
|
JDK_VERSION= 1.5.0
|
|
JDK_REVISION= 03
|
|
DL_JDK_VERSION= ${JDK_VERSION}_${JDK_REVISION}
|
|
ONLY_FOR_ARCHS= i386 amd64
|
|
DOWNLOAD_URL?= http://java.sun.com/j2se/1.5.0/download.jsp
|
|
PORTTITLE= Java 2 Development Kit ${DL_JDK_VERSION} for Linux
|
|
APP_HOME= ${PREFIX}/${PKGNAMEPREFIX}${PORTNAME}${JDK_VERSION}
|
|
PACKED_JARS= lib/tools.jar jre/lib/rt.jar jre/lib/jsse.jar jre/lib/charsets.jar jre/lib/ext/localedata.jar jre/lib/plugin.jar jre/javaws/javaws.jar
|
|
UNPACK_CMD= ${APP_HOME}/bin/unpack200
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${OSVERSION} < 504000
|
|
IGNORE= does not run (core dumps: Bad System Call)
|
|
.endif
|
|
|
|
.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}) && !defined(PACKAGE_BUILDING)
|
|
IGNORE?=You must manually fetch the J2SE SDK self-extracting file for the Linux platform (${DISTNAME}${EXTRACT_SUFX}) from ${DOWNLOAD_URL}, place it in ${DISTDIR} and then run make again
|
|
.endif
|
|
|
|
pre-everything::
|
|
@${CAT} ${PKGMESSAGE}
|
|
|
|
do-extract:
|
|
@${MKDIR} ${WRKDIR}
|
|
@cd ${WRKDIR} \
|
|
&& ${TAIL} -n +673 ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} > ${WRKDIR}/install.sfx \
|
|
&& ${CHMOD} +x ${WRKDIR}/install.sfx \
|
|
&& ${WRKDIR}/install.sfx > /dev/null
|
|
|
|
post-patch:
|
|
@${FIND} ${WRKSRC} -name '*.orig' -print | ${XARGS} ${RM} -f
|
|
|
|
# XXX: This is missing a "${BRANDELF} -t Linux <executables>".
|
|
|
|
do-install:
|
|
${MKDIR} ${APP_HOME}
|
|
cd ${WRKSRC} && ${FIND} . -print \
|
|
| ${CPIO} -pdmu -R ${LIBOWN}:${LIBGRP} ${APP_HOME}
|
|
for i in ${PACKED_JARS}; do \
|
|
if [ -f ${APP_HOME}/`dirname $$i`/`basename $$i .jar`.pack ]; then \
|
|
${UNPACK_CMD} ${APP_HOME}/`dirname $$i`/`basename $$i .jar`.pack ${APP_HOME}/$$i; \
|
|
${RM} -f ${APP_HOME}/`dirname $$i`/`basename $$i .jar`.pack; \
|
|
fi \
|
|
done
|
|
|
|
post-install:
|
|
${LOCALBASE}/bin/registervm "${APP_HOME}/bin/java # Linux-Sun-JDK${PORTVERSION}"
|
|
${SED} -e "s:%%JRE_HOME%%:${APP_HOME}/jre:g" \
|
|
< ${FILESDIR}/pkg-install.in > ${PKGINSTALL}
|
|
${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
|
|
|
|
.include <bsd.port.post.mk>
|