qt5: add 'lupdate' and 'lrelease' to host tools

Fixes #1736
This commit is contained in:
Christian Prochaska 2019-09-03 17:01:25 +02:00 committed by Christian Helmuth
parent 6f0c6501f2
commit 1d3bbde70a
3 changed files with 87 additions and 40 deletions

View File

@ -1 +1 @@
7c7b00c66259f14c345536fa92cf0c9a234b0d68
ad5edc78a8ac2c70e5ac3640a607a6bfb7ab83c2

View File

@ -1,10 +1,15 @@
LICENSE := GPL
VERSION := 5.13.0
QT5 := qtbase-everywhere-src-${VERSION}
QTBASE := qtbase-everywhere-src-${VERSION}
QTTOOLS := qttools-everywhere-src-${VERSION}
DOWNLOADS := ${QT5}.archive
DOWNLOADS := ${QTBASE}.archive $(QTTOOLS).archive
URL(${QT5}) := https://download.qt.io/archive/qt/5.13/$(VERSION)/submodules/$(QT5).tar.xz
SHA(${QT5}) := ff6964b3b528cd3b1d21bcf3470006e8e5cbe69591923f982871d886ea0488fe
DIR(${QT5}) := src/lib/qt5-host
URL(${QTBASE}) := https://download.qt.io/archive/qt/5.13/$(VERSION)/submodules/$(QTBASE).tar.xz
SHA(${QTBASE}) := ff6964b3b528cd3b1d21bcf3470006e8e5cbe69591923f982871d886ea0488fe
DIR(${QTBASE}) := src/lib/qtbase
URL(${QTTOOLS}) := https://download.qt.io/archive/qt/5.13/$(VERSION)/submodules/$(QTTOOLS).tar.xz
SHA(${QTTOOLS}) := a7887a618dc6434c2567521990c2a7ca72ca6a8379c1d93c5aa6c1798d7a0819
DIR(${QTTOOLS}) := src/lib/qttools

View File

@ -35,77 +35,119 @@ MAKE_JOBS ?= 4
#
GENODE_DIR ?= $(realpath $(dir $(firstword $(MAKEFILE_LIST)))/..)
CONTRIB_DIR = $(shell $(GENODE_DIR)/tool/ports/current qt5-host)/src/lib/qt5-host
CONTRIB_DIR = $(shell $(GENODE_DIR)/tool/ports/current qt5-host)
QTBASE_DIR = $(CONTRIB_DIR)/src/lib/qtbase
QTTOOLS_DIR = $(CONTRIB_DIR)/src/lib/qttools
TOOL_VERSION = 19.08
BUILD_DIR = $(GENODE_DIR)/build/tool/qt5/$(TOOL_VERSION)
DEFAULT_INSTALL_LOCATION = /usr/local/genode/qt5/$(TOOL_VERSION)
INSTALL_LOCATION ?= $(DEFAULT_INSTALL_LOCATION)
SUDO ?= sudo
$(CONTRIB_DIR)/configure:
$(QTBASE_DIR)/configure:
$(VERBOSE)$(GENODE_DIR)/tool/ports/prepare_port qt5-host
QMAKE = $(BUILD_DIR)/bin/qmake
QMAKE = $(BUILD_DIR)/qtbase/bin/qmake
$(QMAKE): $(CONTRIB_DIR)/configure
$(VERBOSE)mkdir -p $(BUILD_DIR)
$(VERBOSE)cd $(BUILD_DIR) && $(CONTRIB_DIR)/configure -opensource -confirm-license -no-iconv -no-opengl -prefix $(INSTALL_LOCATION)
$(QMAKE): $(QTBASE_DIR)/configure
$(VERBOSE)mkdir -p $(BUILD_DIR)/qtbase
$(VERBOSE)cd $(BUILD_DIR)/qtbase && $(QTBASE_DIR)/configure -opensource -confirm-license -no-iconv -no-opengl -prefix $(INSTALL_LOCATION)
$(BUILD_DIR)/src/Makefile: $(QMAKE)
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/src/Makefile: $(QMAKE)
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(QMAKE) -o Makefile \
$(CONTRIB_DIR)/src/src.pro -qtconf $(BUILD_DIR)/bin/qt.conf -- -opensource
$(QTBASE_DIR)/src/src.pro -qtconf $(BUILD_DIR)/qtbase/bin/qt.conf -- -opensource
$(BUILD_DIR)/bin/moc: $(BUILD_DIR)/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/bin/moc: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-moc
$(BUILD_DIR)/bin/rcc: $(BUILD_DIR)/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/bin/rcc: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-rcc
$(BUILD_DIR)/bin/uic: $(BUILD_DIR)/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/bin/uic: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-uic
$(BUILD_DIR)/bin/qlalr: $(BUILD_DIR)/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/bin/qlalr: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-qlalr
$(BUILD_DIR)/bin/qfloat16-tables: $(BUILD_DIR)/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qtbase/bin/qfloat16-tables: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-qfloat16-tables
build: $(BUILD_DIR)/bin/moc \
$(BUILD_DIR)/bin/rcc \
$(BUILD_DIR)/bin/uic \
$(BUILD_DIR)/bin/qlalr \
$(BUILD_DIR)/bin/qfloat16-tables
$(BUILD_DIR)/qtbase/lib/libQt5Xml.so: $(BUILD_DIR)/qtbase/src/Makefile
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
make -j$(MAKE_JOBS) sub-xml
$(INSTALL_LOCATION)/bin/moc: $(BUILD_DIR)/bin/moc
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(BUILD_DIR)/qttools/Makefile: $(QTTOOLS_DIR)/qttools.pro
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)cd $(dir $@) && $(BUILD_DIR)/qtbase/bin/qmake $<
$(BUILD_DIR)/qttools/src/linguist/lupdate/Makefile: $(QTTOOLS_DIR)/src/linguist/lupdate/lupdate.pro \
$(BUILD_DIR)/qttools/Makefile \
$(BUILD_DIR)/qtbase/lib/libQt5Xml.so
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)cd $(dir $@) && $(BUILD_DIR)/qtbase/bin/qmake $<
$(BUILD_DIR)/qttools/bin/lupdate: $(BUILD_DIR)/qttools/src/linguist/lupdate/Makefile
$(VERBOSE)make -C $(dir $<) -j$(MAKE_JOBS)
$(BUILD_DIR)/qttools/src/linguist/lrelease/Makefile: $(QTTOOLS_DIR)/src/linguist/lrelease/lrelease.pro \
$(BUILD_DIR)/qttools/Makefile \
$(BUILD_DIR)/qtbase/lib/libQt5Xml.so
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)cd $(dir $@) && $(BUILD_DIR)/qtbase/bin/qmake $<
$(BUILD_DIR)/qttools/bin/lrelease: $(BUILD_DIR)/qttools/src/linguist/lrelease/Makefile
$(VERBOSE)make -C $(dir $<) -j$(MAKE_JOBS)
build: $(BUILD_DIR)/qtbase/bin/moc \
$(BUILD_DIR)/qtbase/bin/rcc \
$(BUILD_DIR)/qtbase/bin/uic \
$(BUILD_DIR)/qtbase/bin/qlalr \
$(BUILD_DIR)/qtbase/bin/qfloat16-tables \
$(BUILD_DIR)/qttools/bin/lupdate \
$(BUILD_DIR)/qttools/bin/lrelease
$(INSTALL_LOCATION)/bin/moc: $(BUILD_DIR)/qtbase/bin/moc
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(SUDO) make sub-moc-install_subtargets
$(INSTALL_LOCATION)/bin/rcc: $(BUILD_DIR)/bin/rcc
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(INSTALL_LOCATION)/bin/rcc: $(BUILD_DIR)/qtbase/bin/rcc
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(SUDO) make sub-rcc-install_subtargets
$(INSTALL_LOCATION)/bin/uic: $(BUILD_DIR)/bin/uic
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(INSTALL_LOCATION)/bin/uic: $(BUILD_DIR)/qtbase/bin/uic
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(SUDO) make sub-uic-install_subtargets
$(INSTALL_LOCATION)/bin/qlalr: $(BUILD_DIR)/bin/qlalr
$(VERBOSE)cd $(BUILD_DIR)/src && \
$(INSTALL_LOCATION)/bin/qlalr: $(BUILD_DIR)/qtbase/bin/qlalr
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(SUDO) make sub-qlalr-install_subtargets
$(INSTALL_LOCATION)/bin/qfloat16-tables: $(BUILD_DIR)/bin/qfloat16-tables
$(INSTALL_LOCATION)/bin/qfloat16-tables: $(BUILD_DIR)/qtbase/bin/qfloat16-tables
$(VERBOSE)$(SUDO) cp $< $@
$(INSTALL_LOCATION)/lib/libQt5Xml.so: $(BUILD_DIR)/qtbase/lib/libQt5Xml.so
$(VERBOSE)cd $(BUILD_DIR)/qtbase/src && \
$(SUDO) make sub-xml-install_subtargets
$(INSTALL_LOCATION)/bin/lupdate: $(BUILD_DIR)/qttools/bin/lupdate $(INSTALL_LOCATION)/lib/libQt5Xml.so
$(VERBOSE)$(SUDO) cp $< $@
$(INSTALL_LOCATION)/bin/lrelease: $(BUILD_DIR)/qttools/bin/lrelease $(INSTALL_LOCATION)/lib/libQt5Xml.so
$(VERBOSE)$(SUDO) cp $< $@
install: $(INSTALL_LOCATION)/bin/moc \
$(INSTALL_LOCATION)/bin/rcc \
$(INSTALL_LOCATION)/bin/uic \
$(INSTALL_LOCATION)/bin/qlalr \
$(INSTALL_LOCATION)/bin/qfloat16-tables
$(INSTALL_LOCATION)/bin/qfloat16-tables \
$(INSTALL_LOCATION)/bin/lupdate \
$(INSTALL_LOCATION)/bin/lrelease
ifeq ($(INSTALL_LOCATION),$(DEFAULT_INSTALL_LOCATION))
$(VERBOSE)$(SUDO) ln -snf $(TOOL_VERSION) $(dir $(INSTALL_LOCATION))/current
endif