Fix build

master
Marko Semet 2019-07-22 11:33:04 +02:00
parent 61cedb3a4c
commit 1a16bf98df
3 changed files with 97 additions and 14 deletions

View File

@ -0,0 +1,47 @@
cmake_minimum_required(VERSION 3.9)
project(skill_cpp_common)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -pedantic -fPIC")
################################
# Build common lib
################################
file(GLOB_RECURSE SOURCE_FILES LIST_DIRECTORIES false skill/*.cpp)
# The resulting library to be used by generated code
ADD_LIBRARY(skill_cpp_common STATIC ${SOURCE_FILES})
################################
# GTest
################################
ADD_SUBDIRECTORY(lib/gtest)
enable_testing()
include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})
################################
# OpenMP
################################
find_package(OpenMP)
if (OPENMP_FOUND)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
endif()
################################
# Unit Tests
################################
file(GLOB_RECURSE TEST_FILES LIST_DIRECTORIES false test/*.cpp)
add_executable(runTests ${SOURCE_FILES} ${TEST_FILES})
# Link test executable against gtest & gtest_main
target_link_libraries(runTests gtest gtest_main)
add_test(runTests runTests)
set_property(TARGET runTests PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)

View File

@ -2,8 +2,9 @@
## Flatpak way
1. install flatpak and flatpak-builder
2. add flathub to the (user) remotes
3. Build with ```flatpak-builder --user --install --install-deps-from=flathub <BUILDDIR> sirEdit/de.marko10-000.sirEdit.json```
2. add flathub to the (user) remotes `flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo`
3. Build with `flatpak-builder --user --force-clean --install --install-deps-from=flathub <BUILDDIR> sirEdit/de.marko10-000.sirEdit.json`
Be careful, `<BUILDDIR>` and the current path should **NOT** be in the directory of the git.
4. Run the programm with ```flatpak run de.marko10_000.sirEdit```
## Normal build way

View File

@ -6,14 +6,14 @@
"command": "/app/bin/sirEdit",
"writable-sdk": true,
"finish-args": [
"--require-version=1.0.0",
"--device=dri",
"--share=ipc",
"--socket=x11",
"--socket=wayland",
"--talk-name=org.gtk.vfs.*",
"--talk-name=org.gnome.SettingsDaemon.Color",
"--own-name=de.marko10-000.sirEdit"
"--require-version=1.0.0",
"--device=dri",
"--share=ipc",
"--socket=x11",
"--socket=wayland",
"--talk-name=org.gtk.vfs.*",
"--talk-name=org.gnome.SettingsDaemon.Color",
"--own-name=de.marko10-000.sirEdit"
],
"modules": [
{
@ -159,18 +159,53 @@
]
},
{
"name": "sirEdit",
"buildsystem": "meson-ninja",
"name": "gtest",
"sources": [
{
"type": "file",
"type": "archive",
"url": "https://github.com/google/googletest/archive/release-1.8.1.tar.gz",
"sha256": "9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c"
}
],
"buildsystem": "cmake-ninja"
},
{
"name": "pegtl",
"sources": [
{
"type": "archive",
"url": "https://github.com/taocpp/PEGTL/archive/2.8.0.tar.gz",
"sha256": "655197f9ff543fb6319cec9b86bb34147dd54c42dde78b89ff93d15c762d5f73"
}
],
"buildsystem": "cmake-ninja"
},
{
"name": "sirEdit",
"buildsystem": "meson",
"sources": [
{
"type": "dir",
"path": "."
},
{
"type": "shell",
"commands": [
"ln -s /app/lib/libgtkmm-3.0.a /usr/lib/libgtkmm-3.0.a",
"ls -la /usr/lib/libgtkmm-3.0.a"
"ls -la /usr/lib/libgtkmm-3.0.a",
"rm -rf subprojects/cppCommon"
]
},
{
"type": "git",
"url": "https://github.com/skill-lang/cppCommon",
"dest": "subprojects/cppCommon"
},
{
"type": "shell",
"commands": [
"cp -fv CMakeLists_skill.txt subprojects/cppCommon/CMakeLists.txt",
"java -jar data/codegen.jar sirSpec/sir.skill -L cpp --package sir -o sir"
]
}
]