# vim:set ts=8 sw=8 sts=8 noet:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# For changes here, also consider ./updater-xpcshell/Makefile.in

# In a compile build, the moz.build stanzas produce the binary named
# `UpdateSettings`; we just need it in the correct place.
#
# In an artifact build, we copy upstream artifacts from
# `dist/update_framework_artifacts/UpdateSettings-localbuild.framework`

include $(topsrcdir)/config/rules.mk

ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
export::
	$(call py_action,preprocessor dist/bin/Info.plist,-Fsubstitution -DMOZ_MACBUNDLE_ID='$(MOZ_MACBUNDLE_ID)' -DMOZ_SMAUTHORIZEDCLIENTS_REQUIREMENTS='$(MOZ_SMAUTHORIZEDCLIENTS_REQUIREMENTS)' $(srcdir)/macbuild/Contents/Info.plist.in -o $(DIST)/bin/Info.plist)
libs::
	$(NSINSTALL) -D $(DIST)/bin/updater.app
	rsync -a -C --exclude '*.in' $(srcdir)/macbuild/Contents $(DIST)/bin/updater.app
	rsync -a -C $(DIST)/bin/Info.plist $(DIST)/bin/updater.app/Contents
	$(call py_action,preprocessor updater.app/Contents/Resources/English.lproj/InfoPlist.strings,-Fsubstitution --output-encoding utf-16 -DAPP_NAME='$(MOZ_APP_DISPLAYNAME)' $(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in -o $(DIST)/bin/updater.app/Contents/Resources/English.lproj/InfoPlist.strings)
	$(NSINSTALL) -D $(DIST)/bin/updater.app/Contents/MacOS
	$(NSINSTALL) $(DIST)/bin/org.mozilla.updater $(DIST)/bin/updater.app/Contents/MacOS
	$(NSINSTALL) -D $(DIST)/bin/updater.app/Contents/Frameworks
ifneq (,$(COMPILE_ENVIRONMENT))
	$(NSINSTALL) $(DIST)/bin/UpdateSettings $(DIST)/bin/updater.app/Contents/Frameworks/UpdateSettings.framework
endif # COMPILE_ENVIRONMENT
ifneq (,$(MOZ_ARTIFACT_BUILDS))
	$(NSINSTALL) $(DIST)/update_framework_artifacts/UpdateSettings-localbuild.framework/UpdateSettings $(DIST)/bin/updater.app/Contents/Frameworks/UpdateSettings.framework
endif # MOZ_ARTIFACT_BUILDS
	$(NSINSTALL) $(srcdir)/macos-frameworks/UpdateSettings/Info.plist $(DIST)/bin/updater.app/Contents/Frameworks/UpdateSettings.framework/Resources
endif
