summaryrefslogtreecommitdiff
path: root/java/bootstrap-openjdk/Makefile.update
blob: 85a4d9598577a748e41b4b901fbf273441f55b35 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# $FreeBSD$

JDK_NAME?=	openjdk
JDK_PORT?=	openjdk6
JDK_ROOT?=	bootstrap-${JDK_NAME}
TARGET_OS?=	8

.if !defined(PORTSDIR)
.if exists(${.CURDIR}/../${JDK_PORT}/Makefile)
PORTSDIR=	${.CURDIR}/../..
.else
PORTSDIR=	/usr/ports
.endif
.endif

LOCALBASE?=	/usr/local

.include "${PORTSDIR}/Mk/bsd.commands.mk"

JDK_PORTDIR!=	${REALPATH} ${PORTSDIR}/java/${JDK_PORT}
JDK_IMAGEDIR?=	${JDK_PORTDIR}/work/stage/usr/local/${JDK_PORT}

GET_REVISION=	${LOCALBASE}/bin/svnversion ${JDK_PORTDIR}
TAR?=		/usr/bin/tar

.if !defined(ARCH)
ARCH!=		${UNAME} -p
.endif
BUILD_OS!=	${UNAME} -r | ${SED} -e 's/\..*//'
PORTREVISION!=	${GET_REVISION} 2>/dev/null || ${TRUE}

DISTDIR?=	${.CURDIR}
DISTFILE=	${JDK_PORT}-${ARCH}-r${PORTREVISION}.tar.xz
DISTINFO_FILE=	${.CURDIR}/distinfo.${ARCH}
EXTRA_PATCHES=	${.CURDIR}/files/bootstrap.patch
MAKEFILE=	${.CURDIR}/Makefile
PLIST?=		${.CURDIR}/pkg-plist
PLIST_SUB=	ARCH="${ARCH}" JDK_ROOT="."

BUILD_ARGS=	BATCH=yes
BUILD_ARGS+=	EXTRA_PATCHES="${EXTRA_PATCHES}"
BUILD_ARGS+=	PORT_DBDIR=/var/empty
BUILD_ARGS+=	WITHOUT_ICEDTEA=yes

.if ${ARCH} == "i386"
PLIST_SUB+=	CLIENTVM=""
.else
PLIST_SUB+=	CLIENTVM="@comment "
.endif

all:
	@${ECHO} ""
	@${ECHO} "=============================================================="
	@${ECHO} ""
.if ${BUILD_OS} > ${TARGET_OS}
	@${ECHO} "We need FreeBSD ${TARGET_OS} but you seem to have ${BUILD_OS}."
	@${ECHO} ""
	@${ECHO} "=============================================================="
	@${ECHO} ""
	@${FALSE}
.endif
	@${ECHO} "Building ${DISTFILE}...."
	@${ECHO} ""
	@${ECHO} "Started at "`${SETENV} LANG=C date -u`"."
	@${ECHO} ""
	@${ECHO} "=============================================================="
	@${ECHO} ""
.if !defined(NO_BUILD)
	@${SETENV} -i PATH="${PATH}" __MAKE_CONF=/dev/null \
	    ${MAKE} -C "${JDK_PORTDIR}" ${BUILD_ARGS} stage
	@${FIND} "${JDK_IMAGEDIR}" -type f \
	    -exec ${STRIP_CMD} -s {} \; 2> /dev/null
.endif
	@cd "${JDK_IMAGEDIR}" && \
	${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} ${PLIST} | \
	${GREP} -v ^@ | ${TAR} -c -f - -T - -s '|^\./|${JDK_ROOT}/|' | \
	${XZ_CMD} -9 -c > "${DISTDIR}/${DISTFILE}"
	@${SED} -i.bak \
	    's/^DISTVERSION_${ARCH}=.*/DISTVERSION_${ARCH}=	r${PORTREVISION}/' \
	    "${MAKEFILE}"
	@${MAKE} -f "${MAKEFILE}" makesum DISTDIR="${DISTDIR}" \
	    DISTINFO_FILE="${DISTINFO_FILE}"
	@${ECHO} ""
	@${ECHO} "=============================================================="
	@${ECHO} ""
	@${ECHO} "${DISTFILE} was built successfully!"
	@${ECHO} ""
	@${ECHO} "Finished at "`${SETENV} LANG=C date -u`"."
	@${ECHO} ""
	@${ECHO} "You may clean up the build directory if everything looks okay,"
	@${ECHO} "e.g., 'rm -fr ${JDK_PORTDIR}/work'."
	@${ECHO} ""
	@${ECHO} "=============================================================="
	@${ECHO} ""