code_app/build2/qt/HGVersion/HGVersion.pro

190 lines
6.5 KiB
Prolog

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