1PORTNAME=	eclipse
2PORTVERSION=	4.16
3PORTREVISION=	1
4CATEGORIES=	java devel
5
6# Update to eclipse.platform.releng.aggregator.git git-tag on git.eclipse.org
7ECLIPSE_TAG=	R4_16
8ECLIPSE_TSTAMP=	20200617-1404
9
10ECLIPSE_SUFX=	${ECLIPSE_TAG}.tar.xz
11ECLIPSE_MODULES=jdt/eclipse.jdt \
12		jdt/eclipse.jdt.core \
13		jdt/eclipse.jdt.core.binaries \
14		jdt/eclipse.jdt.debug \
15		jdt/eclipse.jdt.ui \
16		pde/eclipse.pde.build \
17		pde/eclipse.pde.ui \
18		platform/eclipse.platform \
19		platform/eclipse.platform.common \
20		platform/eclipse.platform.debug \
21		platform/eclipse.platform.releng \
22		platform/eclipse.platform.releng.aggregator \
23		platform/eclipse.platform.resources \
24		platform/eclipse.platform.runtime \
25		platform/eclipse.platform.swt \
26		platform/eclipse.platform.swt.binaries \
27		platform/eclipse.platform.team \
28		platform/eclipse.platform.text \
29		platform/eclipse.platform.ua \
30		platform/eclipse.platform.ui \
31		platform/eclipse.platform.ui.tools \
32		equinox/rt.equinox.binaries \
33		equinox/rt.equinox.bundles \
34		equinox/rt.equinox.framework \
35		equinox/rt.equinox.p2
36# Each Eclipse module has its own MASTER_SITE
37.for M in ${ECLIPSE_MODULES}
38MASTER_SITES+=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/releases/download/${PORTVERSION}/:${M:C/[\.\/]//g} \
39		https://git.eclipse.org/c/${M}.git/snapshot/:${M:C/[\.\/]//g}
40DISTFILES+=	${M:C/.*\///}-${ECLIPSE_SUFX}:${M:C/[\.\/]//g}
41.endfor
42
43DIST_SUBDIR=	${PORTNAME}
44
45MAINTAINER=	ports@MidnightBSD.org
46COMMENT=	Eclipse IDE 2020-06
47
48LICENSE=	epl
49
50ONLY_FOR_ARCHS=	amd64 powerpc64 powerpc64le
51
52BUILD_DEPENDS=	git:devel/git@lite \
53		${LOCALBASE}/share/java/apache-maven-3.8/bin/mvn:java/maven \
54		zip:archivers/zip
55LIB_DEPENDS=	libsecret-1.so:security/libsecret \
56		webkit2-gtk_41>=0:www/webkit2-gtk@41
57USES=		compiler:c++11-lang java gmake pkgconfig gnome
58USE_GNOME=	gtk30
59
60USE_GITHUB=	yes
61GH_ACCOUNT=	daemonblade
62GH_PROJECT=	eclipse-maven-repo
63
64JAVA_VERSION=	11+
65
66DESKTOP_ENTRIES="Eclipse" \
67		"${COMMENT}" \
68		"${PORTNAME}" \
69		"${PORTNAME}" \
70		"Development;IDE;Java;" \
71		"false"
72
73SUB_FILES=	${PORTNAME}
74
75MAVEN_ENV=	MAVEN_OPTS=-Xmx1024m CC=${CC} JAVA_HOME=${JAVA_HOME}
76MAVEN_REPO=	-Dmaven.repo.local=${WRKDIR}/${GH_PROJECT}-${PORTVERSION}
77MAVEN_ECLIPSE=	-Dnative=gtk.freebsd.${ARCH} -DforceContextQualifier=v${ECLIPSE_TSTAMP}
78
79ECLIPSE_RESULT=	eclipse.platform.releng.tychoeclipsebuilder/sdk/target/products/org.eclipse.sdk.ide-freebsd.gtk.${ARCH}.tar.gz
80
81# Let's abuse this to get to the right place.
82WRKSRC_SUBDIR=	../eclipse.platform.releng.aggregator-${ECLIPSE_TAG}
83
84do-build:
85	cd ${WRKSRC} && ${SETENV} ${MAVEN_ENV} mvn --offline ${MAVEN_REPO} ${MAVEN_ECLIPSE} -DskipTests clean verify
86
87do-install:
88	${MKDIR} ${DATADIR}
89	${TAR} -x --directory ${DATADIR}/.. --file ${WRKSRC}/${ECLIPSE_RESULT}
90	${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
91
92# generate dynamic plist, to cater for different ARCHS
93post-install:
94	cd ${PREFIX} && ${FIND} -s bin/${PORTNAME} share/${PORTNAME} -not -type d >> ${TMPPLIST}
95	cd ${PREFIX} && ${FIND} -ds share/${PORTNAME} -type d | ${SED} -e 's,^,@dir ,' >> ${TMPPLIST}
96
97.include <bsd.port.mk>
98