Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
191 commits
Select commit Hold shift + click to select a range
067e576
ci(windows): changed CI matrix to have both mingw 32-bit and 64-bit b…
Nov 22, 2024
6d90323
ci(windows): changed CI matrix to have both mingw 32-bit and 64-bit b…
Nov 22, 2024
704eeac
update(mkfile): cccmk sync
Nov 22, 2024
ef9d53d
fix,ci(github): refactors and fixes to simplify ci workflow and make …
Nov 22, 2024
03afca8
fix(mkfile): attempt to fix dynamic lib creation linking issues with …
Nov 22, 2024
5cfb6a7
fix(mkfile): attempt #2 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
f87149d
fix(mkfile): attempt #3 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
075aaad
fix(mkfile): attempt #4 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
584ef27
fix(mkfile): attempt #5 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
b661047
fix(mkfile): attempt #6 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
79b6e4b
fix(mkfile): attempt #7 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
804dd8c
fix(mkfile): attempt #8 to fix dynamic lib creation linking issues wi…
Nov 22, 2024
44dd645
fix(mkfile): various minor fixes for windows build, and removed windo…
LexouDuck Dec 7, 2024
c341c12
fix,wip(mkfile): multiple fixes to get the clang/msvc windows build t…
LexouDuck Dec 8, 2024
4e80ad9
fix(libccc/test): fixes to the test suite utils so they work with a c…
LexouDuck Dec 8, 2024
c7f9e07
fix(mkfile): fixes to build system options, specifically for windows/…
LexouDuck Dec 9, 2024
c763ca1
fix(libccc): various code fixes concerning proper declarations/defini…
LexouDuck Dec 9, 2024
95d2be2
ci(libccc): re-enabled the windows/clang build, since it now works
LexouDuck Dec 9, 2024
00a6875
fix,ci(windows): fixed issue using 'inline' keyword despite older ver…
LexouDuck Dec 10, 2024
c7293d9
fix,ci(windows): added preprocessor code to remove 'inline' keyword f…
LexouDuck Dec 10, 2024
fcb2d36
fix(libccc): replaced all uses of 'inline' with 'extern inline' to av…
LexouDuck Dec 11, 2024
631fa6b
fix(libccc): multiple fixes for C++ compiler compatiblity
LexouDuck Dec 11, 2024
a5efbc9
fix,test(libccc/test): more fixes for C++ compiler compatiblity, conc…
LexouDuck Dec 11, 2024
0911101
fix(libccc): multiple fixes to headers for C++ compiler compatiblity
LexouDuck Dec 11, 2024
7b9f3d1
fix(mkfile): fixes to build commandline args for c++ compiler compati…
LexouDuck Dec 11, 2024
11e837f
ci(libccc): added C++ compilers to ci routines
LexouDuck Dec 11, 2024
0172c66
doc(env): added predefined macros for the many windows compilers
LexouDuck Dec 11, 2024
2b0f1a9
fix(libccc): fixed issues in the basic numeric _MIN/_MAX macros
Dec 1, 2024
38b584e
feature(libccc/math/stat): added simple functions to get min/max valu…
Dec 1, 2024
ae229c2
fix(libccc/math): fixed issue of refactored PI constant names
Dec 1, 2024
5ff42a4
fix,improvement(test/math): added various test utils to make libccc-t…
Dec 1, 2024
4459ade
fix,feature(libccc/math): added some missing float functions, to fix …
Dec 1, 2024
6f455fe
fix(libccc/math): fixed some bad stdlib math declarations with better…
Dec 1, 2024
2e52c13
improvement,wip(libccc/math): better asin function in trigonometry
Dec 2, 2024
97d4780
refactor(libccc/math/float): split up files since trigonometry files …
Dec 3, 2024
ed06324
fix(libccc/float): fixing several issues with float definitions and m…
Dec 3, 2024
4e039bd
fix,wip(test/math): minor improvements to test batches for math libs
Dec 3, 2024
7cc7fed
refactor(libccc/math/float): split up large files in math lib
Dec 3, 2024
46e1515
fix(libccc/math/float): better implementations for ceil,floor,trunc
Dec 4, 2024
a083573
refactor(libccc/math): renamed SIGN(x) macro to SGN(x) which is more …
Dec 4, 2024
e2af76f
refactor(libccc/math): renamed some files and reorganised code for co…
Dec 4, 2024
928887c
feature(libccc/bool): added boolean operators functions and their ali…
Dec 4, 2024
ec79b58
fix(mkfile/build): changed compiler options to remove the unused-para…
Dec 4, 2024
2368606
feature(libccc/math): added rem & remquo functions
Dec 4, 2024
5b9329c
feature(libccc/math/int): added gcd and lcm function
Dec 4, 2024
afd1a74
feature(libccc/float): added nearbyint and nextafter functions
Dec 4, 2024
f5fe462
fix(libccc/math): fixed some minor issues, particularly in the trunc(…
Dec 4, 2024
9dbdc2b
feature(libccc/math): added hypot(x,y) function
Dec 4, 2024
49ab879
feature(libccc/math): added float function modf()
Dec 4, 2024
3139e2a
feature(libccc/math/float): added erf() error function
Dec 7, 2024
bb48622
wip,refactor(libccc/math/float): added new C23 aliases for basic oper…
Dec 7, 2024
a172258
test,improvement(libccc/test): various small improvement to test suit…
Dec 7, 2024
02ad925
fix(libccc/math): fixes for stdc math alias definitions
Dec 7, 2024
34d5508
fix(libccc/math): several new declarations and improvements
Dec 7, 2024
6d1e3d7
fix(libccc/math): fixes for some float math functions
Dec 7, 2024
2e7680c
feature,refactor(libccc/math/stat): renamed and regorganised stat fun…
Dec 12, 2024
b53104c
fix(libccc/math/stat): fixed issues in test suite regarding math/stat
Dec 12, 2024
173d68e
feature,wip(libccc/math/float): adding better implementations of math…
Dec 12, 2024
ea946e5
fix(libccc): changed 'inline' declared functions to be 'extern inline'
Dec 12, 2024
d40b501
fix(libccc/bool): fixed unused-parameter warnings
Dec 12, 2024
93406c7
fix(libccc/math/float): fixed argument type for math function RemQuo()
Dec 12, 2024
407f8ba
style(libccc): removed multiple tabs before end-of-line backslash for…
Dec 12, 2024
029ce8c
fix,test(libccc-test): fixed bad malloc usage issue in test suite
Dec 12, 2024
7fc4694
fix(libccc): minor fixes for c++ compilation
Dec 14, 2024
a6c2c73
doc(log/env): added c++ compiler files for reference
Dec 14, 2024
f448a1c
refactor,improvement(libccc): added new _INLINE() macro for function …
Dec 16, 2024
a8f5e35
fix(libccc/math/float/exp10): removed __builtin_exp10() usage since i…
Dec 16, 2024
a475019
fix(libccc/math/float/rem): changed __builtin_remquo() usage to only …
Dec 16, 2024
05f67fc
fix(libccc/math/float/rem): fix integer pointer to remquo( function)
Dec 16, 2024
d6fb658
fix(libccc/math/float/exp): fixed constant e to properly be converted…
Dec 16, 2024
887d251
fix(libccc): fixed header inclusion issues to have proper 128-bit int…
Dec 18, 2024
e35d537
style(libccc): removed all tab-aligned multiline macros in favor of s…
Dec 18, 2024
1c6afdd
improvement(libccc_config.h): added logic to have compile-time error-…
Dec 18, 2024
51fc6f9
style(libccc): removed all tab-aligned multiline macros in favor of s…
Dec 19, 2024
e324a08
test(libccc/math): changed math test suite code to be macro-generic c…
Dec 19, 2024
f30fe0f
fix(libccc/math/float/erf): fixes to erf() function (particularly sty…
Dec 19, 2024
bc81caf
feature(libccc/math/algebra): added distance functions for all types
Dec 20, 2024
4e5a877
fix(libccc/math): added generic function macros for all the newly add…
Dec 20, 2024
b37f147
fix(libccc/math): more fixes to math headers, particularly adding mis…
Dec 21, 2024
12c87ae
fix(libccc/math): major fixes to math library, added more implementat…
Dec 22, 2024
28cc640
fix(libccc-test): added & fixed many tests regarding 128-bit integer …
Dec 23, 2024
0717296
fix,test(libccc-test): fixes to test suite, so it can compile with c+…
Dec 23, 2024
0ba5c07
fix(libccc/float): fixed definition of isnan(),isinf(),isfinite(),isn…
Dec 23, 2024
8653b54
fix,ci(libccc-test): fixed issues in mkfile build flags and in the 'i…
Dec 23, 2024
fb50ee2
fix(libccc/float): removed broken definition of isnormal() and signbit()
Dec 23, 2024
6a3eac8
fix,ci(libccc-test): fixed issues in mkfile build flags and in the 'i…
Dec 23, 2024
5a880e9
fix,ci(libccc): another attempt to fix mkfile build flags for windows…
Dec 23, 2024
386c3b6
improvement(libccc-test): better logic to display function arguments …
Dec 24, 2024
86bc7b3
fix,ci(libccc): attempt to fix windows clang build by disabling 128-b…
Dec 24, 2024
e56e159
fix,ci(libccc): attempt to fix windows clang build by disabling 128-b…
Dec 24, 2024
dc6f026
fix,ci(libccc): attempt to fix windows clang build by disabling 128-b…
Dec 24, 2024
f4bd914
fix,ci(libccc): attempt to fix windows clang build by disabling 128-b…
Dec 24, 2024
a6c85d5
fix,ci(libccc): attempt to fix windows clang build by disabling 128-b…
Dec 24, 2024
a430dce
improvement,feature(libccc/math): added musl/bsd implementations of a…
Dec 29, 2024
1bd6711
improvement,test(test/math): improvements to math test suite infrastr…
Jan 5, 2025
7193b9d
feature,improvement,wip(libccc/math): many fixes and improvements to …
Jan 5, 2025
80231cf
feature,test(libccc-test): added implementations of most all common s…
Jan 7, 2025
265347b
fix(math/float): fixed several accuracy issues with math functions
Jan 7, 2025
b44c887
improvement,test(libccc-test): added many tests for floating point ba…
Jan 10, 2025
6301687
fix(float,math): fixed multiple issues in floating-point math functions
Jan 10, 2025
c682bb4
refactor(libccc/float): renamed float macros to be more clear which o…
Jan 10, 2025
4e03060
feature,wip(int,fixed,float): added new libccc_config macros to have …
Jan 12, 2025
9a89cc8
fix,feature(libccc/math): added several missing basic operators and c…
Jan 13, 2025
4b0f92d
refactor,style(libccc): changed style of banner-box comments to be mo…
Jan 13, 2025
6af6db3
refactor,style(code): replaced bad space-indents with tab indents ins…
Jan 13, 2025
1f151ce
feature(libccc/math/stat): implemented many new statistics functions
Jan 16, 2025
0c87af8
fix,test(libccc/stat,sort): fixed issues in test suite which made it …
Jan 16, 2025
9973b04
fix(libccc/math/sort): impelemented void* quicksort with the same pro…
Jan 16, 2025
8448fed
fix,ci(libccc/text/string_format): attempt to fix compatibility issue…
Jan 16, 2025
25acd38
fix,ci(libccc/math/stat): fixed unused variable warning in stat function
Jan 16, 2025
36898e5
fix,ci(libccc/fixed): added missing fixed-point functions abs(), sgn(…
Jan 16, 2025
0128f1b
fix(libccc/int,fixed,float): added missing uint conversion functions …
Jan 16, 2025
2ef94ea
fix,ci(libccc/math/stat): removed unused variable 'n' in several stat…
Jan 16, 2025
199413f
fix(libccc/string/format): further fixed vasprintf definition issue
Jan 16, 2025
a8448c7
fix,ci(libccc/math/stat): changed bad reference to pow() function in …
Jan 16, 2025
b09809f
fix,ci(libccc/math/stat): fixed bad references to sqrt() and cbrt() i…
Jan 17, 2025
a73349d
fix,ci(github): changed timeout from 5min to 10min, for windows compi…
Jan 17, 2025
392deb3
fix,test(libccc/math/stat): better test suite for libccc/random and l…
Jan 17, 2025
fec3afa
fix(libccc/math/stat): better error handling for several stat functions
Jan 17, 2025
fd32e9f
fix,test(libccc/math/stat): fixed more issues with stat functions and…
Jan 18, 2025
8ee47af
improvement(libccc): added all combinatorics of conversion functions …
Jan 21, 2025
91e929e
feature(libccc/int): added abs() and sgn() functions for uint types (…
Jan 21, 2025
95ff0da
fix,improvement(libccc/random): changes to the RNG library, which is …
Jan 21, 2025
a640555
test(float): unrelated small test files to design/understand low bits…
Jan 21, 2025
e57050c
fix,improvement(libccc/math/stat): several fixes and optimizations to…
Jan 21, 2025
fae79f9
fix(libccc/random): changed definition of PRNG state be a struct stor…
Jan 21, 2025
35b936e
refactor,improvement(libccc/fixed): changed fixed-point types to be a…
Jan 22, 2025
0272313
refactor,style(libccc/math): changed math function/operator argument …
Jan 22, 2025
a93bdaf
improvement(libccc/fixed): changed fixed-point config macros to allow…
Jan 22, 2025
6a64651
feature(libccc/fixed): added 8-bit fixed-point number type
Jan 22, 2025
81bfaf6
feature(libccc/float): added 16-bit floating point type support
Jan 22, 2025
21f67ea
fix,ci(libccc/fixed): minor fixes to new fixed-point library code, fo…
Jan 22, 2025
66d3262
test,ci(libccc/math): reduced amount of math library tests since wind…
Jan 22, 2025
0f73428
fix(libccc/text/format): added format specifier macros for the newly …
Jan 23, 2025
160e7ce
improvement,fix(libccc/int,fixed,float): fixed numberic type conversi…
Jan 23, 2025
d9fd58e
fix(libccc/sys/program/run): fixed issue with the 'run' function, whi…
LexouDuck Jan 23, 2025
fa5f317
test,ci(libccc/math/stat,random): changed sample sizes for stat funct…
LexouDuck Jan 23, 2025
cac0d63
fix(libccc/float): added missing #if guards for some missing 16-bit f…
LexouDuck Jan 23, 2025
5904744
fix(libccc_config): changed default to use libccc math function imple…
LexouDuck Jan 23, 2025
712e9ac
fix(libccc/test/float): minor fix to float test suite, added missing …
Jan 23, 2025
b7867c0
ci(github): changed timeout from 10min to 7min
Jan 23, 2025
2e1c597
feature(libccc/math): added proper implementation of float module fun…
Jan 23, 2025
36c0d52
fix(libccc/math): added proper error handling for div() mod() rem() f…
Jan 23, 2025
46d7e74
fix(libccc/encode): changed calls to IS_NAN() and IS_INF() macros to …
Jan 23, 2025
d5e372a
fix(test/float): changed f16 testsuite definitions to use functions w…
Jan 23, 2025
694eeb0
refactor(test): changed test suite ordering to make more sense themat…
Jan 23, 2025
78c0236
test(libccc/int|float): added test suites to check for proper edge ca…
Jan 26, 2025
6f11526
fix,wip(libccc/math/int|fixed|float): fixed multiple issues with impr…
Jan 26, 2025
614bdaf
fix(libccc/text/format): added missing printf format specifier macros…
Jan 26, 2025
032aa75
fix(libccc): fixed multiple missing null-pointer checks, thanks to th…
Jan 30, 2025
17952d8
fix,wip(libccc/math): adding missing root3() and rootn() functions fo…
Jan 30, 2025
255dde9
fix(libccc/memory/bits): fixed Memory_GetMSB() and Memory_GetLSB() fu…
Feb 8, 2025
7d3c4bd
fix(libccc/math/int): fixed integer arithmetic operator functions to …
Feb 8, 2025
c01a5a6
improvement,wip(libccc_error): better error-handling logic overall, a…
Feb 8, 2025
3cbdc6b
improvement(mkfile): changed default C standard to C11 and added some…
Feb 8, 2025
7164b29
feature,test(libccc/test): added proper edge-case test suites for int…
Feb 8, 2025
5ae032c
fix,wip(libccc/test/format): changed the 128-bit integer printf forma…
Feb 8, 2025
fa0753a
fix(libccc/math): better edge-case and error handling in math functions
Feb 8, 2025
96b66a8
fix,test(libccc/memory): added proper tests for bitwise memory functi…
Feb 8, 2025
279c08d
fix,test(libccc/text/unicode): fixed uncaught SIGSEGV in char unicode…
Feb 9, 2025
d145746
fix(libccc/bool): fixed issue in bool parser and associated test suite
Feb 9, 2025
077618f
fix(libccc/float): fixed issues with float parser functions and test …
Feb 9, 2025
d9e9eef
feature,test(libccc/fixed): added proper test suite for fixed-point m…
Feb 10, 2025
42b7ecb
fix(libccc/sys/error): fixed lingering issues with error-handling mec…
Feb 10, 2025
f2b7fff
fix(libccc/math/int): fixed many issues with error-handling on intege…
Feb 10, 2025
d9fbd7a
fix,test(libccc/math): fixed minor issues in libccc math test suite
Feb 10, 2025
0737808
fix,ci(libccc): fixed multiple issues by using g++ to compile with st…
Feb 10, 2025
712d9ba
refactor(libccc): renamed the libccc/monad section to libccc/generic,…
Feb 10, 2025
abcc2b1
fix(libccc/math): fixed function pointer type definitions for numeric…
Feb 10, 2025
11e8502
refactor,cleanup(libccc/math/float): avoided redefining unions for fl…
Feb 10, 2025
d1eb93e
ci(github): update timeout to be 10 minutes, because windows is slow
Feb 10, 2025
a7831ea
fix(libccc/test): removed usage of asprintf() which is non-std extens…
Feb 10, 2025
2dac9e9
fix(libccc): attempt to fix windows CI build which failed to use __ty…
Feb 10, 2025
bb30db0
fix,test(libccc/test/math/int): remvoed direct usage of t_u128 and t_…
Feb 10, 2025
0eff0e4
ci(libccc/math): reduced amount of math tests in precision test batte…
Feb 10, 2025
4491e07
style(libccc/test/math): minor fixes to math precision test suite
Feb 10, 2025
b626e9d
fix(libccc/math): added close-to-zero range precision tests for math …
Feb 10, 2025
dd372fe
ci(libccc/math): reduced timeout to 8 minutes, and drastically reduce…
Feb 10, 2025
e8854a7
fix(libccc/math): renamed math error-handling functions to avoid conf…
Feb 10, 2025
fdb2149
ci(windows): attempted commenting out certain math function test suit…
Feb 10, 2025
d4bf248
fix(libccc/float): fixed lrint() function to be a simple wrapper for …
Feb 10, 2025
75a3944
fix(libccc/float): fixed special error-handling values for lrint() il…
Feb 10, 2025
8b33eaf
fix(libccc/float): made test more lenient for lrint(nan) because retu…
Feb 10, 2025
ff95e91
fix(libccc/float): fixed ilogb() and ilogd() function edge cases
Feb 10, 2025
372b5b5
fix,test(libccc/float): further made some test lenient for lrint() be…
Feb 10, 2025
e14de8a
ci,test(libccc/math/float): uncommented test suites for exp and log f…
Feb 10, 2025
d24ea21
test,ci(libccc/math): added back in test suites for erf() erfc() and …
Feb 10, 2025
ce8808b
fix(libccc/math): attempt to fix windows gamma function issue by avoi…
Feb 10, 2025
b6e6de7
revert(libccc/math): commented out the gamma function tests to allow …
Feb 10, 2025
8c2d544
docs(libccc): updated documentation
Feb 10, 2025
51d7880
release(libccc): v0.13
Feb 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
84 changes: 42 additions & 42 deletions .cccmk
Original file line number Diff line number Diff line change
Expand Up @@ -16,47 +16,47 @@ project_versionfile='VERSION'
project_packagefile='mkfile/lists/packages.txt'
project_track_paths='mkfile'
project_track='
3ff55b61b715ba7b35b8ef8566766a7118060b0e:CONTRIBUTING.md:CONTRIBUTING.md
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_select_license/MIT.txt:LICENSE
3ff55b61b715ba7b35b8ef8566766a7118060b0e:.gitignore:.gitignore
3ff55b61b715ba7b35b8ef8566766a7118060b0e:.githooks/_if_ask_autoversion/pre-commit:.githooks/pre-commit
3ff55b61b715ba7b35b8ef8566766a7118060b0e:.githooks/_if_ask_autoversion/pre-push:.githooks/pre-push
3ff55b61b715ba7b35b8ef8566766a7118060b0e:.githooks/_if_ask_commitlinter/commit-msg:.githooks/commit-msg
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/Makefile:Makefile
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/compare_version.sh:mkfile/utils/compare_version.sh
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/ansi.mk:mkfile/utils/ansi.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/ext.mk:mkfile/utils/ext.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/help.mk:mkfile/utils/help.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/help-debug.awk:mkfile/utils/help-debug.awk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/help-makefiles.awk:mkfile/utils/help-makefiles.awk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/help-targets.awk:mkfile/utils/help-targets.awk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/help-variables.awk:mkfile/utils/help-variables.awk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/prereq.mk:mkfile/utils/prereq.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/print.mk:mkfile/utils/print.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/refactor.mk:mkfile/utils/refactor.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/shell.mk:mkfile/utils/shell.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/utils/make.mk:mkfile/utils/make.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/config/modes.mk:mkfile/config/modes.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/config/build.mk:mkfile/config/build.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/_if_ask_testsuite/config/build-tests.mk:mkfile/config/build-tests.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/config/install.mk:mkfile/config/install.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/all.mk:mkfile/rules/all.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/build.mk:mkfile/rules/build.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/install.mk:mkfile/rules/install.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/build-tests.mk:mkfile/rules/build-tests.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/lists-tests.mk:mkfile/rules/lists-tests.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/lists.mk:mkfile/rules/lists.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/clean.mk:mkfile/rules/clean.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/dist.mk:mkfile/rules/dist.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/init.mk:mkfile/rules/init.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/prereq.mk:mkfile/rules/prereq.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/version.mk:mkfile/rules/version.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/packages.mk:mkfile/rules/packages.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/test.mk:mkfile/rules/test.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/_if_multiselect/coverage.mk:mkfile/rules/coverage.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/_if_multiselect/debugging.mk:mkfile/rules/debugging.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/_if_multiselect/lint.mk:mkfile/rules/lint.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/_if_multiselect/format.mk:mkfile/rules/format.mk
3ff55b61b715ba7b35b8ef8566766a7118060b0e:_if_ask_mkfile/mkfile/rules/_if_multiselect/doc.mk:mkfile/rules/doc.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:CONTRIBUTING.md:CONTRIBUTING.md
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_select_license/MIT.txt:LICENSE
bf72e37d7a95d270d2fb1489f3cd20f68e413574:.gitignore:.gitignore
bf72e37d7a95d270d2fb1489f3cd20f68e413574:.githooks/_if_ask_autoversion/pre-commit:.githooks/pre-commit
bf72e37d7a95d270d2fb1489f3cd20f68e413574:.githooks/_if_ask_autoversion/pre-push:.githooks/pre-push
bf72e37d7a95d270d2fb1489f3cd20f68e413574:.githooks/_if_ask_commitlinter/commit-msg:.githooks/commit-msg
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/Makefile:Makefile
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/compare_version.sh:mkfile/utils/compare_version.sh
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/ansi.mk:mkfile/utils/ansi.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/ext.mk:mkfile/utils/ext.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/help.mk:mkfile/utils/help.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/help-debug.awk:mkfile/utils/help-debug.awk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/help-makefiles.awk:mkfile/utils/help-makefiles.awk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/help-targets.awk:mkfile/utils/help-targets.awk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/help-variables.awk:mkfile/utils/help-variables.awk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/prereq.mk:mkfile/utils/prereq.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/print.mk:mkfile/utils/print.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/refactor.mk:mkfile/utils/refactor.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/shell.mk:mkfile/utils/shell.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/utils/make.mk:mkfile/utils/make.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/config/modes.mk:mkfile/config/modes.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/config/build.mk:mkfile/config/build.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/_if_ask_testsuite/config/build-tests.mk:mkfile/config/build-tests.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/config/install.mk:mkfile/config/install.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/all.mk:mkfile/rules/all.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/build.mk:mkfile/rules/build.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/install.mk:mkfile/rules/install.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/build-tests.mk:mkfile/rules/build-tests.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/lists-tests.mk:mkfile/rules/lists-tests.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/lists.mk:mkfile/rules/lists.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/clean.mk:mkfile/rules/clean.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/dist.mk:mkfile/rules/dist.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/init.mk:mkfile/rules/init.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/prereq.mk:mkfile/rules/prereq.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/version.mk:mkfile/rules/version.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/packages.mk:mkfile/rules/packages.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/_if_ask_testsuite/rules/test.mk:mkfile/rules/test.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/_if_multiselect/coverage.mk:mkfile/rules/coverage.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/_if_multiselect/debugging.mk:mkfile/rules/debugging.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/_if_multiselect/lint.mk:mkfile/rules/lint.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/_if_multiselect/format.mk:mkfile/rules/format.mk
bf72e37d7a95d270d2fb1489f3cd20f68e413574:_if_ask_mkfile/mkfile/rules/_if_multiselect/doc.mk:mkfile/rules/doc.mk
9e8f48303812b2dcb54c93cca9f0de19f3742e68:_if_ask_mkfile/mkfile/rules/_if_multiselect/doc-help.mk:mkfile/rules/doc-help.mk
'
47 changes: 20 additions & 27 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,20 @@ defaults:
jobs:
ci:
runs-on: ${{ matrix.os }}
timeout-minutes: 10
timeout-minutes: 8
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macOS-latest, windows-latest]
compiler: [gcc, clang]
exclude:
- os: windows-latest
compiler: clang
cc: [gcc, g++, clang, clang++]

if: ${{ !contains(github.event.head_commit.message, '[skip ci]') }}
steps:
- uses: actions/checkout@v4



# - name: Check (with ${{matrix.compiler}}, for ${{matrix.os}})
# - name: Check (with ${{matrix.cc}}, for ${{matrix.os}})
# run: |
# printf "OS: $OS\n"
# printf "RUNNER_OS: $RUNNER_OS\n"
Expand All @@ -40,48 +37,44 @@ jobs:
# for i in `find log -name "predef_*.c"` ; do cat $i ; done

- name: Setup
if: ${{ (matrix.os != 'windows-latest') || (matrix.compiler != 'gcc') }}
run: |
echo "CC=${{matrix.compiler}}" >> $GITHUB_ENV
echo "CC=${{matrix.cc}}" >> $GITHUB_ENV
echo "LD=${{matrix.cc}}" >> $GITHUB_ENV

- name: Setup (Windows, mingw)
if: ${{ (matrix.os == 'windows-latest') && (matrix.compiler == 'gcc') }}
- name: Setup (Windows, mingw 64-bit)
if: ${{ (matrix.os == 'windows-latest') && (matrix.cc == 'gcc') }}
run: |
echo "CC=x86_64-w64-mingw32-gcc" >> $GITHUB_ENV

# echo "CC=i686-w64-mingw32-gcc" >> $GITHUB_ENV
# echo "PATH=$PATH:C:\msys64\mingw64\bin" >> $GITHUB_ENV

- name: Prerequisite tools install
- name: Install/check prerequisite tools
run: |
make prereq-build
make prereq-tests
make prereq-dist

- name: Build library (with ${{matrix.cc}}, for ${{matrix.os}})
run: make BUILDMODE=release CC=$CC build

- name: Build test suite (with ${{matrix.cc}}, for ${{matrix.os}})
run: make BUILDMODE=release CC=$CC build-tests

- name: Build library (with ${{matrix.compiler}}, for ${{matrix.os}})
run: make BUILDMODE=release build CC=$CC

- name: Build test suite (with ${{matrix.compiler}}, for ${{matrix.os}})
run: make BUILDMODE=release build-tests CC=$CC



- name: Run test suite (with ${{matrix.compiler}}, for ${{matrix.os}})
run: make BUILDMODE=release test ARGS="-a"
- name: Run test suite (with ${{matrix.cc}}, for ${{matrix.os}})
run: make BUILDMODE=release CC=$CC test ARGS="-a"

- name: Create distributable package (for ${{matrix.os}})
run: make BUILDMODE=release CC=$CC dist


- name: Create distributable package (for ${{matrix.os}})
run: make BUILDMODE=release dist

- name: Upload build binary artifacts
uses: actions/upload-artifact@v4
with:
name: libccc-build_${{matrix.os}}_${{matrix.compiler}}
name: libccc-build_${{matrix.os}}_${{matrix.cc}}
path: ./dist/*.zip

# - name: Release (with ${{matrix.compiler}}, for ${{matrix.os}})
# run: make clean ; make build-release CC=${{matrix.compiler}}
# - name: Release (with ${{matrix.cc}}, for ${{matrix.os}})
# run: make clean ; make build-release CC=${{matrix.cc}}

# TODO: automate release tag for github ?
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
#! The complete absolute path of the root-level makefile
MKFILE_PATH := "$(abspath $(lastword $(MAKEFILE_LIST)))"
#! The directory of the root-level makefile
CURRENT_DIR := $(patsubst %/,%,$(dir $(MKFILE_PATH)))
CURRENT_DIR := $(patsubst %/,%,$(dir $(abspath $(lastword $(MAKEFILE_LIST)))))
#! The sub-directory in which makefile scripts are stored
MKFILES_DIR := ./mkfile/

Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
libccc@0.12.0-2024-03-14_48a7a5ec0376e5be1aef83ac3f33f8b96156ba5d
libccc@0.13.0-2025-02-10_8c2d54486805ac119983b03cdb76fdefb3af70a6
5 changes: 3 additions & 2 deletions doc/doxygen-config.doxygen
Original file line number Diff line number Diff line change
Expand Up @@ -880,12 +880,13 @@ INPUT = ./README.md \
./docs/hdr/ \
./docs/hdr/libccc/ \
./docs/hdr/libccc/sys/ \
./docs/hdr/libccc/text/ \
./docs/hdr/libccc/math/ \
./docs/hdr/libccc/math/algebra/ \
./docs/hdr/libccc/monad/ \
./docs/hdr/libccc/image/ \
./docs/hdr/libccc/random/ \
./docs/hdr/libccc/generic/ \
./docs/hdr/libccc/encode/ \
./docs/hdr/libccc/image/ \

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
Loading