X-Git-Url: https://git.proxmox.com/?p=proxmox-i18n.git;a=blobdiff_plain;f=Makefile;h=442081fc7ba3bedaf3b416410a07c038e6eb6216;hp=8a7068a97d9a7b6e1fe1898f20e12de874eeecd7;hb=HEAD;hpb=82cf3f703ce71acdfafe6f4e2450bb01562cce89 diff --git a/Makefile b/Makefile index 8a7068a..dd9cfe1 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,47 @@ include /usr/share/dpkg/pkg-info.mk -LINGUAS=de it fr ja es sv ru tr zh_CN zh_TW da ca pl sl nb nn pt_BR eu fa gl hu he ar nl kr - -PVE_I18N_DEB=pve-i18n_${DEB_VERSION_UPSTREAM_REVISION}_all.deb -PMG_I18N_DEB=pmg-i18n_${DEB_VERSION_UPSTREAM_REVISION}_all.deb -PBS_I18N_DEB=pbs-i18n_${DEB_VERSION_UPSTREAM_REVISION}_all.deb - -DEBS=${PMG_I18N_DEB} $(PVE_I18N_DEB) $(PBS_I18N_DEB) - -PMGLOCALEDIR=${DESTDIR}/usr/share/pmg-i18n -PVELOCALEDIR=${DESTDIR}/usr/share/pve-i18n -PBSLOCALEDIR=${DESTDIR}/usr/share/pbs-i18n +LINGUAS=\ + ar \ + ca \ + da \ + de \ + es \ + eu \ + fa \ + fr \ + gl \ + he \ + hr \ + hu \ + it \ + ja \ + ka \ + ko \ + nb \ + nl \ + nn \ + pl \ + pt_BR \ + ru \ + sl \ + sv \ + tr \ + ukr \ + zh_CN \ + zh_TW \ + +BUILDDIR ?= $(DEB_SOURCE)-$(DEB_VERSION) + +DSC=$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM_REVISION).dsc +PVE_I18N_DEB=pve-i18n_$(DEB_VERSION)_all.deb +PMG_I18N_DEB=pmg-i18n_$(DEB_VERSION)_all.deb +PBS_I18N_DEB=pbs-i18n_$(DEB_VERSION)_all.deb + +DEBS=$(PMG_I18N_DEB) $(PVE_I18N_DEB) $(PBS_I18N_DEB) + +PMGLOCALEDIR=$(DESTDIR)/usr/share/pmg-i18n +PVELOCALEDIR=$(DESTDIR)/usr/share/pve-i18n +PBSLOCALEDIR=$(DESTDIR)/usr/share/pbs-i18n PMG_LANG_FILES=$(patsubst %, pmg-lang-%.js, $(LINGUAS)) PVE_LANG_FILES=$(patsubst %, pve-lang-%.js, $(LINGUAS)) @@ -18,38 +49,54 @@ PBS_LANG_FILES=$(patsubst %, pbs-lang-%.js, $(LINGUAS)) all: +$(BUILDDIR): submodule + rm -rf $@ $@.tmp + rsync -a * $@.tmp + mv $@.tmp $@ + .PHONY: deb deb: $(DEBS) -$(PMG_I18N_DEB): $(PVE_I18N_DEB) -$(PBS_I18N_DEB): $(PVE_I18N_DEB) -$(PVE_I18N_DEB): | submodule - rm -rf dest - rsync -a * dest - cd dest; dpkg-buildpackage -b -us -uc +$(DEBS): build-debs + +build-debs: $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -b -us -uc lintian $(DEBS) + touch "$@" + +sbuild: $(DSC) + sbuild $(DSC) + +.PHONY: dsc +dsc: $(DSC) +$(DSC): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d + lintian $(DSC) -.PHONY: submodule submodule: - test -f "pmg-gui/Makefile" || git submodule update --init + test -f pmg-gui/Makefile -a -f proxmox-backup/Makefile -a -f pve-manager/Makefile \ + || git submodule update --init .PHONY: install -install: ${PMG_LANG_FILES} ${PVE_LANG_FILES} ${PBS_LANG_FILES} - install -d ${PMGLOCALEDIR} - install -m 0644 ${PMG_LANG_FILES} ${PMGLOCALEDIR} - install -d ${PVELOCALEDIR} - install -m 0644 ${PVE_LANG_FILES} ${PVELOCALEDIR} - install -d ${PBSLOCALEDIR} - install -m 0644 ${PBS_LANG_FILES} ${PBSLOCALEDIR} - +install: $(PMG_LANG_FILES) $(PVE_LANG_FILES) $(PBS_LANG_FILES) + install -d $(PMGLOCALEDIR) + install -m 0644 $(PMG_LANG_FILES) $(PMGLOCALEDIR) + install -d $(PVELOCALEDIR) + install -m 0644 $(PVE_LANG_FILES) $(PVELOCALEDIR) + install -d $(PBSLOCALEDIR) + install -m 0644 $(PBS_LANG_FILES) $(PBSLOCALEDIR) +# compat symlinks for kr -> ko correction. + ln -s pmg-lang-ko.js $(PMGLOCALEDIR)/pmg-lang-kr.js + ln -s pve-lang-ko.js $(PVELOCALEDIR)/pve-lang-kr.js + ln -s pbs-lang-ko.js $(PBSLOCALEDIR)/pbs-lang-kr.js pmg-lang-%.js: %.po - ./po2js.pl -t pmg -v "${VERSION}-${PKGREL}" -o pmg-lang-$*.js $? + ./po2js.pl -t pmg -v "$(DEB_VERSION)" -o pmg-lang-$*.js $? pve-lang-%.js: %.po - ./po2js.pl -t pve -v "${VERSION}-${PKGREL}" -o pve-lang-$*.js $? + ./po2js.pl -t pve -v "$(DEB_VERSION)" -o pve-lang-$*.js $? pbs-lang-%.js: %.po - ./po2js.pl -t pbs -v "${VERSION}-${PKGREL}" -o pbs-lang-$*.js $? + ./po2js.pl -t pbs -v "$(DEB_VERSION)" -o pbs-lang-$*.js $? # parameter 1 is the name # parameter 2 is the directory @@ -57,17 +104,22 @@ define potupdate ./jsgettext.pl -p "$(1) $(shell cd $(2);git rev-parse HEAD)" -o $(1).pot $(2) endef -.PHONY: update update_pot +.PHONY: update update_pot do_update update_pot: submodule - git submodule foreach 'git pull --ff-only origin master' $(call potupdate,proxmox-widget-toolkit,proxmox-widget-toolkit/) $(call potupdate,pve-manager,pve-manager/www/manager6/) $(call potupdate,proxmox-mailgateway,pmg-gui/js/) $(call potupdate,proxmox-backup,proxmox-backup/www/) -update: | update_pot messages.pot +do_update: + $(MAKE) update_pot + $(MAKE) messages.pot for i in $(LINGUAS); do echo -n "$$i: "; msgmerge -s -v $$i.po messages.pot >$$i.po.tmp && mv $$i.po.tmp $$i.po; done; +update: + git submodule foreach 'git pull --ff-only origin master' + $(MAKE) do_update + stats: @for i in $(LINGUAS); do echo -n "$$i: "; msgfmt --statistics -o /dev/null $$i.po; done @@ -83,13 +135,15 @@ distclean: clean .PHONY: clean clean: - find . -name '*~' -exec rm {} ';' - rm -rf dest *.po.tmp *.js.tmp *.deb *.buildinfo *.changes *.js messages.pot - -.PHONY: upload-pve upload-pmg upload-pbs -upload-pve: ${PVE_I18N_DEB} - tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pve --dist buster -upload-pmg: ${PMG_I18N_DEB} - tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pmg --dist buster -upload-pbs: ${PBS_I18N_DEB} - tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pbs --dist buster + rm -rf $(DEB_SOURCE)-[0-9]*/ *.po.tmp *.js.tmp *.deb *.dsc *.tar.* *.build *.buildinfo *.changes *.js messages.pot + +.PHONY: upload-pve upload-pmg upload-pbs upload +upload-%: UPLOAD_DIST ?= $(DEB_DISTRIBUTION) +upload-pve: $(PVE_I18N_DEB) + tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST) +upload-pmg: $(PMG_I18N_DEB) + tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pmg --dist $(UPLOAD_DIST) +upload-pbs: $(PBS_I18N_DEB) + tar cf - $^|ssh -X repoman@repo.proxmox.com -- upload --product pbs --dist $(UPLOAD_DIST) + +upload: upload-pve upload-pmg upload-pbs