You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
1.0 KiB
29 lines
1.0 KiB
(skip-build)
|
|
(import &comptime-only "Dependencies.cake")
|
|
|
|
;; Add all the necessary includes, defines, download the repo, etc.
|
|
(defmacro use-stb-ds (clone-func-name symbol)
|
|
(tokenize-push output
|
|
;; TODO: Make this an "infect" to the importer rather than having to be global
|
|
(add-c-search-directory-global "Dependencies/stb")
|
|
;; TODO: Remove once importing this module no longer changes all compile commands
|
|
(add-build-config-label "STB")
|
|
|
|
;; (add-c-search-directory-module "Dependencies/stb")
|
|
|
|
;; TODO: Remove parameter, replace with gensym/check for redefine?
|
|
(add-dependency-git-submodule (token-splice clone-func-name)
|
|
"https://github.com/nothings/stb"
|
|
"Dependencies/stb")
|
|
|
|
|
|
;; Enforce only defining the implemention once
|
|
(comptime-cond
|
|
('stb-ds-defined)
|
|
(true
|
|
(c-preprocessor-define STB_DS_IMPLEMENTATION)
|
|
(comptime-define-symbol 'stb-ds-defined)))
|
|
|
|
(c-import &with-decls "stb_ds.h"
|
|
&with-defs "stb_ds.h"))
|
|
(return true))
|
|
|