work on dynamic extensions

This commit is contained in:
Hunter 2024-09-30 20:15:34 -04:00
parent 8b1c5b9073
commit b3a326720b
22 changed files with 282 additions and 165 deletions

41
HConfig
View file

@ -2,6 +2,34 @@ grbc_want_version("1.0")
grbc_ext("GRBC_EXT_pkg_config")
grbc_ext("GRBC_EXT_profiles")
grbc_ext("GRBC_EXT_easy")
grbc_ext("GRBC_EXT_dynamic_extensions")
local hotwire = grbc_library(LibraryConfig.new({
name = "libhotwire",
language_type = LanguageType.C,
files = {
grbc_file("vendor/hotwire/src/dlopen.c")
},
lib_type = LibraryType.Static,
requirements = {},
compile_flags = {},
linker_flags = {},
include_dirs = {
"vendor/hotwire/src",
},
package_config = PackageConfig.new({
name = "libhotwire",
libraries = {},
include_dirs = {
grbc_file("vendor/hotwire/src")
},
compile_flags = {},
linker_flags = {},
})
}))
local grbc_extensions = grbc_library(LibraryConfig.new({
name = "libgrbc_extensions",
@ -9,7 +37,8 @@ local grbc_extensions = grbc_library(LibraryConfig.new({
files = {
grbc_file("src/ext_pkg_config.cc"),
grbc_file("src/ext_profiles.cc"),
grbc_file("src/ext_easy.cc")
grbc_file("src/ext_easy.cc"),
grbc_file("src/ext_dynamic.cc")
},
lib_type = LibraryType.Static,
@ -19,6 +48,7 @@ local grbc_extensions = grbc_library(LibraryConfig.new({
include_dirs = {
"include",
"vendor/hotwire/src",
"vendor/sol2/include"
},
@ -52,7 +82,9 @@ local grbc_lib = grbc_library(LibraryConfig.new({
},
lib_type = LibraryType.Static,
requirements = {},
requirements = {
grbc_pkg("libhotwire")
},
compile_flags = {},
linker_flags = {},
include_dirs = {
@ -82,7 +114,8 @@ local grbc_exe = grbc_executable(ExecutableConfig.new({
requirements = {
grbc_pkg_config("lua"),
grbc_pkg("libgrbc"),
grbc_pkg("libgrbc_extensions")
grbc_pkg("libgrbc_extensions"),
grbc_pkg("libhotwire")
},
compile_flags = {},
linker_flags = {},
@ -90,4 +123,4 @@ local grbc_exe = grbc_executable(ExecutableConfig.new({
}))
-- Output the final build script
grbc_build("ninja")
grbc_build("ninja")