Allow multiple operating systems to be specified in filename, i.e. _Windows_Linux.cpp
This commit is contained in:
parent
c35fd68c99
commit
d778d470b1
2 changed files with 48 additions and 35 deletions
80
OpenRGB.pro
80
OpenRGB.pro
|
|
@ -72,12 +72,29 @@ for(iter, $$list($$CONTROLLER_H)) {
|
||||||
}
|
}
|
||||||
CONTROLLER_INCLUDES = $$unique(CONTROLLER_INCLUDES)
|
CONTROLLER_INCLUDES = $$unique(CONTROLLER_INCLUDES)
|
||||||
|
|
||||||
CONTROLLER_H_WINDOWS = $$files("Controllers/*_Windows.h", true)
|
#-----------------------------------------------------------------------------------------------#
|
||||||
CONTROLLER_CPP_WINDOWS = $$files("Controllers/*_Windows.cpp", true)
|
# Remove OS-specific files from the overall controller headers and sources lists #
|
||||||
CONTROLLER_H_LINUX = $$files("Controllers/*_Linux.h", true)
|
# The suffixes _Windows, _Linux, _FreeBSD, and _MacOS are usable to denote that a file only #
|
||||||
CONTROLLER_CPP_LINUX = $$files("Controllers/*_Linux.cpp", true)
|
# applies to one or more OSes. The suffixes may be combined such as <file>_Windows_Linux.cpp. #
|
||||||
CONTROLLER_H_MACOS = $$files("Controllers/*_MacOS.cpp", true)
|
#-----------------------------------------------------------------------------------------------#
|
||||||
CONTROLLER_CPP_MACOS = $$files("Controllers/*_MacOS.cpp", true)
|
CONTROLLER_H_WINDOWS = $$files("Controllers/*_Windows*.h", true)
|
||||||
|
CONTROLLER_CPP_WINDOWS = $$files("Controllers/*_Windows*.cpp", true)
|
||||||
|
CONTROLLER_H_LINUX = $$files("Controllers/*_Linux*.h", true)
|
||||||
|
CONTROLLER_CPP_LINUX = $$files("Controllers/*_Linux*.cpp", true)
|
||||||
|
CONTROLLER_H_FREEBSD = $$files("Controllers/*_FreeBSD*.h", true)
|
||||||
|
CONTROLLER_CPP_FREEBSD = $$files("Controllers/*_FreeBSD*.cpp", true)
|
||||||
|
CONTROLLER_H_MACOS = $$files("Controllers/*_MacOS*.h", true)
|
||||||
|
CONTROLLER_CPP_MACOS = $$files("Controllers/*_MacOS*.cpp", true)
|
||||||
|
|
||||||
|
CONTROLLER_H -= $$CONTROLLER_H_WINDOWS
|
||||||
|
CONTROLLER_H -= $$CONTROLLER_H_LINUX
|
||||||
|
CONTROLLER_H -= $$CONTROLLER_H_FREEBSD
|
||||||
|
CONTROLLER_H -= $$CONTROLLER_H_MACOS
|
||||||
|
|
||||||
|
CONTROLLER_CPP -= $$CONTROLLER_CPP_WINDOWS
|
||||||
|
CONTROLLER_CPP -= $$CONTROLLER_CPP_LINUX
|
||||||
|
CONTROLLER_CPP -= $$CONTROLLER_CPP_FREEBSD
|
||||||
|
CONTROLLER_CPP -= $$CONTROLLER_CPP_MACOS
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
# OpenRGB Common #
|
# OpenRGB Common #
|
||||||
|
|
@ -246,8 +263,7 @@ win32:INCLUDEPATH +=
|
||||||
dependencies/NVFC \
|
dependencies/NVFC \
|
||||||
wmi/ \
|
wmi/ \
|
||||||
|
|
||||||
win32:SOURCES -= $$CONTROLLER_CPP_LINUX
|
win32:SOURCES += $$CONTROLLER_CPP_WINDOWS
|
||||||
win32:SOURCES -= $$CONTROLLER_CPP_MACOS
|
|
||||||
|
|
||||||
win32:SOURCES += \
|
win32:SOURCES += \
|
||||||
dependencies/hueplusplus-1.1.0/src/WinHttpHandler.cpp \
|
dependencies/hueplusplus-1.1.0/src/WinHttpHandler.cpp \
|
||||||
|
|
@ -358,8 +374,7 @@ win32:SOURCES +=
|
||||||
wmi/wmi.cpp \
|
wmi/wmi.cpp \
|
||||||
AutoStart/AutoStart-Windows.cpp \
|
AutoStart/AutoStart-Windows.cpp \
|
||||||
|
|
||||||
win32:HEADERS -= $$CONTROLLER_H_LINUX
|
win32:HEADERS += $$CONTROLLER_H_WINDOWS
|
||||||
win32:HEADERS -= $$CONTROLLER_H_MACOS
|
|
||||||
|
|
||||||
win32:HEADERS += \
|
win32:HEADERS += \
|
||||||
dependencies/display-library/include/adl_defines.h \
|
dependencies/display-library/include/adl_defines.h \
|
||||||
|
|
@ -461,8 +476,7 @@ contains(QMAKE_PLATFORM, linux) {
|
||||||
|
|
||||||
TARGET = $$lower($$TARGET)
|
TARGET = $$lower($$TARGET)
|
||||||
|
|
||||||
HEADERS -= $$CONTROLLER_H_WINDOWS
|
HEADERS += $$CONTROLLER_H_LINUX
|
||||||
HEADERS -= $$CONTROLLER_H_MACOS
|
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
i2c_smbus/i2c_smbus_linux.h \
|
i2c_smbus/i2c_smbus_linux.h \
|
||||||
|
|
@ -510,8 +524,7 @@ contains(QMAKE_PLATFORM, linux) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SOURCES -= $$CONTROLLER_CPP_WINDOWS
|
SOURCES += $$CONTROLLER_CPP_LINUX
|
||||||
SOURCES -= $$CONTROLLER_CPP_MACOS
|
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
||||||
|
|
@ -546,10 +559,10 @@ contains(QMAKE_PLATFORM, linux) {
|
||||||
udev_rules.files = $$udev_rules.target
|
udev_rules.files = $$udev_rules.target
|
||||||
} else {
|
} else {
|
||||||
message($$udev_rules.target " - UDEV rules file missing. Adding script to build")
|
message($$udev_rules.target " - UDEV rules file missing. Adding script to build")
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------#
|
||||||
# This is a compiler config flag to save the preproccessed .ii & .s #
|
# This is a compiler config flag to save the preproccessed .ii & .s #
|
||||||
# files so as to automatically process the UDEV rules and the Supported Devices #
|
# files so as to automatically process the UDEV rules and the Supported Devices #
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------#
|
||||||
QMAKE_CXXFLAGS+=-save-temps
|
QMAKE_CXXFLAGS+=-save-temps
|
||||||
QMAKE_CXXFLAGS-=-pipe
|
QMAKE_CXXFLAGS-=-pipe
|
||||||
udev_rules.extra = $$PWD/scripts/build-udev-rules.sh $$PWD $$GIT_COMMIT_ID
|
udev_rules.extra = $$PWD/scripts/build-udev-rules.sh $$PWD $$GIT_COMMIT_ID
|
||||||
|
|
@ -558,7 +571,7 @@ contains(QMAKE_PLATFORM, linux) {
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-------------------------------------------------------------------------------------------#
|
||||||
# Add static files to installation #
|
# Add static files to installation #
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-------------------------------------------------------------------------------------------#
|
||||||
target.path=$$PREFIX/bin/
|
target.path=$$PREFIX/bin/
|
||||||
desktop.path=$$PREFIX/share/applications/
|
desktop.path=$$PREFIX/share/applications/
|
||||||
|
|
@ -581,6 +594,8 @@ contains(QMAKE_PLATFORM, freebsd) {
|
||||||
|
|
||||||
TARGET = $$lower($$TARGET)
|
TARGET = $$lower($$TARGET)
|
||||||
|
|
||||||
|
HEADERS += $$CONTROLLER_H_FREEBSD
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
AutoStart/AutoStart-FreeBSD.h \
|
AutoStart/AutoStart-FreeBSD.h \
|
||||||
|
|
||||||
|
|
@ -622,6 +637,8 @@ contains(QMAKE_PLATFORM, freebsd) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SOURCES += $$CONTROLLER_CPP_FREEBSD
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
||||||
serial_port/find_usb_serial_port_linux.cpp \
|
serial_port/find_usb_serial_port_linux.cpp \
|
||||||
|
|
@ -633,7 +650,6 @@ contains(QMAKE_PLATFORM, freebsd) {
|
||||||
Controllers/SeagateController/SeagateControllerDetect.cpp \
|
Controllers/SeagateController/SeagateControllerDetect.cpp \
|
||||||
Controllers/ENESMBusController/ROGArionDetect.cpp \
|
Controllers/ENESMBusController/ROGArionDetect.cpp \
|
||||||
Controllers/ENESMBusController/ENESMBusInterface/ENESMBusInterface_ROGArion.cpp \
|
Controllers/ENESMBusController/ENESMBusInterface/ENESMBusInterface_ROGArion.cpp \
|
||||||
$$CONTROLLER_CPP_WINDOWS \
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-------------------------------------------------------------------------------------------#
|
||||||
# Set up install paths #
|
# Set up install paths #
|
||||||
|
|
@ -667,9 +683,9 @@ unix:!macx:CONFIG(asan) {
|
||||||
#-----------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.15
|
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.15
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
# Common MacOS definitions #
|
# Common MacOS definitions #
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
macx {
|
macx {
|
||||||
CONFIG += link_pkgconfig
|
CONFIG += link_pkgconfig
|
||||||
|
|
||||||
|
|
@ -687,8 +703,7 @@ macx {
|
||||||
AutoStart/AutoStart-MacOS.h \
|
AutoStart/AutoStart-MacOS.h \
|
||||||
qt/macutils.h \
|
qt/macutils.h \
|
||||||
|
|
||||||
HEADERS -= $$CONTROLLER_H_WINDOWS
|
HEADERS += $$CONTROLLER_H_MACOS
|
||||||
HEADERS -= $$CONTROLLER_H_LINUX
|
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
dependencies/hueplusplus-1.1.0/src/LinHttpHandler.cpp \
|
||||||
|
|
@ -696,8 +711,7 @@ macx {
|
||||||
AutoStart/AutoStart-MacOS.cpp \
|
AutoStart/AutoStart-MacOS.cpp \
|
||||||
qt/macutils.mm \
|
qt/macutils.mm \
|
||||||
|
|
||||||
SOURCES -= $$CONTROLLER_CPP_WINDOWS
|
SOURCES += $$CONTROLLER_CPP_MACOS
|
||||||
SOURCES -= $$CONTROLLER_CPP_LINUX
|
|
||||||
|
|
||||||
# Use mbedtls v2 instead of latest
|
# Use mbedtls v2 instead of latest
|
||||||
MBEDTLS_PREFIX = $$system(brew --prefix mbedtls@2)
|
MBEDTLS_PREFIX = $$system(brew --prefix mbedtls@2)
|
||||||
|
|
@ -719,9 +733,9 @@ macx {
|
||||||
QMAKE_INFO_PLIST = $$OUT_PWD/Info.plist
|
QMAKE_INFO_PLIST = $$OUT_PWD/Info.plist
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
# Apple Silicon (arm64) Homebrew installs at /opt/homebrew #
|
# Apple Silicon (arm64) Homebrew installs at /opt/homebrew #
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
macx:contains(QMAKE_HOST.arch, arm64) {
|
macx:contains(QMAKE_HOST.arch, arm64) {
|
||||||
INCLUDEPATH += \
|
INCLUDEPATH += \
|
||||||
/opt/homebrew/include \
|
/opt/homebrew/include \
|
||||||
|
|
@ -733,9 +747,9 @@ macx:contains(QMAKE_HOST.arch, arm64) {
|
||||||
-L/opt/homebrew/lib \
|
-L/opt/homebrew/lib \
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
# Intel (x86_64) Homebrew installs at /usr/local/lib #
|
# Intel (x86_64) Homebrew installs at /usr/local/lib #
|
||||||
#-------------------------------------------------------------------------------------------#
|
#-----------------------------------------------------------------------------------------------#
|
||||||
macx:contains(QMAKE_HOST.arch, x86_64) {
|
macx:contains(QMAKE_HOST.arch, x86_64) {
|
||||||
INCLUDEPATH += \
|
INCLUDEPATH += \
|
||||||
dependencies/macUSPCIO \
|
dependencies/macUSPCIO \
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,7 @@
|
||||||
|
|
||||||
- TARGET = $$lower($$TARGET)
|
- TARGET = $$lower($$TARGET)
|
||||||
-
|
-
|
||||||
HEADERS -= $$CONTROLLER_H_WINDOWS
|
HEADERS += $$CONTROLLER_H_LINUX
|
||||||
HEADERS -= $$CONTROLLER_H_MACOS
|
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
--- a/qt/org.openrgb.OpenRGB.desktop
|
--- a/qt/org.openrgb.OpenRGB.desktop
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue