From owner-freebsd-gecko@FreeBSD.ORG Thu Dec 19 04:00:25 2013 Return-Path: Delivered-To: freebsd-gecko@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8BF3E998 for ; Thu, 19 Dec 2013 04:00:25 +0000 (UTC) Received: from trillian.chruetertee.ch (trillian.chruetertee.ch [217.150.244.247]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 15978153D for ; Thu, 19 Dec 2013 04:00:24 +0000 (UTC) Received: from trillian.chruetertee.ch (trillian [217.150.244.247]) by trillian.chruetertee.ch (8.14.4/8.14.3) with ESMTP id rBJ40NRG060260 for ; Thu, 19 Dec 2013 04:00:23 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Received: (from www@localhost) by trillian.chruetertee.ch (8.14.4/8.14.3/Submit) id rBJ40HIR059806 for freebsd-gecko@freebsd.org; Thu, 19 Dec 2013 04:00:17 GMT (envelope-from svn-freebsd-gecko@chruetertee.ch) Date: Thu, 19 Dec 2013 04:00:17 GMT Message-Id: <201312190400.rBJ40HIR059806@trillian.chruetertee.ch> X-Authentication-Warning: trillian.chruetertee.ch: www set sender to svn-freebsd-gecko@chruetertee.ch using -f From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r1460 - in trunk: . Mk MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: freebsd-gecko@freebsd.org List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Dec 2013 04:00:25 -0000 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