Commit 846a1556 authored by Erinn Clark's avatar Erinn Clark
Browse files

WIN: begin adding FF17 changes to Makefiles

parent 24705d40
Loading
Loading
Loading
Loading
+10 −12
Original line number Diff line number Diff line
@@ -3,17 +3,16 @@
RELEASE_VER=2.3.25

ZLIB_VER=1.2.7
OPENSSL_VER=1.0.1d
OPENSSL_VER=1.0.0k
LIBPNG_VER=1.5.13
QT_VER=4.8.1
VIDALIA_VER=0.2.21
LIBEVENT_VER=2.0.21-stable
TOR_VER=0.2.3.25
PIDGIN_VER=2.6.4
FIREFOX_VER=10.0.12esr
FIREFOX_VER=17.0.2esr
MOZBUILD_VER=1.5.1
PYMAKE_VER=87d436cd8974
TORBUTTON_VER=1.4.6.3
TORBUTTON_VER=1.5.0pre6-alpha
NOSCRIPT_VER=2.6.4.4
HTTPSEVERYWHERE_VER=3.1.3
OTR_VER=3.2.0
@@ -33,7 +32,6 @@ TOR_PACKAGE=tor-$(TOR_VER).tar.gz
PIDGIN_PACKAGE=pidgin-$(PIDGIN_VER).tar.bz2
FIREFOX_PACKAGE=firefox-$(FIREFOX_VER).source.tar.bz2
MOZBUILD_PACKAGE=MozillaBuildSetup-$(MOZBUILD_VER).exe
PYMAKE_PACKAGE=$(PYMAKE_VER).tar.bz2
TORBUTTON_PACKAGE=torbutton-$(TORBUTTON_VER).xpi
NOSCRIPT_PACKAGE=addon-722-latest.xpi
HTTPSEVERYWHERE_PACKAGE=https-everywhere-$(HTTPSEVERYWHERE_VER).xpi
@@ -50,8 +48,8 @@ TOR_URL=https://archive.torproject.org/tor-package-archive/$(TOR_PACKAGE)
PIDGIN_URL=http://sourceforge.net/projects/pidgin/files/Pidgin/$(PIDGIN_PACKAGE)
FIREFOX_URL=https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$(FIREFOX_VER)/source/$(FIREFOX_PACKAGE)
MOZBUILD_URL=https://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/$(MOZBUILD_PACKAGE)
PYMAKE_URL=https://hg.mozilla.org/users/bsmedberg_mozilla.com/pymake/archive/$(PYMAKE_PACKAGE)
TORBUTTON_URL=https://archive.torproject.org/tor-package-archive/torbutton/$(TORBUTTON_PACKAGE)
#TORBUTTON_URL=https://archive.torproject.org/tor-package-archive/torbutton/$(TORBUTTON_PACKAGE)
TORBUTTON_URL=https://people.torproject.org/~mikeperry/$(TORBUTTON_PACKAGE)
NOSCRIPT_URL=https://addons.mozilla.org/firefox/downloads/latest/722/$(NOSCRIPT_PACKAGE)
HTTPSEVERYWHERE_URL=https://eff.org/files/$(HTTPSEVERYWHERE_PACKAGE)
OBFSPROXY_URL=https://archive.torproject.org/tor-package-archive/obfsproxy/$(OBFSPROXY_PACKAGE)
@@ -82,7 +80,7 @@ LIBEVENT_DIR=$(BUILD_DIR)/libevent-$(LIBEVENT_VER)
TOR_DIR=$(BUILD_DIR)/tor-$(TOR_VER)
FIREFOX_DIR=$(BUILD_DIR)/firefox-$(FIREFOX_VER)
MOZBUILD_DIR=$(BUILD_DIR)/mozilla-build
PYMAKE_DIR=$(BUILD_DIR)/pymake-$(PYMAKE_VER)
PYMAKE_DIR=$(FIREFOX_DIR)/build/pymake
OBFSPROXY_DIR=$(BUILD_DIR)/obfsproxy-$(OBFSPROXY_VER)

# Empty targets are written in arch-dependent $(BUILD_DIR). Usual
@@ -197,9 +195,9 @@ $(TOR_DIR): $(FETCH_DIR)/$(TOR_PACKAGE) | $(BUILD_DIR)
	cd $(FETCH_DIR) && tar -xmf $(TOR_PACKAGE) -C $(BUILD_DIR)/

$(FIREFOX_DIR): $(FETCH_DIR)/$(FIREFOX_PACKAGE) ../src/current-patches/firefox/* | $(BUILD_DIR)
	rm -rf $(FIREFOX_DIR) $(FETCH_DIR)/mozilla-esr10
	rm -rf $(FIREFOX_DIR) $(FETCH_DIR)/mozilla-esr17
	cd $(FETCH_DIR) && tar -xmf $(FIREFOX_PACKAGE) -C $(BUILD_DIR)/
	mv $(BUILD_DIR)/mozilla-esr10 $(FIREFOX_DIR)
	mv $(BUILD_DIR)/mozilla-esr17 $(FIREFOX_DIR)
	cp ../src/current-patches/firefox/* $(FIREFOX_DIR)
	cp patch-any-src.sh $(FIREFOX_DIR)
	cd $(FIREFOX_DIR) && ./patch-any-src.sh
@@ -224,8 +222,8 @@ $(OBFSPROXY_DIR): $(FETCH_DIR)/$(OBFSPROXY_PACKAGE) | $(BUILD_DIR)

# Common build functionality. Modified by variables set in OS-specific makefiles
build-tor: build-zlib build-openssl build-libevent $(TOR_DIR)
	cd $(TOR_DIR) && CFLAGS=$(TOR_CFLAGS) LDFLAGS=$(TOR_LDFLAGS) ./configure $(TOR_OPTS) --enable-gcc-warnings-advisory --prefix=$(BUILT_DIR)
	cd $(TOR_DIR) && make -j $(NUM_CORES)
	cd $(TOR_DIR) && CFLAGS=$(TOR_CFLAGS) LDFLAGS=$(TOR_LDFLAGS) ./configure $(TOR_OPTS) --enable-gcc-warnings-advisory --prefix=$(BUILT_DIR) --disable-gcc-hardening 2>&1 | tee configuring.log
	cd $(TOR_DIR) && make -j $(NUM_CORES) 2>&1 | tee build.log
	cd $(TOR_DIR) && make install
	touch $(STAMP_DIR)/build-tor

+64 −26
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ BUILD_NUM=3
PLATFORM=Windows

## Location of required libraries
MING=/mingw/bin
MING=/c/mingw/bin
QT_LIB=/c/Qt/$(QT_VER)/bin
OPENSSL_LIB=$(COMPILED_BINS)
WIX_LIB="$(MOZBUILD_DIR)/wix-351728"
@@ -31,7 +31,7 @@ PIDGIN=$(BUILD_DIR)/PidginPortable-$(PIDGIN_VER)
## Location of utility applications
PWD:=$(shell pwd)
PYTHON=$(MOZBUILD_DIR)/python/python.exe
PYMAKE=$(PYMAKE_DIR)/make.py
PYMAKE=$(FIREFOX_DIR)/build/pymake/make.py
SEVENZIP="$(MOZBUILD_DIR)/7zip/7z.exe"
WGET=wget
VIRUSSCAN=$(PYTHON) $(PWD)/virus-scan.py
@@ -50,7 +50,7 @@ FETCH_DIR=$(PWD)/build-alpha-windows
BUILD_DIR=$(FETCH_DIR)/build
## Location of directory for prefix/destdir/compiles/etc
BUILT_DIR=$(BUILD_DIR)/built
TBB_FINAL=$(BUILT_DIR)/tbbwin-alpha-dist
TBB_FINAL=$(BUILT_DIR)/tbbwin-dist

## Include versions (must happen after variable definitions above
include $(PWD)/versions.mk
@@ -135,7 +135,7 @@ DEST="Generic Bundle"
NAME="Tor Browser"

## Where shall we put the finished files for distribution?
DISTDIR=tbbwin-alpha-dist
DISTDIR=tbbwin-dist

## Version and name of the compressed bundle (also used for source)
VERSION=$(RELEASE_VER)-$(BUILD_NUM)
@@ -280,14 +280,36 @@ endif

## Configure Firefox, FirefoxPortable, Vidalia, and Tor
configure-apps:

	mkdir -p $(DEST)/FirefoxPortable/Data/profile
	mkdir -p $(DEST)/FirefoxPortable/App/DefaultData/profile
	## Configure Firefox preferences
	cp config/prefs.js $(DEST)/FirefoxPortable/App/DefaultData/profile/prefs.js
	cp config/prefs.js $(DEST)/FirefoxPortable/Data/profile/prefs.js
	## Configure Firefox bookmarks
	cp config/bookmarks.html $(DEST)/FirefoxPortable/App/DefaultData/profile/

	## Override Firefox extension preferences
	mkdir -p $(DEST)/FirefoxPortable/App/DefaultData/profile/preferences
	cp config/extension-overrides.js	\
		$(DEST)/FirefoxPortable/App/DefaultData/profile/preferences/
	mkdir -p $(DEST)/FirefoxPortable/Data/profile/preferences
	cp config/extension-overrides.js	\
		$(DEST)/FirefoxPortable/Data/profile/preferences/

	## Patch Firefox default home page and omnibox
	LC="en-US";															\
	PFILE="omni.ja";													\
	FFDIR=$(DEST)/FirefoxPortable/App/Firefox/;								\
	CHROMEDIR="$$FFDIR/chrome/";									\
	mkdir -p "$$CHROMEDIR/$$LC/locale/branding";							\
	mkdir -p "$$CHROMEDIR/$$LC/locale/browser-region";						\
	cp config/region.properties											\
		"$$CHROMEDIR/$$LC/locale/browser-region/";							\
	sed -e "s/SHPONKA/$$LC/g" config/browserconfig.properties				\
		> "$$CHROMEDIR/$$LC/locale/branding/browserconfig.properties";		\
	(cd "$$FFDIR";													\
		$(SEVENZIP) u -tzip "$$PFILE"										\
                       "chrome/$$LC/locale/branding/browserconfig.properties" \
                       "chrome/$$LC/locale/browser-region/region.properties"); \
	rm -rf "$$CHROMEDIR"

	## Set up alternate launcher
	mv $(DEST)/FirefoxPortable/App/Firefox/firefox.exe $(DEST)/FirefoxPortable/App/Firefox/tbb-firefox.exe

@@ -327,7 +349,7 @@ compressed-bundle_%:

bundle-localized_%.stamp:
	make -f windows.mk copy-files_$* install-extensions install-torbutton install-httpseverywhere install-noscript \
	patch-vidalia-language patch-firefox-language patch-pidgin-language write-tbb-version
	patch-vidalia-language patch-firefox-config
	touch $(STAMP_DIR)/bundle-localized_$*.stamp

bundle-localized: bundle-localized_$(LANGCODE).stamp
@@ -347,16 +369,30 @@ DUMMYPROFILE=$(BUNDLE)/FirefoxPortable/App/DummyProfile
install-extensions: $(filter-out langpack_en-US.xpi,langpack_$(LANGCODE).xpi)
	## Make a dummy profile to stop Firefox creating some large files
	cp -r $(BUNDLE)/FirefoxPortable/App/DefaultData $(DUMMYPROFILE)
	mkdir -p $(BUNDLE)/FirefoxPortable/Data/profile/extensions
ifneq ($(LANGCODE), en-US)
	mv langpack_$(LANGCODE).xpi $(BUNDLE)/FirefoxPortable/Data/profile/extensions/langpack-$(LANGCODE)@firefox.mozilla.org.xpi
	## Patch Firefox default home page within language pack
	LC=$(LANG);															\
	PFILE=langpack-$(LANGCODE)@firefox.mozilla.org.xpi;					\
	FFDIR=$(BUNDLE)/FirefoxPortable/Data/profile/extensions/;				\
	CHROMEDIR="$$FFDIR/chrome/";								\
	mkdir -p "$$CHROMEDIR/$$LC/locale/branding";						\
	mkdir -p "$$CHROMEDIR/$$LC/locale/browser-region";					\
	cp config/region.properties								\
		"$$CHROMEDIR/$$LC/locale/browser-region/";					\
	sed -e "s/SHPONKA/$$LC/g" config/browserconfig.properties				\
		> "$$CHROMEDIR/$$LC/locale/branding/browserconfig.properties";		\
	(cd "$$FFDIR";											\
		$(SEVENZIP) u -tzip "$$PFILE"								\
                       "chrome/$$LC/locale/branding/browserconfig.properties" \
                       "chrome/$$LC/locale/browser-region/region.properties"); \
	rm -rf "$$CHROMEDIR"
endif
	rm -fr $(DUMMYPROFILE)

install-torbutton: $(SEVENZIP) torbutton.xpi
	mkdir -p $(BUNDLE)/FirefoxPortable/Data/profile/extensions/{e0204bd5-9d31-402b-a99d-a6aa8ffebdca}
	cp torbutton.xpi $(BUNDLE)/FirefoxPortable/Data/profile/extensions/{e0204bd5-9d31-402b-a99d-a6aa8ffebdca}/torbutton.zip
	(cd $(BUNDLE)/FirefoxPortable/Data/profile/extensions/{e0204bd5-9d31-402b-a99d-a6aa8ffebdca} && $(SEVENZIP) x *.zip && rm *.zip)
	mkdir -p $(BUNDLE)/FirefoxPortable/Data/profile/extensions/
	cp torbutton.xpi $(BUNDLE)/FirefoxPortable/Data/profile/extensions/torbutton@torproject.org.xpi

install-httpseverywhere: $(SEVENZIP) httpseverywhere.xpi
	mkdir -p $(BUNDLE)/FirefoxPortable/Data/profile/extensions/https-everywhere@eff.org
@@ -383,14 +419,19 @@ ifeq ($(USE_PIDGIN),1)
				   $(BUNDLE)/PidginPortable/App/Pidgin/Gtk/share/locale
endif

patch-firefox-language:
	## Patch Firefox prefs.js
	./patch-firefox-language.sh $(BUNDLE)/FirefoxPortable/App/DefaultData/profile/prefs.js $(LANGCODE)
	./patch-firefox-language.sh $(BUNDLE)/FirefoxPortable/Data/profile/prefs.js $(LANGCODE)
	sed -i -e "s/SHPONKA/$(LANGCODE)/g" $(BUNDLE)/FirefoxPortable/Data/profile/prefs.js
	sed -i -e "s/SHPONKA/$(LANGCODE)/g" $(BUNDLE)/FirefoxPortable/App/DefaultData/profile/prefs.js
	chmod u+w $(BUNDLE)/FirefoxPortable/Data/profile/prefs.js
	chmod u+w $(BUNDLE)/FirefoxPortable/App/DefaultData/profile/prefs.js
patch-firefox-config:
	## Patch Firefox default preferences by adding a patched #tor.js file:
	PREFSDIR=$(BUNDLE)/FirefoxPortable/App/Firefox/defaults/preferences;	\
	mkdir -p "$$PREFSDIR";									\
	sed -e "s/SHPONKA/$(LANGCODE)/g" config/pound_tor.js					\
		> "$$PREFSDIR/#tor.js";								\
	./patch-firefox-language.sh "$$PREFSDIR/#tor.js" $(LANGCODE) -e;		\
	printf 'pref("torbrowser.version", "%s");\n'						\
			"$(RELEASE_VER)-$(BUILD_NUM)-$(PLATFORM)"				\
			>> "$$PREFSDIR/#tor.js";						\
	(cd $(BUNDLE)/FirefoxPortable/App/Firefox;						\
			$(SEVENZIP) u -tzip omni.ja defaults/preferences/#tor.js);		\
	rm -rf "$$PREFSDIR"

###
### Utilities
@@ -398,15 +439,12 @@ patch-firefox-language:

## Copy Firefox preferences from a run of FirefoxPortable to be the default
apply-prefs:
	cp $(DEST)/FirefoxPortable/Data/profile/prefs.js config
	sed -e "s/^user_//" $(BUNDLE)/FirefoxPortable/Data/profile/prefs.js		\
		> config/pound_tor.js

print-version:
	@echo $(RELEASE_VER)-$(BUILD_NUM)

write-tbb-version:
	printf 'user_pref("torbrowser.version", "%s");\n' "$(RELEASE_VER)-$(BUILD_NUM)-$(PLATFORM)" >> $(BUNDLE)/FirefoxPortable/App/DefaultData/profile/prefs.js
	printf 'user_pref("torbrowser.version", "%s");\n' "$(RELEASE_VER)-$(BUILD_NUM)-$(PLATFORM)" >> $(BUNDLE)/FirefoxPortable/Data/profile/prefs.js

## Tag the release
releasetag:
	git tag -s torbrowser-$(VERSION) -m "tagging $(VERSION)"
+16 −16

File changed.

Contains only whitespace changes.