example project file
This commit is contained in:
parent
6fe1d5a511
commit
d873ee19c1
1
.vscode/launch.json
vendored
1
.vscode/launch.json
vendored
@ -12,6 +12,7 @@
|
|||||||
"linux": {
|
"linux": {
|
||||||
"program": "${workspaceFolder}/bin/cbuild",
|
"program": "${workspaceFolder}/bin/cbuild",
|
||||||
},
|
},
|
||||||
|
"args": [ "-p", "../example.proj.dtsod", "exe"],
|
||||||
"preLaunchTask": "build",
|
"preLaunchTask": "build",
|
||||||
"stopAtEntry": false,
|
"stopAtEntry": false,
|
||||||
"externalConsole": false,
|
"externalConsole": false,
|
||||||
|
|||||||
2
build.sh
2
build.sh
@ -7,7 +7,7 @@ WARN="-Wall -Wextra -Wno-discarded-qualifiers -Wno-unused-parameter"
|
|||||||
|
|
||||||
ARGS_DEBUG="-O0 -g"
|
ARGS_DEBUG="-O0 -g"
|
||||||
ARGS_RELEASE="-O2 -flto=auto -fdata-sections -ffunction-sections -Wl,--gc-sections"
|
ARGS_RELEASE="-O2 -flto=auto -fdata-sections -ffunction-sections -Wl,--gc-sections"
|
||||||
if [ "$1" -eq "debug" ]; then
|
if [[ "$1" = "debug" ]]; then
|
||||||
ARGS=$ARGS_DEBUG
|
ARGS=$ARGS_DEBUG
|
||||||
else
|
else
|
||||||
ARGS=$ARGS_RELEASE
|
ARGS=$ARGS_RELEASE
|
||||||
|
|||||||
48
example.proj.dtsod
Normal file
48
example.proj.dtsod
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
cbuild_version: 0;
|
||||||
|
import: [ "c", "c++", "gcc", "./some_local_file.dtsod" ];
|
||||||
|
|
||||||
|
gcc: {
|
||||||
|
src_languages: [ "c" ],
|
||||||
|
src_dirs: [ "src" ],
|
||||||
|
};
|
||||||
|
|
||||||
|
configurations: {
|
||||||
|
release: {
|
||||||
|
preprocess_sources: {
|
||||||
|
src_languages: [ "c", "c++" ],
|
||||||
|
src_dirs: [ "src" ],
|
||||||
|
},
|
||||||
|
gcc: {
|
||||||
|
pre_args: [ "-O2" ],
|
||||||
|
post_args: [ "-Wl,--gc-sections" ],
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
tasks: {
|
||||||
|
exe: {
|
||||||
|
pre_tasks: [ ],
|
||||||
|
tool_order: [ "preprocess_sources", "gcc", "g++", "g++-link" ],
|
||||||
|
#g++: [ ... ],
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
languages: [
|
||||||
|
{
|
||||||
|
aliases: [ "c" ],
|
||||||
|
file_extensions: [ "c" ],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
aliases: [ "c-header" ],
|
||||||
|
file_extensions: [ "h" ],
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
tools: [
|
||||||
|
{
|
||||||
|
aliases: [ "gcc" ],
|
||||||
|
exe_file: "gcc",
|
||||||
|
supported_languages: [ "c" ]; # set to "any" to use with any lang
|
||||||
|
parallel: false,
|
||||||
|
}
|
||||||
|
];
|
||||||
@ -138,7 +138,6 @@ Maybe CompilationScenario_applyConfigurationOptions(CompilationScenario* sc, Has
|
|||||||
try(CompilationScenario_tryApplyConditionalOptions(sc, dtsod, configuration), _m0, ;);
|
try(CompilationScenario_tryApplyConditionalOptions(sc, dtsod, configuration), _m0, ;);
|
||||||
if(!_m0.value.Bool)
|
if(!_m0.value.Bool)
|
||||||
safethrow(cptr_concat("configuration '", configuration, "' not found"), ;);
|
safethrow(cptr_concat("configuration '", configuration, "' not found"), ;);
|
||||||
|
|
||||||
return MaybeNull;
|
return MaybeNull;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -146,7 +145,6 @@ Maybe CompilationScenario_applyTaskOptions(CompilationScenario* sc, Hashtable* d
|
|||||||
try(CompilationScenario_tryApplyConditionalOptions(sc, dtsod, task), _m0, ;);
|
try(CompilationScenario_tryApplyConditionalOptions(sc, dtsod, task), _m0, ;);
|
||||||
if(!_m0.value.Bool)
|
if(!_m0.value.Bool)
|
||||||
safethrow(cptr_concat("task '", task, "' not found"), ;);
|
safethrow(cptr_concat("task '", task, "' not found"), ;);
|
||||||
|
|
||||||
return MaybeNull;
|
return MaybeNull;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -155,7 +153,7 @@ Maybe CompilationScenario_tryRegisterLanguages(CompilationScenario* sc, Hashtabl
|
|||||||
if(!Hashtable_tryGet(dtsod, "languages", &val))
|
if(!Hashtable_tryGet(dtsod, "languages", &val))
|
||||||
return SUCCESS(UniFalse);
|
return SUCCESS(UniFalse);
|
||||||
|
|
||||||
if(!UniCheckTypePtr(val, Hashtable))
|
if(!UniCheckTypePtr(val, Autoarr(Unitype)))
|
||||||
safethrow(ERR_WRONGTYPE, ;);
|
safethrow(ERR_WRONGTYPE, ;);
|
||||||
Autoarr(Unitype)* languages_serializad = val.VoidPtr;
|
Autoarr(Unitype)* languages_serializad = val.VoidPtr;
|
||||||
|
|
||||||
@ -206,7 +204,7 @@ Maybe CompilationScenario_tryRegisterTools(CompilationScenario* sc, Hashtable* d
|
|||||||
if(!Hashtable_tryGet(dtsod, "tools", &val))
|
if(!Hashtable_tryGet(dtsod, "tools", &val))
|
||||||
return SUCCESS(UniFalse);
|
return SUCCESS(UniFalse);
|
||||||
|
|
||||||
if(!UniCheckTypePtr(val, Hashtable))
|
if(!UniCheckTypePtr(val, Autoarr(Unitype)))
|
||||||
safethrow(ERR_WRONGTYPE, ;);
|
safethrow(ERR_WRONGTYPE, ;);
|
||||||
Autoarr(Unitype)* tools_serializad = val.VoidPtr;
|
Autoarr(Unitype)* tools_serializad = val.VoidPtr;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user