diff options
author | Cory Fields <cory-nospam-@coryfields.com> | 2014-06-10 15:43:02 -0400 |
---|---|---|
committer | Cory Fields <cory-nospam-@coryfields.com> | 2014-06-10 15:53:21 -0400 |
commit | 38e324af8693eb0c3d4bf22df9cbb73667f195ce (patch) | |
tree | 80073ad077da4771178fa276a79b358507d0c4bc | |
parent | 3d7399cb171c2468b81a9179cb04358c56b4c7c4 (diff) |
build: qt: split locale resources. Fixes non-deterministic distcheck
The rcc tool is quirky and only honors files in the same directory as the qrc.
When doing an out-of-tree build (as 'make distcheck' does), the generated
translation files end up in a different path, so rcc can't find them.
Split them up so that rcc is run twice: once for static source files and once
for generated files.
-rw-r--r-- | src/Makefile.qt.include | 18 | ||||
-rw-r--r-- | src/qt/bitcoin.cpp | 1 | ||||
-rw-r--r-- | src/qt/bitcoin.qrc | 73 | ||||
-rw-r--r-- | src/qt/bitcoin_locale.qrc | 75 |
4 files changed, 89 insertions, 78 deletions
diff --git a/src/Makefile.qt.include b/src/Makefile.qt.include index 749b976c44..72c7486258 100644 --- a/src/Makefile.qt.include +++ b/src/Makefile.qt.include @@ -152,6 +152,8 @@ QT_MOC = \ QT_QRC_CPP = qt/qrc_bitcoin.cpp QT_QRC = qt/bitcoin.qrc +QT_QRC_LOCALE_CPP = qt/qrc_bitcoin_locale.cpp +QT_QRC_LOCALE = qt/bitcoin_locale.qrc PROTOBUF_CC = qt/paymentrequest.pb.cc PROTOBUF_H = qt/paymentrequest.pb.h @@ -321,10 +323,10 @@ qt_libbitcoinqt_a_CPPFLAGS = $(BITCOIN_INCLUDES) $(BITCOIN_QT_INCLUDES) \ $(QT_INCLUDES) $(QT_DBUS_INCLUDES) $(PROTOBUF_CFLAGS) $(QR_CFLAGS) qt_libbitcoinqt_a_SOURCES = $(BITCOIN_QT_CPP) $(BITCOIN_QT_H) $(QT_FORMS_UI) \ - $(QT_QRC) $(QT_TS) $(PROTOBUF_PROTO) $(RES_ICONS) $(RES_IMAGES) $(RES_MOVIES) + $(QT_QRC) $(QT_QRC_LOCALE) $(QT_TS) $(PROTOBUF_PROTO) $(RES_ICONS) $(RES_IMAGES) $(RES_MOVIES) nodist_qt_libbitcoinqt_a_SOURCES = $(QT_MOC_CPP) $(QT_MOC) $(PROTOBUF_CC) \ - $(PROTOBUF_H) $(QT_QRC_CPP) + $(PROTOBUF_H) $(QT_QRC_CPP) $(QT_QRC_LOCALE_CPP) # forms/foo.h -> forms/ui_foo.h QT_FORMS_H=$(join $(dir $(QT_FORMS_UI)),$(addprefix ui_, $(notdir $(QT_FORMS_UI:.ui=.h)))) @@ -371,10 +373,16 @@ translate: qt/bitcoinstrings.cpp $(QT_FORMS_UI) $(QT_FORMS_UI) $(BITCOIN_QT_CPP) @test -n $(LUPDATE) || echo "lupdate is required for updating translations" $(AM_V_GEN) QT_SELECT=$(QT_SELECT) $(LUPDATE) $^ -locations relative -no-obsolete -ts qt/locale/bitcoin_en.ts -$(QT_QRC_CPP): $(QT_QRC) $(QT_QM) $(QT_FORMS_H) $(RES_ICONS) $(RES_IMAGES) $(RES_MOVIES) $(PROTOBUF_H) +$(QT_QRC_LOCALE_CPP): $(QT_QRC_LOCALE) $(QT_QM) @test -f $(RCC) - $(AM_V_GEN) cd $(srcdir); QT_SELECT=$(QT_SELECT) $(RCC) -name bitcoin $< | \ - $(SED) -e '/^\*\*.*Created:/d' -e '/^\*\*.*by:/d' > $(abs_builddir)/$@ + @test -f $(@D)/$(<F) || cp -f $< $(@D) + $(AM_V_GEN) QT_SELECT=$(QT_SELECT) $(RCC) -name bitcoin_locale $(@D)/$(<F) | \ + $(SED) -e '/^\*\*.*Created:/d' -e '/^\*\*.*by:/d' > $@ + +$(QT_QRC_CPP): $(QT_QRC) $(QT_FORMS_H) $(RES_ICONS) $(RES_IMAGES) $(RES_MOVIES) $(PROTOBUF_H) + @test -f $(RCC) + $(AM_V_GEN) QT_SELECT=$(QT_SELECT) $(RCC) -name bitcoin $< | \ + $(SED) -e '/^\*\*.*Created:/d' -e '/^\*\*.*by:/d' > $@ CLEAN_QT = $(nodist_qt_libbitcoinqt_a_SOURCES) $(QT_QM) $(QT_FORMS_H) qt/*.gcda qt/*.gcno diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 45d7a52889..2be8191eb5 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -475,6 +475,7 @@ int main(int argc, char *argv[]) #endif Q_INIT_RESOURCE(bitcoin); + Q_INIT_RESOURCE(bitcoin_locale); BitcoinApplication app(argc, argv); #if QT_VERSION > 0x050100 // Generate high-dpi pixmaps diff --git a/src/qt/bitcoin.qrc b/src/qt/bitcoin.qrc index e1c739b022..f38200c7f7 100644 --- a/src/qt/bitcoin.qrc +++ b/src/qt/bitcoin.qrc @@ -84,77 +84,4 @@ <file alias="spinner-033">res/movies/spinner-033.png</file> <file alias="spinner-034">res/movies/spinner-034.png</file> </qresource> - <qresource prefix="/translations"> - <file alias="ach">locale/bitcoin_ach.qm</file> - <file alias="af_ZA">locale/bitcoin_af_ZA.qm</file> - <file alias="ar">locale/bitcoin_ar.qm</file> - <file alias="be_BY">locale/bitcoin_be_BY.qm</file> - <file alias="bg">locale/bitcoin_bg.qm</file> - <file alias="bs">locale/bitcoin_bs.qm</file> - <file alias="ca_ES">locale/bitcoin_ca_ES.qm</file> - <file alias="ca">locale/bitcoin_ca.qm</file> - <file alias="ca@valencia">locale/bitcoin_ca@valencia.qm</file> - <file alias="cmn">locale/bitcoin_cmn.qm</file> - <file alias="cs">locale/bitcoin_cs.qm</file> - <file alias="cy">locale/bitcoin_cy.qm</file> - <file alias="da">locale/bitcoin_da.qm</file> - <file alias="de">locale/bitcoin_de.qm</file> - <file alias="el_GR">locale/bitcoin_el_GR.qm</file> - <file alias="en">locale/bitcoin_en.qm</file> - <file alias="eo">locale/bitcoin_eo.qm</file> - <file alias="es_CL">locale/bitcoin_es_CL.qm</file> - <file alias="es_DO">locale/bitcoin_es_DO.qm</file> - <file alias="es_MX">locale/bitcoin_es_MX.qm</file> - <file alias="es">locale/bitcoin_es.qm</file> - <file alias="es_UY">locale/bitcoin_es_UY.qm</file> - <file alias="et">locale/bitcoin_et.qm</file> - <file alias="eu_ES">locale/bitcoin_eu_ES.qm</file> - <file alias="fa_IR">locale/bitcoin_fa_IR.qm</file> - <file alias="fa">locale/bitcoin_fa.qm</file> - <file alias="fi">locale/bitcoin_fi.qm</file> - <file alias="fr_CA">locale/bitcoin_fr_CA.qm</file> - <file alias="fr">locale/bitcoin_fr.qm</file> - <file alias="gl">locale/bitcoin_gl.qm</file> - <file alias="gu_IN">locale/bitcoin_gu_IN.qm</file> - <file alias="he">locale/bitcoin_he.qm</file> - <file alias="hi_IN">locale/bitcoin_hi_IN.qm</file> - <file alias="hr">locale/bitcoin_hr.qm</file> - <file alias="hu">locale/bitcoin_hu.qm</file> - <file alias="id_ID">locale/bitcoin_id_ID.qm</file> - <file alias="it">locale/bitcoin_it.qm</file> - <file alias="ja">locale/bitcoin_ja.qm</file> - <file alias="ka">locale/bitcoin_ka.qm</file> - <file alias="kk_KZ">locale/bitcoin_kk_KZ.qm</file> - <file alias="ko_KR">locale/bitcoin_ko_KR.qm</file> - <file alias="ky">locale/bitcoin_ky.qm</file> - <file alias="la">locale/bitcoin_la.qm</file> - <file alias="lt">locale/bitcoin_lt.qm</file> - <file alias="lv_LV">locale/bitcoin_lv_LV.qm</file> - <file alias="mn">locale/bitcoin_mn.qm</file> - <file alias="ms_MY">locale/bitcoin_ms_MY.qm</file> - <file alias="nb">locale/bitcoin_nb.qm</file> - <file alias="nl">locale/bitcoin_nl.qm</file> - <file alias="pam">locale/bitcoin_pam.qm</file> - <file alias="pl">locale/bitcoin_pl.qm</file> - <file alias="pt_BR">locale/bitcoin_pt_BR.qm</file> - <file alias="pt_PT">locale/bitcoin_pt_PT.qm</file> - <file alias="ro_RO">locale/bitcoin_ro_RO.qm</file> - <file alias="ru">locale/bitcoin_ru.qm</file> - <file alias="sah">locale/bitcoin_sah.qm</file> - <file alias="sk">locale/bitcoin_sk.qm</file> - <file alias="sl_SI">locale/bitcoin_sl_SI.qm</file> - <file alias="sq">locale/bitcoin_sq.qm</file> - <file alias="sr">locale/bitcoin_sr.qm</file> - <file alias="sv">locale/bitcoin_sv.qm</file> - <file alias="th_TH">locale/bitcoin_th_TH.qm</file> - <file alias="tr">locale/bitcoin_tr.qm</file> - <file alias="uk">locale/bitcoin_uk.qm</file> - <file alias="ur_PK">locale/bitcoin_ur_PK.qm</file> - <file alias="uz@Cyrl">locale/bitcoin_uz@Cyrl.qm</file> - <file alias="vi">locale/bitcoin_vi.qm</file> - <file alias="vi_VN">locale/bitcoin_vi_VN.qm</file> - <file alias="zh_CN">locale/bitcoin_zh_CN.qm</file> - <file alias="zh_HK">locale/bitcoin_zh_HK.qm</file> - <file alias="zh_TW">locale/bitcoin_zh_TW.qm</file> - </qresource> </RCC> diff --git a/src/qt/bitcoin_locale.qrc b/src/qt/bitcoin_locale.qrc new file mode 100644 index 0000000000..b70a107397 --- /dev/null +++ b/src/qt/bitcoin_locale.qrc @@ -0,0 +1,75 @@ +<!DOCTYPE RCC><RCC version="1.0"> + <qresource prefix="/translations"> + <file alias="ach">locale/bitcoin_ach.qm</file> + <file alias="af_ZA">locale/bitcoin_af_ZA.qm</file> + <file alias="ar">locale/bitcoin_ar.qm</file> + <file alias="be_BY">locale/bitcoin_be_BY.qm</file> + <file alias="bg">locale/bitcoin_bg.qm</file> + <file alias="bs">locale/bitcoin_bs.qm</file> + <file alias="ca_ES">locale/bitcoin_ca_ES.qm</file> + <file alias="ca">locale/bitcoin_ca.qm</file> + <file alias="ca@valencia">locale/bitcoin_ca@valencia.qm</file> + <file alias="cmn">locale/bitcoin_cmn.qm</file> + <file alias="cs">locale/bitcoin_cs.qm</file> + <file alias="cy">locale/bitcoin_cy.qm</file> + <file alias="da">locale/bitcoin_da.qm</file> + <file alias="de">locale/bitcoin_de.qm</file> + <file alias="el_GR">locale/bitcoin_el_GR.qm</file> + <file alias="en">locale/bitcoin_en.qm</file> + <file alias="eo">locale/bitcoin_eo.qm</file> + <file alias="es_CL">locale/bitcoin_es_CL.qm</file> + <file alias="es_DO">locale/bitcoin_es_DO.qm</file> + <file alias="es_MX">locale/bitcoin_es_MX.qm</file> + <file alias="es">locale/bitcoin_es.qm</file> + <file alias="es_UY">locale/bitcoin_es_UY.qm</file> + <file alias="et">locale/bitcoin_et.qm</file> + <file alias="eu_ES">locale/bitcoin_eu_ES.qm</file> + <file alias="fa_IR">locale/bitcoin_fa_IR.qm</file> + <file alias="fa">locale/bitcoin_fa.qm</file> + <file alias="fi">locale/bitcoin_fi.qm</file> + <file alias="fr_CA">locale/bitcoin_fr_CA.qm</file> + <file alias="fr">locale/bitcoin_fr.qm</file> + <file alias="gl">locale/bitcoin_gl.qm</file> + <file alias="gu_IN">locale/bitcoin_gu_IN.qm</file> + <file alias="he">locale/bitcoin_he.qm</file> + <file alias="hi_IN">locale/bitcoin_hi_IN.qm</file> + <file alias="hr">locale/bitcoin_hr.qm</file> + <file alias="hu">locale/bitcoin_hu.qm</file> + <file alias="id_ID">locale/bitcoin_id_ID.qm</file> + <file alias="it">locale/bitcoin_it.qm</file> + <file alias="ja">locale/bitcoin_ja.qm</file> + <file alias="ka">locale/bitcoin_ka.qm</file> + <file alias="kk_KZ">locale/bitcoin_kk_KZ.qm</file> + <file alias="ko_KR">locale/bitcoin_ko_KR.qm</file> + <file alias="ky">locale/bitcoin_ky.qm</file> + <file alias="la">locale/bitcoin_la.qm</file> + <file alias="lt">locale/bitcoin_lt.qm</file> + <file alias="lv_LV">locale/bitcoin_lv_LV.qm</file> + <file alias="mn">locale/bitcoin_mn.qm</file> + <file alias="ms_MY">locale/bitcoin_ms_MY.qm</file> + <file alias="nb">locale/bitcoin_nb.qm</file> + <file alias="nl">locale/bitcoin_nl.qm</file> + <file alias="pam">locale/bitcoin_pam.qm</file> + <file alias="pl">locale/bitcoin_pl.qm</file> + <file alias="pt_BR">locale/bitcoin_pt_BR.qm</file> + <file alias="pt_PT">locale/bitcoin_pt_PT.qm</file> + <file alias="ro_RO">locale/bitcoin_ro_RO.qm</file> + <file alias="ru">locale/bitcoin_ru.qm</file> + <file alias="sah">locale/bitcoin_sah.qm</file> + <file alias="sk">locale/bitcoin_sk.qm</file> + <file alias="sl_SI">locale/bitcoin_sl_SI.qm</file> + <file alias="sq">locale/bitcoin_sq.qm</file> + <file alias="sr">locale/bitcoin_sr.qm</file> + <file alias="sv">locale/bitcoin_sv.qm</file> + <file alias="th_TH">locale/bitcoin_th_TH.qm</file> + <file alias="tr">locale/bitcoin_tr.qm</file> + <file alias="uk">locale/bitcoin_uk.qm</file> + <file alias="ur_PK">locale/bitcoin_ur_PK.qm</file> + <file alias="uz@Cyrl">locale/bitcoin_uz@Cyrl.qm</file> + <file alias="vi">locale/bitcoin_vi.qm</file> + <file alias="vi_VN">locale/bitcoin_vi_VN.qm</file> + <file alias="zh_CN">locale/bitcoin_zh_CN.qm</file> + <file alias="zh_HK">locale/bitcoin_zh_HK.qm</file> + <file alias="zh_TW">locale/bitcoin_zh_TW.qm</file> + </qresource> +</RCC> |