diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/xpi.mk | 30 |
1 files changed, 29 insertions, 1 deletions
@@ -62,8 +62,31 @@ # your code to MOZ_XPI_MOZILLA_EXTRA_DIRS # +# data for XPI_DEPENDS/CHECK_VERSION magic - targetApplication to package mapping +target_packages_{ec8030f7-c20a-464f-9b0e-13a3a9e97384}_3.0 := abrowser-3.0 firefox-3.0 iceweasel +target_packages_{ec8030f7-c20a-464f-9b0e-13a3a9e97384}_3.5 := abrowser-3.5 firefox-3.5 iceweasel +target_packages_{ec8030f7-c20a-464f-9b0e-13a3a9e97384}_3.6 := abrowser-3.6 firefox-3.6 +target_packages_{3550f703-e582-4d05-9a08-453d09bdfdc6}_2.0 := icedove thunderbird + +# data for XPI_DEPENDS/CHECK_VERSION magic - targetApplication versions +target_versions_{ec8030f7-c20a-464f-9b0e-13a3a9e97384} := 3.0 3.5 3.6 +target_versions_{3550f703-e582-4d05-9a08-453d09bdfdc6} := 2.0 + +# data for XPI_DEPENDS/CHECK_VERSION magic - targetApplication min-/maxVersions +# FIXME: find a way to get this information +target_maxVersion_{ec8030f7-c20a-464f-9b0e-13a3a9e97384} := 3.6a1pre +target_minVersion_{ec8030f7-c20a-464f-9b0e-13a3a9e97384} := 2.0 +target_maxVersion_{3550f703-e582-4d05-9a08-453d09bdfdc6} := 3.0b3pre +target_minVersion_{3550f703-e582-4d05-9a08-453d09bdfdc6} := 2.0 + +# TODO: Use correct comparison +CHECK_VERSION = $(shell dpkg --compare-versions $(target_minVersion_$(1)) le $(2) && dpkg --compare-versions $(2) le $(target_maxVersion_$(1)) && echo $(target_packages_$(1)_$(2))) + MOZ_XPI_BUILD_COMMAND ?= med-xpi-pack $(CURDIR) $(MOZ_EXTENSION_PKG).xpi; +XPI_DEPENDS = $(sort $(foreach id,$(call XPI_TARGET_EMIDs,$(TEMPDIR)), \ + $(foreach version,$(target_versions_$(id)),$(call CHECK_VERSION,$(id),$(version))))) + TEMPDIR := temp-xpi-unpacked ifneq (,$(MOZ_XPI_FILE)) @@ -122,10 +145,15 @@ stamp-install-%: stamp-autolinks stamp-extension-install: stamp-unzip-$(XPI_BASE_FILE) stamp-install-$(XPI_BASE_FILE) touch $@ +stamp-xpi-depends: + if test -f debian/$(MOZ_EXTENSION_PKG).substvars; then grep -v ^xpi:Depends= debian/$(MOZ_EXTENSION_PKG).substvars > debian/$(MOZ_EXTENSION_PKG).substvars~; fi + echo "xpi:Depends=$(XPI_DEPENDS)" | sed "s/ / | /g" >> debian/$(MOZ_EXTENSION_PKG).substvars~ + mv debian/$(MOZ_EXTENSION_PKG).substvars~ debian/$(MOZ_EXTENSION_PKG).substvars + touch $@ # only attempt to do things if a pkg was provided; otherwise error out ifneq (,$(MOZ_EXTENSION_PKG)) -xpi-install: stamp-extension-install +xpi-install: stamp-extension-install stamp-xpi-depends xpi-clean: dh_clean -p$(MOZ_EXTENSION_PKG) |