diff options
author | Joerg Koenig <Joerg.Koenig@techsat.com> | 2019-05-11 20:13:43 (GMT) |
---|---|---|
committer | Joerg Koenig <Joerg.Koenig@techsat.com> | 2019-05-11 20:13:43 (GMT) |
commit | 66ad746c9bb216e9022c7f3d311829799a7243c1 (patch) | |
tree | ac4b669bf16b586bc35e36fb1a03c430402588fa /Makefile | |
parent | a03664703b04cf1a777e4d5305efc6aa682fea12 (diff) | |
download | Qt-66ad746c9bb216e9022c7f3d311829799a7243c1.zip Qt-66ad746c9bb216e9022c7f3d311829799a7243c1.tar.gz Qt-66ad746c9bb216e9022c7f3d311829799a7243c1.tar.bz2 |
New Build env
Change-Id: Id076bd08344bbcf3831dc8cc3d07cf1a69fa4c9f
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 167 |
1 files changed, 119 insertions, 48 deletions
@@ -2,77 +2,148 @@ TOP = $(shell readlink -f .) ARCH = x86-linux64 +JOBS = 2 + LOCAL_BUILD_PATH = $(TOP)/build.$(ARCH) LOCAL_INST_PATH = $(TOP)/install.$(ARCH) -VERSION=5.9.1 +VERSION_SHORT=5.12 +VERSION_RELEASE=3 +VERSION=$(VERSION_SHORT).$(VERSION_RELEASE) + +SSL_VERSION=1.0.2r +SSL_ARCHIVE=openssl-$(SSL_VERSION).tar.gz + PACKAGE_NAME = qt-$(VERSION) -GCC_PATH = /opt/gcc-suite/1.0.0/x86-linux64/gcc-7.1.0 -CROSS_PATH = /opt/gcc-suite/1.0.0/x86-linux64/mingw64 -CROSS_PREFIX = x86_64-w64-mingw32 -CC = "gcc -m64 -static-libgcc -nodefaultlibs" -CXX = "g++ -m64 -static-libgcc -static-libstdc++ -nodefaultlibs" +GCC_PATH = /opt/dev-tools/gcc/8.2.0/x86-linux64/gcc-8.2.0 + +CC = gcc-7 # "-m64 -static-libgcc -nodefaultlibs" +CXX = g++-7 #"-m64 -static-libgcc -static-libstdc++ -nodefaultlibs" +CC_LDFLAGS = "-m64 -static-libgcc -nodefaultlibs" +CXX_LDFLAGS_ = "-m64 -static-libgcc -static-libstdc++ -nodefaultlibs" +QT_STATIC_FLAGS = -static -static-runtime -no-shared all: download qt -qt: qt.$(ARCH) +qt: ssl.$(ARCH) qt.$(ARCH) download: $(MAKE) -C $(TOP)/SOURCE -qt.x86-linux64: - rm -Rf $(LOCAL_BUILD_PATH) +ssl.$(ARCH): + # static + rm -Rf $(LOCAL_BUILD_PATH)/openssl-$(SSL_VERSION) + mkdir -p $(LOCAL_BUILD_PATH)/ + cd $(LOCAL_BUILD_PATH) && \ + tar -xzf $(TOP)/SOURCE/$(SSL_ARCHIVE) + cd $(LOCAL_BUILD_PATH)/openssl-$(SSL_VERSION) && \ + export CFLAGS= && \ + export LDFLAGS=$(CC_LDFLAGS) && \ + ./Configure --prefix=$(LOCAL_INST_PATH)/openssl linux-generic64 && \ + pwd && \ + make clean && \ + make -j$(JOBS) && \ + make install + # shared + rm -Rf $(LOCAL_BUILD_PATH)/openssl-$(SSL_VERSION) + mkdir -p $(LOCAL_BUILD_PATH)/ + cd $(LOCAL_BUILD_PATH) && \ + tar -xzf $(TOP)/SOURCE/$(SSL_ARCHIVE) + cd $(LOCAL_BUILD_PATH)/openssl-$(SSL_VERSION) && \ + export CFLAGS=-fpic && \ + export LDFLAGS=$(CC_LDFLAGS) && \ + ./Configure shared --prefix=$(LOCAL_INST_PATH)/openssl linux-generic64 && \ + pwd && \ + make clean && \ + make -j$(JOBS) && \ + make install + +qt.x86-linux64: qt.x86-linux64.shared qt.x86-linux64.static merge + +qt.x86-linux64.shared: + # shared mkdir -p $(LOCAL_BUILD_PATH) + rm -Rf $(LOCAL_BUILD_PATH)/qt-everywhere-src-$(VERSION) cd $(LOCAL_BUILD_PATH) && \ - unzip $(TOP)/SOURCE/qt-everywhere-opensource-src-$(VERSION).zip - cd $(LOCAL_BUILD_PATH)/qt-everywhere-opensource-src-$(VERSION) && \ - export PATH=$(GCC_PATH)/bin/:$(PATH) && \ - export LD_LIBRARY_PATH=$(GCC_PATH)/lib64 && \ + tar -xJf $(TOP)/SOURCE/qt-everywhere-src-$(VERSION).tar.xz + cd $(LOCAL_BUILD_PATH)/qt-everywhere-src-$(VERSION) && \ gcc --version && \ - ./configure \ - -prefix $(LOCAL_INST_PATH)/qt-$(VERSION) \ + rm -f config.cache && \ + export LDFLAGS=$(CXX_LDFLAGS) && \ + bash ./configure \ + -recheck-all \ + -prefix $(LOCAL_INST_PATH)/qt-$(VERSION)-shared \ + -release \ -opensource \ - -confirm-license \ - -optimized-tools \ -strip \ - -shared \ - -release \ - && \ - make -j4 + -ssl \ + -openssl \ + -I$(LOCAL_INST_PATH)/openssl/include \ + -L$(LOCAL_INST_PATH)/openssl/lib \ + -nomake examples \ + -nomake tests \ + -skip qtwebengine \ + -qt-zlib \ + -qt-libjpeg \ + -qt-libpng \ + -qt-pcre \ + -qt-xcb \ + -gtk \ + -silent \ + -fontconfig \ + -system-freetype \ + -confirm-license && \ + make -j$(JOBS) CC=$(CC) CXX=$(CXX) && \ + make -j$(JOBS) install + cd $(LOCAL_INST_PATH)/qt-$(VERSION)-shared && \ + tar -zcf $(TOP)/qt-$(VERSION)-shared-$(ARCH).tgz ./ -qt.x86-mingw64: - rm -Rf $(LOCAL_BUILD_PATH) +qt.x86-linux64.static: + # static mkdir -p $(LOCAL_BUILD_PATH) + rm -Rf $(LOCAL_BUILD_PATH)/qt-everywhere-src-$(VERSION) cd $(LOCAL_BUILD_PATH) && \ - unzip $(TOP)/SOURCE/qt-everywhere-opensource-src-$(VERSION).zip - cp -f $(TOP)/SOURCE/win32-g++.qmake.conf \ - $(LOCAL_BUILD_PATH)/qt-everywhere-opensource-src-$(VERSION)/qtbase/mkspecs/win32-g++/qmake.conf - cd $(LOCAL_BUILD_PATH)/qt-everywhere-opensource-src-$(VERSION) && \ - export PATH=$(GCC_PATH)/bin/:$(PATH) && \ + tar -xJf $(TOP)/SOURCE/qt-everywhere-src-$(VERSION).tar.xz + cd $(LOCAL_BUILD_PATH)/qt-everywhere-src-$(VERSION) && \ gcc --version && \ - $(CROSS_PATH)/bin/$(CROSS_PREFIX)-gcc --version && \ - ./configure \ - -prefix $(LOCAL_INST_PATH)/qt-$(VERSION) \ + rm -f config.cache && \ + export LDFLAGS=$(CXX_LDFLAGS) && \ + bash ./configure \ + -recheck-all \ + -prefix $(LOCAL_INST_PATH)/qt-$(VERSION)-static \ + -static \ -release \ -opensource \ - -confirm-license \ - -optimized-tools \ -strip \ - -shared \ - -no-compile-examples \ - -platform linux-g++-64 \ - -xplatform win32-g++ \ - -device-option CROSS_COMPILE=$(CROSS_PATH)/bin/$(CROSS_PREFIX)- \ - -device-option CROSS_CXX_LINK_FLAGS="-static-libgcc -static-libstdc++" \ - -device-option CROSS_CC_LINK_FLAGS="-static-libgcc" \ - -skip qtactiveqt \ - -skip qtlocation \ - -skip qtwinextras \ + -ssl \ + -openssl \ + -I$(LOCAL_INST_PATH)/openssl/include \ + -L$(LOCAL_INST_PATH)/opensll/lib \ + -nomake examples \ -nomake tests \ - -opengl desktop \ - && \ - make && \ - make install - + -skip qtwebengine \ + -qt-xcb \ + -qt-zlib \ + -qt-libjpeg \ + -qt-libpng \ + -qt-pcre \ + -gtk \ + -silent \ + -fontconfig \ + -system-freetype \ + -confirm-license && \ + make -j$(JOBS) CC=$(CC) CXX=$(CXX) LFLAGS=$(CXX_LDFLAGS) && \ + make -j$(JOBS) install + cd $(LOCAL_INST_PATH)/qt-$(VERSION)-static && \ + tar -zcf $(TOP)/qt-$(VERSION)-static-$(ARCH).tgz ./ +merge: + cp -nr $(LOCAL_INST_PATH)/qt-$(VERSION)-static/lib/* $(LOCAL_INST_PATH)/qt-$(VERSION)-shared/lib/ + cp -nr $(LOCAL_INST_PATH)/qt-$(VERSION)-static/plugins/* $(LOCAL_INST_PATH)/qt-$(VERSION)-shared/plugins/ + cp -nr $(LOCAL_INST_PATH)/qt-$(VERSION)-static/qml/* $(LOCAL_INST_PATH)/qt-$(VERSION)-shared/qml/ + cd $(LOCAL_INST_PATH)/qt-$(VERSION)-shared && \ + tar -zcf $(TOP)/qt-$(VERSION)-$(ARCH).tgz ./ +clean: + rm -Rf build.$(ARCH) + rm -Rf install.$(ARCH) |