pkg-config work
This commit is contained in:
parent
3ddb2943bc
commit
fc1964f766
|
@ -7,5 +7,5 @@ add_subdirectory("vendor/sol2")
|
|||
include_directories("include")
|
||||
include_directories("vendor/sol2/include")
|
||||
|
||||
add_executable(grbc src/main.cc src/utils.cc src/file.cc src/target_exe.cc src/platform.cc src/ninja.cc src/generator.cc src/target_lib.cc src/package.cc)
|
||||
add_executable(grbc src/main.cc src/utils.cc src/file.cc src/target_exe.cc src/platform.cc src/ninja.cc src/generator.cc src/target_lib.cc src/package.cc src/ext.cc src/ext_pkg_config.cc)
|
||||
target_link_libraries(grbc sol2 lua)
|
34
HConfig
34
HConfig
|
@ -1,6 +1,35 @@
|
|||
grbc_want_version("1.0")
|
||||
grbc_load_platform("platform.hcfg")
|
||||
|
||||
local grbc_pkg_config_ext = grbc_library(LibraryConfig.new({
|
||||
name = "libgrbc_pkg_config",
|
||||
language_type = LanguageType.Cpp,
|
||||
files = {
|
||||
grbc_file("src/ext_pkg_config.cc")
|
||||
},
|
||||
lib_type = LibraryType.Shared,
|
||||
|
||||
requirements = {},
|
||||
compile_flags = {},
|
||||
linker_flags = {},
|
||||
|
||||
include_dirs = {
|
||||
"include",
|
||||
"vendor/sol2/include"
|
||||
},
|
||||
|
||||
package_config = PackageConfig.new({
|
||||
name = "libgrbc_pkg_config",
|
||||
libraries = {},
|
||||
include_dirs = {
|
||||
grbc_file("include"),
|
||||
grbc_file("vendor/sol2/include")
|
||||
},
|
||||
compile_flags = {},
|
||||
linker_flags = {},
|
||||
})
|
||||
}))
|
||||
|
||||
local grbc_lib = grbc_library(LibraryConfig.new({
|
||||
name = "libgrbc",
|
||||
language_type = LanguageType.Cpp,
|
||||
|
@ -15,7 +44,7 @@ local grbc_lib = grbc_library(LibraryConfig.new({
|
|||
grbc_file("src/package.cc"),
|
||||
grbc_file("src/ext.cc")
|
||||
},
|
||||
lib_type = LibraryType.Shared,
|
||||
lib_type = LibraryType.Static,
|
||||
|
||||
requirements = {},
|
||||
compile_flags = {},
|
||||
|
@ -51,7 +80,8 @@ local grbc_exe = grbc_executable(ExecutableConfig.new({
|
|||
linker_flags = "-llua -lm -ldl"
|
||||
}),
|
||||
|
||||
grbc_pkg("libgrbc")
|
||||
grbc_pkg("libgrbc"),
|
||||
grbc_pkg("libgrbc_pkg_config")
|
||||
},
|
||||
compile_flags = {
|
||||
},
|
||||
|
|
41
build.ninja
41
build.ninja
|
@ -40,65 +40,74 @@ rule archive
|
|||
command = rm -f $out; ar crs $out $in
|
||||
description = Creating static library $out
|
||||
|
||||
## Compile: src/ext_pkg_config.cc ##
|
||||
|
||||
build $builddir/src/ext_pkg_config.o: cxx src/ext_pkg_config.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Link: libgrbc_pkg_config.so ##
|
||||
|
||||
build $builddir/libgrbc_pkg_config.so: link_cxx $builddir/src/ext_pkg_config.o
|
||||
p_linker_flags = -shared -Lbuild -Wl,-rpath,build:.
|
||||
p_cflags =
|
||||
|
||||
## Compile: src/file.cc ##
|
||||
|
||||
build $builddir/src/file.o: cxx src/file.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/ninja.cc ##
|
||||
|
||||
build $builddir/src/ninja.o: cxx src/ninja.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/platform.cc ##
|
||||
|
||||
build $builddir/src/platform.o: cxx src/platform.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/target_exe.cc ##
|
||||
|
||||
build $builddir/src/target_exe.o: cxx src/target_exe.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/utils.cc ##
|
||||
|
||||
build $builddir/src/utils.o: cxx src/utils.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/generator.cc ##
|
||||
|
||||
build $builddir/src/generator.o: cxx src/generator.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/target_lib.cc ##
|
||||
|
||||
build $builddir/src/target_lib.o: cxx src/target_lib.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/package.cc ##
|
||||
|
||||
build $builddir/src/package.o: cxx src/package.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Compile: src/ext.cc ##
|
||||
|
||||
build $builddir/src/ext.o: cxx src/ext.cc
|
||||
p_cflags = -fPIC -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Link: libgrbc.so ##
|
||||
## Link: libgrbc.a ##
|
||||
|
||||
build $builddir/libgrbc.so: link_cxx $builddir/src/file.o $builddir/src/ninja.o $builddir/src/platform.o $builddir/src/target_exe.o $builddir/src/utils.o $builddir/src/generator.o $builddir/src/target_lib.o $builddir/src/package.o $builddir/src/ext.o
|
||||
p_linker_flags = -shared -Lbuild -Wl,-rpath,build:.
|
||||
p_cflags =
|
||||
build $builddir/libgrbc.a: archive $builddir/src/file.o $builddir/src/ninja.o $builddir/src/platform.o $builddir/src/target_exe.o $builddir/src/utils.o $builddir/src/generator.o $builddir/src/target_lib.o $builddir/src/package.o $builddir/src/ext.o
|
||||
|
||||
## Compile: src/main.cc ##
|
||||
|
||||
build $builddir/src/main.o: cxx src/main.cc
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include
|
||||
p_cflags = -Iinclude -Ivendor/sol2/include -Iinclude -Ivendor/sol2/include
|
||||
|
||||
## Link: grbc ##
|
||||
|
||||
build $builddir/grbc: link_cxx $builddir/src/main.o | $builddir/libgrbc.so
|
||||
p_linker_flags = -llua -lm -ldl build/libgrbc.so -Lbuild -Wl,-rpath,build:.
|
||||
build $builddir/grbc: link_cxx $builddir/src/main.o | $builddir/libgrbc.a $builddir/libgrbc_pkg_config.so
|
||||
p_linker_flags = -llua -lm -ldl build/libgrbc.a build/libgrbc_pkg_config.so -Lbuild -Wl,-rpath,build:.
|
||||
p_cflags =
|
||||
|
||||
|
|
|
@ -1,506 +1,74 @@
|
|||
[
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/grbc.dir",
|
||||
"output": "cmake_object_order_depends_target_grbc"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/file.o -MF build/src/file.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/file.cc -o build/src/file.o",
|
||||
"file": "src/file.cc",
|
||||
"output": "build/src/file.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/main.cc.o -MF CMakeFiles/grbc.dir/src/main.cc.o.d -o CMakeFiles/grbc.dir/src/main.cc.o -c /home/interfiber/dev/grbc/src/main.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/main.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/main.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/ninja.o -MF build/src/ninja.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/ninja.cc -o build/src/ninja.o",
|
||||
"file": "src/ninja.cc",
|
||||
"output": "build/src/ninja.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/utils.cc.o -MF CMakeFiles/grbc.dir/src/utils.cc.o.d -o CMakeFiles/grbc.dir/src/utils.cc.o -c /home/interfiber/dev/grbc/src/utils.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/utils.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/utils.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/platform.o -MF build/src/platform.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/platform.cc -o build/src/platform.o",
|
||||
"file": "src/platform.cc",
|
||||
"output": "build/src/platform.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/file.cc.o -MF CMakeFiles/grbc.dir/src/file.cc.o.d -o CMakeFiles/grbc.dir/src/file.cc.o -c /home/interfiber/dev/grbc/src/file.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/file.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/file.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/target_exe.o -MF build/src/target_exe.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/target_exe.cc -o build/src/target_exe.o",
|
||||
"file": "src/target_exe.cc",
|
||||
"output": "build/src/target_exe.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/target_exe.cc.o -MF CMakeFiles/grbc.dir/src/target_exe.cc.o.d -o CMakeFiles/grbc.dir/src/target_exe.cc.o -c /home/interfiber/dev/grbc/src/target_exe.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/target_exe.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/target_exe.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/utils.o -MF build/src/utils.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/utils.cc -o build/src/utils.o",
|
||||
"file": "src/utils.cc",
|
||||
"output": "build/src/utils.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/platform.cc.o -MF CMakeFiles/grbc.dir/src/platform.cc.o.d -o CMakeFiles/grbc.dir/src/platform.cc.o -c /home/interfiber/dev/grbc/src/platform.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/platform.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/platform.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/generator.o -MF build/src/generator.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/generator.cc -o build/src/generator.o",
|
||||
"file": "src/generator.cc",
|
||||
"output": "build/src/generator.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/ninja.cc.o -MF CMakeFiles/grbc.dir/src/ninja.cc.o.d -o CMakeFiles/grbc.dir/src/ninja.cc.o -c /home/interfiber/dev/grbc/src/ninja.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/ninja.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/ninja.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/target_lib.o -MF build/src/target_lib.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/target_lib.cc -o build/src/target_lib.o",
|
||||
"file": "src/target_lib.cc",
|
||||
"output": "build/src/target_lib.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/lib64/ccache/g++ -I/home/interfiber/dev/grbc/include -isystem /home/interfiber/dev/grbc/vendor/sol2/include -O2 -g -DNDEBUG -MD -MT CMakeFiles/grbc.dir/src/generator.cc.o -MF CMakeFiles/grbc.dir/src/generator.cc.o.d -o CMakeFiles/grbc.dir/src/generator.cc.o -c /home/interfiber/dev/grbc/src/generator.cc",
|
||||
"file": "/home/interfiber/dev/grbc/src/generator.cc",
|
||||
"output": "CMakeFiles/grbc.dir/src/generator.cc.o"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/package.o -MF build/src/package.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/package.cc -o build/src/package.o",
|
||||
"file": "src/package.cc",
|
||||
"output": "build/src/package.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": ": && /usr/lib64/ccache/g++ -O2 -g -DNDEBUG CMakeFiles/grbc.dir/src/main.cc.o CMakeFiles/grbc.dir/src/utils.cc.o CMakeFiles/grbc.dir/src/file.cc.o CMakeFiles/grbc.dir/src/target_exe.cc.o CMakeFiles/grbc.dir/src/platform.cc.o CMakeFiles/grbc.dir/src/ninja.cc.o CMakeFiles/grbc.dir/src/generator.cc.o -o grbc -llua && :",
|
||||
"file": "CMakeFiles/grbc.dir/src/main.cc.o",
|
||||
"output": "grbc"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/ext.o -MF build/src/ext.o.d -fPIC -Iinclude -Ivendor/sol2/include -c src/ext.cc -o build/src/ext.o",
|
||||
"file": "src/ext.cc",
|
||||
"output": "build/src/ext.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/edit_cache.util",
|
||||
"output": "edit_cache"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -o build/libgrbc.so build/src/file.o build/src/ninja.o build/src/platform.o build/src/target_exe.o build/src/utils.o build/src/generator.o build/src/target_lib.o build/src/package.o build/src/ext.o -shared -Lbuild -Wl,-rpath,build:. ",
|
||||
"file": "build/src/file.o",
|
||||
"output": "build/libgrbc.so"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/rebuild_cache.util",
|
||||
"output": "rebuild_cache"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -MMD -MT build/src/main.o -MF build/src/main.o.d -Iinclude -Ivendor/sol2/include -c src/main.cc -o build/src/main.o",
|
||||
"file": "src/main.cc",
|
||||
"output": "build/src/main.o"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build && /usr/bin/cmake -P cmake_install.cmake",
|
||||
"file": "all",
|
||||
"output": "CMakeFiles/install.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/install.util",
|
||||
"output": "install"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build && /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake",
|
||||
"file": "all",
|
||||
"output": "CMakeFiles/install/local.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/install/local.util",
|
||||
"output": "install/local"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build && /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake",
|
||||
"file": "all",
|
||||
"output": "CMakeFiles/install/strip.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "CMakeFiles/install/strip.util",
|
||||
"output": "install/strip"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/Experimental",
|
||||
"output": "vendor/sol2/Experimental"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/Nightly",
|
||||
"output": "vendor/sol2/Nightly"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/Continuous",
|
||||
"output": "vendor/sol2/Continuous"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyMemoryCheck",
|
||||
"output": "vendor/sol2/NightlyMemoryCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyStart",
|
||||
"output": "vendor/sol2/NightlyStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyUpdate",
|
||||
"output": "vendor/sol2/NightlyUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyConfigure",
|
||||
"output": "vendor/sol2/NightlyConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyBuild",
|
||||
"output": "vendor/sol2/NightlyBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyTest",
|
||||
"output": "vendor/sol2/NightlyTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyCoverage",
|
||||
"output": "vendor/sol2/NightlyCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlyMemCheck",
|
||||
"output": "vendor/sol2/NightlyMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/NightlySubmit",
|
||||
"output": "vendor/sol2/NightlySubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalStart",
|
||||
"output": "vendor/sol2/ExperimentalStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalUpdate",
|
||||
"output": "vendor/sol2/ExperimentalUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalConfigure",
|
||||
"output": "vendor/sol2/ExperimentalConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalBuild",
|
||||
"output": "vendor/sol2/ExperimentalBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalTest",
|
||||
"output": "vendor/sol2/ExperimentalTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalCoverage",
|
||||
"output": "vendor/sol2/ExperimentalCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalMemCheck",
|
||||
"output": "vendor/sol2/ExperimentalMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ExperimentalSubmit",
|
||||
"output": "vendor/sol2/ExperimentalSubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousStart",
|
||||
"output": "vendor/sol2/ContinuousStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousUpdate",
|
||||
"output": "vendor/sol2/ContinuousUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousConfigure",
|
||||
"output": "vendor/sol2/ContinuousConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousBuild",
|
||||
"output": "vendor/sol2/ContinuousBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousTest",
|
||||
"output": "vendor/sol2/ContinuousTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousCoverage",
|
||||
"output": "vendor/sol2/ContinuousCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousMemCheck",
|
||||
"output": "vendor/sol2/ContinuousMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/ContinuousSubmit",
|
||||
"output": "vendor/sol2/ContinuousSubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/edit_cache.util",
|
||||
"output": "vendor/sol2/edit_cache"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/rebuild_cache.util",
|
||||
"output": "vendor/sol2/rebuild_cache"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build/vendor/sol2 && /usr/bin/cmake -P cmake_install.cmake",
|
||||
"file": "vendor/sol2/all",
|
||||
"output": "vendor/sol2/CMakeFiles/install.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/install.util",
|
||||
"output": "vendor/sol2/install"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build/vendor/sol2 && /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake",
|
||||
"file": "vendor/sol2/all",
|
||||
"output": "vendor/sol2/CMakeFiles/install/local.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/install/local.util",
|
||||
"output": "vendor/sol2/install/local"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "cd /home/interfiber/dev/grbc/build/vendor/sol2 && /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake",
|
||||
"file": "vendor/sol2/all",
|
||||
"output": "vendor/sol2/CMakeFiles/install/strip.util"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/CMakeFiles/install/strip.util",
|
||||
"output": "vendor/sol2/install/strip"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/Continuous",
|
||||
"output": "Continuous"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousBuild",
|
||||
"output": "ContinuousBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousConfigure",
|
||||
"output": "ContinuousConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousCoverage",
|
||||
"output": "ContinuousCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousMemCheck",
|
||||
"output": "ContinuousMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousStart",
|
||||
"output": "ContinuousStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousSubmit",
|
||||
"output": "ContinuousSubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousTest",
|
||||
"output": "ContinuousTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ContinuousUpdate",
|
||||
"output": "ContinuousUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/Experimental",
|
||||
"output": "Experimental"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalBuild",
|
||||
"output": "ExperimentalBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalConfigure",
|
||||
"output": "ExperimentalConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalCoverage",
|
||||
"output": "ExperimentalCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalMemCheck",
|
||||
"output": "ExperimentalMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalStart",
|
||||
"output": "ExperimentalStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalSubmit",
|
||||
"output": "ExperimentalSubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalTest",
|
||||
"output": "ExperimentalTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/ExperimentalUpdate",
|
||||
"output": "ExperimentalUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/Nightly",
|
||||
"output": "Nightly"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyBuild",
|
||||
"output": "NightlyBuild"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyConfigure",
|
||||
"output": "NightlyConfigure"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyCoverage",
|
||||
"output": "NightlyCoverage"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyMemCheck",
|
||||
"output": "NightlyMemCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyMemoryCheck",
|
||||
"output": "NightlyMemoryCheck"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyStart",
|
||||
"output": "NightlyStart"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlySubmit",
|
||||
"output": "NightlySubmit"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyTest",
|
||||
"output": "NightlyTest"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "vendor/sol2/NightlyUpdate",
|
||||
"output": "NightlyUpdate"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "",
|
||||
"file": "grbc",
|
||||
"output": "all"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/bin/cmake -P /home/interfiber/dev/grbc/build/CMakeFiles/VerifyGlobs.cmake",
|
||||
"file": "/home/interfiber/dev/grbc/build/CMakeFiles/VerifyGlobs.cmake_force",
|
||||
"output": "/home/interfiber/dev/grbc/build/CMakeFiles/cmake.verify_globs"
|
||||
},
|
||||
{
|
||||
"directory": "/home/interfiber/dev/grbc/build",
|
||||
"command": "/usr/bin/cmake --regenerate-during-build -S/home/interfiber/dev/grbc -B/home/interfiber/dev/grbc/build",
|
||||
"file": "/home/interfiber/dev/grbc/build/CMakeFiles/cmake.verify_globs",
|
||||
"output": "build.ninja"
|
||||
"directory": "/home/interfiber/dev/grbc",
|
||||
"command": "/usr/lib64/ccache/g++ -o build/grbc build/src/main.o -llua -lm -ldl build/libgrbc.so -Lbuild -Wl,-rpath,build:. ",
|
||||
"file": "build/src/main.o",
|
||||
"output": "build/grbc"
|
||||
}
|
||||
]
|
||||
|
|
|
@ -1,8 +1,13 @@
|
|||
#pragma once
|
||||
#include "sol/state.hpp"
|
||||
#include <string>
|
||||
|
||||
#define GRBC_EXT_pkg_config_NAME "GRBC_EXT_pkg_config"
|
||||
|
||||
typedef void (*EXT_HookInit)(sol::state &lua);
|
||||
|
||||
struct Extension {
|
||||
std::string name;
|
||||
|
||||
EXT_HookInit hook_init = nullptr;
|
||||
};
|
7
include/grbc/ext_pkg_config.h
Normal file
7
include/grbc/ext_pkg_config.h
Normal file
|
@ -0,0 +1,7 @@
|
|||
#pragma once
|
||||
#include "grbc/ext.h"
|
||||
|
||||
/**
|
||||
* Get the grbc pkg-config extension
|
||||
*/
|
||||
Extension grbc_pkg_config();
|
|
@ -1,4 +1,5 @@
|
|||
#pragma once
|
||||
#include "grbc/ext.h"
|
||||
#include <sol/table.hpp>
|
||||
#include <sol/types.hpp>
|
||||
#include <string>
|
||||
|
@ -222,4 +223,8 @@ std::string grbc_get_lib_extension(LibraryType lib_type);
|
|||
|
||||
Package grbc_bake_package_config(const PackageConfig &config);
|
||||
|
||||
Package grbc_pkg(const std::string &package_name);
|
||||
Package grbc_pkg(const std::string &package_name);
|
||||
|
||||
void grbc_ext(const std::string &extension_id);
|
||||
|
||||
void grbc_register_ext(const std::string &extension_id, const Extension &ext);
|
|
@ -1 +1,5 @@
|
|||
#include "grbc/ext.h"
|
||||
#include "grbc/ext.h"
|
||||
|
||||
void grbc_register_ext(const std::string &extension_id, const Extension &ext) {}
|
||||
|
||||
void grbc_ext(const std::string &extension_id) {}
|
17
src/ext_pkg_config.cc
Normal file
17
src/ext_pkg_config.cc
Normal file
|
@ -0,0 +1,17 @@
|
|||
#include "grbc/ext_pkg_config.h"
|
||||
#include "grbc/ext.h"
|
||||
#include "grbc/helpers.h"
|
||||
#include "sol/state.hpp"
|
||||
|
||||
void grbc_pkg_config_init(sol::state &state) {
|
||||
log_msg("pkg_config extension loaded!");
|
||||
}
|
||||
|
||||
|
||||
Extension grbc_pkg_config() {
|
||||
Extension ext{};
|
||||
ext.name = GRBC_EXT_pkg_config_NAME;
|
||||
ext.hook_init = grbc_pkg_config_init;
|
||||
|
||||
return ext;
|
||||
}
|
|
@ -1,3 +1,4 @@
|
|||
#include "grbc/ext_pkg_config.h"
|
||||
#include "grbc/state.h"
|
||||
#define SOL_ALL_SAFETIES_ON 1
|
||||
|
||||
|
@ -99,12 +100,17 @@ int main() {
|
|||
lua.set("grbc_get_lib_extension", grbc_get_lib_extension);
|
||||
lua.set("grbc_bake_package_config", grbc_bake_package_config);
|
||||
lua.set("grbc_pkg", grbc_pkg);
|
||||
lua.set("grbc_ext", grbc_ext);
|
||||
lua.set("grbc_register_ext", grbc_register_ext);
|
||||
|
||||
// Load generators
|
||||
|
||||
GState::get().generators.push_back(
|
||||
{.name = "ninja", .func = ninja_generator});
|
||||
|
||||
// Load default extensions
|
||||
grbc_register_ext(GRBC_EXT_pkg_config_NAME, grbc_pkg_config());
|
||||
|
||||
log_msg("loading HConfig...");
|
||||
|
||||
lua.script_file("HConfig");
|
||||
|
|
Loading…
Reference in a new issue