generated from quinnj/Example.jl
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
9c794bf
commit 9e1d104
Showing
21 changed files
with
143,804 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,229 @@ | ||
# This file is machine-generated - editing it directly is not advised | ||
|
||
julia_version = "1.10.2" | ||
manifest_format = "2.0" | ||
project_hash = "7f83ef812798b824e41f4ce25e5804cbb7b03e5a" | ||
|
||
[[deps.ArgTools]] | ||
uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" | ||
version = "1.1.1" | ||
|
||
[[deps.Artifacts]] | ||
uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" | ||
|
||
[[deps.Base64]] | ||
uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" | ||
|
||
[[deps.CEnum]] | ||
git-tree-sha1 = "389ad5c84de1ae7cf0e28e381131c98ea87d54fc" | ||
uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82" | ||
version = "0.5.0" | ||
|
||
[[deps.Clang]] | ||
deps = ["CEnum", "Clang_jll", "Downloads", "Pkg", "TOML"] | ||
git-tree-sha1 = "846054622cb22aa63b5d51b5d84ec04b42d4d587" | ||
uuid = "40e3b903-d033-50b4-a0cc-940c62c95e31" | ||
version = "0.17.8" | ||
|
||
[[deps.Clang_jll]] | ||
deps = ["Artifacts", "JLLWrappers", "Libdl", "TOML", "Zlib_jll", "libLLVM_jll"] | ||
git-tree-sha1 = "de2204d98741f57e7ddb9a6a738db74ba8a608cb" | ||
uuid = "0ee61d77-7f21-5576-8119-9fcc46b10100" | ||
version = "15.0.7+10" | ||
|
||
[[deps.Dates]] | ||
deps = ["Printf"] | ||
uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" | ||
|
||
[[deps.Downloads]] | ||
deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] | ||
uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" | ||
version = "1.6.0" | ||
|
||
[[deps.Expat_jll]] | ||
deps = ["Artifacts", "JLLWrappers", "Libdl"] | ||
git-tree-sha1 = "4558ab818dcceaab612d1bb8c19cee87eda2b83c" | ||
uuid = "2e619515-83b5-522b-bb60-26c02a35a201" | ||
version = "2.5.0+0" | ||
|
||
[[deps.FileWatching]] | ||
uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" | ||
|
||
[[deps.Git]] | ||
deps = ["Git_jll"] | ||
git-tree-sha1 = "04eff47b1354d702c3a85e8ab23d539bb7d5957e" | ||
uuid = "d7ba0133-e1db-5d97-8f8c-041e4b3a1eb2" | ||
version = "1.3.1" | ||
|
||
[[deps.Git_jll]] | ||
deps = ["Artifacts", "Expat_jll", "JLLWrappers", "LibCURL_jll", "Libdl", "Libiconv_jll", "OpenSSL_jll", "PCRE2_jll", "Zlib_jll"] | ||
git-tree-sha1 = "12945451c5d0e2d0dca0724c3a8d6448b46bbdf9" | ||
uuid = "f8c6e375-362e-5223-8a59-34ff63f689eb" | ||
version = "2.44.0+1" | ||
|
||
[[deps.HistoricalStdlibVersions]] | ||
git-tree-sha1 = "c8b04a26eaa706b4da6968dfc27ae2d030547cba" | ||
uuid = "6df8b67a-e8a0-4029-b4b7-ac196fe72102" | ||
version = "1.2.2" | ||
|
||
[[deps.InteractiveUtils]] | ||
deps = ["Markdown"] | ||
uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" | ||
|
||
[[deps.JLLPrefixes]] | ||
deps = ["Artifacts", "Git", "HistoricalStdlibVersions", "Pkg", "Preferences", "SHA", "Scratch"] | ||
git-tree-sha1 = "9343fd4bcb8a4f4f661325e353d70aa00be884c2" | ||
uuid = "afc68a34-7891-4c5a-9da1-1c62935e7b0d" | ||
version = "0.3.4" | ||
|
||
[[deps.JLLWrappers]] | ||
deps = ["Artifacts", "Preferences"] | ||
git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" | ||
uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" | ||
version = "1.5.0" | ||
|
||
[[deps.LibCURL]] | ||
deps = ["LibCURL_jll", "MozillaCACerts_jll"] | ||
uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" | ||
version = "0.6.4" | ||
|
||
[[deps.LibCURL_jll]] | ||
deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] | ||
uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" | ||
version = "8.4.0+0" | ||
|
||
[[deps.LibGit2]] | ||
deps = ["Base64", "LibGit2_jll", "NetworkOptions", "Printf", "SHA"] | ||
uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" | ||
|
||
[[deps.LibGit2_jll]] | ||
deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll"] | ||
uuid = "e37daf67-58a4-590a-8e99-b0245dd2ffc5" | ||
version = "1.6.4+0" | ||
|
||
[[deps.LibSSH2_jll]] | ||
deps = ["Artifacts", "Libdl", "MbedTLS_jll"] | ||
uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" | ||
version = "1.11.0+1" | ||
|
||
[[deps.Libdl]] | ||
uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" | ||
|
||
[[deps.Libiconv_jll]] | ||
deps = ["Artifacts", "JLLWrappers", "Libdl"] | ||
git-tree-sha1 = "f9557a255370125b405568f9767d6d195822a175" | ||
uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" | ||
version = "1.17.0+0" | ||
|
||
[[deps.Logging]] | ||
uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" | ||
|
||
[[deps.Markdown]] | ||
deps = ["Base64"] | ||
uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" | ||
|
||
[[deps.MbedTLS_jll]] | ||
deps = ["Artifacts", "Libdl"] | ||
uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" | ||
version = "2.28.2+1" | ||
|
||
[[deps.MozillaCACerts_jll]] | ||
uuid = "14a3606d-f60d-562e-9121-12d972cd8159" | ||
version = "2023.1.10" | ||
|
||
[[deps.NetworkOptions]] | ||
uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" | ||
version = "1.2.0" | ||
|
||
[[deps.OpenSSL_jll]] | ||
deps = ["Artifacts", "JLLWrappers", "Libdl"] | ||
git-tree-sha1 = "60e3045590bd104a16fefb12836c00c0ef8c7f8c" | ||
uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" | ||
version = "3.0.13+0" | ||
|
||
[[deps.PCRE2_jll]] | ||
deps = ["Artifacts", "Libdl"] | ||
uuid = "efcefdf7-47ab-520b-bdef-62a2eaa19f15" | ||
version = "10.42.0+1" | ||
|
||
[[deps.Pkg]] | ||
deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] | ||
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" | ||
version = "1.10.0" | ||
|
||
[[deps.Preferences]] | ||
deps = ["TOML"] | ||
git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" | ||
uuid = "21216c6a-2e73-6563-6e65-726566657250" | ||
version = "1.4.3" | ||
|
||
[[deps.Printf]] | ||
deps = ["Unicode"] | ||
uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" | ||
|
||
[[deps.REPL]] | ||
deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] | ||
uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" | ||
|
||
[[deps.Random]] | ||
deps = ["SHA"] | ||
uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" | ||
|
||
[[deps.SHA]] | ||
uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" | ||
version = "0.7.0" | ||
|
||
[[deps.Scratch]] | ||
deps = ["Dates"] | ||
git-tree-sha1 = "3bac05bc7e74a75fd9cba4295cde4045d9fe2386" | ||
uuid = "6c6a2e73-6563-6170-7368-637461726353" | ||
version = "1.2.1" | ||
|
||
[[deps.Serialization]] | ||
uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" | ||
|
||
[[deps.Sockets]] | ||
uuid = "6462fe0b-24de-5631-8697-dd941f90decc" | ||
|
||
[[deps.TOML]] | ||
deps = ["Dates"] | ||
uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" | ||
version = "1.0.3" | ||
|
||
[[deps.Tar]] | ||
deps = ["ArgTools", "SHA"] | ||
uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" | ||
version = "1.10.0" | ||
|
||
[[deps.UUIDs]] | ||
deps = ["Random", "SHA"] | ||
uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" | ||
|
||
[[deps.Unicode]] | ||
uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" | ||
|
||
[[deps.Zlib_jll]] | ||
deps = ["Libdl"] | ||
uuid = "83775a58-1f1d-513f-b197-d71354ab007a" | ||
version = "1.2.13+1" | ||
|
||
[[deps.aws_c_common_jll]] | ||
deps = ["Artifacts", "JLLWrappers", "Libdl"] | ||
git-tree-sha1 = "3cbdb09867f78386555469ddecaf276ff327936a" | ||
uuid = "73048d1d-b8c4-5092-a58d-866c5e8d1e50" | ||
version = "0.9.3+1" | ||
|
||
[[deps.libLLVM_jll]] | ||
deps = ["Artifacts", "Libdl"] | ||
uuid = "8f36deef-c2a5-5394-99ed-8e07531fb29a" | ||
version = "15.0.7+10" | ||
|
||
[[deps.nghttp2_jll]] | ||
deps = ["Artifacts", "Libdl"] | ||
uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" | ||
version = "1.52.0+1" | ||
|
||
[[deps.p7zip_jll]] | ||
deps = ["Artifacts", "Libdl"] | ||
uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" | ||
version = "17.4.0+2" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
[deps] | ||
Clang = "40e3b903-d033-50b4-a0cc-940c62c95e31" | ||
JLLPrefixes = "afc68a34-7891-4c5a-9da1-1c62935e7b0d" | ||
aws_c_common_jll = "73048d1d-b8c4-5092-a58d-866c5e8d1e50" | ||
|
||
[compat] | ||
Clang = "0.17" | ||
JLLPrefixes = "0.3" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
#!/bin/bash | ||
dir=$(dirname "$0") | ||
julia --project="$dir" "$dir/generator.jl" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
using Clang.Generators | ||
using Clang.JLLEnvs | ||
using JLLPrefixes | ||
using aws_c_common_jll | ||
|
||
cd(@__DIR__) | ||
|
||
for target in JLLEnvs.JLL_ENV_TRIPLES | ||
options = load_options(joinpath(@__DIR__, "generator.toml")) | ||
options["general"]["output_file_path"] = joinpath(@__DIR__, "..", "lib", "$target.jl") | ||
mkpath(dirname(options["general"]["output_file_path"])) | ||
|
||
metas = collect_artifact_metas(["aws_c_common_jll"]) | ||
metas_keys = collect(keys(metas)) | ||
|
||
jll_include_dirs = Dict( | ||
"aws_c_common_jll" => ["aws/common"], | ||
) | ||
|
||
# add compiler flags, e.g. "-DXXXXXXXXX" | ||
args = get_default_args() # Note you must call this function firstly and then append your own flags | ||
header_dirs = String[] | ||
|
||
for (jll_name, include_dirs) in collect(jll_include_dirs) | ||
meta_key = metas_keys[findfirst(it -> it.name == jll_name, metas_keys)] | ||
meta = metas[meta_key] | ||
if length(meta["paths"]) != 1 | ||
error("not sure what to do with these paths", meta) | ||
end | ||
path = meta["paths"][1] | ||
push!(args, "-I$(joinpath(path, "include"))") | ||
for dir in include_dirs | ||
push!(header_dirs, joinpath(path, "include", dir)) | ||
end | ||
end | ||
|
||
headers = String[] | ||
for header_dir in header_dirs, file in readdir(header_dir, join=true) | ||
if endswith(file, ".h") | ||
push!(headers, file) | ||
end | ||
end | ||
|
||
# create context | ||
ctx = create_context(headers, args, options) | ||
|
||
# run generator | ||
build!(ctx) | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
[general] | ||
library_name = "libaws_c_common" | ||
smart_de_anonymize = true | ||
extract_c_comment_style = "doxygen" | ||
show_c_function_prototype = true | ||
output_ignorelist = [ | ||
"AWS_RESTRICT", | ||
"AWS_THREAD_LOCAL", | ||
"SIZE_MAX_POWER_OF_TWO", | ||
"AWS_COMMON_MATH_API", | ||
"AWS_THREAD_ONCE_STATIC_INIT", | ||
"AWS_BUS_ADDRESS_ALL", | ||
] | ||
|
||
auto_mutability = false | ||
auto_mutability_with_new = false | ||
auto_mutability_includelist = [] | ||
|
||
# the code in the following file will be copy-pasted to `output_file_path` before the generated code. | ||
# this is often used for applying custom patches, e.g. adding missing definitions. | ||
# prologue_file_path = "./prologue.jl" | ||
|
||
# Julia's `@enum` do not allow duplicated values, so by default, C enums are translated to | ||
# CEnum.jl's `@cenum`. | ||
# if this entry is true, `@enum` is used and those duplicated enum constants are just commented. | ||
use_julia_native_enum_type = false | ||
|
||
# use `@cenum` but do not print `using CEnum`. | ||
# this is useful in the case of using `CEnum` directly in the source tree instead of using `CEnum` as a dependency | ||
print_using_CEnum = true | ||
|
||
# Print enums directly as integers without @(c)enum wrapper | ||
# Override above two options | ||
print_enum_as_integer = false | ||
|
||
# use deterministic symbol instead of `gensym`-generated `var"##XXX"` | ||
use_deterministic_symbol = true | ||
|
||
[codegen] | ||
use_julia_bool = true |
Oops, something went wrong.