[SVN-Commit] r1460 - in trunk: . Mk
svn-freebsd-gecko at chruetertee.ch
svn-freebsd-gecko at chruetertee.ch
Thu Dec 19 04:00:25 UTC 2013
Author: jbeich
Date: Thu Dec 19 04:00:17 2013
New Revision: 1460
Log:
remove stuff that accidentally crept in from stash/abandoned branch
Modified:
trunk/Gecko_TODO
trunk/Mk/bsd.gecko.mk
Modified: trunk/Gecko_TODO
==============================================================================
--- trunk/Gecko_TODO Thu Dec 19 03:56:00 2013 (r1459)
+++ trunk/Gecko_TODO Thu Dec 19 04:00:17 2013 (r1460)
@@ -20,6 +20,7 @@
- switch to system libxul (needs slaves with common patches);
a Debian patch to reduce configure time can be useful
- move duplicated `>=' deps into bsd.gecko.mk (system libxul?)
+- replace FAKEDIR with STAGEDIR
- get rid of symlink farms for webplugins and xpi-* ports
jbeich:
Modified: trunk/Mk/bsd.gecko.mk
==============================================================================
--- trunk/Mk/bsd.gecko.mk Thu Dec 19 03:56:00 2013 (r1459)
+++ trunk/Mk/bsd.gecko.mk Thu Dec 19 04:00:17 2013 (r1460)
@@ -484,6 +484,11 @@
# PORT_MOZCONFIG Defaults to ${FILESDIR}/mozconfig.in, but can be
# set to a generic mozconfig included with the port
#
+# NOGECKO_INSTALL Don't install the built gecko (most likely for
+# testing)
+#
+# NOGECKO_PLIST Don't create a dynamically-generated playlist
+#
# NOMOZCONFIG Don't drop a customized .mozconfig into the build
# directory. Options will have to be specified in
# CONFIGURE_ARGS instead
@@ -497,14 +502,20 @@
MOZILLA_EXEC_NAME?=${MOZILLA}
MOZ_RPATH?= ${MOZILLA}
USE_GNOME+= libidl desktopfileutils
-USES+= desktop-file-utils gmake iconv perl5 pkgconfig
+USES+= gmake iconv perl5 pkgconfig
USE_PERL5= build
USE_XORG= printproto sm xt xi xext x11 xinerama \
ice xproto
+NO_STAGE= yes
+
MOZILLA_SUFX?= none
MOZSRC?= ${WRKSRC}
WRKSRC?= ${WRKDIR}/mozilla
+FAKEDIR?= ${WRKDIR}/fake
+PLIST?= ${WRKDIR}/plist
+PLISTD?= ${WRKDIR}/plist_dirs
+PLISTF?= ${WRKDIR}/plist_files
MOZ_PIS_DIR?= lib/${MOZILLA}/init.d
@@ -524,9 +535,9 @@
MOZ_PKGCONFIG_FILES?= ${MOZILLA}-gtkmozembed ${MOZILLA}-js \
${MOZILLA}-xpcom ${MOZILLA}-plugin
-GNU_CONFIGURE_PREFIX=${STAGEDIR}
MOZ_EXPORT+= ${CONFIGURE_ENV} \
LIBS="${LIBS}" PERL="${PERL}"
+MOZ_OPTIONS+= --prefix="${FAKEDIR}"
CPPFLAGS+= -isystem${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib -Wl,-z,origin -Wl,-rpath,\\$$$\$$$$ORIGIN
@@ -790,7 +801,7 @@
-e 's|@LDFLAGS@|${LDFLAGS}|g' \
-e 's|@LIBS@|${LIBS}|g' \
-e 's|@LOCALBASE@|${LOCALBASE}|g' \
- -e 's|@STAGEDIR@|${STAGEDIR}|g' \
+ -e 's|@FAKEDIR@|${FAKEDIR}|g' \
-e 's|@PERL@|${PERL5}|g' \
-e 's|@MOZDIR@|${PREFIX}/lib/${MOZILLA}|g' \
-e 's|%%PREFIX%%|${PREFIX}|g' \
@@ -798,7 +809,7 @@
-e 's|%%LDFLAGS%%|${LDFLAGS}|g' \
-e 's|%%LIBS%%|${LIBS}|g' \
-e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
- -e 's|%%STAGEDIR%%|${STAGEDIR}|g' \
+ -e 's|%%FAKEDIR%%|${FAKEDIR}|g' \
-e 's|%%PERL%%|${PERL5}|g' \
-e 's|%%MOZILLA%%|${MOZILLA}|g' \
-e 's|%%MOZILLA_BIN%%|${MOZILLA_BIN}|g' \
@@ -971,51 +982,102 @@
gecko-post-configure:
@${ECHO_CMD} "#define JNIIMPORT" >> ${MOZSRC}/mozilla-config.h
-pre-install: gecko-moz-pis-pre-install port-pre-install
+pre-install: gecko-moz-pis-pre-install gecko-pre-install port-pre-install gecko-create-plist
.if !target(port-pre-install)
port-pre-install:
@${DO_NADA}
.endif
-gecko-moz-pis-pre-install:
-.if defined(MOZ_PIS_SCRIPTS)
- ${MKDIR} ${STAGEDIR}/${MOZ_PIS_DIR}
-.for moz in ${MOZ_PIS_SCRIPTS}
- ${INSTALL_SCRIPT} ${WRKDIR}/${moz} ${STAGEDIR}/${MOZ_PIS_DIR}
-.endfor
-.endif
-
-post-install: gecko-post-install
-
-gecko-post-install:
+gecko-pre-install:
+.if !defined(NOGECKO_PLIST)
+ @${RM} -rf ${FAKEDIR} ${PLIST} ${PLISTD} ${PLISTF}
+ @${TOUCH} -f ${PLIST} ${PLISTD} ${PLISTF}
+ @cd ${INSTALL_WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
+ ${MAKEFILE} ${MAKE_ARGS} prefix=${FAKEDIR} ${INSTALL_TARGET}
.if defined(MOZILLA_SUFX) && ${MOZILLA_SUFX}!="none"
- ${MV} ${STAGEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//} ${STAGEDIR}/bin/${MOZILLA}
-.if exists(${STAGEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//}-config)
- ${MV} ${STAGEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//}-config ${STAGEDIR}/bin/${MOZILLA}-config
+ ${MV} ${FAKEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//} ${FAKEDIR}/bin/${MOZILLA}
+.if exists(${FAKEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//}-config)
+ ${MV} ${FAKEDIR}/bin/${MOZILLA_EXEC_NAME:S/${MOZILLA_SUFX}//}-config ${FAKEDIR}/bin/${MOZILLA}-config
.endif
.for pc in ${MOZ_PKGCONFIG_FILES:S|${MOZILLA_SUFX}||}
${SED} -e 's|Requires: ${MOZILLA:S/${MOZILLA_SUFX}//}|Requires: ${MOZILLA}|' \
- ${STAGEDIR}/lib/pkgconfig/${pc}.pc > ${STAGEDIR}/lib/pkgconfig/${pc:S/${MOZILLA:S,${MOZILLA_SUFX},,}/${MOZILLA}/}.pc
- @${REINPLACE_CMD} -e 's|${STAGEDIR}|${PREFIX}|g' \
- -e 's|${MOZILLA}-nspr = ${PORTVERSION}|nspr|' \
- ${STAGEDIR}/libdata/pkgconfig/${pc}.pc
+ ${FAKEDIR}/lib/pkgconfig/${pc}.pc > ${FAKEDIR}/lib/pkgconfig/${pc:S/${MOZILLA:S,${MOZILLA_SUFX},,}/${MOZILLA}/}.pc
.endfor
@${REINPLACE_CMD} -e 's|${MOZILLA_BIN}|${MOZILLA:S/${MOZILLA_SUFX}//}|; \
s|$${progbase}-bin|${MOZILLA:S/${MOZILLA_SUFX}//}-bin|' \
- -e 's|${STAGEDIR}|${PREFIX}|g' \
- -i '' $$(${REALPATH} ${STAGEDIR}/bin/${MOZILLA}*)
+ -e 's|${FAKEDIR}|${PREFIX}|g' \
+ -i '' $$(${REALPATH} ${FAKEDIR}/bin/${MOZILLA}*)
.else
- @${REINPLACE_CMD} -e 's|${STAGEDIR}|${PREFIX}|g' \
- -i '' $$(${REALPATH} ${STAGEDIR}/bin/${MOZILLA_EXEC_NAME}*)
+ @${REINPLACE_CMD} -e 's|${FAKEDIR}|${PREFIX}|g' \
+ -i '' $$(${REALPATH} ${FAKEDIR}/bin/${MOZILLA_EXEC_NAME}*)
.endif
- ${MV} -f ${STAGEDIR}/lib/pkgconfig ${STAGEDIR}/libdata/ || ${TRUE}
- ${RM} -f ${STAGEDIR}/lib/pkgconfig
+.endif
+
+gecko-create-plist:
+.if !defined(NOGECKO_PLIST)
+# Create the plist
+.for f in ${GECKO_PLIST_PRE_FILES}
+ ${ECHO_CMD} ${f} >> ${PLISTF}
+.endfor
+.for f in ${GECKO_PLIST_PRE_DIRS}
+ ${ECHO_CMD} "@dirrm ${f}" >> ${PLISTD}
+.endfor
+ ${MKDIR} ${FAKEDIR}/libdata
+ ${MV} -f ${FAKEDIR}/lib/pkgconfig ${FAKEDIR}/libdata/ || ${TRUE}
+ ${RM} -f ${FAKEDIR}/lib/pkgconfig
+.for dir in ${MOZILLA_PLIST_DIRS}
+ @cd ${FAKEDIR}/${dir} && ${FIND} -H -s * ! -type d | \
+ ${SED} -e 's|^|${dir}/|' >> ${PLISTF} && \
+ ${FIND} -d * -type d | \
+ ${SED} -e 's|^|@dirrm ${dir}/|' >> ${PLISTD}
+.endfor
+.for pcfile in ${MOZ_PKGCONFIG_FILES}
+ ${ECHO_CMD} "libdata/pkgconfig/${pcfile}.pc" >> ${PLISTF}
+ @${REINPLACE_CMD} -e 's|${FAKEDIR}|${PREFIX}|g' \
+ -e 's|${MOZILLA}-nspr = ${PORTVERSION}|nspr|' \
+ ${FAKEDIR}/libdata/pkgconfig/${pcfile}.pc
+.endfor
+ ${CAT} ${PLISTF} | ${SORT} >> ${PLIST}
+ ${CAT} ${PLISTD} | ${SORT} -r >> ${PLIST}
+ ${ECHO_CMD} "@exec ${LOCALBASE}/bin/update-desktop-database > /dev/null || ${TRUE}" >> ${PLIST}
+ ${ECHO_CMD} "@unexec ${LOCALBASE}/bin/update-desktop-database > /dev/null || ${TRUE}" >> ${PLIST}
+.endif # !defined(NOGECKO_PLIST)
+
+do-install: gecko-do-install
+
+gecko-do-install:
+.if !defined(NOGECKO_INSTALL)
+.for dir in ${MOZILLA_PLIST_DIRS}
+.if !exists(${PREFIX}/${dir})
+ ${MKDIR} ${PREFIX}/${dir}
+.endif
+ ${TAR} cf - -C${FAKEDIR}/${dir} -s'|${FAKEDIR}|${PREFIX}|s' . | \
+ ${TAR} xof - -C${PREFIX}/${dir}
+.endfor
+.for pcfile in ${MOZ_PKGCONFIG_FILES}
+ ${INSTALL_DATA} ${FAKEDIR}/libdata/pkgconfig/${pcfile}.pc \
+ ${PREFIX}/libdata/pkgconfig/${pcfile}.pc
+.endfor
+.endif # !defined(NOGECKO_INSTALL)
+
+gecko-moz-pis-pre-install:
+.if defined(MOZ_PIS_SCRIPTS)
+ ${MKDIR} ${FAKEDIR}/${MOZ_PIS_DIR}
+.for moz in ${MOZ_PIS_SCRIPTS}
+ ${INSTALL_SCRIPT} ${WRKDIR}/${moz} ${FAKEDIR}/${MOZ_PIS_DIR}
+.endfor
+.endif
+
+post-install: gecko-post-install
+
+gecko-post-install:
.if !defined(PACKAGE_BUILDING) && !defined(NO_MOZPKGINSTALL)
@if [ -e ${PKGINSTALL} ] ; then \
- ${SETENV} PKG_PREFIX=${STAGEDIR}${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL; \
+ ${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL; \
fi
.endif
+ @-update-desktop-database
.endif
.endif
More information about the freebsd-gecko
mailing list