CONFIG -= qt TEMPLATE = lib DEFINES += UNTITLED_LIBRARY CONFIG += c++11 CONFIG += dll # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS # You can also make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 include($$PWD/../HGOEM.pri) CONFIG(debug, debug|release) { MY_CONFIGURE = Debug } CONFIG(release, debug|release) { MY_CONFIGURE = Release } win32 { DEFINES += CURL_STATICLIB MY_OS = windows TARGET = $${OEM_PREFIX}Version contains(QT_ARCH, i386) { MY_ARCH = x86 } contains(QT_ARCH, x86_64) { MY_ARCH = x64 } CONFIG(debug, debug|release) { QMAKE_CFLAGS_DEBUG += -MTd QMAKE_CXXFLAGS_DEBUG += -MTd LIBS += $$PWD/../../../third_party/libcurl/$${MY_OS}/lib/$${MY_ARCH}/libcurld.lib } CONFIG(release, debug|release) { QMAKE_CFLAGS_RELEASE += -MT QMAKE_CXXFLAGS_RELEASE += -MT QMAKE_LFLAGS_RELEASE += /MAP QMAKE_CFLAGS_RELEASE += /Zi QMAKE_LFLAGS_RELEASE += /debug /opt:ref LIBS += $$PWD/../../../third_party/libcurl/$${MY_OS}/lib/$${MY_ARCH}/libcurl.lib } DEF_FILE = HGVersion.def LIBS += -lgdi32 -lgdiplus -ldbghelp -lws2_32 -lwldap32 -lIphlpapi -ladvapi32 -lshell32 LIBS += -L$$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE} -l$${OEM_PREFIX}Base INCLUDEPATH += $$PWD/../../../third_party/libcurl/$${MY_OS}/include } unix { DISTRIBUTION = $$system(cat /etc/issue | cut -d\' \' -f1) contains(DISTRIBUTION, UnionTech) { MY_OS = uos } else { MY_OS = kylin } TARGET = $${OEM_PREFIX2}Version contains(QT_ARCH, x86_64) { MY_ARCH = amd64 MY_ARCH2 = x86_64 } contains(QT_ARCH, arm64) { MY_ARCH = aarch64 MY_ARCH2 = aarch64 } contains(QT_ARCH, mips64) { MY_ARCH = mips64 MY_ARCH2 = mips64 } contains(QT_ARCH, loongarch64) { MY_ARCH = loongarch64 MY_ARCH2 = loongarch64 } contains(QT_ARCH, sw_64) { MY_ARCH = sw_64 MY_ARCH2 = sw_64 } CONFIG += unversioned_libname unversioned_soname QMAKE_CXXFLAGS += -fvisibility=hidden QMAKE_CFLAGS += -fvisibility=hidden QMAKE_LFLAGS += -static-libstdc++ -static-libgcc QMAKE_LFLAGS += -Wl,-rpath,\'\$\$ORIGIN\' -Wl,--exclude-libs,ALL QMAKE_LFLAGS += -z defs -B direct LIBS += -L$$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE} -l$${OEM_PREFIX2}Base INCLUDEPATH += $$PWD/../../../third_party/libcurl/$${MY_OS}/$${MY_ARCH}/include LIBS += $$PWD/../../../third_party/libcurl/$${MY_OS}/$${MY_ARCH}/lib/libcurl.a LIBS += $$PWD/../../../third_party/libzip/$${MY_OS}/$${MY_ARCH}/lib/libzip.a LIBS += $$PWD/../../../third_party/zlib/$${MY_OS}/$${MY_ARCH}/lib/libz.a LIBS += -lpthread -ldl } INCLUDEPATH += $$PWD/../../../third_party/json INCLUDEPATH += $$PWD/../../../utility DESTDIR = $$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE} UI_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET} MOC_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET} OBJECTS_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET} RCC_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET} message(MY_OS: $$MY_OS) message(MY_ARCH: $$MY_ARCH) message(OEM_PREFIX: $$OEM_PREFIX) message(OEM_PREFIX2: $$OEM_PREFIX2) message(OEM_NAME: $$OEM_NAME) message(MY_CONFIGURE: $$MY_CONFIGURE) message(TARGET: $$TARGET) message(DESTDIR: $$DESTDIR) message(UI_DIR: $$UI_DIR) message(MOC_DIR: $$MOC_DIR) message(OBJECTS_DIR: $$OBJECTS_DIR) message(RCC_DIR: $$RCC_DIR) win32 { CONFIG(release, debug|release) { DESTLIB_PATH = $${PWD}/../../../../sdk/lib/win/$${MY_ARCH}/$${MY_CONFIGURE}/ DESTLIB_PATH = $$replace(DESTLIB_PATH, /, \\) message(DESTLIB_PATH: $$DESTLIB_PATH) DESTDLL_PATH = $${PWD}/../../../../release/win/$${MY_ARCH}/$${MY_CONFIGURE}/ DESTDLL_PATH = $$replace(DESTDLL_PATH, /, \\) message(DESTDLL_PATH: $$DESTDLL_PATH) DESTHEADER_PATH = $${PWD}/../../../../sdk/include/version/ DESTHEADER_PATH = $$replace(DESTHEADER_PATH, /, \\) message(DESTHEADER_PATH: $$DESTHEADER_PATH) SRCLIB_FILE = $${DESTDIR}/$${TARGET}.lib SRCLIB_FILE = $$replace(SRCLIB_FILE, /, \\) message(SRCLIB_FILE: $$SRCLIB_FILE) SRCDLL_FILE = $${DESTDIR}/$${TARGET}.dll SRCDLL_FILE = $$replace(SRCDLL_FILE, /, \\) message(SRCDLL_FILE: $$SRCDLL_FILE) SRCHEADER_FILE = $${PWD}/../../../modules/version/*.h SRCHEADER_FILE = $$replace(SRCHEADER_FILE, /, \\) message(SRCHEADER_FILE: $$SRCHEADER_FILE) SRCPDB_FILE = $${DESTDIR}/$${TARGET}.pdb SRCPDB_FILE = $$replace(SRCPDB_FILE, /, \\) message(SRCPDB_FILE: $$SRCPDB_FILE) QMAKE_POST_LINK += xcopy /y $$SRCLIB_FILE $$DESTLIB_PATH && xcopy /y $$SRCDLL_FILE $$DESTDLL_PATH \ && xcopy /y $$SRCHEADER_FILE $$DESTHEADER_PATH && xcopy /y $$SRCPDB_FILE $$DESTDLL_PATH } } unix { CONFIG(release, debug|release) { DESTDLL_PATH = $$PWD/../../../../release/$${MY_OS}/$${MY_ARCH2}/ message(DESTDLL_PATH: $$DESTDLL_PATH) DESTHEADER_PATH = $${PWD}/../../../../sdk/include/version/ message(DESTHEADER_PATH: $$DESTHEADER_PATH) SRCDLL_FILE = $${DESTDIR}/lib$${TARGET}.so message(SRCDLL_FILE: $$SRCDLL_FILE) SRCHEADER_FILE = $${PWD}/../../../modules/version/*.h message(SRCHEADER_FILE: $$SRCHEADER_FILE) QMAKE_POST_LINK += cp $$SRCDLL_FILE $$DESTDLL_PATH && cp $$SRCHEADER_FILE $$DESTHEADER_PATH } } SOURCES += \ ../../../modules/version/HGVersion.cpp \ ../../../modules/version/HGVersionImpl.cpp \ ../../../third_party/json/cJSON.c \ ../../../utility/HGString.cpp HEADERS += \ ../../../modules/version/HGVersion.h \ ../../../modules/version/HGVersionImpl.hpp \ ../../../modules/version/HGVersionMsg.hpp \ ../../../third_party/json/cJSON.h \ ../../../utility/HGString.h