| 1 |
NAME = openjdk7 |
| 2 |
VERSION = u351 |
| 3 |
|
| 4 |
CATEGORIES = utils |
| 5 |
|
| 6 |
DESCRIPTION = OpenJDK 7 Java Development Kit |
| 7 |
define BLURB |
| 8 |
OpenJDK 7 is an open-source implementation of the Java Platform, |
| 9 |
Standard Edition 7. Used as bootstrap JDK for building OpenJDK 8. |
| 10 |
endef |
| 11 |
|
| 12 |
DYNURLS = https://github.com/openjdk/jdk7u/archive/refs/tags/jdk7u351-ga.tar.gz |
| 13 |
DISTFILES = jdk7u351-ga.tar.gz |
| 14 |
WORKSRC = $(WORKDIR)/jdk7u-jdk7u351-ga |
| 15 |
|
| 16 |
LICENSE = LICENSE |
| 17 |
|
| 18 |
CONFIGURE_SCRIPTS = |
| 19 |
BUILD_SCRIPTS = |
| 20 |
INSTALL_SCRIPTS = |
| 21 |
TEST_SCRIPTS = |
| 22 |
|
| 23 |
PACKAGES = OZSWopenjdk7 |
| 24 |
SPKG_DESC_OZSWopenjdk7 = OpenJDK 7 Java Development Kit |
| 25 |
SPKG_CLASSES = cswdictconf |
| 26 |
RUNTIME_DEP_PKGS_OZSWopenjdk7 = OZSWfreetype OZSWlibX11 OZSWlibXext OZSWlibXi OZSWlibXtst |
| 27 |
BUILD_DEP_PKGS_OZSWopenjdk7 = OZSWgcc12 |
| 28 |
|
| 29 |
JDK7_PREFIX = $(BUILD_PREFIX)/jvm/openjdk7 |
| 30 |
JDK7_BUILDDIR = $(WORKSRC)/build/solaris-i586 |
| 31 |
|
| 32 |
# Use GCC 12.5.0 from /opt/ozsw/bin. CC_VERSION=gcc selects GCC flags in |
| 33 |
# JDK makefiles; USE_GCC=true selects gcc.make for hotspot. |
| 34 |
JDK7_MAKEARGS = ALT_BOOTDIR=/usr/jdk/latest |
| 35 |
JDK7_MAKEARGS += ALT_COMPILER_PATH=/opt/ozsw/bin |
| 36 |
JDK7_MAKEARGS += CC_VERSION=gcc |
| 37 |
JDK7_MAKEARGS += USE_GCC=true |
| 38 |
JDK7_MAKEARGS += ALT_CUPS_HEADERS_PATH=$(BUILD_PREFIX)/include |
| 39 |
JDK7_MAKEARGS += ALT_FREETYPE_HEADERS_PATH=$(BUILD_PREFIX)/include/freetype2 |
| 40 |
JDK7_MAKEARGS += ALT_FREETYPE_LIB_PATH=$(BUILD_PREFIX)/lib |
| 41 |
JDK7_MAKEARGS += MILESTONE=fcs |
| 42 |
JDK7_MAKEARGS += UPDATE_VERSION=351 |
| 43 |
JDK7_MAKEARGS += ARCH_DATA_MODEL=32 |
| 44 |
JDK7_MAKEARGS += SKIP_FASTDEBUG_BUILD=true |
| 45 |
JDK7_MAKEARGS += SKIP_DEBUG_BUILD=true |
| 46 |
JDK7_MAKEARGS += JOBS=4 |
| 47 |
JDK7_MAKEARGS += ZIP_DEBUGINFO_FILES=0 |
| 48 |
JDK7_MAKEARGS += ENABLE_FULL_DEBUG_SYMBOLS=0 |
| 49 |
JDK7_MAKEARGS += UNZIP=/opt/ozsw/bin/unzip |
| 50 |
JDK7_MAKEARGS += ZIPEXE=/opt/ozsw/bin/zip |
| 51 |
|
| 52 |
CORBA_OSC = $(WORKSRC)/corba/src/share/classes/com/sun/corba/se/impl/io/ObjectStreamClass.java |
| 53 |
DEFS_SOL = $(WORKSRC)/jdk/make/common/Defs-solaris.gmk |
| 54 |
XAWT_FILES = $(WORKSRC)/jdk/make/sun/xawt/FILES_c_unix.gmk |
| 55 |
SPLASH_MK = $(WORKSRC)/jdk/make/sun/splashscreen/Makefile |
| 56 |
|
| 57 |
include gar/category.mk |
| 58 |
|
| 59 |
.DEFAULT_GOAL := all |
| 60 |
|
| 61 |
post-extract: |
| 62 |
# Patch CORBA ObjectStreamClass.java: sun.misc.JavaSecurityAccess absent from JDK 6 rt.jar. |
| 63 |
/usr/bin/gsed -i '/^import sun.misc.JavaSecurityAccess;$$/d' $(CORBA_OSC) |
| 64 |
/usr/bin/gsed -i '/JavaSecurityAccess jsa = SharedSecrets.getJavaSecurityAccess();/d' $(CORBA_OSC) |
| 65 |
/usr/bin/gsed -i 's/return jsa\.doIntersectionPrivilege(pea,/return AccessController.doPrivileged(pea, new AccessControlContext(domains));/' $(CORBA_OSC) |
| 66 |
/usr/bin/gsed -i '/^\s*AccessController\.getContext(),\s*$$/d' $(CORBA_OSC) |
| 67 |
/usr/bin/gsed -i '/^\s*new AccessControlContext(domains));\s*$$/d' $(CORBA_OSC) |
| 68 |
# Fix OPENWIN_HOME: point to $(BUILD_PREFIX) which has our X11 headers. |
| 69 |
/usr/bin/gsed -i 's|^OPENWIN_HOME[[:space:]]*=.*|OPENWIN_HOME = $(BUILD_PREFIX)|' $(DEFS_SOL) |
| 70 |
/usr/bin/gsed -i 's|^OPENWIN_RUNTIME_LIB[[:space:]]*=.*|OPENWIN_RUNTIME_LIB = $(BUILD_PREFIX)/lib$$(ISA_DIR)|' $(DEFS_SOL) |
| 71 |
# xawt: OGLBlitLoops.c references div8table (LOCL in libawt), add AlphaMath.c to xawt. |
| 72 |
/usr/bin/awk -f $(CURDIR)/xawt-patch.awk $(XAWT_FILES) > $(WORKSRC)/jdk/make/sun/xawt/FILES_c_unix.gmk.new && mv $(WORKSRC)/jdk/make/sun/xawt/FILES_c_unix.gmk.new $(XAWT_FILES) |
| 73 |
# Splashscreen needs libiconv for GNU iconv symbols on Solaris. |
| 74 |
/usr/bin/gsed -i 's|-L$$(OPENWIN_LIB) -lX11 -lXext $$(LIBM) -lpthread$$|-L$$(OPENWIN_LIB) -lX11 -lXext $$(LIBM) -lpthread -L$(BUILD_PREFIX)/lib -liconv|' $(SPLASH_MK) |
| 75 |
# Apply GCC compatibility patches to JDK makefiles (Defs-solaris.gmk, Defs-versions.gmk). |
| 76 |
/opt/ozsw/bin/python3 $(CURDIR)/jdk7-gcc-patch.py $(WORKSRC) |
| 77 |
# Stage LICENSE for findlicensefile (also copy to WORKDIR for modulated phase) |
| 78 |
cp $(WORKSRC)/LICENSE $(WORKDIR)/LICENSE 2>/dev/null || true |
| 79 |
mkdir -p $(WORKROOTDIR)/build-global/jdk7u-jdk7u351-ga |
| 80 |
cp $(WORKSRC)/LICENSE $(WORKROOTDIR)/build-global/jdk7u-jdk7u351-ga/LICENSE 2>/dev/null || true |
| 81 |
@$(MAKECOOKIE) |
| 82 |
|
| 83 |
pre-build: |
| 84 |
ulimit -n 65536; \ |
| 85 |
unset JAVA_HOME; \ |
| 86 |
export PATH=/opt/ozsw/bin:/usr/bin:/bin:$(BUILD_PREFIX)/ant/bin:/usr/jdk/latest/bin; \ |
| 87 |
cd $(WORKSRC) && gmake $(JDK7_MAKEARGS) all |
| 88 |
# CORBA bin.zip is empty (typo in corba/make/Makefile: BIN_ZIP_FILES var). |
| 89 |
# The idl files are in $(BUILD_DIR)/lib; copy them to lib for Release.gmk to find. |
| 90 |
# Skip this step if already copied. |
| 91 |
ls $(JDK7_BUILDDIR)/corba/lib/orb.idl 2>/dev/null && [ ! -f $(JDK7_BUILDDIR)/lib/orb.idl ] && \ |
| 92 |
cp $(JDK7_BUILDDIR)/corba/lib/orb.idl $(JDK7_BUILDDIR)/lib/orb.idl || true |
| 93 |
ls $(JDK7_BUILDDIR)/corba/lib/ir.idl 2>/dev/null && [ ! -f $(JDK7_BUILDDIR)/lib/ir.idl ] && \ |
| 94 |
cp $(JDK7_BUILDDIR)/corba/lib/ir.idl $(JDK7_BUILDDIR)/lib/ir.idl || true |
| 95 |
# Re-run release to copy idl files into j2sdk-image now that they exist. |
| 96 |
cd $(WORKSRC) && gmake $(JDK7_MAKEARGS) all |
| 97 |
@$(MAKECOOKIE) |
| 98 |
|
| 99 |
pre-install: |
| 100 |
mkdir -p $(DESTDIR)$(JDK7_PREFIX) |
| 101 |
cp -r $(JDK7_BUILDDIR)/j2sdk-image/. $(DESTDIR)$(JDK7_PREFIX)/ |
| 102 |
find $(DESTDIR)$(JDK7_PREFIX) -name "* *" -type f -exec rm -f {} \; 2>/dev/null || true |
| 103 |
@$(MAKECOOKIE) |