diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2021-06-11 09:24:32 +0300 |
---|---|---|
committer | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2021-09-10 09:29:55 +0300 |
commit | bfa8427531cf871b7423c252f522b7bfe75c7edd (patch) | |
tree | 6e7cc2011990d04e06cba39bf3bb636ff0adc8bd /installerfw.pri | |
parent | 2767b0c96a0dbe713bc2d1e346d10f6787556d5b (diff) |
Add sources and qmake project files for libarchive
- Included from upstream source archive distribution:
* Sources from "libarchive/" directory, excluding manpages,
tests and build files
* "COPYING" from archive root
* Configuration headers in "3rdparty/libarchive/config/*" are
pre-generated from "build/cmake/config.h.in"
- Add project files for qmake, document usage of library in
"3rdparty/libarchive/qt_attribution.json".
- Update build instructions for Coin.
- Support for libarchive can be enabled or disabled with the
"libarchive" configuration feature.
- Update "Getting Started" page in documentation.
Change-Id: I2c2312600b3c6ede4925625d29953dcebaa48b98
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to 'installerfw.pri')
-rw-r--r-- | installerfw.pri | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/installerfw.pri b/installerfw.pri index 377d07d2c..20d523f40 100644 --- a/installerfw.pri +++ b/installerfw.pri @@ -96,6 +96,7 @@ INCLUDEPATH += \ $$IFW_SOURCE_TREE/src/libs/installer win32:INCLUDEPATH += $$IFW_SOURCE_TREE/src/libs/7zip/win/CPP unix:INCLUDEPATH += $$IFW_SOURCE_TREE/src/libs/7zip/unix/CPP +CONFIG(libarchive): INCLUDEPATH += $$IFW_SOURCE_TREE/src/libs/3rdparty/libarchive LIBS += -L$$IFW_LIB_PATH # The order is important. The linker needs to parse archives in reversed dependency order. @@ -144,8 +145,43 @@ DEFINES += IFW_REPOSITORY_FORMAT_VERSION=$$IFW_REPOSITORY_FORMAT_VERSION LIBS += -l7z win32-g++*: LIBS += -lmpr -luuid +CONFIG(libarchive):equals(TEMPLATE, app) { + LIBS += -llibarchive + !isEmpty(IFW_ZLIB_LIBRARY) { + LIBS += $$IFW_ZLIB_LIBRARY + } else { + unix:LIBS += -lz + win32:LIBS += -lzlib + } + !isEmpty(IFW_BZIP2_LIBRARY) { + LIBS += $$IFW_BZIP2_LIBRARY + } else { + unix:LIBS += -lbz2 + win32:LIBS += -llibbz2 + } + !isEmpty(IFW_LZMA_LIBRARY) { + LIBS += $$IFW_LZMA_LIBRARY + } else { + unix:LIBS += -llzma + win32:LIBS += -lliblzma + } + macos { + !isEmpty(IFW_ICONV_LIBRARY) { + LIBS += $$IFW_ICONV_LIBRARY + } else { + LIBS += -liconv + } + } +} + equals(TEMPLATE, app) { msvc:POST_TARGETDEPS += $$IFW_LIB_PATH/installer.lib $$IFW_LIB_PATH/7z.lib win32-g++*:POST_TARGETDEPS += $$IFW_LIB_PATH/libinstaller.a $$IFW_LIB_PATH/lib7z.a unix:POST_TARGETDEPS += $$IFW_LIB_PATH/libinstaller.a $$IFW_LIB_PATH/lib7z.a + + CONFIG(libarchive) { + msvc:POST_TARGETDEPS += $$IFW_LIB_PATH/libarchive.lib + win32-g++*:POST_TARGETDEPS += $$IFW_LIB_PATH/liblibarchive.a + unix:POST_TARGETDEPS += $$IFW_LIB_PATH/liblibarchive.a + } } |