DEFAULT_BROWSERS := resources/browser_manifests/browser_manifest.json
DEFAULT_TESTS := test_manifest.json
-EXTENSION_SRC := ./extensions/firefox
-EXTENSION_NAME := pdf.js.xpi
+EXTENSION_SRC := ./extensions/
+FIREFOX_EXTENSION_NAME := pdf.js.xpi
+CHROME_EXTENSION_NAME := pdf.js.crx
+ all: bundle
+
# Let folks define custom rules for their clones.
-include local.mk
# To install gjslint, see:
#
# <http://code.google.com/closure/utilities/docs/linter_howto.html>
- SRC_DIRS := . utils worker web test examples/helloworld extensions/firefox \
+ SRC_DIRS := . src utils web test examples/helloworld extensions/firefox \
- extensions/firefox/components
+ extensions/firefox/components extensions/chrome
GJSLINT_FILES = $(foreach DIR,$(SRC_DIRS),$(wildcard $(DIR)/*.js))
lint:
- gjslint $(GJSLINT_FILES)
+ gjslint --nojsdoc $(GJSLINT_FILES)
# make web
#
# TODO: Use the Closure compiler to optimize the pdf.js files.
#
GH_PAGES = $(BUILD_DIR)/gh-pages
- web: | extension compiler pages-repo \
- $(addprefix $(GH_PAGES)/, $(PDF_JS_FILES)) \
- $(addprefix $(GH_PAGES)/, $(wildcard web/*.*)) \
- $(addprefix $(GH_PAGES)/, $(wildcard web/images/*.*)) \
- $(addprefix $(GH_PAGES)/, $(wildcard $(EXTENSION_SRC)/firefox/*.xpi)) \
- $(addprefix $(GH_PAGES)/, $(wildcard $(EXTENSION_SRC)/chrome/*.crx))
-
+ web: | production extension compiler pages-repo
+ @cp $(BUILD_TARGET) $(GH_PAGES)/$(BUILD_TARGET)
+ @cp -R web/* $(GH_PAGES)/web
+ @cp web/images/* $(GH_PAGES)/web/images
- @cp $(EXTENSION_SRC)/*.xpi $(GH_PAGES)/$(EXTENSION_SRC)
++ @cp $(EXTENSION_SRC)/firefox/*.xpi $(GH_PAGES)/$(EXTENSION_SRC)/firefox/
@cp $(GH_PAGES)/web/index.html.template $(GH_PAGES)/index.html;
+ @mv -f $(GH_PAGES)/web/viewer-production.html $(GH_PAGES)/web/viewer.html;
@cd $(GH_PAGES); git add -A;
@echo
@echo "Website built in $(GH_PAGES)."
fi;
@mkdir -p $(GH_PAGES)/web;
@mkdir -p $(GH_PAGES)/web/images;
- @mkdir -p $(GH_PAGES)/$(EXTENSION_SRC);
+ @mkdir -p $(GH_PAGES)/build;
- @mkdir -p $(GH_PAGES)/$(EXTENSION_SRC)/chrome;
-
- $(GH_PAGES)/%.js: %.js
- @cp $< $@
-
- $(GH_PAGES)/web/%: web/%
- @cp $< $@
-
- $(GH_PAGES)/web/images/%: web/images/%
- @cp $< $@
-
- $(GH_PAGES)/$(EXTENSION_SRC)/firefox/%: $(EXTENSION_SRC)/firefox/%
- @cp -R $< $@
-
- $(GH_PAGES)/$(EXTENSION_SRC)/chrome/%: $(EXTENSION_SRC)/chrome/%
+ @mkdir -p $(GH_PAGES)/$(EXTENSION_SRC)/firefox;
# # make compiler
# #
#
# This target produce a restartless firefox extension containing a
# copy of the pdf.js source.
- CONTENT_DIR := firefox/content
+ CONTENT_DIR := content
++FIREFOX_CONTENT_DIR := $(EXTENSION_SRC)/firefox/$(CONTENT_DIR)/
++CHROME_CONTENT_DIR := $(EXTENSION_SRC)/chrome/$(CONTENT_DIR)/
PDF_WEB_FILES = \
web/images \
web/compatibility.js \
web/viewer.css \
web/viewer.js \
- web/viewer.html \
+ web/viewer-production.html \
$(NULL)
- extension:
+ extension: | production
# Copy a standalone version of pdf.js inside the content directory
-- @rm -Rf $(EXTENSION_SRC)/$(CONTENT_DIR)/
- @mkdir -p $(EXTENSION_SRC)/$(CONTENT_DIR)/$(BUILD_DIR)
-- @mkdir -p $(EXTENSION_SRC)/$(CONTENT_DIR)/web
- @cp $(PDF_JS_FILES) $(EXTENSION_SRC)/$(CONTENT_DIR)/
- @cp $(BUILD_TARGET) $(EXTENSION_SRC)/$(CONTENT_DIR)/$(BUILD_DIR)
-- @cp -r $(PDF_WEB_FILES) $(EXTENSION_SRC)/$(CONTENT_DIR)/web/
- @mv -f $(EXTENSION_SRC)/$(CONTENT_DIR)/web/viewer-production.html $(EXTENSION_SRC)/$(CONTENT_DIR)/web/viewer.html
++ @rm -Rf $(FIREFOX_CONTENT_DIR)
++ @mkdir -p $(FIREFOX_CONTENT_DIR)/$(BUILD_DIR)
++ @mkdir -p $(FIREFOX_CONTENT_DIR)/web
++ @cp $(BUILD_TARGET) $(FIREFOX_CONTENT_DIR)/$(BUILD_DIR)
++ @cp -r $(PDF_WEB_FILES) $(FIREFOX_CONTENT_DIR)/web/
++ @mv -f $(FIREFOX_CONTENT_DIR)/web/viewer-production.html $(FIREFOX_CONTENT_DIR)/web/viewer.html
# Create the xpi
- @cd $(EXTENSION_SRC); zip -r $(EXTENSION_NAME) *
- @echo "extension created: " $(EXTENSION_NAME)
+ @cd $(EXTENSION_SRC)/firefox; zip -r $(FIREFOX_EXTENSION_NAME) *
+ @echo "extension created: " $(FIREFOX_EXTENSION_NAME)
+
+ # Copy a standalone version of pdf.js inside the extension directory
- @cp $(PDF_JS_FILES) $(EXTENSION_SRC)/chrome/
- @mkdir -p $(EXTENSION_SRC)/chrome/web
- @cp -r $(PDF_WEB_FILES) $(EXTENSION_SRC)/chrome/web/
++ @rm -Rf $(CHROME_CONTENT_DIR)
++ @mkdir -p $(CHROME_CONTENT_DIR)/$(BUILD_DIR)
++ @mkdir -p $(CHROME_CONTENT_DIR)/web
++ @cp $(BUILD_TARGET) $(CHROME_CONTENT_DIR)/$(BUILD_DIR)
++ @cp -r $(PDF_WEB_FILES) $(CHROME_CONTENT_DIR)/web/
++ @mv -f $(CHROME_CONTENT_DIR)/web/viewer-production.html $(CHROME_CONTENT_DIR)/web/viewer.html
+
+ # Create the crx
+ #TODO
+
# Make sure there's a build directory.