Switch to meson build system
This commit is contained in:
10
PKGBUILD
10
PKGBUILD
@@ -6,14 +6,16 @@ url='https://github.com/Tabascl/fantasize.git'
|
||||
source=("$pkgname-$pkgver.tar.gz::https://github.com/Tabascl/fantasize/archive/refs/tags/v$pkgver.tar.gz")
|
||||
arch=('x86_64')
|
||||
license=('GPL3')
|
||||
makedepends=('git' 'cmake' 'nlohmann-json' 'boost')
|
||||
makedepends=('git' 'meson' 'nlohmann-json' 'boost')
|
||||
sha256sums=('SKIP')
|
||||
|
||||
build() {
|
||||
cmake -S "$pkgname-$pkgver/app" -B build -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
meson setup build "$pkgname-$pkgver/app" -Dbuildtype=Release
|
||||
cd build
|
||||
meson compile
|
||||
}
|
||||
|
||||
package() {
|
||||
cmake --install build --prefix "$pkgdir/" --verbose
|
||||
cd build
|
||||
meson install
|
||||
}
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
project(fantasize VERSION 0.1.8)
|
||||
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
find_package(nlohmann_json 3.11.2 REQUIRED)
|
||||
find_package(Boost 1.74 COMPONENTS program_options log log_setup date_time REQUIRED)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
src/main.cxx
|
||||
src/sensor/LMSensorsFacade.cxx
|
||||
# src/sensor/GPUSensorsFacade.cxx
|
||||
src/sensor/Sensor.cxx
|
||||
# src/sensor/NvidiaSensor.cxx
|
||||
src/sensor/LMSensor.cxx
|
||||
src/pwm/PWMControl.cxx
|
||||
src/pwm/PWMControlFacade.cxx
|
||||
src/fan/HwmonFan.cxx
|
||||
src/fan/FanCurve.cxx
|
||||
src/fan/FanLabeler.cxx
|
||||
src/fan/Aggregators.cxx
|
||||
src/FanGenerator.cxx
|
||||
src/Serializer.cxx
|
||||
src/sensor/SensorManager.cxx
|
||||
src/Controller.cxx
|
||||
src/Settings.cxx
|
||||
src/App.cxx
|
||||
)
|
||||
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 20)
|
||||
|
||||
# target_include_directories(${PROJECT_NAME} PUBLIC include /opt/cuda)
|
||||
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
||||
# target_link_libraries(${PROJECT_NAME} PUBLIC sensors nvidia-ml nlohmann_json::nlohmann_json tbb ${Boost_LIBRARIES})
|
||||
target_link_libraries(${PROJECT_NAME} PUBLIC sensors nlohmann_json::nlohmann_json tbb ${Boost_LIBRARIES})
|
||||
|
||||
install(TARGETS ${PROJECT_NAME} DESTINATION usr/local/bin)
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/unit/fantasize.service DESTINATION usr/lib/systemd/system)
|
||||
37
app/meson.build
Normal file
37
app/meson.build
Normal file
@@ -0,0 +1,37 @@
|
||||
project('fantasize', 'cpp', version : '0.2.0', default_options : ['cpp_std=c++20'])
|
||||
|
||||
src = [
|
||||
'src/main.cxx',
|
||||
'src/sensor/LMSensorsFacade.cxx',
|
||||
'src/sensor/Sensor.cxx',
|
||||
'src/sensor/LMSensor.cxx',
|
||||
'src/pwm/PWMControl.cxx',
|
||||
'src/pwm/PWMControlFacade.cxx',
|
||||
'src/fan/HwmonFan.cxx',
|
||||
'src/fan/FanCurve.cxx',
|
||||
'src/fan/FanLabeler.cxx',
|
||||
'src/fan/Aggregators.cxx',
|
||||
'src/FanGenerator.cxx',
|
||||
'src/Serializer.cxx',
|
||||
'src/sensor/SensorManager.cxx',
|
||||
'src/Controller.cxx',
|
||||
'src/Settings.cxx',
|
||||
'src/App.cxx'
|
||||
]
|
||||
|
||||
deps = [
|
||||
dependency('nlohmann_json'),
|
||||
dependency('boost', modules : ['program_options', 'log', 'log_setup', 'date_time', 'thread']),
|
||||
dependency('tbb'),
|
||||
meson.get_compiler('cpp').find_library('sensors')
|
||||
]
|
||||
|
||||
inc = include_directories('include')
|
||||
|
||||
exe = executable('fantasize',
|
||||
src,
|
||||
dependencies: deps,
|
||||
install: true,
|
||||
include_directories: inc)
|
||||
|
||||
install_data('unit/fantasize.service', install_dir : 'usr/lib/systemd/system')
|
||||
Reference in New Issue
Block a user