summaryrefslogtreecommitdiff
path: root/net-mgmt/omada5/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'net-mgmt/omada5/Makefile')
-rw-r--r--net-mgmt/omada5/Makefile68
1 files changed, 68 insertions, 0 deletions
diff --git a/net-mgmt/omada5/Makefile b/net-mgmt/omada5/Makefile
new file mode 100644
index 000000000000..0d76e15af6e4
--- /dev/null
+++ b/net-mgmt/omada5/Makefile
@@ -0,0 +1,68 @@
+PORTNAME= omada5
+PORTVERSION= 5.15.24.19
+CATEGORIES= net-mgmt java
+DISTNAME= Omada_SDN_Controller_v${PORTVERSION}_linux_x64_20250724152611
+MASTER_SITES= https://static.tp-link.com/upload/software/2025/202508/20250802/
+EXTRACT_ONLY= Omada_SDN_Controller_v${PORTVERSION}_linux_x64_20250724152611.tar.gz
+
+MAINTAINER= feld@FreeBSD.org
+COMMENT= Omada SDN Controller v5
+WWW= https://www.omadanetworks.com/us/business-networking/omada-controller-cloud-software/omada-software-controller/
+
+PATCH_DEPENDS= xxd>0:sysutils/xxd \
+ unzip>0:archivers/unzip
+RUN_DEPENDS= mongodb70${MONGODB_PKGNAMESUFFIX}>0:databases/mongodb70
+
+USES= cpe java:extract,run
+JAVA_VERSION= 8+
+USE_RC_SUBR= omada
+
+CPE_VENDOR= tp-link
+CPE_PRODUCT= omada_software_controller
+CPE_TARGET_SW= linux
+
+EXTRACT_AFTER_ARGS+= --exclude Omada_SDN_Controller_v${PORTVERSION}_linux_x64/bin \
+ --exclude Omada_SDN_Controller_v${PORTVERSION}_linux_x64/*.sh
+
+NO_BUILD= yes
+
+SUB_LIST+= GROUPS=${GROUPS} \
+ JAVA=${JAVA} \
+ JAVA_HOME=${JAVA_HOME} \
+ JAVASHAREDIR=${JAVASHAREDIR} \
+ USERS=${USERS}
+
+WRKSRC= ${WRKDIR}/Omada_SDN_Controller_v${PORTVERSION}_linux_x64
+
+USERS= omada
+GROUPS= omada
+
+post-extract:
+ @${MKDIR} ${WRKSRC}/bin
+
+# post-patch below for dynamically patching out the Linux-check from the jar file
+ISLINUXOS_CLASSDIR= com/tplink/smb/omada/common/util
+ISLINUXOS_CLASS= com/tplink/smb/omada/common/util/S.class
+JARFILE= ${WRKSRC}/lib/omada-common-${PORTVERSION}.jar
+SCRATCH= ${WRKDIR}/scratch
+post-patch:
+ ${MKDIR} ${SCRATCH}/${ISLINUXOS_CLASSDIR}
+ (cd ${SCRATCH} && \
+ ${UNZIP_CMD} -p "${JARFILE}" "${ISLINUXOS_CLASS}" | \
+ ${LOCALBASE}/bin/xxd -p -c 0 | \
+ ${SED} -e s,0100056c696e7578,01000766726565627364, | \
+ ${LOCALBASE}/bin/xxd -r -p > "${SCRATCH}/${ISLINUXOS_CLASS}" && \
+ ${LOCALBASE}/bin/jar uf "${JARFILE}" -C "${SCRATCH}" "${ISLINUXOS_CLASS}")
+
+pre-install:
+ @${RM} ${WRKSRC}/properties/omada.properties.orig
+
+do-install:
+ @${MV} ${WRKSRC}/properties/omada.properties ${WRKSRC}/properties/omada.properties.sample
+ @${MV} ${WRKSRC}/properties/log4j2.properties ${WRKSRC}/properties/log4j2.properties.sample
+ ${MKDIR} ${STAGEDIR}${JAVASHAREDIR}/omada
+ (cd ${WRKSRC} && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${JAVASHAREDIR}/omada)
+ ${RLN} /usr/bin/true ${STAGEDIR}${JAVASHAREDIR}/omada/bin/topdf
+
+.include <bsd.port.mk>