Author: beat Date: Mon Feb 22 21:57:49 2010 New Revision: 274 Log: - Add first version of USE_FIREFOX and USE_FIREFOX_BUILD to bsd.gecko.mk
Modified: branches/experimental/Mk/bsd.gecko.mk branches/experimental/Mk/bsd.port.mk Modified: branches/experimental/Mk/bsd.gecko.mk ============================================================================== --- branches/experimental/Mk/bsd.gecko.mk Mon Feb 22 21:52:02 2010 (r273) +++ branches/experimental/Mk/bsd.gecko.mk Mon Feb 22 21:57:49 2010 (r274) @@ -8,6 +8,114 @@ # # 4 column tabs prevent hair loss and tooth decay! +.if !defined(_POSTMKINCLUDED) && !defined(Gecko_Pre_Include) + +# USE_FIREFOX - Add runtime dependency on Firefox. If no version +# is given by the maintainer via the port or by the +# user via defined variable try to find the highest +# stable installed version. +# Available values: yes 36+ 35+ 30+ 36 35 30 +# NOTE: +# default value 36 is used in case of USE_FIREFOX=yes +# +# USE_FIREFOX_BUILD - Add buildtime dependency on Firefox. +# Available values: see USE_FIREFOX +# +# INVALID_FIREFOX_VER - This variable contains a list of Firefox versions +# not supported by the port. This setting is effective +# only when USE_FIREFOX is set to a range (e.g. 30+) +# +# WITH_FIREFOX_VER - User defined global variable to set Firefox version +# This variable is effective only if USE_FIREFOX is +# set to a range (e.g. 30+) and WITH_FIREFOX_VER +# points inside that range. +# NOTE: INVALID_FIREFOX_VER takes precedence + +# +# Firefox part +# +.if defined(USE_FIREFOX) || defined(USE_FIREFOX_BUILD) + +# Process USE_FIREFOX_BUILD +.if !defined(USE_FIREFOX) +.if defined(USE_FIREFOX_BUILD) +USE_FIREFOX:= ${USE_FIREFOX_BUILD} +_FIREFOX_BUILD_DEPENDS= yes +.endif +.endif + +_FIREFOX_DEFAULT_VERSION= 36 +_FIREFOX_VERSIONS= 36 35 30 +_FIREFOX_RANGE_VERSIONS= 36+ 35+ 30+ + +# For specifying [36, 35, ..]+ +_FIREFOX_30P= 30 ${_FIREFOX_35P} +_FIREFOX_35P= 35 ${_FIREFOX_36P} +_FIREFOX_36P= 36 + +# Set the default Firefox version and check if USE_FIREFOX=yes was given +.if ${USE_FIREFOX} == "yes" +USE_FIREFOX= ${_FIREFOX_DEFAULT_VERSION} +.endif + +.if !defined(_FIREFOX_${USE_FIREFOX}P) +IGNORE:= cannot install: unknown Firefox version: firefox-${USE_FIREFOX:C/([0-9])([0-9])/\1.\2/} +.endif + +# Check if we have user-defined WITH_FIREFOX_VER and if it matches +# the range specified in port's USE_FIREFOX +.if defined(WITH_FIREFOX_VER) +.for ver in ${_FIREFOX_RANGE_VERSIONS} +.if ${USE_FIREFOX} == "${ver}" +_MATCHED_FIREFOX_VER:= ${USE_FIREFOX:S/+//} +.for firefox in ${_FIREFOXL_${_MATCHED_FIREFOX_VER}P} +.if ${WITH_FIREFOX_VER} == ${firefox} +# Check if user supplied WITH_FIREFOX is in the INVALID_FIREFOX_VER list +_BRKFIREFOX= no +.for iver in ${INVALID_FIREFOX_VER} +.if ${WITH_FIREFOX_VER} == ${iver} +_BRKFIREFOX= yes +.endif +.endfor +# If WITH_FIREFOX is not in the INVALID_FIREFOX_VER list, use it +# otherwise take default from port +.if ${_BRKFIREFOX} == "no" +USE_FIREFOX= ${WITH_FIREFOX_VER} +.endif +.endif +.endfor +.endif +.endfor +.endif + +# Setting/finding Firefox version we want. +.if exists(${LOCALBASE}/bin/firefox3) +_FIREFOX_VER!= ${LOCALBASE}/bin/firefox3 --version | ${SED} -e 's/Mozilla Firefox \([0-9]\)\.\([0-9]*\).*/\1\2/' +.endif + +.if defined(_FIREFOX_VER) +.if ${_FIREFOX_VER} != ${USE_FIREFOX} +IGNORE= cannot install: Firefox versions mismatch: firefox-${_FIREFOX_VER:C/([0-9])([0-9])/\1.\2/} is installed and wanted version is firefox-${USE_FIREFOX:C/([0-9])([0-9])/\1.\2/} +.endif +.endif + +# Dependence lines for different Firefox versions +36_DEPENDS= ${LOCALBASE}/lib/firefox3/firefox:${PORTSDIR}/www/firefox +35_DEPENDS= ${LOCALBASE}/lib/firefox3/firefox:${PORTSDIR}/www/firefox35 +30_DEPENDS= ${LOCALBASE}/lib/firefox3/firefox:${PORTSDIR}/www/firefox3 + +# Add dependencies +.if defined(USE_FIREFOX) +.if defined(_FIREFOX_BUILD_DEPENDS) +BUILD_DEPENDS+= ${${USE_FIREFOX}_DEPENDS} +.else +RUN_DEPENDS+= ${${USE_FIREFOX}_DEPENDS} +.endif +.endif + +.endif # defined(USE_FIREFOX) +.endif + # ======================= USERS ================================= # To specify which gecko-based backend you prefer, use something like: # Modified: branches/experimental/Mk/bsd.port.mk ============================================================================== --- branches/experimental/Mk/bsd.port.mk Mon Feb 22 21:52:02 2010 (r273) +++ branches/experimental/Mk/bsd.port.mk Mon Feb 22 21:57:49 2010 (r274) @@ -1550,7 +1550,7 @@ .include "${PORTSDIR}/Mk/bsd.qt.mk" .endif -.if defined(WANT_GECKO) || defined(USE_GECKO) +.if defined(WANT_GECKO) || defined(USE_GECKO) || defined(USE_FIREFOX) || defined(USE_FIREFOX_BUILD) .include "${PORTSDIR}/Mk/bsd.gecko.mk" .endif _______________________________________________ freebsd-gecko@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-gecko To unsubscribe, send any mail to "freebsd-gecko-unsubscr...@freebsd.org"