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
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-gecko
To unsubscribe, send any mail to "[email protected]"

Reply via email to