Compare commits
2418 Commits
tmp-new-gp
...
temp-legac
Author | SHA1 | Date | |
---|---|---|---|
8c5d90f5ce | |||
215f805ce6 | |||
2551cf9087 | |||
5d6e4822d8 | |||
40ffb94ab4 | |||
410a6efb74 | |||
e9f82d3dc7 | |||
![]() |
28985ccc05 | ||
43d04c7eeb | |||
![]() |
3b7ac10d62 | ||
75e62df429 | |||
cd478fbfb3 | |||
edc89c7f46 | |||
d14c2d549b | |||
597955d0a8 | |||
16b145bc62 | |||
fb9dc810f1 | |||
![]() |
801513efa0 | ||
87ae10a050 | |||
35b4e3a350 | |||
c771dd5e9c | |||
6a1ab4747b | |||
9246ff373a | |||
![]() |
9835d5e58b | ||
![]() |
6bba4d864e | ||
3370c1a8a7 | |||
ad5e3d30a2 | |||
2e3fb58128 | |||
5bee991132 | |||
348ec37f52 | |||
![]() |
2f834bfc14 | ||
![]() |
4812eda3c5 | ||
2232855b50 | |||
95fd7c3679 | |||
bc6b612d8b | |||
![]() |
44f1495b57 | ||
e8465f941c | |||
835203fde8 | |||
73f8a7ca0a | |||
6d2100f7de | |||
99faebfca6 | |||
2280a71f90 | |||
9b2b61a07b | |||
d3c063188e | |||
ff98b5eaa8 | |||
e00a027c1e | |||
533a5a6a8c | |||
bbf87c4f75 | |||
7ebd1f4b79 | |||
37922eab90 | |||
135e530356 | |||
![]() |
d175eb6c30 | ||
8358cc7963 | |||
cd21022b78 | |||
935b7a6f65 | |||
1f8567ac68 | |||
757041560f | |||
3407ed5f9b | |||
![]() |
dec8854bf3 | ||
![]() |
47f3b53756 | ||
c7f788b877 | |||
3c016fbfd0 | |||
cd1e4ae448 | |||
9a14887905 | |||
d136a996ca | |||
![]() |
1e4c557d82 | ||
0a8d21e0c9 | |||
49babc7caa | |||
f76b537d48 | |||
bf49e6040c | |||
b985437283 | |||
92a99c1496 | |||
5152c7c152 | |||
bb376da6df | |||
03aeef64d5 | |||
c505f19efe | |||
1cf465bbc3 | |||
5e1229f253 | |||
82f65d8971 | |||
011d3c75a7 | |||
00dc747702 | |||
![]() |
180db0f752 | ||
914617f8fd | |||
523bbf7065 | |||
da4ef05e4d | |||
5653c5fcdd | |||
79da7f2a8f | |||
![]() |
2e70d5cb98 | ||
5ddbc14bb2 | |||
9ea1b88f0f | |||
b8ffd43bd2 | |||
4d7c990180 | |||
e69c4482f1 | |||
![]() |
8e1323f633 | ||
f4d7ea2cf6 | |||
98f688ac42 | |||
862170c0b1 | |||
ca1daf4cda | |||
c2715dc416 | |||
63ea0f7581 | |||
8fd2b79ca1 | |||
d8094f9212 | |||
60f260eb6a | |||
d14d570580 | |||
c8e8f107bf | |||
675f6ef089 | |||
178868cf42 | |||
0e9367fc29 | |||
b1329d7eaa | |||
9fedcde750 | |||
bdd0ac5bce | |||
1ef686bd26 | |||
b6de6da59a | |||
3b15467e97 | |||
![]() |
1b5db02a02 | ||
28c3739a9b | |||
5539fb3121 | |||
02ce29c6ee | |||
4b1d315017 | |||
47d4ce498e | |||
2d04012e57 | |||
9dfabc1de3 | |||
93f74299f0 | |||
cdd8b96e3b | |||
eb3e56a36e | |||
db80cf6ad7 | |||
64e196422e | |||
7fa7722350 | |||
6cd30d5ff0 | |||
9024ac31be | |||
cb62095c1c | |||
96cc603037 | |||
c8a07ef663 | |||
bcdce4ffd8 | |||
44e530e1b1 | |||
![]() |
9d73bbd966 | ||
![]() |
8e3879ab52 | ||
![]() |
77df9d788a | ||
![]() |
f48fadc953 | ||
![]() |
1571ee66b5 | ||
3935bf255e | |||
411bcf1fe7 | |||
b35e33317d | |||
d6fef73ef1 | |||
816a73891b | |||
d3374e5337 | |||
931779197a | |||
09a74ff8b6 | |||
50d832634e | |||
144d9f2b2e | |||
88fbf0a8fc | |||
ccdf189d3c | |||
441dd08dba | |||
c484599687 | |||
c8be3d3b27 | |||
74888cdbfd | |||
a084839605 | |||
b3913d7551 | |||
9422627155 | |||
8f543a73ab | |||
d0a552b5c6 | |||
5f09440d5a | |||
9f153949f9 | |||
1c382a4940 | |||
02aefa7659 | |||
b767628173 | |||
![]() |
93253d5dcc | ||
d58072caf4 | |||
47dd42485e | |||
4a445c8dc0 | |||
f72cedffb6 | |||
2d1fe736fa | |||
57097e9a85 | |||
![]() |
4344b2bf19 | ||
52b7f2b089 | |||
bb3a538843 | |||
8bd32019ca | |||
6e6da22eb0 | |||
b8d1e576bc | |||
ae6a4fcc7a | |||
00c7e760b3 | |||
2a1d12d7a0 | |||
995c904d00 | |||
8ca09e6c5e | |||
![]() |
76d8614236 | ||
6e426259b4 | |||
6ca5ac2084 | |||
275419f6fd | |||
1c4c904786 | |||
da101118d4 | |||
7357176b57 | |||
cb39058f2f | |||
133d398120 | |||
d51bc8215f | |||
d4a4691c0c | |||
a83502f05f | |||
7f4ee97b9e | |||
6543290116 | |||
fad857f473 | |||
4114ace616 | |||
443690604f | |||
1de14061cb | |||
9a1d772339 | |||
ef970b7756 | |||
b5d22a8134 | |||
80f8b7cbbb | |||
e3801a2bd4 | |||
d9e00fbbf6 | |||
bc2121147f | |||
111bf7d76b | |||
2ee6891728 | |||
b4db5a93bc | |||
d8e980a4a6 | |||
8159e0a666 | |||
f639b59a29 | |||
b876ce2a4a | |||
f391e8f316 | |||
0f50ae131f | |||
5723bf926d | |||
becb1530b1 | |||
2c55d8c1cf | |||
05b38ecc78 | |||
aa78278ef6 | |||
155bb95353 | |||
![]() |
a8f7d41d38 | ||
![]() |
2c4dfe3453 | ||
754dae6c76 | |||
47616992f8 | |||
418d82af28 | |||
c4b32f1b29 | |||
b98a937db6 | |||
03173d63c0 | |||
9ef3736959 | |||
56bf92f0f6 | |||
b9c0eed206 | |||
fc06b4c033 | |||
52fa0c4251 | |||
4e9e44ad28 | |||
ba62e20af6 | |||
7cfea48752 | |||
b8605ee458 | |||
e0cc86978c | |||
f9a805164a | |||
![]() |
fcf1a9ff71 | ||
c76e1ecac6 | |||
59e1009f10 | |||
85ef8e1945 | |||
a91f9c2c01 | |||
f0ac55f519 | |||
![]() |
a26038ff38 | ||
![]() |
3063d90cfc | ||
eb7218de8d | |||
9a4927031d | |||
ed7dc4282c | |||
5c3dc52536 | |||
e3ef56ef91 | |||
5d6e7df4a8 | |||
a27024e36d | |||
97dd107070 | |||
051a341cf0 | |||
14980c9b3a | |||
f256201876 | |||
50f9c1c09c | |||
bddcb89cda | |||
28105caaa3 | |||
843ad51d18 | |||
34c701abbd | |||
3f657e7ef1 | |||
83c0f6ac37 | |||
5c790fd52b | |||
709e620977 | |||
378f65f7d9 | |||
3354ec3fb3 | |||
2a60b979cc | |||
2d041fc468 | |||
190ad73590 | |||
debb233787 | |||
fae68ec651 | |||
8ea5a5259d | |||
82fc8786ea | |||
0df574b55e | |||
6636edbb00 | |||
9d0777e514 | |||
da85245704 | |||
94323bb427 | |||
4b0e7fe511 | |||
26f721b516 | |||
e58e023e1a | |||
d9505831a4 | |||
db9e08a0d1 | |||
![]() |
1f0048cc2d | ||
faac25fefe | |||
![]() |
1a820680a1 | ||
9435ee8c65 | |||
7688f0ace7 | |||
c52a18abf8 | |||
883d8ea16c | |||
329efa23d0 | |||
31f0845b7e | |||
8f0907b797 | |||
d4099465cd | |||
b98d116257 | |||
7ff054c6d1 | |||
c46d4d9fad | |||
7f24d90f11 | |||
ce1d023667 | |||
598a26fd8a | |||
935ef06fd1 | |||
fdb854b932 | |||
![]() |
bd00324c26 | ||
322abb2e4b | |||
8c33a53b17 | |||
9145a4d08f | |||
780c0ea097 | |||
dfa5201763 | |||
7537369498 | |||
6e879c3998 | |||
242bfd28ce | |||
dccdc6213e | |||
8fb8a6529f | |||
c63569c0e0 | |||
abbc8333ac | |||
af6f3a4020 | |||
1c38bfdc6f | |||
004913dd95 | |||
3f5073a8e2 | |||
7be07a9d6e | |||
a720a4aabb | |||
c5d3846b10 | |||
cbb897070d | |||
148dcb3954 | |||
faa97de208 | |||
9dd27a2c87 | |||
929811df63 | |||
f4a9a3767e | |||
e86c2f7288 | |||
c355be6fae | |||
![]() |
4ffee9a48d | ||
ab444a80a2 | |||
69ee9ca90e | |||
01d7dedd74 | |||
9bb2afb55e | |||
5d9ade27de | |||
3c60d62dba | |||
d0e3388848 | |||
da00d62c49 | |||
56b218296c | |||
b683a37824 | |||
5e5fe217ca | |||
41c10ac84a | |||
e7a21275c0 | |||
![]() |
4527dd1ce4 | ||
3ffc558341 | |||
0554537c3c | |||
bb8953ab49 | |||
5b7e7d67a5 | |||
4cba209edd | |||
ccbf9ee482 | |||
eff62ea8ab | |||
5d57d9f899 | |||
e4bf58e285 | |||
72b9e07cf2 | |||
dfa5bd689e | |||
c922b9e2c1 | |||
b872ad037a | |||
16264aebe6 | |||
b1d3b14711 | |||
650a15fb9b | |||
bd7b181e10 | |||
df8d96ab66 | |||
276e419671 | |||
7e55ff15b0 | |||
3d3ba9ca8e | |||
cf64a1d73e | |||
90f4b35bc2 | |||
c15ae2e87b | |||
4206b30275 | |||
32e9c9802e | |||
6161ce6e5d | |||
982d6589a8 | |||
a69e5c2348 | |||
95055af668 | |||
![]() |
106d937a4e | ||
f18067aa03 | |||
a9696f04a0 | |||
fbcc00d10d | |||
c9795102c2 | |||
e7c58941b1 | |||
65166e145b | |||
66de653784 | |||
![]() |
79fe27b976 | ||
34e04ccde2 | |||
ef268c7893 | |||
![]() |
f00d9e80ae | ||
6bb703a9ee | |||
8bf9d482da | |||
58ccd8338e | |||
7c98632289 | |||
cfd087673d | |||
1cf64434ed | |||
6bd2c6789b | |||
df40e9d0aa | |||
e190b70946 | |||
e75f3e3feb | |||
90ccb71969 | |||
547efb6b1e | |||
![]() |
92d7f9ac56 | ||
416aef4e13 | |||
![]() |
0f22b5599a | ||
4a7e1c9209 | |||
c64d1b23df | |||
b544225202 | |||
acdc043c30 | |||
edbf04ff37 | |||
![]() |
5c726dd4ef | ||
c39e932631 | |||
2185943235 | |||
f7c6d3705d | |||
3cefa13770 | |||
feeb8310c8 | |||
b6c28002ac | |||
209f2b85d7 | |||
011327224e | |||
0ea282f746 | |||
![]() |
4593fb52cf | ||
![]() |
d23818fcd9 | ||
95964444c6 | |||
1516f7dcde | |||
6b508eb012 | |||
6dd8ceef2a | |||
![]() |
2ac5b55289 | ||
b708f45922 | |||
a5ac0375b0 | |||
45fb7a1db5 | |||
4a9f60ecd2 | |||
40f40e9931 | |||
70c6beeafb | |||
087e95d0fe | |||
a02992f131 | |||
302b04a5a3 | |||
c51b8ec863 | |||
43b65150ed | |||
930398d5b1 | |||
6b2dd3e314 | |||
b1163d2198 | |||
![]() |
66f826ae85 | ||
eaec01cad5 | |||
2d0877ed7e | |||
3283bc6367 | |||
f32d7dd0c8 | |||
68d037190f | |||
e1dc54c8fc | |||
6777c420db | |||
d94d7a5d8f | |||
07bacb423b | |||
45645936e9 | |||
c0e4532331 | |||
2d18dd9309 | |||
1c61db5346 | |||
![]() |
33be9c0885 | ||
c257443192 | |||
814f360c83 | |||
e127182065 | |||
75ad435ceb | |||
fde7d39051 | |||
![]() |
abfa09752f | ||
270ed1c716 | |||
b8064e3312 | |||
![]() |
bd6912930f | ||
614aa9d8ec | |||
f9f73473d6 | |||
b585872450 | |||
d5dcbabdd2 | |||
![]() |
4d982cbb5d | ||
0124de9d0e | |||
c96f2778f0 | |||
dfea5e24ad | |||
c1ffea157c | |||
f9076f3869 | |||
33fc230ba2 | |||
![]() |
e6d50cdd43 | ||
ca9e1f6391 | |||
dd95deadf3 | |||
fd7c070861 | |||
40cd041f74 | |||
b8cc181808 | |||
![]() |
b910114384 | ||
381fe684e2 | |||
65f4f50640 | |||
7a44f62bdb | |||
317dfc1735 | |||
17a773cdce | |||
36348bf4fc | |||
8eef98710b | |||
![]() |
67e23b4b29 | ||
a571c74e10 | |||
31ebe8982e | |||
![]() |
6b35d9e6fb | ||
a2b9b9d3c4 | |||
f0a3d2beb2 | |||
6f7171525b | |||
![]() |
64a3a11e19 | ||
6243972319 | |||
![]() |
279e7dac7d | ||
83c2cbb880 | |||
36f5967b99 | |||
228d79b789 | |||
6de0f29950 | |||
151fc2fcd8 | |||
6a2c42a0d5 | |||
2b806cb955 | |||
ddc6b86a5b | |||
a617929683 | |||
3cf6516e7b | |||
![]() |
9130a60d3d | ||
7b6b740ace | |||
e1c0d18598 | |||
1cf05f17eb | |||
10a2c50733 | |||
3a8fa77c1f | |||
2b6c633b63 | |||
0e88c2fc59 | |||
30273b86c7 | |||
4c3b984b3d | |||
77f10fceb2 | |||
81c5b759d6 | |||
a646a4b47e | |||
be692cc4fe | |||
ef8bb8c0d5 | |||
22fc0cbd69 | |||
3237c6dbe8 | |||
b513c89e84 | |||
ba1e97f1c6 | |||
5606942c63 | |||
2967726a29 | |||
2a8afc142f | |||
9a0a4b0c0d | |||
12bde317f4 | |||
35d2a22846 | |||
fca94c5e0d | |||
f6290cd2a4 | |||
35da733e6b | |||
9b6e86ace1 | |||
![]() |
29755e1df8 | ||
f1d191120f | |||
ad8add5f0c | |||
2580d2bab5 | |||
77eadbede4 | |||
585d81ba2b | |||
![]() |
f748a81f25 | ||
7927ac2fbe | |||
79973494ec | |||
e08c932482 | |||
3323cd9c9a | |||
11f38f59e2 | |||
4c4e8cc926 | |||
70648683a2 | |||
cc09661c4e | |||
b3a713fffa | |||
9b5dda3b07 | |||
93de6b912f | |||
4919403c29 | |||
7a05b5d2aa | |||
41a0411d79 | |||
b0fe0e6a30 | |||
0473462241 | |||
a5ff46e0fc | |||
dc64673f6e | |||
![]() |
56435b3268 | ||
![]() |
792bf82f11 | ||
9b775ebad7 | |||
6dde88c536 | |||
54182e4925 | |||
3e5a4d1412 | |||
633c2f07da | |||
2eba15d3e8 | |||
5c6ffd07e0 | |||
d1ea39aac7 | |||
1c83354c63 | |||
![]() |
c2a2f3553a | ||
b8403b065e | |||
e63799e791 | |||
b830263186 | |||
![]() |
091100bfd7 | ||
![]() |
2ae4397ec9 | ||
![]() |
57816a6435 | ||
![]() |
d8e9647ae2 | ||
d20bad914e | |||
e4f51b3a6e | |||
743a027862 | |||
1160a3a3f8 | |||
d2a3b99ff7 | |||
![]() |
532b33973b | ||
![]() |
328a911379 | ||
5c0d18f682 | |||
![]() |
b6a76243cd | ||
1cde1562e8 | |||
![]() |
9f4ec73101 | ||
6c3965c027 | |||
cebc5531e9 | |||
785931fc3c | |||
a3d0f77ded | |||
a7b91fc8bc | |||
31d80ddeaa | |||
![]() |
df2ab4e758 | ||
![]() |
5946ea938a | ||
f4d8382c86 | |||
75f0aaab3d | |||
b8289eb1b9 | |||
8fab580949 | |||
c08fda3a6b | |||
256cb68d33 | |||
d901f8b75b | |||
7140016838 | |||
d2f47017b9 | |||
9622dace3e | |||
![]() |
d90b320444 | ||
7f3af2aaee | |||
15bc3d260d | |||
d373206c3f | |||
3bb34fb7ee | |||
ee78c860b8 | |||
84fc086254 | |||
5d3df1c296 | |||
3df6e75a26 | |||
beaae4533a | |||
84315368ef | |||
697363545f | |||
e42c662723 | |||
1154b45526 | |||
4144a85bda | |||
d7fbc5708a | |||
95465606b3 | |||
a18c291435 | |||
3545d8a500 | |||
522dcc54af | |||
9f8cc1bc34 | |||
549f9a1178 | |||
df3a67fc52 | |||
f86722afc7 | |||
6a1cc0d855 | |||
3bb8b64c47 | |||
d2e4bd7995 | |||
af983a3eef | |||
06b212c446 | |||
![]() |
eca0c95d51 | ||
72a5bb8ba9 | |||
ff1883307f | |||
b73a52302e | |||
088157e447 | |||
e658c8851a | |||
f8cec1ff30 | |||
a76c1ddecc | |||
6e8217d35e | |||
![]() |
6ad9d8e224 | ||
91b5254598 | |||
cf8922ef57 | |||
b7e193cdad | |||
d48735cca2 | |||
575884b827 | |||
7bf306622e | |||
b8bd304bd4 | |||
7d030213b2 | |||
cf3238c1c7 | |||
ac4836af6a | |||
30f244d96f | |||
3c2a2a6c96 | |||
8a3ff496a7 | |||
498f079d2c | |||
881d1c9bc2 | |||
35b2b9b6e6 | |||
5c814e75f2 | |||
![]() |
600c391a65 | ||
3d3c0dfe30 | |||
5b5811c97b | |||
230f72347a | |||
![]() |
257b4d138c | ||
![]() |
33bad77043 | ||
524a9e3db8 | |||
5485057a27 | |||
0ea173165b | |||
9bae9d97b1 | |||
d86af60429 | |||
3c0162295f | |||
0d43117a40 | |||
23662a9a84 | |||
52b93c423d | |||
b8f489c65b | |||
133095fff4 | |||
18def163f8 | |||
f0b4aa5d59 | |||
8d61ca5815 | |||
2c1bffa286 | |||
24246d9870 | |||
![]() |
838c4a97f1 | ||
75489b5887 | |||
d54eb5ed20 | |||
510f3fe9a9 | |||
10981bc8c0 | |||
18960c08fd | |||
96764c3a1f | |||
9830603620 | |||
f59418fd92 | |||
5cda99ff52 | |||
c756d08b4a | |||
1152a437e0 | |||
0ff7a7b3b5 | |||
62346abc02 | |||
483bc6c9c1 | |||
e2975cb701 | |||
209bf7780e | |||
650d2f863d | |||
b6b5f317a3 | |||
23d2e77a54 | |||
69d3f41d75 | |||
6562a11c60 | |||
dc11e1164a | |||
947ece8d39 | |||
8b9469ec36 | |||
5a30fe29ef | |||
e0c966a3b9 | |||
49b068bc63 | |||
![]() |
e6eefdd402 | ||
dce03ecd5c | |||
798b49109b | |||
9bed68de13 | |||
36307d8fba | |||
1064bf58c3 | |||
b19751bee2 | |||
65b1b1cd34 | |||
a17f74ab34 | |||
0d644e6d06 | |||
9dd5c2a7ec | |||
1fed24de5a | |||
409c62aa61 | |||
02012b0cce | |||
fa99323f09 | |||
e6e9f1ac5a | |||
![]() |
2804497312 | ||
43ddfdb1a5 | |||
653100cd65 | |||
004d858138 | |||
7e89bbb2ff | |||
0a3650210f | |||
d3edb3cfc7 | |||
502089f275 | |||
298372fa06 | |||
f0fa90e156 | |||
fe988f6c7f | |||
60bf561d37 | |||
![]() |
2e33172719 | ||
15b4120064 | |||
41053deba4 | |||
2e6cd70473 | |||
216a2c0f37 | |||
c1a231f40b | |||
412c468893 | |||
7cc8f2743e | |||
e550e400cd | |||
ea39d808b5 | |||
fc79b17dce | |||
66483c58eb | |||
f5dae5844c | |||
9978689595 | |||
f7bfbc357c | |||
b83f33ffca | |||
4acbb84efa | |||
2770010224 | |||
08f5219d1c | |||
46f93ac6be | |||
04a75c90d5 | |||
20ba130315 | |||
a59fedb0bf | |||
6737f89e49 | |||
7a24fe372c | |||
f5e7221fbd | |||
b690f4c2e6 | |||
06780aa4e6 | |||
25f18e6c49 | |||
0f06de8072 | |||
58a67e6fb6 | |||
3012eca350 | |||
67254ea37c | |||
e772087ed6 | |||
c7942c31b2 | |||
ca9d65cc97 | |||
4e96d71ddb | |||
![]() |
d209629806 | ||
28f4fc664f | |||
4475c38c5c | |||
06e0776175 | |||
e903403b41 | |||
c654a92237 | |||
c1d295e905 | |||
e1f15e3b32 | |||
1b4f35f6a5 | |||
827fa81767 | |||
f001c85772 | |||
97f894881c | |||
74e9605455 | |||
6c31bd80e3 | |||
b5a5c24396 | |||
0bd6b3e5a0 | |||
f89ea052f7 | |||
9a063e85a5 | |||
67f5596f19 | |||
77b34a00f9 | |||
afde12e066 | |||
988fc24930 | |||
3b7ce70232 | |||
1c5f09e8a8 | |||
1243c2bdae | |||
40d700c6fb | |||
e2993719a8 | |||
5abe127b3d | |||
85fde25178 | |||
10850f0db9 | |||
19e0b60f3e | |||
5ada2afb6d | |||
434133a631 | |||
9634f7fae3 | |||
16f5d51109 | |||
c55dac9904 | |||
afe57c4001 | |||
37097ae62a | |||
3ac656d367 | |||
7a849678c9 | |||
07a5869cf6 | |||
ac2a56d7f3 | |||
019df1fa73 | |||
4c7b0804f8 | |||
cc4d46d91e | |||
9d7e731444 | |||
f24d32f791 | |||
922861c5dc | |||
add1da52ad | |||
9e622e1d02 | |||
f6268f921a | |||
717ab5aeae | |||
4d0f7c3dcd | |||
f5d0a40122 | |||
07341d7b32 | |||
9cad614ad5 | |||
![]() |
9670c649d8 | ||
a24a28db7b | |||
d83a418c45 | |||
28f852ccc3 | |||
00aa57594c | |||
178c184825 | |||
2601b9832d | |||
eb9fa052a1 | |||
6a11cd036c | |||
aebca2bd65 | |||
e6548c03f9 | |||
32ee2ffc7d | |||
14d1ad8dd8 | |||
6d726192be | |||
f37a37cafe | |||
41c7c744eb | |||
ed15900473 | |||
8a6cbcf386 | |||
0fddff027e | |||
a91c8d8efa | |||
62dece5c86 | |||
38bfa53081 | |||
0926495de4 | |||
a632260828 | |||
96f88511ee | |||
132e58610d | |||
3bdf1c11fb | |||
84906d47dc | |||
8b8fbffeea | |||
8a02696724 | |||
530f2abb9b | |||
4ff9c0f4e3 | |||
371fc68678 | |||
285a68b7bb | |||
![]() |
9c28f0eb37 | ||
![]() |
f69c565a33 | ||
fe4e646405 | |||
a3e7280bd8 | |||
8843705f65 | |||
d62e6f1225 | |||
1a71f9d2b8 | |||
cc1cc46099 | |||
17971b8a5b | |||
9e393fc2f1 | |||
![]() |
520be607e8 | ||
7a751327fa | |||
ca29376e00 | |||
b52760a023 | |||
fe746b2738 | |||
5b0e9bd975 | |||
6eea5f70e3 | |||
1af652d42e | |||
83fd3767d3 | |||
8d09a12414 | |||
1269bcce81 | |||
8edd1d8aa5 | |||
a1d2efd190 | |||
b3e0101a35 | |||
173a15bcda | |||
a857156578 | |||
3e7d977886 | |||
9fda233897 | |||
d39e0f9616 | |||
627d42cd56 | |||
ec493d79fa | |||
b568f445a5 | |||
391485f412 | |||
60442b0292 | |||
7974d2bff6 | |||
9c029a3eb0 | |||
![]() |
e62a33e572 | ||
ccf0d22e92 | |||
b69aad60bd | |||
![]() |
1203bd58be | ||
503bcaf1a2 | |||
f49efed953 | |||
3b7e314a28 | |||
d422715094 | |||
1456f30b02 | |||
2918a3a2a3 | |||
1e0e1ad20f | |||
2935b6a2ac | |||
3a8a44b3f9 | |||
16934c198a | |||
![]() |
4412e14708 | ||
4fc7e1a880 | |||
4637f3e83c | |||
58d350b489 | |||
dcbbdc89ea | |||
9ccc21dde3 | |||
4580c18c56 | |||
![]() |
b77494ec61 | ||
7c4826d971 | |||
99847cd642 | |||
b4d3ca624e | |||
263371dc4e | |||
243891104f | |||
af6a68217f | |||
ea182deeb9 | |||
b3101abcce | |||
56ede578e7 | |||
![]() |
7c511f1b47 | ||
14fc89f38f | |||
3a57f5a9cf | |||
f700aa67ac | |||
128aa7f3b0 | |||
3772dda4ab | |||
a094cdacf8 | |||
7eb2018a0b | |||
bb9647b703 | |||
3cd283a424 | |||
011d9cce19 | |||
bb34afac56 | |||
8589f60546 | |||
c7e4c43072 | |||
93a68f2a90 | |||
270a24cc64 | |||
545d469879 | |||
c4e11122c5 | |||
72ea37ae5f | |||
648350e456 | |||
d450a791c3 | |||
4e3ce04855 | |||
e37eebf16f | |||
899ec8b6b8 | |||
176d7bcc2e | |||
31da775ec2 | |||
![]() |
e90ba74d3e | ||
e230ccaf8c | |||
db5ffdd1a4 | |||
6572ad8620 | |||
a5190dce9d | |||
1fd10d9ede | |||
23f8fc38d9 | |||
9531eb24b3 | |||
8e02b53ae7 | |||
2681e480ea | |||
da45c12bef | |||
34f94a02f3 | |||
3fe7d049d2 | |||
5cc118fc09 | |||
7f7ed8e098 | |||
6b9a3be03d | |||
e7156be86e | |||
0b38b8dafa | |||
e73fd4f0c0 | |||
691ab3fc46 | |||
1a3ac2f750 | |||
5d9ebea15d | |||
12722bd354 | |||
2780c7e312 | |||
074010ad6d | |||
9d8fb80f21 | |||
4c4056579b | |||
d040e1da4f | |||
284a3431ae | |||
fa5cf5360c | |||
cf6c8ae01b | |||
6b84465352 | |||
0a2a8d702a | |||
3b51d9065c | |||
5c6053ccb1 | |||
![]() |
50976657ac | ||
4eb5163b18 | |||
16d329da28 | |||
9babe39de9 | |||
cf5529af12 | |||
e87082d8a7 | |||
379672ca0b | |||
9ad19b0453 | |||
c4701a027f | |||
1fb36e9a7c | |||
4a72b64c7b | |||
545b9ddc34 | |||
049e42ef20 | |||
c15e913df8 | |||
7f47f187c1 | |||
b5fe0f02be | |||
73d8015aa3 | |||
2b80bfe9d0 | |||
33f5e8f239 | |||
10488d54d9 | |||
91c44920dd | |||
3cd6ccd968 | |||
2d9c5f3dcf | |||
96a47af413 | |||
9e43a57d22 | |||
9580f23596 | |||
1174cdc914 | |||
9bb7de274d | |||
432c4c74eb | |||
![]() |
901791944d | ||
3ca76ae0e8 | |||
48bb144fea | |||
f4456a4d3c | |||
40ecf9d606 | |||
33eeed5b3c | |||
d73adfdc86 | |||
0f73a27b76 | |||
ef3f33dfd3 | |||
7afcfe111a | |||
604409b8c7 | |||
f60ac5068a | |||
fb08353f38 | |||
b450a8c851 | |||
68150b666c | |||
129ea355c8 | |||
bff9841465 | |||
a493956eaa | |||
a1e6245650 | |||
e72b86d3cb | |||
c667069a12 | |||
7dd0258d4a | |||
ae0b68e129 | |||
e0f3c23ac0 | |||
e9eae1b857 | |||
110c90b3cf | |||
d3b3d72303 | |||
e5ab1495e5 | |||
da7bc51210 | |||
38acd14fb7 | |||
71ce47a71d | |||
1bf35f1b19 | |||
61a7e5be18 | |||
4cab98f8be | |||
0f29f2c3e6 | |||
44bac4c8cc | |||
ca346d2176 | |||
54d076b20d | |||
46cb24e7c2 | |||
0e8d6c2828 | |||
65e7d49939 | |||
ee57afe7e1 | |||
12642bdeab | |||
b38a59881b | |||
6cee404914 | |||
75162ab8c2 | |||
79cee340a8 | |||
511a08585d | |||
b9f29a0f64 | |||
0f47506cde | |||
5c80bcf8c2 | |||
484ea573af | |||
dc389a6152 | |||
a1830859fa | |||
96f20ddc1e | |||
308924caa9 | |||
610619c203 | |||
a40b611128 | |||
f2cd7e08fe | |||
908dfd5e0d | |||
52cb24a779 | |||
3060b98842 | |||
a746cef825 | |||
d356a4f280 | |||
a5dcae0c64 | |||
3d66ee8c97 | |||
e37027634b | |||
4669178fc3 | |||
39c14f4e84 | |||
765c16bbd0 | |||
75ef51cc80 | |||
9301cc74ee | |||
344a8fb3d4 | |||
0d7e0ffdb5 | |||
e82141b6b4 | |||
247ceca629 | |||
18a17d4291 | |||
![]() |
a30e67813d | ||
a3a138b41b | |||
5fdd367786 | |||
![]() |
1ebc0ebdc0 | ||
993fd985f0 | |||
c338388354 | |||
c8058e51ee | |||
1c6b66c9cf | |||
94444aaadf | |||
fb86f3ee18 | |||
ed2a345402 | |||
7056c7520a | |||
831282db85 | |||
ca59391704 | |||
![]() |
f523fb1dc9 | ||
![]() |
c8cef83fae | ||
4d252b5aca | |||
b24e091c5a | |||
3f9376851b | |||
3437cf155e | |||
a5d9b3442d | |||
4267c6280a | |||
dd2ed1c55c | |||
fb62fcf071 | |||
e7544e3ce4 | |||
c1277c5d25 | |||
6856290514 | |||
cd6551d4eb | |||
fc1ae52994 | |||
de610d06a6 | |||
65bd9974d1 | |||
afd81e26af | |||
a9a4bcc3d1 | |||
a775389823 | |||
70171cdfdf | |||
6a59cf0530 | |||
1f85877263 | |||
947154b1f6 | |||
b282338be8 | |||
![]() |
a8471459fd | ||
ec8365b9ed | |||
7f877ee042 | |||
fbeec91abf | |||
24e74f8bef | |||
ddebb0f783 | |||
bb0fc67582 | |||
2f77b2daac | |||
ce1dd44c68 | |||
![]() |
878a805ae8 | ||
f1c29b9bd3 | |||
fc3c589b18 | |||
a7bda30ca8 | |||
16746e8ec2 | |||
3c0d7152c8 | |||
cc4b6c6476 | |||
32bf6455a0 | |||
11ab64cf8d | |||
218f23935c | |||
86cfc30aac | |||
3152d68b70 | |||
93e4b15767 | |||
13373a6ccd | |||
49368c734b | |||
812a9728f8 | |||
314e5cb889 | |||
16166f69be | |||
5dfff02437 | |||
138a4846e2 | |||
86baf6e3ed | |||
3f1f4df3fd | |||
712b0496c1 | |||
967f96ee2e | |||
7b65086fdf | |||
da1dd98101 | |||
bd2f9a16fb | |||
![]() |
52c1f983cb | ||
b45f410b31 | |||
![]() |
74cf22c42c | ||
3a4f2131c2 | |||
9fef80c663 | |||
bf6aa5d63d | |||
abf8750dbc | |||
5b40c48f85 | |||
5417b8434a | |||
802f107e38 | |||
e5c65709a2 | |||
![]() |
8d53ead69b | ||
![]() |
f45a735aad | ||
84189a6340 | |||
f41c7723c9 | |||
5625a21fc7 | |||
da9e14b0b9 | |||
46456a59c4 | |||
7aad4d459e | |||
6d4f16a776 | |||
49032a8ca5 | |||
ae39abe7f3 | |||
fdc2b7bfa4 | |||
bf53956914 | |||
55e3930b25 | |||
d6badf6fde | |||
2a367689d4 | |||
38a2576ace | |||
790fe55c52 | |||
fdb1a7b5e1 | |||
374ce5dcb4 | |||
3131107ba3 | |||
ae5d3fa2d0 | |||
3f3d82cfe9 | |||
11480763b6 | |||
dc6fe73e70 | |||
a4a7af4732 | |||
f3c03982e5 | |||
6feca52349 | |||
f1df685f57 | |||
![]() |
1a516bb714 | ||
496394daad | |||
a337e7738f | |||
f381c31ac6 | |||
288e7d0af0 | |||
e8eb67bb04 | |||
841a354412 | |||
b0d2a435a1 | |||
a072a264b6 | |||
ef59c8295f | |||
c27be07d89 | |||
98b66dc040 | |||
![]() |
c980ed27f0 | ||
53f7c22022 | |||
332d87375d | |||
c64e9c6ae2 | |||
4949dd54eb | |||
cb3b9358bf | |||
6ec0f62e3f | |||
a4e7a5aa4f | |||
adaf92b4ab | |||
80e007fe8c | |||
c9a9763e36 | |||
aab947eb46 | |||
26c6ec5594 | |||
8f0612b781 | |||
08324ba2c1 | |||
e69f3d7db1 | |||
1ec01b2142 | |||
603d3c90a5 | |||
57b87feda1 | |||
d46647040d | |||
ceff1c2f65 | |||
ae73bd3d9e | |||
b0da080c2c | |||
7b778166db | |||
25d216724b | |||
cd412b4454 | |||
961db61fb8 | |||
bc3dbf109c | |||
463077a3d5 | |||
258f6cbf93 | |||
bfec666dbc | |||
a40a269062 | |||
10aa2fa902 | |||
2da7977e3e | |||
089175bb1f | |||
f29ff7fb7e | |||
2ca66d541a | |||
bc1eb513ab | |||
![]() |
cd77bf44d4 | ||
![]() |
d1340e1bb2 | ||
b84264fbc5 | |||
ec5b53a018 | |||
174c3ffb4a | |||
123f4db9bd | |||
2ea6a0dd4d | |||
e07b1b8316 | |||
cd968a3273 | |||
64a5a7ade1 | |||
5744e7d247 | |||
bb6f0b085e | |||
d55e1caa75 | |||
c968dae054 | |||
8eda776eef | |||
770510915c | |||
bdab538b30 | |||
a22ad7fbd3 | |||
2655f47ca3 | |||
b2e5fc72c8 | |||
8f79fa9c67 | |||
0d6dda4555 | |||
02c5ca2f22 | |||
9039fbaa9c | |||
917c096be6 | |||
ffa262c9f8 | |||
9e45af530a | |||
a8c81ffa83 | |||
14a5a91e0e | |||
54f357ed2a | |||
ec95f4a5df | |||
0e6d70fec9 | |||
d91711bc85 | |||
bc8e030a84 | |||
2b9dfff6f3 | |||
09b7e141d2 | |||
e4de0d28c4 | |||
bce37bc52a | |||
7542dc460f | |||
5565d79057 | |||
16fd5fa656 | |||
7f1a5f2567 | |||
![]() |
f4d31fbf6c | ||
85e3e3be5b | |||
aea59428eb | |||
63cf0d0890 | |||
![]() |
82d7234ed9 | ||
698e394e7e | |||
9bb4bf5748 | |||
3e4f84d10d | |||
eb5e7d0a31 | |||
469ee7ff15 | |||
09292b89c3 | |||
00506d7a86 | |||
2f2d13b8c6 | |||
eba6900b08 | |||
a833c7f4a5 | |||
f626fc27f9 | |||
3fe1079ecf | |||
2d67b375a1 | |||
62a2b92b6b | |||
a5409d2b59 | |||
f4101ba4a1 | |||
c4e5a7d59a | |||
f4a01c8a8b | |||
8f3847aef3 | |||
b81f1b8cf1 | |||
f93b237194 | |||
4418536f69 | |||
ad33e68348 | |||
1e882b8657 | |||
4d509fd6e1 | |||
c92f137a75 | |||
47b0ca85cd | |||
341f1e444f | |||
04ed96136b | |||
568b692bcf | |||
84e55e3dc2 | |||
d095fcd6b4 | |||
e222e19d82 | |||
fff8f969de | |||
fdb1f70468 | |||
9d9f2f1a03 | |||
45ed325443 | |||
84901adec5 | |||
dfb8c90324 | |||
0d73113452 | |||
029e6b5174 | |||
bf352df27a | |||
9b082da708 | |||
8d65895af8 | |||
de561280fc | |||
b215fe82e8 | |||
f8239cc9a0 | |||
cea37b3127 | |||
a89f829f12 | |||
019681b984 | |||
47c2a876bf | |||
d4cdae29c1 | |||
1d65f7ea91 | |||
b8bd20d7e0 | |||
![]() |
8e02b0d5d4 | ||
af7502dd9b | |||
d27f4e8493 | |||
f049591967 | |||
f61dd33f50 | |||
f68fb81064 | |||
838806be28 | |||
780ad443fd | |||
930e526cae | |||
42a6c226d0 | |||
c1dcc64750 | |||
74a34d95d6 | |||
a42307eb65 | |||
f600a2aa6d | |||
1a627d528c | |||
![]() |
89106a695a | ||
9e9895b055 | |||
65e13cc2d2 | |||
bc6965cb98 | |||
436a7ee651 | |||
2d5b91d6a0 | |||
eb13072399 | |||
f8ebb0e1d5 | |||
d0fabb318e | |||
f5b708d1cf | |||
29ca935eb8 | |||
4fc96e5000 | |||
24745e8d27 | |||
74420d95b3 | |||
e42e4e8568 | |||
c88de1594f | |||
f4cbfaded6 | |||
2e06c223cc | |||
5d0432a2ea | |||
a111aae415 | |||
ae11233b65 | |||
3ecc03c3d6 | |||
76b6741981 | |||
41feaa17f3 | |||
e9c3af3dd7 | |||
6730c11dd9 | |||
3e2017491a | |||
30e666f747 | |||
ae2d2c9361 | |||
b16eff2bb3 | |||
b3e53d6daa | |||
f4028630bf | |||
769cdccd0e | |||
22812579bb | |||
7ace6dc496 | |||
89ccff62d2 | |||
699944572f | |||
0fcfc4cc5b | |||
33c5adba62 | |||
9631bb1e17 | |||
ca780f4406 | |||
4fa743af85 | |||
683570c7fe | |||
80811c5638 | |||
790598fa60 | |||
fe4ae77ded | |||
c4c6ea7ea9 | |||
c34e3f0f19 | |||
28316e0810 | |||
8ca9ce0986 | |||
214e61fc2c | |||
47dbdf8dd5 | |||
14a893f20e | |||
b712dbe5de | |||
c56103356f | |||
2e70af5cd5 | |||
342e12d6d9 | |||
f517b3a295 | |||
708547ab06 | |||
136a06285f | |||
8fb2a61966 | |||
f937c186de | |||
3cd3a4abe3 | |||
1fcdb1ea28 | |||
e8e2bdaa86 | |||
c9ae9e1483 | |||
df8a9648e2 | |||
c536791f36 | |||
ba2c6c90fa | |||
a820ba0d36 | |||
418184d1c1 | |||
6f00b1500c | |||
9f8254fd34 | |||
369f652c80 | |||
2719869a2a | |||
c8edc458d1 | |||
88fbe94d70 | |||
77f2cb1686 | |||
5d1cab0c2f | |||
d7053ba030 | |||
0af772ef8a | |||
ffbeb34f5f | |||
c38187393a | |||
ebb492a389 | |||
df26f4f63a | |||
35e73aa347 | |||
![]() |
b48adbc9d7 | ||
b3b5d4cabb | |||
83349294b1 | |||
8fdd3aad9b | |||
0609b4bb49 | |||
8c9805fc62 | |||
939c2387a1 | |||
b759a3eac0 | |||
7a31229011 | |||
fb2ae6b8c5 | |||
9a4cb7a732 | |||
6d42cd8ff9 | |||
22bf263269 | |||
c6e3242e18 | |||
ff2d6c2ba8 | |||
c8b740cc00 | |||
![]() |
dbc439e41a | ||
dbb6016e94 | |||
200e63b0bf | |||
ed62b65474 | |||
3ad5510427 | |||
af6765a49c | |||
3ccdc362da | |||
46114f0a36 | |||
c7033bdf26 | |||
65fa34f63f | |||
f9ed31b15d | |||
4301b6c896 | |||
f752eaadbd | |||
c582a2dbd9 | |||
eddfa811da | |||
bdb5a50682 | |||
080e506e28 | |||
fcc3a68cac | |||
a4ed0f51c1 | |||
f4ff36431c | |||
f11401d32a | |||
51195c17ac | |||
210d0f1b80 | |||
c93f3b4596 | |||
1a740c2541 | |||
48c4c409b8 | |||
5c9ab3e003 | |||
77ddcc4717 | |||
7bbf101082 | |||
1660eff1a2 | |||
405d32bc80 | |||
8c4bd02b06 | |||
be84fe4ce1 | |||
205c6d8d08 | |||
6065fbb543 | |||
4be79da9a7 | |||
a2dacefb46 | |||
00af3e9472 | |||
b8c30fb80a | |||
c729ddd741 | |||
5973950b2a | |||
e9d7c05754 | |||
b66368f3fd | |||
![]() |
68d203af0b | ||
![]() |
f1beb3b3f6 | ||
b98175008f | |||
![]() |
00eb7594b1 | ||
0d80c4a2a6 | |||
9bd905e73f | |||
9df91654dc | |||
f1c27b383b | |||
29a3f43da5 | |||
![]() |
48754bc146 | ||
adf183eeae | |||
93bcfd19ba | |||
8c24e29338 | |||
cef36f4a95 | |||
717c150eb1 | |||
2397287a51 | |||
124aae91e2 | |||
7fc2804f45 | |||
84a7641563 | |||
1c70402c62 | |||
7b091fbb94 | |||
024f3ddf61 | |||
ee0c05e886 | |||
b8de9916ed | |||
e46a38942a | |||
3e989e8c8d | |||
b44cec0eca | |||
450a190095 | |||
901fc29df1 | |||
dcaaa5b6f4 | |||
b54abd7ede | |||
a46f34d9b3 | |||
f9751889df | |||
139a4b6a84 | |||
ea5bfedb49 | |||
e1c8ef551f | |||
c2bbd01b2f | |||
7c9b6cc380 | |||
ee363ee7b3 | |||
cf69652618 | |||
fa7224d8ed | |||
074c695a0d | |||
870ad7d05d | |||
ca2fb9bae9 | |||
8e717ce55a | |||
![]() |
5baa3ecda6 | ||
1e4cd98f0a | |||
8d43ee1b08 | |||
7c9c13cf83 | |||
908e6c7c4d | |||
3f952b3ca3 | |||
c2d2cd1468 | |||
a0748153b4 | |||
a80ad0a545 | |||
4680331749 | |||
6f3d155293 | |||
05b56d55e8 | |||
d6c4317f35 | |||
7533bee58b | |||
94ad77100c | |||
cbc024c3ca | |||
6e2270f3d3 | |||
e30ccb9a34 | |||
58555ccc7a | |||
8741cf2038 | |||
42d748be34 | |||
fa9e878e79 | |||
0d1b9eabf2 | |||
3e5cb7b23e | |||
b3938d2a36 | |||
113b8030ce | |||
470cbad51a | |||
427a2c920a | |||
906b9f55af | |||
c0df1cd1b3 | |||
1159b63a07 | |||
6044c6d09b | |||
c09cfdb251 | |||
![]() |
073139e329 | ||
992ae3f282 | |||
e4bb898e40 | |||
f3f7f8b37b | |||
17fc8db104 | |||
018acc5688 | |||
c5b67975cd | |||
d634194cac | |||
2c784f44cf | |||
766340856d | |||
d1f32b63eb | |||
32fd85e6f9 | |||
b24f204e91 | |||
ccd18691fc | |||
f2c7b56f0f | |||
3693e1d8e8 | |||
![]() |
c31f519954 | ||
d9effc1cc6 | |||
092cbacd8f | |||
65d44093c9 | |||
2e8089b6bf | |||
dea5d22da1 | |||
94a54ab554 | |||
9757b4efb1 | |||
f5077e057b | |||
207b0c2a0f | |||
dff11551de | |||
6f5d172d6c | |||
b04de6d180 | |||
77d3e6b439 | |||
6dcda1b9aa | |||
89306a3a05 | |||
87dd8dc740 | |||
993d17af90 | |||
66dada123c | |||
58fe38af9f | |||
a0e63bac02 | |||
81f23ad57a | |||
ca5f832fe9 | |||
0c9892020b | |||
![]() |
c21cc4dad5 | ||
9599c5415d | |||
cb5b33a627 | |||
31202ea628 | |||
0eb2244f0a | |||
59637cf073 | |||
14175043e5 | |||
1242e8b93c | |||
295b6e8230 | |||
3b0a08b793 | |||
51fdf4bdfc | |||
578771ae4d | |||
8d9d5da137 | |||
![]() |
502e1a44b9 | ||
3e782bba71 | |||
007184bcf2 | |||
59cd616534 | |||
8d528241a9 | |||
2001ee6251 | |||
fa114cc4a0 | |||
06a7afb528 | |||
a4382badb9 | |||
6599d2f03b | |||
e354ba701a | |||
3eb3d363e1 | |||
edd892166d | |||
007e95c259 | |||
a3f9862262 | |||
87978ff560 | |||
fbf92f5967 | |||
b9d02b9ced | |||
![]() |
eef98e66cf | ||
6bd270f3af | |||
8c233cfd78 | |||
5045968f24 | |||
61202f6f74 | |||
49173399f3 | |||
b765ea52af | |||
2f799f893e | |||
74a5fb734a | |||
30534deced | |||
2d9a6e4f68 | |||
be9800e8da | |||
b30cb05c14 | |||
![]() |
195986a719 | ||
8650c2b614 | |||
82a70ffe40 | |||
c0546ff953 | |||
0c5a7ca117 | |||
ec53e9fa69 | |||
ae683a22c6 | |||
87d74d03bf | |||
8e476c414c | |||
690ecaae20 | |||
067f0d40ae | |||
a652568570 | |||
2fa2612b06 | |||
42e275a7d4 | |||
8f1a11c35a | |||
17ab0342ac | |||
0091c97b32 | |||
f9e0b94c2f | |||
baf8ec2e54 | |||
046b45749c | |||
1bb7fda600 | |||
b47c5505aa | |||
74228e2cd2 | |||
81b797af66 | |||
28240f78ce | |||
![]() |
dcce4a59a0 | ||
![]() |
dc55e095e6 | ||
c171c99fa1 | |||
8852191b77 | |||
6f7959f55f | |||
3bc037a7eb | |||
9c2613d1b6 | |||
1dd1772419 | |||
0134ab4b56 | |||
6c679aca17 | |||
cd349dc402 | |||
c60b570841 | |||
d9d81cb1ff | |||
b4b85c5ce2 | |||
de71cdb35d | |||
4c3e91e5f5 | |||
9173dd24ad | |||
502c3d6c21 | |||
15021968c1 | |||
b38cd1bcbe | |||
4ffeb2d449 | |||
3893ba5d67 | |||
7849b56c3c | |||
061995775f | |||
a74a267767 | |||
77c0e79805 | |||
2a2e47b20c | |||
439f86ac89 | |||
08a39d32a9 | |||
11aa237858 | |||
bc256a4507 | |||
501ec81d3e | |||
![]() |
4bb90b8f4c | ||
ccb4e29873 | |||
e7464dffbc | |||
1c1e842879 | |||
a4c2060b91 | |||
b468255453 | |||
b6b94f878f | |||
7301547ca7 | |||
35594f4b92 | |||
10865c8f34 | |||
6e2b0a38f0 | |||
bfa1c077cb | |||
bda9a1b103 | |||
c2e26406c5 | |||
![]() |
f4827d08bc | ||
78f61bf8c1 | |||
c2737913db | |||
892562b7bf | |||
f9d7313bb7 | |||
686abf1850 | |||
e0e95f7895 | |||
9f8f35008c | |||
5823e749dc | |||
43e31d26a9 | |||
6f773b1a4f | |||
36e330bd9c | |||
865cdff426 | |||
17429fe5e5 | |||
82060c1697 | |||
95ff5e6d89 | |||
0f7da9a72f | |||
![]() |
719c86c0a6 | ||
b508999d8d | |||
b1b6994129 | |||
b8432c2c8e | |||
025959da23 | |||
![]() |
4ac6177b8d | ||
9913196470 | |||
b651754890 | |||
6b95e75d2f | |||
cc3c15fbdd | |||
![]() |
b96cdbcf7a | ||
![]() |
90298c24a2 | ||
78e7b20c0f | |||
90663acfd5 | |||
014cdd3441 | |||
9f2e995c3e | |||
3a035a4417 | |||
b28e261753 | |||
2a2261d7e1 | |||
23be3294ff | |||
98a04ed452 | |||
5e40c342ae | |||
aee8e49031 | |||
aae2ff49f5 | |||
92d0ed3000 | |||
![]() |
26d375467b | ||
![]() |
a7417ba845 | ||
a0a99fb252 | |||
f23f831e91 | |||
763b8f1423 | |||
dd2df5ceb0 | |||
2ba081f59b | |||
cdd2c8bd07 | |||
acafc7327e | |||
edc92f779e | |||
c7bffc8fa2 | |||
bdfee6d831 | |||
8f6f28a0dc | |||
f5428736a7 | |||
d02b8c1c3b | |||
![]() |
90042b7d79 | ||
b1517e26e2 | |||
![]() |
ce3dd12371 | ||
f3b56246d1 | |||
eac403b6e1 | |||
908976b09a | |||
84756b68e6 | |||
477066adee | |||
12a1fa9cf4 | |||
2c75857f9f | |||
ae9ef28126 | |||
62450e8485 | |||
![]() |
e58b18888c | ||
4a4f0a70eb | |||
693aa573db | |||
4dc6d14bdc | |||
11f3a388ed | |||
11a7da675f | |||
e1476ca310 | |||
929a210608 | |||
fcbd81fb0f | |||
1b566b70c1 | |||
e4931ab86d | |||
108963d508 | |||
75a051a6ab | |||
4fa71be89a | |||
26cda38985 | |||
26bc584e01 | |||
47ba541853 | |||
b891c72d2d | |||
b968e2bf48 | |||
6fa5d520b8 | |||
5b24291be1 | |||
48f7574716 | |||
1830a3dfb5 | |||
ad119d327e | |||
bff9bf728e | |||
611b82621d | |||
69c7ff1649 | |||
be0417d690 | |||
756710800c | |||
78fc5ea1c3 | |||
18bcd8321a | |||
622c4e4953 | |||
c7a345bd60 | |||
960a1ddd85 | |||
598917f49b | |||
7e02c90103 | |||
dbba5c4df9 | |||
b4fa74e812 | |||
09f769bde5 | |||
8d78c3152e | |||
a85df96b4f | |||
94533ca4b8 | |||
3505d948c6 | |||
9ebf8a0c35 | |||
060c5a7fa2 | |||
b4fb2a6980 | |||
8b54e05e33 | |||
eb837ba17e | |||
6513ce258f | |||
0f567ada9d | |||
ddbac88c08 | |||
836fbb90aa | |||
e33c15951b | |||
d0c2fd0570 | |||
d3c895fc41 | |||
777b72b5cb | |||
73fa571598 | |||
adbe71c3fa | |||
8960c6e060 | |||
![]() |
ed0964c976 | ||
f11dba8892 | |||
0fa1c65ee3 | |||
54f447ecde | |||
ac9ebc9de3 | |||
319a772b7f | |||
fc0f6d19ad | |||
5d7ee44406 | |||
1a98bec40e | |||
![]() |
82df48227b | ||
7d41e1ed40 | |||
60772baebf | |||
8ff5836766 | |||
b5c3885bf0 | |||
![]() |
d2271cf939 | ||
5559ea59a1 | |||
b5b6ae06f9 | |||
08daeb9472 | |||
03aba8046e | |||
8bd0ed6bd2 | |||
a0d139076c | |||
a52fbeadb1 | |||
54b293237e | |||
82bf11e73f | |||
dc1793e85b | |||
d86d7c935e | |||
5162135e14 | |||
3bdda67e50 | |||
cbeb8770cc | |||
48c0738d4a | |||
9ee9dd257f | |||
16011e34f0 | |||
7d7047058a | |||
![]() |
b31f5b8ce7 | ||
0f2cc50fc6 | |||
caeea212cf | |||
302584bd6e | |||
14d845192a | |||
e7ba34599c | |||
79e94caa6b | |||
5f8f436dca | |||
aa1fb4204d | |||
2d80f814cc | |||
7dc94155f6 | |||
0375720e28 | |||
aa21087d56 | |||
78e8fae346 | |||
b1cd3be0d0 | |||
f8c8abae38 | |||
0383047257 | |||
2a89509e45 | |||
10b1e993f4 | |||
8cb30c079d | |||
db63945c36 | |||
dc57ab8941 | |||
e86b62f195 | |||
5b2a6b6ebb | |||
502c707e0e | |||
![]() |
1d668b6356 | ||
281bcc1c1d | |||
94205e1d02 | |||
947f8ba300 | |||
04df0a3b8c | |||
2062116924 | |||
9fb98735ea | |||
f586c3ba21 | |||
5962db093f | |||
5f5e7ac317 | |||
11d075f07d | |||
![]() |
61e8310b75 | ||
46d7bcc068 | |||
a2e3005b42 | |||
2ea9d1fccf | |||
6b74c8e486 | |||
20f819d708 | |||
cd1044fb2b | |||
31bf70e35c | |||
cfdec85cd9 | |||
4824cad580 | |||
61b65e9c9b | |||
4196772ae8 | |||
3a002bff7a | |||
74dfb7ca23 | |||
a821a2db3d | |||
1fc95d829f | |||
f5dc675537 | |||
daa9edc9be | |||
fd98403211 | |||
8e71ba12e5 | |||
f80e4f0046 | |||
af2740abc0 | |||
00fb44797a | |||
cc0c4c17f0 | |||
1a6d0ec71c | |||
c09c3246eb | |||
3d96fd6fd6 | |||
56039e30c7 | |||
38a4d96a90 | |||
e4e5d7781e | |||
e62b5e867d | |||
ab7379ae62 | |||
4ee8dfa8b3 | |||
80c8a7dcb0 | |||
8810d0cecd | |||
e5a738af6d | |||
ecc2ec724e | |||
79d4740eda | |||
309b6319a0 | |||
![]() |
fd7384a751 | ||
![]() |
62ef1c08af | ||
0d9e22d43c | |||
b1e0be0d25 | |||
ab5d52a6db | |||
5188c14718 | |||
263f56ba49 | |||
4c3efb4320 | |||
e07ac34b3f | |||
![]() |
3d5f5c2d9a | ||
38394e1a32 | |||
d0948dfb17 | |||
b54c6a20aa | |||
1b0da28038 | |||
951fae3578 | |||
4f3b562506 | |||
0c80a0acd8 | |||
d1cbfc81bb | |||
da46ed9116 | |||
46b32c9d7b | |||
12baea1b8e | |||
8ece0816d9 | |||
f0f44fd92f | |||
a5644f9a28 | |||
aaab3c8ad4 | |||
f0118e9aca | |||
5e5e198bbe | |||
0676963809 | |||
2a7a01b339 | |||
aa34706aac | |||
3f0c09f6dd | |||
fc872d738e | |||
a330b9b0ea | |||
631506d9c3 | |||
eba06fee49 | |||
c87f6242b9 | |||
33518f9da1 | |||
30d1d4579e | |||
6cad9c7964 | |||
d02d1129f7 | |||
6861ef62a6 | |||
cc268238ea | |||
ba22aa8797 | |||
e59cc3a814 | |||
d33801e2bf | |||
1c992cc647 | |||
0dfb6eddc0 | |||
0c44b03b09 | |||
df0616bcd0 | |||
171851a6c8 | |||
![]() |
5ff931149b | ||
12217714c7 | |||
86b37748a7 | |||
6e5877c189 | |||
69a43069e8 | |||
![]() |
57b4efc250 | ||
fc40356ed8 | |||
a8e6ee17cc | |||
669349bfe4 | |||
b95601fa1a | |||
237857cc26 | |||
ac88123e29 | |||
5c92c04518 | |||
![]() |
2fc6563a59 | ||
eaa63c7d68 | |||
fc2c22e90c | |||
9b92ce9dc0 | |||
060a50a5f7 | |||
074a8558b7 | |||
3eb9b4dfbc | |||
a6f951b464 | |||
e0315a5ef0 | |||
1a8a69d318 | |||
3c7a6718dd | |||
4d464a946a | |||
d779b15485 | |||
f44a34fc55 | |||
3b7bce45d2 | |||
9ef727d3d4 | |||
0634bb24ee | |||
0c317e23bf | |||
5d84d9b0d6 | |||
2f49908a5e | |||
baae87ce86 | |||
473a2c83ea | |||
a7db7f88b0 | |||
1d9c050188 | |||
a323ada701 | |||
![]() |
7fd11d9c7f | ||
3d877c8a0d | |||
a111a0f1e1 | |||
a1b21a3503 | |||
d442782dbe | |||
62eb190d4e | |||
fcb0090842 | |||
65e7219706 | |||
cc8fe1a1cb | |||
7f0163118b | |||
720e19a833 | |||
9dadd8bdb1 | |||
0b5cf91b89 | |||
1e23304fbc | |||
9a25a34e42 | |||
4b96517e20 | |||
f38f12cbbc | |||
810f33d434 | |||
![]() |
708fabe3d7 | ||
8095875dff | |||
4b7ed584a8 | |||
d5f3351f55 | |||
308a12ac64 | |||
3d9f0280ff | |||
![]() |
1425b356b8 | ||
c722993ef1 | |||
5b1ec08f04 | |||
2d7957727c | |||
![]() |
fbc884d2a8 | ||
![]() |
bd327e3bf3 | ||
![]() |
110eb23005 | ||
4296c1fe25 | |||
099120e54a | |||
![]() |
024386bb89 | ||
f4718d52f3 | |||
16b6d4aeb3 | |||
44b318bd22 | |||
853713336f | |||
91bd63a196 | |||
22f5c05cb3 | |||
17769489d9 | |||
b1b153b88c | |||
4412cbc6d1 | |||
c9c95201d0 | |||
0ad73bb965 | |||
b0e47ffdcf | |||
77794b1a7b | |||
![]() |
16fe767d00 | ||
e8102aea13 | |||
37ede15e63 | |||
![]() |
eed8c2e655 | ||
198a763944 | |||
eb4b79c556 | |||
9e2d80c49e | |||
74a44e816c | |||
8399375098 | |||
52a5f68562 | |||
3558f565f1 | |||
0539208f97 | |||
e2cd5c6748 | |||
9c82c00b32 | |||
676198f57f | |||
c6ce2be496 | |||
b60f3fe6ad | |||
bfb4dcaa1a | |||
f3d5114c41 | |||
ce115a2786 | |||
69a720abb0 | |||
478eb3a0e6 | |||
c01e33d6ca | |||
163f6a17e4 | |||
08731d70bf | |||
c5a4159bee | |||
![]() |
db622b5a0b | ||
cdd4354c81 | |||
68ca12a7fc | |||
9a8669ac81 | |||
1f270cf99b | |||
b82de02e7c | |||
994da7077d | |||
83c8f996f1 | |||
5fe1624b0e | |||
8016d8a4bd | |||
296b261299 | |||
d8ef52ca47 | |||
3e7ee3f3bc | |||
ae94e36cfb | |||
9a53599180 | |||
7b16ddeb5a | |||
e9334c5df8 | |||
5c5ec837b3 | |||
96bdd65e74 | |||
db45292d8e | |||
b7458f909c | |||
![]() |
4e57b6ce77 | ||
6cf148227b | |||
2492d9852b | |||
e0e737b72b | |||
e3724d29ff | |||
802bc8e233 | |||
a28fd0ceb5 | |||
6d12bc9e91 | |||
a9d1b3d7e3 | |||
a32f447c54 | |||
c63a6d3057 | |||
0f583d9d60 | |||
07e2bd443e | |||
3221766820 | |||
a003547a37 | |||
3ea6dbfe73 | |||
98ad294d17 | |||
96834a7bac | |||
3b4b2bcb13 | |||
c20b99b70c | |||
a8331d8c9d | |||
2bc0e8d304 | |||
891268aa82 | |||
8e1b16534d | |||
2fd8fa8f84 | |||
42878ffc26 | |||
38eed4ada3 | |||
296d734344 | |||
185d9627b3 | |||
f431be224f | |||
845e2ed3a2 | |||
e99cb91530 | |||
d30f701e84 | |||
35dc4ba9e2 | |||
6963703801 | |||
2b3f7c6481 | |||
09710d5f2a | |||
26afa23b3b | |||
c2751f8a11 | |||
654bc35bc8 | |||
![]() |
0a86ab6639 | ||
![]() |
d2a01bb7cb | ||
0310638e94 | |||
ab032fba39 | |||
42368f2ef4 | |||
1640fbe7c6 | |||
7c55a7ccca | |||
b4a4004fb1 | |||
a2d32960b4 | |||
![]() |
c63d64a2ce | ||
416ef3b6b2 | |||
0efe581a5b | |||
29b9187b32 | |||
17eb8a9ceb | |||
dc7f88fd15 | |||
bba757ef81 | |||
a6504aa64b | |||
99fff90eab | |||
c486da0238 | |||
cfce5a32a7 | |||
6787cc13d4 | |||
bdc537e0a7 | |||
ac8beb4fda | |||
ff6098345a | |||
7f726b48ac | |||
![]() |
58be9708bf | ||
d8abac7357 | |||
e96623c19b | |||
b38491b407 | |||
5b87862ddc | |||
![]() |
8f05a547d5 | ||
984cd552f0 | |||
a7c65ef4cb | |||
75aa5ecbda | |||
fe43c17083 | |||
024a4da6b3 | |||
535c9308ef | |||
![]() |
50f0103059 | ||
9c279723da | |||
5179b8236b | |||
048c769774 | |||
![]() |
b226236b01 | ||
![]() |
d724d3ae58 | ||
![]() |
33d102e5b2 | ||
48f369d63a | |||
30acc5f9cd | |||
2547c3c70c | |||
![]() |
179100c021 | ||
ce95856f2d | |||
74b9c351b9 | |||
65e4c91bec | |||
9de3ed5c82 | |||
9a9a46df46 | |||
![]() |
e2d8b6dc06 | ||
f807e6effe | |||
f991f5ad51 | |||
f6d5d01715 | |||
b9799dfb8a | |||
aca083fbf3 | |||
75a9830d84 | |||
c196ca3740 | |||
0178e694b7 | |||
ed971a19fa | |||
![]() |
2882cbe685 | ||
2e3edb6995 | |||
298e9c7ebd | |||
01333cb47f | |||
c342b3cede | |||
4d9ddb4a77 | |||
7a943428de | |||
14f2d37ad1 | |||
b0c428c063 | |||
6f190f7f43 | |||
575ade22d4 | |||
![]() |
c6ed879f9a | ||
5fc488559c | |||
b719fa267a | |||
0c3d2461b7 | |||
![]() |
502f3debf9 | ||
![]() |
e16ff4132e | ||
2bd9cbe405 | |||
3cef9ebaf8 | |||
b67ccc333a | |||
4a03c5acf9 | |||
8d2da45f98 | |||
3a6813ea65 | |||
![]() |
56d1d19c88 | ||
604c33e694 | |||
b9c37608a9 | |||
7cb6fb0183 | |||
03ec505fa5 | |||
0385e2f1f9 | |||
5b8a3ccd37 | |||
97dbcf9746 | |||
8adc7cad00 | |||
31a2feceb8 | |||
f5191b8760 | |||
65a1fcdaf7 | |||
67a4908bfc | |||
3adef61942 | |||
41b8e0316a | |||
28e068b55c | |||
8898251584 | |||
11dd7941af | |||
67516d0dae | |||
8ed8fa80f4 | |||
08dbd3bc7f | |||
38d8b088e7 | |||
c2cdbe1e88 | |||
df3316cbe9 | |||
972a697f82 | |||
feea852b10 | |||
9364e17936 | |||
f438344cf2 | |||
6d9268c2c7 | |||
16afff2ddc | |||
42717596d0 | |||
f8f8edbe1a | |||
![]() |
75ccfa63d0 | ||
6a3c3c77b3 | |||
9ec94c3882 | |||
d813ee55fd | |||
5a06996722 | |||
67962824e9 | |||
37d298391e | |||
2890c11cd7 | |||
56cfd60d43 | |||
![]() |
721a9bc35c | ||
![]() |
3e98331a09 | ||
47de3659f0 | |||
6f56bd4083 | |||
767939231d | |||
058ce64be0 | |||
14a2706886 | |||
fa3bd17ae8 | |||
1e3f4c70ab | |||
c2c17cc076 | |||
6296cb5129 | |||
eccc9d8eba | |||
3035235def | |||
58d86527ae | |||
8c25889bb6 | |||
775f0d76d5 | |||
7e045094c1 | |||
f401741544 | |||
76acc5e999 | |||
adcce654e3 | |||
![]() |
549f68149d | ||
b90e892a17 | |||
5da02548e9 | |||
a0c2d6bf85 | |||
bec057a453 | |||
03d39a04a3 | |||
314b27850c | |||
95cce6f6b0 | |||
98fc998c70 | |||
fc58368263 | |||
2cb76a6c8d | |||
029b0df81a | |||
41b3feea85 | |||
![]() |
ccd2e89d37 | ||
ef2b8c1c3a | |||
933fed2a17 | |||
bf80dc2bd4 | |||
213cd39b6d | |||
a3eb4027c2 | |||
b32cb0266c | |||
e88807e71c | |||
b9f1b64801 | |||
98eb111568 | |||
2b191cd2b4 | |||
8eb40d2063 | |||
dc5ae10692 | |||
cb3c233ed3 | |||
65194f47b0 | |||
ad324316ce | |||
089e701191 | |||
4e6c0669e3 | |||
0f9057390d | |||
7484f274dc | |||
cc6db8921b | |||
47d961a4b1 | |||
![]() |
e96a809a68 | ||
25196f8a36 | |||
2839fe9a4d | |||
![]() |
db6287873c | ||
48ff456a4b | |||
48d2f536e1 | |||
05715eaea1 | |||
80859a6cb2 |
@@ -265,6 +265,7 @@ ForEachMacros:
|
|||||||
- SET_SLOT_PROBING_BEGIN
|
- SET_SLOT_PROBING_BEGIN
|
||||||
- MAP_SLOT_PROBING_BEGIN
|
- MAP_SLOT_PROBING_BEGIN
|
||||||
- VECTOR_SET_SLOT_PROBING_BEGIN
|
- VECTOR_SET_SLOT_PROBING_BEGIN
|
||||||
|
- WL_ARRAY_FOR_EACH
|
||||||
|
|
||||||
StatementMacros:
|
StatementMacros:
|
||||||
- PyObject_HEAD
|
- PyObject_HEAD
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
# The warnings below are disabled because they are too pedantic and not worth fixing.
|
# The warnings below are disabled because they are too pedantic and not worth fixing.
|
||||||
# Some of them will be enabled as part of the Clang-Tidy task, see T78535.
|
# Some of them will be enabled as part of the Clang-Tidy task, see T78535.
|
||||||
|
|
||||||
|
# NOTE: No comments in the list below is allowed. Clang-tidy will ignore items after comments in the lists flag list.
|
||||||
|
# This is because the comment is not a valid list item and it will stop parsing flags if a list item is a comment.
|
||||||
Checks: >
|
Checks: >
|
||||||
-*,
|
-*,
|
||||||
readability-*,
|
readability-*,
|
||||||
@@ -14,10 +16,9 @@ Checks: >
|
|||||||
-readability-make-member-function-const,
|
-readability-make-member-function-const,
|
||||||
-readability-suspicious-call-argument,
|
-readability-suspicious-call-argument,
|
||||||
-readability-redundant-member-init,
|
-readability-redundant-member-init,
|
||||||
|
|
||||||
-readability-misleading-indentation,
|
-readability-misleading-indentation,
|
||||||
|
|
||||||
-readability-use-anyofallof,
|
-readability-use-anyofallof,
|
||||||
|
-readability-identifier-length,
|
||||||
|
|
||||||
-readability-function-cognitive-complexity,
|
-readability-function-cognitive-complexity,
|
||||||
|
|
||||||
@@ -35,6 +36,8 @@ Checks: >
|
|||||||
|
|
||||||
-bugprone-redundant-branch-condition,
|
-bugprone-redundant-branch-condition,
|
||||||
|
|
||||||
|
-bugprone-suspicious-include,
|
||||||
|
|
||||||
modernize-*,
|
modernize-*,
|
||||||
-modernize-use-auto,
|
-modernize-use-auto,
|
||||||
-modernize-use-trailing-return-type,
|
-modernize-use-trailing-return-type,
|
||||||
@@ -42,8 +45,6 @@ Checks: >
|
|||||||
-modernize-use-nodiscard,
|
-modernize-use-nodiscard,
|
||||||
-modernize-loop-convert,
|
-modernize-loop-convert,
|
||||||
-modernize-pass-by-value,
|
-modernize-pass-by-value,
|
||||||
# Cannot be enabled yet, because using raw string literals in tests breaks
|
|
||||||
# the windows compiler currently.
|
|
||||||
-modernize-raw-string-literal,
|
-modernize-raw-string-literal,
|
||||||
-modernize-return-braced-init-list
|
-modernize-return-braced-init-list
|
||||||
|
|
||||||
|
@@ -34,6 +34,15 @@ indent_style = space
|
|||||||
indent_size = 2
|
indent_size = 2
|
||||||
max_line_length = 99
|
max_line_length = 99
|
||||||
|
|
||||||
|
# Tom's Obvious Minimal Language
|
||||||
|
[*.toml]
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = true
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 4
|
||||||
|
max_line_length = 120
|
||||||
|
|
||||||
# reStructuredText
|
# reStructuredText
|
||||||
[*.rst]
|
[*.rst]
|
||||||
charset = utf-8
|
charset = utf-8
|
||||||
|
130
CMakeLists.txt
130
CMakeLists.txt
@@ -222,6 +222,17 @@ if(UNIX AND NOT (APPLE OR HAIKU))
|
|||||||
|
|
||||||
option(WITH_GHOST_WAYLAND "Enable building Blender against Wayland for windowing (under development)" OFF)
|
option(WITH_GHOST_WAYLAND "Enable building Blender against Wayland for windowing (under development)" OFF)
|
||||||
mark_as_advanced(WITH_GHOST_WAYLAND)
|
mark_as_advanced(WITH_GHOST_WAYLAND)
|
||||||
|
|
||||||
|
if (WITH_GHOST_WAYLAND)
|
||||||
|
option(WITH_GHOST_WAYLAND_LIBDECOR "Optionally build with LibDecor window decorations" OFF)
|
||||||
|
mark_as_advanced(WITH_GHOST_WAYLAND_LIBDECOR)
|
||||||
|
|
||||||
|
option(WITH_GHOST_WAYLAND_DBUS "Optionally build with DBUS support (used for Cursor themes). May hang on startup systems where DBUS is not used." OFF)
|
||||||
|
mark_as_advanced(WITH_GHOST_WAYLAND_DBUS)
|
||||||
|
|
||||||
|
option(WITH_GHOST_WAYLAND_DYNLOAD "Enable runtime dynamic WAYLAND libraries loading" OFF)
|
||||||
|
mark_as_advanced(WITH_GHOST_WAYLAND_DYNLOAD)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GHOST_X11)
|
if(WITH_GHOST_X11)
|
||||||
@@ -255,19 +266,11 @@ if(WITH_GHOST_X11)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
|
|
||||||
option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system" ON)
|
|
||||||
option(WITH_SYSTEM_FREETYPE "Use the freetype library provided by the operating system" OFF)
|
option(WITH_SYSTEM_FREETYPE "Use the freetype library provided by the operating system" OFF)
|
||||||
else()
|
|
||||||
# not an option for other OS's
|
|
||||||
set(WITH_SYSTEM_GLEW OFF)
|
|
||||||
set(WITH_SYSTEM_GLES OFF)
|
|
||||||
set(WITH_SYSTEM_FREETYPE OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
|
option(WITH_SYSTEM_EIGEN3 "Use the systems Eigen3 library" OFF)
|
||||||
|
else()
|
||||||
|
set(WITH_SYSTEM_FREETYPE OFF)
|
||||||
|
set(WITH_SYSTEM_EIGEN3 OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
@@ -284,7 +287,7 @@ option(WITH_IMAGE_TIFF "Enable LibTIFF Support" ON)
|
|||||||
option(WITH_IMAGE_DDS "Enable DDS Image Support" ON)
|
option(WITH_IMAGE_DDS "Enable DDS Image Support" ON)
|
||||||
option(WITH_IMAGE_CINEON "Enable CINEON and DPX Image Support" ON)
|
option(WITH_IMAGE_CINEON "Enable CINEON and DPX Image Support" ON)
|
||||||
option(WITH_IMAGE_HDR "Enable HDR Image Support" ON)
|
option(WITH_IMAGE_HDR "Enable HDR Image Support" ON)
|
||||||
option(WITH_IMAGE_WEBP "Enable WebP Image Support" OFF)
|
option(WITH_IMAGE_WEBP "Enable WebP Image Support" ON)
|
||||||
|
|
||||||
# Audio/Video format support
|
# Audio/Video format support
|
||||||
option(WITH_CODEC_AVI "Enable Blenders own AVI file support (raw/jpeg)" ON)
|
option(WITH_CODEC_AVI "Enable Blenders own AVI file support (raw/jpeg)" ON)
|
||||||
@@ -300,9 +303,12 @@ option(WITH_USD "Enable Universal Scene Description (USD) Suppor
|
|||||||
# 3D format support
|
# 3D format support
|
||||||
# Disable opencollada when we don't have precompiled libs
|
# Disable opencollada when we don't have precompiled libs
|
||||||
option(WITH_OPENCOLLADA "Enable OpenCollada Support (http://www.opencollada.org)" ON)
|
option(WITH_OPENCOLLADA "Enable OpenCollada Support (http://www.opencollada.org)" ON)
|
||||||
|
option(WITH_IO_WAVEFRONT_OBJ "Enable Wavefront-OBJ 3D file format support (*.obj)" ON)
|
||||||
|
option(WITH_IO_STL "Enable STL 3D file format support (*.stl)" ON)
|
||||||
|
option(WITH_IO_GPENCIL "Enable grease-pencil file format IO (*.svg, *.pdf)" ON)
|
||||||
|
|
||||||
# Sound output
|
# Sound output
|
||||||
option(WITH_SDL "Enable SDL for sound and joystick support" ON)
|
option(WITH_SDL "Enable SDL for sound" ON)
|
||||||
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
option(WITH_COREAUDIO "Enable CoreAudio for audio support on macOS" ON)
|
option(WITH_COREAUDIO "Enable CoreAudio for audio support on macOS" ON)
|
||||||
@@ -439,14 +445,9 @@ endif()
|
|||||||
|
|
||||||
# AMD HIP
|
# AMD HIP
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
if(WIN32)
|
|
||||||
option(WITH_CYCLES_DEVICE_HIP "Enable Cycles AMD HIP support" ON)
|
option(WITH_CYCLES_DEVICE_HIP "Enable Cycles AMD HIP support" ON)
|
||||||
else()
|
|
||||||
option(WITH_CYCLES_DEVICE_HIP "Enable Cycles AMD HIP support" OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
option(WITH_CYCLES_HIP_BINARIES "Build Cycles AMD HIP binaries" OFF)
|
option(WITH_CYCLES_HIP_BINARIES "Build Cycles AMD HIP binaries" OFF)
|
||||||
set(CYCLES_HIP_BINARIES_ARCH gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 CACHE STRING "AMD HIP architectures to build binaries for")
|
set(CYCLES_HIP_BINARIES_ARCH gfx900 gfx906 gfx90c gfx902 gfx1010 gfx1011 gfx1012 gfx1030 gfx1031 gfx1032 gfx1034 gfx1035 CACHE STRING "AMD HIP architectures to build binaries for")
|
||||||
mark_as_advanced(WITH_CYCLES_DEVICE_HIP)
|
mark_as_advanced(WITH_CYCLES_DEVICE_HIP)
|
||||||
mark_as_advanced(CYCLES_HIP_BINARIES_ARCH)
|
mark_as_advanced(CYCLES_HIP_BINARIES_ARCH)
|
||||||
endif()
|
endif()
|
||||||
@@ -456,6 +457,21 @@ if(APPLE)
|
|||||||
option(WITH_CYCLES_DEVICE_METAL "Enable Cycles Apple Metal compute support" ON)
|
option(WITH_CYCLES_DEVICE_METAL "Enable Cycles Apple Metal compute support" ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# oneAPI
|
||||||
|
if(NOT APPLE)
|
||||||
|
option(WITH_CYCLES_DEVICE_ONEAPI "Enable Cycles oneAPI compute support" OFF)
|
||||||
|
option(WITH_CYCLES_ONEAPI_BINARIES "Enable Ahead-Of-Time compilation for Cycles oneAPI device" OFF)
|
||||||
|
option(WITH_CYCLES_ONEAPI_SYCL_HOST_ENABLED "Enable use of SYCL host (CPU) device execution by oneAPI implementation. This option is for debugging purposes and impacts GPU execution." OFF)
|
||||||
|
|
||||||
|
# https://www.intel.com/content/www/us/en/develop/documentation/oneapi-dpcpp-cpp-compiler-dev-guide-and-reference/top/compilation/ahead-of-time-compilation.html
|
||||||
|
SET (CYCLES_ONEAPI_SPIR64_GEN_DEVICES "dg2" CACHE STRING "oneAPI Intel GPU architectures to build binaries for")
|
||||||
|
SET (CYCLES_ONEAPI_SYCL_TARGETS spir64 spir64_gen CACHE STRING "oneAPI targets to build AOT binaries for")
|
||||||
|
|
||||||
|
mark_as_advanced(WITH_CYCLES_ONEAPI_SYCL_HOST_ENABLED)
|
||||||
|
mark_as_advanced(CYCLES_ONEAPI_SPIR64_GEN_DEVICES)
|
||||||
|
mark_as_advanced(CYCLES_ONEAPI_SYCL_TARGETS)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Draw Manager
|
# Draw Manager
|
||||||
option(WITH_DRAW_DEBUG "Add extra debug capabilities to Draw Manager" OFF)
|
option(WITH_DRAW_DEBUG "Add extra debug capabilities to Draw Manager" OFF)
|
||||||
mark_as_advanced(WITH_DRAW_DEBUG)
|
mark_as_advanced(WITH_DRAW_DEBUG)
|
||||||
@@ -491,7 +507,7 @@ if((UNIX AND NOT APPLE) OR (CMAKE_GENERATOR MATCHES "^Visual Studio.+"))
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_BOOST "Enable features depending on boost" ON)
|
option(WITH_BOOST "Enable features depending on boost" ON)
|
||||||
option(WITH_TBB "Enable features depending on TBB (OpenVDB, OpenImageDenoise, sculpt multithreading)" ON)
|
option(WITH_TBB "Enable multithreading. TBB is also required for features such as Cycles, OpenVDB and USD" ON)
|
||||||
|
|
||||||
# TBB malloc is only supported on for windows currently
|
# TBB malloc is only supported on for windows currently
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -520,20 +536,48 @@ endif()
|
|||||||
|
|
||||||
# OpenGL
|
# OpenGL
|
||||||
|
|
||||||
|
# Experimental EGL option.
|
||||||
|
option(WITH_GL_EGL "Use the EGL OpenGL system library instead of the platform specific OpenGL system library (CGL, GLX or WGL)" OFF)
|
||||||
|
mark_as_advanced(WITH_GL_EGL)
|
||||||
|
|
||||||
|
if(WITH_GHOST_WAYLAND)
|
||||||
|
# Wayland can only use EGL to create OpenGL contexts, not GLX.
|
||||||
|
set(WITH_GL_EGL ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(UNIX AND NOT APPLE)
|
||||||
|
if(WITH_GL_EGL)
|
||||||
|
# GLEW can only be built with either GLX or EGL support. Most binary distributions are
|
||||||
|
# built with GLX support and we have no automated way to detect this. So always build
|
||||||
|
# GLEW from source to be sure it has EGL support.
|
||||||
|
set(WITH_SYSTEM_GLEW OFF)
|
||||||
|
else()
|
||||||
|
option(WITH_SYSTEM_GLEW "Use GLEW OpenGL wrapper library provided by the operating system" OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
option(WITH_SYSTEM_GLES "Use OpenGL ES library provided by the operating system" ON)
|
||||||
|
else()
|
||||||
|
# System GLEW and GLES not an option on other platforms.
|
||||||
|
set(WITH_SYSTEM_GLEW OFF)
|
||||||
|
set(WITH_SYSTEM_GLES OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
option(WITH_OPENGL "When off limits visibility of the opengl headers to just bf_gpu and gawain (temporary option for development purposes)" ON)
|
option(WITH_OPENGL "When off limits visibility of the opengl headers to just bf_gpu and gawain (temporary option for development purposes)" ON)
|
||||||
option(WITH_GLEW_ES "Switches to experimental copy of GLEW that has support for OpenGL ES. (temporary option for development purposes)" OFF)
|
option(WITH_GLEW_ES "Switches to experimental copy of GLEW that has support for OpenGL ES. (temporary option for development purposes)" OFF)
|
||||||
option(WITH_GL_EGL "Use the EGL OpenGL system library instead of the platform specific OpenGL system library (CGL, glX, or WGL)" OFF)
|
|
||||||
option(WITH_GL_PROFILE_ES20 "Support using OpenGL ES 2.0. (through either EGL or the AGL/WGL/XGL 'es20' profile)" OFF)
|
option(WITH_GL_PROFILE_ES20 "Support using OpenGL ES 2.0. (through either EGL or the AGL/WGL/XGL 'es20' profile)" OFF)
|
||||||
option(WITH_GPU_SHADER_BUILDER "Shader builder is a developer option enabling linting on GLSL during compilation" OFF)
|
option(WITH_GPU_BUILDTIME_SHADER_BUILDER "Shader builder is a developer option enabling linting on GLSL during compilation" OFF)
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
WITH_OPENGL
|
WITH_OPENGL
|
||||||
WITH_GLEW_ES
|
WITH_GLEW_ES
|
||||||
WITH_GL_EGL
|
|
||||||
WITH_GL_PROFILE_ES20
|
WITH_GL_PROFILE_ES20
|
||||||
WITH_GPU_SHADER_BUILDER
|
WITH_GPU_BUILDTIME_SHADER_BUILDER
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(WITH_HEADLESS)
|
||||||
|
set(WITH_OPENGL OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Metal
|
# Metal
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
@@ -770,6 +814,7 @@ endif()
|
|||||||
|
|
||||||
set_and_warn_dependency(WITH_PYTHON WITH_CYCLES OFF)
|
set_and_warn_dependency(WITH_PYTHON WITH_CYCLES OFF)
|
||||||
set_and_warn_dependency(WITH_PYTHON WITH_DRACO OFF)
|
set_and_warn_dependency(WITH_PYTHON WITH_DRACO OFF)
|
||||||
|
set_and_warn_dependency(WITH_PYTHON WITH_MOD_FLUID OFF)
|
||||||
|
|
||||||
if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
|
if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)
|
||||||
message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
|
message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")
|
||||||
@@ -786,7 +831,9 @@ set_and_warn_dependency(WITH_BOOST WITH_OPENCOLORIO OFF)
|
|||||||
set_and_warn_dependency(WITH_BOOST WITH_QUADRIFLOW OFF)
|
set_and_warn_dependency(WITH_BOOST WITH_QUADRIFLOW OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_USD OFF)
|
set_and_warn_dependency(WITH_BOOST WITH_USD OFF)
|
||||||
set_and_warn_dependency(WITH_BOOST WITH_ALEMBIC OFF)
|
set_and_warn_dependency(WITH_BOOST WITH_ALEMBIC OFF)
|
||||||
set_and_warn_dependency(WITH_PUGIXML WITH_CYCLES_OSL OFF)
|
if(WITH_CYCLES)
|
||||||
|
set_and_warn_dependency(WITH_PUGIXML WITH_CYCLES_OSL OFF)
|
||||||
|
endif()
|
||||||
set_and_warn_dependency(WITH_PUGIXML WITH_OPENIMAGEIO OFF)
|
set_and_warn_dependency(WITH_PUGIXML WITH_OPENIMAGEIO OFF)
|
||||||
|
|
||||||
if(WITH_BOOST AND NOT (WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
if(WITH_BOOST AND NOT (WITH_CYCLES OR WITH_OPENIMAGEIO OR WITH_INTERNATIONAL OR
|
||||||
@@ -811,6 +858,9 @@ set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_OPENCOLORIO OFF)
|
|||||||
# Haru needs `TIFFFaxBlackCodes` & `TIFFFaxWhiteCodes` symbols from TIFF.
|
# Haru needs `TIFFFaxBlackCodes` & `TIFFFaxWhiteCodes` symbols from TIFF.
|
||||||
set_and_warn_dependency(WITH_IMAGE_TIFF WITH_HARU OFF)
|
set_and_warn_dependency(WITH_IMAGE_TIFF WITH_HARU OFF)
|
||||||
|
|
||||||
|
# USD needs OpenSubDiv, since that is used by the Cycles Hydra render delegate.
|
||||||
|
set_and_warn_dependency(WITH_OPENSUBDIV WITH_USD OFF)
|
||||||
|
|
||||||
# auto enable openimageio for cycles
|
# auto enable openimageio for cycles
|
||||||
if(WITH_CYCLES)
|
if(WITH_CYCLES)
|
||||||
set(WITH_OPENIMAGEIO ON)
|
set(WITH_OPENIMAGEIO ON)
|
||||||
@@ -937,7 +987,10 @@ set(PLATFORM_CFLAGS)
|
|||||||
set(C_WARNINGS)
|
set(C_WARNINGS)
|
||||||
set(CXX_WARNINGS)
|
set(CXX_WARNINGS)
|
||||||
|
|
||||||
# for gcc -Wno-blah-blah
|
# NOTE: These flags are intended for situations where where it's impractical to
|
||||||
|
# suppress warnings by modifying the code or for code which is maintained externally.
|
||||||
|
# For GCC this typically means adding `-Wno-*` arguments to negate warnings
|
||||||
|
# that are useful in the general case.
|
||||||
set(C_REMOVE_STRICT_FLAGS)
|
set(C_REMOVE_STRICT_FLAGS)
|
||||||
set(CXX_REMOVE_STRICT_FLAGS)
|
set(CXX_REMOVE_STRICT_FLAGS)
|
||||||
|
|
||||||
@@ -1457,14 +1510,6 @@ if(WITH_LIBMV OR WITH_GTESTS OR (WITH_CYCLES AND WITH_CYCLES_LOGGING))
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
|
||||||
# Configure Ceres
|
|
||||||
|
|
||||||
if(WITH_LIBMV)
|
|
||||||
# We always have C++11 which includes unordered_map.
|
|
||||||
set(CERES_DEFINES "-DCERES_STD_UNORDERED_MAP;-DCERES_USE_CXX_THREADS")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Extra limits to number of jobs running in parallel for some kind os tasks.
|
# Extra limits to number of jobs running in parallel for some kind os tasks.
|
||||||
# Only supported by Ninja build system currently.
|
# Only supported by Ninja build system currently.
|
||||||
@@ -1541,7 +1586,6 @@ endif()
|
|||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ALL -Wall)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_CAST_ALIGN -Wcast-align)
|
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_IMPLICIT_FUNCTION_DECLARATION -Werror=implicit-function-declaration)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_RETURN_TYPE -Werror=return-type)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
|
ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_ERROR_VLA -Werror=vla)
|
||||||
@@ -1626,6 +1670,18 @@ if(CMAKE_COMPILER_IS_GNUCC)
|
|||||||
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------
|
||||||
|
# Suppress Strict Flags
|
||||||
|
#
|
||||||
|
# Exclude the following warnings from this list:
|
||||||
|
# - `-Wno-address`:
|
||||||
|
# This can give useful hints that point to bugs/misleading logic.
|
||||||
|
# - `-Wno-strict-prototypes`:
|
||||||
|
# No need to support older C-style prototypes.
|
||||||
|
#
|
||||||
|
# If code in `./extern/` needs to suppress these flags that can be done on a case-by-case basis.
|
||||||
|
|
||||||
# flags to undo strict flags
|
# flags to undo strict flags
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_DEPRECATED_DECLARATIONS -Wno-deprecated-declarations)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
||||||
@@ -1681,6 +1737,9 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|||||||
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS -Wunused-macros)
|
# ADD_CHECK_C_COMPILER_FLAG(C_WARNINGS C_WARN_UNUSED_MACROS -Wunused-macros)
|
||||||
# ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS -Wunused-macros)
|
# ADD_CHECK_CXX_COMPILER_FLAG(CXX_WARNINGS CXX_WARN_UNUSED_MACROS -Wunused-macros)
|
||||||
|
|
||||||
|
#----------------------
|
||||||
|
# Suppress Strict Flags
|
||||||
|
|
||||||
# flags to undo strict flags
|
# flags to undo strict flags
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_PARAMETER -Wno-unused-parameter)
|
||||||
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_VARIABLE -Wno-unused-variable)
|
ADD_CHECK_C_COMPILER_FLAG(C_REMOVE_STRICT_FLAGS C_WARN_NO_UNUSED_VARIABLE -Wno-unused-variable)
|
||||||
@@ -1746,6 +1805,7 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
|||||||
"/wd4828" # The file contains a character that is illegal
|
"/wd4828" # The file contains a character that is illegal
|
||||||
"/wd4996" # identifier was declared deprecated
|
"/wd4996" # identifier was declared deprecated
|
||||||
"/wd4661" # no suitable definition provided for explicit template instantiation request
|
"/wd4661" # no suitable definition provided for explicit template instantiation request
|
||||||
|
"/wd4848" # 'no_unique_address' is a vendor extension in C++17
|
||||||
# errors:
|
# errors:
|
||||||
"/we4013" # 'function' undefined; assuming extern returning int
|
"/we4013" # 'function' undefined; assuming extern returning int
|
||||||
"/we4133" # incompatible pointer types
|
"/we4133" # incompatible pointer types
|
||||||
|
28
GNUmakefile
28
GNUmakefile
@@ -120,7 +120,7 @@ Utilities
|
|||||||
Updates git and all submodules but not svn.
|
Updates git and all submodules but not svn.
|
||||||
|
|
||||||
* format:
|
* format:
|
||||||
Format source code using clang (uses PATHS if passed in). For example::
|
Format source code using clang-format & autopep8 (uses PATHS if passed in). For example::
|
||||||
|
|
||||||
make format PATHS="source/blender/blenlib source/blender/blenkernel"
|
make format PATHS="source/blender/blenlib source/blender/blenkernel"
|
||||||
|
|
||||||
@@ -130,6 +130,7 @@ Environment Variables
|
|||||||
* BUILD_DIR: Override default build path.
|
* BUILD_DIR: Override default build path.
|
||||||
* PYTHON: Use this for the Python command (used for checking tools).
|
* PYTHON: Use this for the Python command (used for checking tools).
|
||||||
* NPROCS: Number of processes to use building (auto-detect when omitted).
|
* NPROCS: Number of processes to use building (auto-detect when omitted).
|
||||||
|
* AUTOPEP8: Command used for Python code-formatting (used for the format target).
|
||||||
|
|
||||||
Documentation Targets
|
Documentation Targets
|
||||||
Not associated with building Blender.
|
Not associated with building Blender.
|
||||||
@@ -206,6 +207,27 @@ ifeq ($(OS_NCASE),darwin)
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Set the LIBDIR, an empty string when not found.
|
||||||
|
LIBDIR:=$(wildcard ../lib/${OS_NCASE}_${CPU})
|
||||||
|
ifeq (, $(LIBDIR))
|
||||||
|
LIBDIR:=$(wildcard ../lib/${OS_NCASE}_centos7_${CPU})
|
||||||
|
endif
|
||||||
|
ifeq (, $(LIBDIR))
|
||||||
|
LIBDIR:=$(wildcard ../lib/${OS_NCASE})
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Use the autopep8 module in ../lib/ (which can be executed via Python directly).
|
||||||
|
# Otherwise the "autopep8" command can be used.
|
||||||
|
ifndef AUTOPEP8
|
||||||
|
ifneq (, $(LIBDIR))
|
||||||
|
AUTOPEP8:=$(wildcard $(LIBDIR)/python/lib/python3.10/site-packages/autopep8.py)
|
||||||
|
endif
|
||||||
|
ifeq (, $(AUTOPEP8))
|
||||||
|
AUTOPEP8:=autopep8
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
# additional targets for the build configuration
|
# additional targets for the build configuration
|
||||||
|
|
||||||
@@ -527,8 +549,8 @@ update_code: .FORCE
|
|||||||
@$(PYTHON) ./build_files/utils/make_update.py --no-libraries
|
@$(PYTHON) ./build_files/utils/make_update.py --no-libraries
|
||||||
|
|
||||||
format: .FORCE
|
format: .FORCE
|
||||||
@PATH="../lib/${OS_NCASE}_${CPU}/llvm/bin/:../lib/${OS_NCASE}_centos7_${CPU}/llvm/bin/:../lib/${OS_NCASE}/llvm/bin/:$(PATH)" \
|
@PATH="${LIBDIR}/llvm/bin/:$(PATH)" $(PYTHON) source/tools/utils_maintenance/clang_format_paths.py $(PATHS)
|
||||||
$(PYTHON) source/tools/utils_maintenance/clang_format_paths.py $(PATHS)
|
@$(PYTHON) source/tools/utils_maintenance/autopep8_format_paths.py --autopep8-command="$(AUTOPEP8)" $(PATHS)
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------
|
||||||
|
@@ -30,8 +30,11 @@ cmake_minimum_required(VERSION 3.5)
|
|||||||
include(ExternalProject)
|
include(ExternalProject)
|
||||||
include(cmake/check_software.cmake)
|
include(cmake/check_software.cmake)
|
||||||
include(cmake/options.cmake)
|
include(cmake/options.cmake)
|
||||||
|
# versions.cmake needs to be included after options.cmake due to the BLENDER_PLATFORM_ARM variable being needed.
|
||||||
include(cmake/versions.cmake)
|
include(cmake/versions.cmake)
|
||||||
|
include(cmake/boost_build_options.cmake)
|
||||||
include(cmake/download.cmake)
|
include(cmake/download.cmake)
|
||||||
|
include(cmake/macros.cmake)
|
||||||
|
|
||||||
if(ENABLE_MINGW64)
|
if(ENABLE_MINGW64)
|
||||||
include(cmake/setup_mingw64.cmake)
|
include(cmake/setup_mingw64.cmake)
|
||||||
@@ -46,19 +49,16 @@ include(cmake/png.cmake)
|
|||||||
include(cmake/jpeg.cmake)
|
include(cmake/jpeg.cmake)
|
||||||
include(cmake/blosc.cmake)
|
include(cmake/blosc.cmake)
|
||||||
include(cmake/pthreads.cmake)
|
include(cmake/pthreads.cmake)
|
||||||
|
include(cmake/imath.cmake)
|
||||||
include(cmake/openexr.cmake)
|
include(cmake/openexr.cmake)
|
||||||
include(cmake/brotli.cmake)
|
include(cmake/brotli.cmake)
|
||||||
include(cmake/freetype.cmake)
|
include(cmake/freetype.cmake)
|
||||||
include(cmake/freeglut.cmake)
|
include(cmake/freeglut.cmake)
|
||||||
include(cmake/glew.cmake)
|
include(cmake/glew.cmake)
|
||||||
include(cmake/alembic.cmake)
|
include(cmake/alembic.cmake)
|
||||||
include(cmake/glfw.cmake)
|
|
||||||
include(cmake/clew.cmake)
|
|
||||||
include(cmake/cuew.cmake)
|
|
||||||
include(cmake/opensubdiv.cmake)
|
include(cmake/opensubdiv.cmake)
|
||||||
include(cmake/sdl.cmake)
|
include(cmake/sdl.cmake)
|
||||||
include(cmake/opencollada.cmake)
|
include(cmake/opencollada.cmake)
|
||||||
include(cmake/llvm.cmake)
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
include(cmake/openmp.cmake)
|
include(cmake/openmp.cmake)
|
||||||
endif()
|
endif()
|
||||||
@@ -75,8 +75,8 @@ endif()
|
|||||||
include(cmake/osl.cmake)
|
include(cmake/osl.cmake)
|
||||||
include(cmake/tbb.cmake)
|
include(cmake/tbb.cmake)
|
||||||
include(cmake/openvdb.cmake)
|
include(cmake/openvdb.cmake)
|
||||||
include(cmake/nanovdb.cmake)
|
|
||||||
include(cmake/python.cmake)
|
include(cmake/python.cmake)
|
||||||
|
include(cmake/llvm.cmake)
|
||||||
option(USE_PIP_NUMPY "Install NumPy using pip wheel instead of building from source" OFF)
|
option(USE_PIP_NUMPY "Install NumPy using pip wheel instead of building from source" OFF)
|
||||||
if(APPLE AND ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
|
if(APPLE AND ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
|
||||||
set(USE_PIP_NUMPY ON)
|
set(USE_PIP_NUMPY ON)
|
||||||
@@ -94,12 +94,24 @@ include(cmake/pugixml.cmake)
|
|||||||
include(cmake/ispc.cmake)
|
include(cmake/ispc.cmake)
|
||||||
include(cmake/openimagedenoise.cmake)
|
include(cmake/openimagedenoise.cmake)
|
||||||
include(cmake/embree.cmake)
|
include(cmake/embree.cmake)
|
||||||
|
include(cmake/fmt.cmake)
|
||||||
|
include(cmake/robinmap.cmake)
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
include(cmake/xr_openxr.cmake)
|
include(cmake/xr_openxr.cmake)
|
||||||
|
if(NOT WIN32 OR BUILD_MODE STREQUAL Release)
|
||||||
|
include(cmake/dpcpp.cmake)
|
||||||
|
include(cmake/dpcpp_deps.cmake)
|
||||||
|
endif()
|
||||||
|
if(NOT WIN32)
|
||||||
|
include(cmake/igc.cmake)
|
||||||
|
include(cmake/gmmlib.cmake)
|
||||||
|
include(cmake/ocloc.cmake)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# OpenColorIO and dependencies.
|
# OpenColorIO and dependencies.
|
||||||
include(cmake/expat.cmake)
|
include(cmake/expat.cmake)
|
||||||
|
include(cmake/pystring.cmake)
|
||||||
include(cmake/yamlcpp.cmake)
|
include(cmake/yamlcpp.cmake)
|
||||||
include(cmake/opencolorio.cmake)
|
include(cmake/opencolorio.cmake)
|
||||||
|
|
||||||
@@ -107,8 +119,9 @@ if(BLENDER_PLATFORM_ARM)
|
|||||||
include(cmake/sse2neon.cmake)
|
include(cmake/sse2neon.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_WEBP)
|
include(cmake/webp.cmake)
|
||||||
include(cmake/webp.cmake)
|
if(NOT APPLE)
|
||||||
|
include(cmake/level-zero.cmake)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT WIN32 OR ENABLE_MINGW64)
|
if(NOT WIN32 OR ENABLE_MINGW64)
|
||||||
|
@@ -1,30 +1,16 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(ALEMBIC_EXTRA_ARGS
|
set(ALEMBIC_EXTRA_ARGS
|
||||||
-DBUILDSTATIC=ON
|
-DImath_ROOT=${LIBDIR}/imath
|
||||||
-DLINKSTATIC=ON
|
-DUSE_PYALEMBIC=OFF
|
||||||
-DILMBASE_ROOT=${LIBDIR}/openexr
|
-DUSE_ARNOLD=OFF
|
||||||
-DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${LIBDIR}/openexr/include/OpenEXR
|
-DUSE_MAYA=OFF
|
||||||
-DALEMBIC_ILMBASE_HALF_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DUSE_PRMAN=OFF
|
||||||
-DALEMBIC_ILMBASE_IMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DUSE_HDF5=OFF
|
||||||
-DALEMBIC_ILMBASE_ILMTHREAD_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DUSE_TESTS=OFF
|
||||||
-DALEMBIC_ILMBASE_IEX_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DALEMBIC_ILMBASE_IEXMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IexMath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DUSE_PYILMBASE=0
|
|
||||||
-DUSE_PYALEMBIC=0
|
|
||||||
-DUSE_ARNOLD=0
|
|
||||||
-DUSE_MAYA=0
|
|
||||||
-DUSE_PRMAN=0
|
|
||||||
-DUSE_HDF5=Off
|
|
||||||
-DUSE_STATIC_HDF5=Off
|
|
||||||
-DUSE_TESTS=Off
|
|
||||||
-DALEMBIC_NO_OPENGL=1
|
|
||||||
-DUSE_BINARIES=ON
|
-DUSE_BINARIES=ON
|
||||||
-DALEMBIC_ILMBASE_LINK_STATIC=On
|
-DALEMBIC_ILMBASE_LINK_STATIC=OFF
|
||||||
-DALEMBIC_SHARED_LIBS=OFF
|
-DALEMBIC_SHARED_LIBS=OFF
|
||||||
-DGLUT_INCLUDE_DIR=""
|
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_alembic
|
ExternalProject_Add(external_alembic
|
||||||
@@ -55,6 +41,5 @@ endif()
|
|||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_alembic
|
external_alembic
|
||||||
external_zlib
|
|
||||||
external_openexr
|
external_openexr
|
||||||
)
|
)
|
||||||
|
@@ -24,7 +24,6 @@ ExternalProject_Add(external_blosc
|
|||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH ${BLOSC_HASH_TYPE}=${BLOSC_HASH}
|
URL_HASH ${BLOSC_HASH_TYPE}=${BLOSC_HASH}
|
||||||
PREFIX ${BUILD_DIR}/blosc
|
PREFIX ${BUILD_DIR}/blosc
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 1 -N -d ${BUILD_DIR}/blosc/src/external_blosc < ${PATCH_DIR}/blosc.diff
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/blosc ${DEFAULT_CMAKE_FLAGS} ${BLOSC_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/blosc
|
INSTALL_DIR ${LIBDIR}/blosc
|
||||||
)
|
)
|
||||||
|
@@ -1,22 +1,6 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(BOOST_ADDRESS_MODEL 64)
|
|
||||||
|
|
||||||
if(BLENDER_PLATFORM_ARM)
|
|
||||||
set(BOOST_ARCHITECTURE arm)
|
|
||||||
else()
|
|
||||||
set(BOOST_ARCHITECTURE x86)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(MSVC_VERSION GREATER_EQUAL 1920) # 2019
|
|
||||||
set(BOOST_TOOLSET toolset=msvc-14.2)
|
|
||||||
set(BOOST_COMPILER_STRING -vc142)
|
|
||||||
else() # 2017
|
|
||||||
set(BOOST_TOOLSET toolset=msvc-14.1)
|
|
||||||
set(BOOST_COMPILER_STRING -vc141)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(BOOST_CONFIGURE_COMMAND bootstrap.bat)
|
set(BOOST_CONFIGURE_COMMAND bootstrap.bat)
|
||||||
set(BOOST_BUILD_COMMAND b2)
|
set(BOOST_BUILD_COMMAND b2)
|
||||||
set(BOOST_BUILD_OPTIONS runtime-link=shared )
|
set(BOOST_BUILD_OPTIONS runtime-link=shared )
|
||||||
@@ -36,11 +20,6 @@ else()
|
|||||||
set(BOOST_BUILD_COMMAND ./b2)
|
set(BOOST_BUILD_COMMAND ./b2)
|
||||||
set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
|
set(BOOST_BUILD_OPTIONS cxxflags=${PLATFORM_CXXFLAGS} --disable-icu boost.locale.icu=off)
|
||||||
set(BOOST_PATCH_COMMAND echo .)
|
set(BOOST_PATCH_COMMAND echo .)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
|
||||||
set(BOOST_ADDRESS_MODEL 64)
|
|
||||||
else()
|
|
||||||
set(BOOST_ADDRESS_MODEL 32)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_BOOST_PYTHON)
|
if(WITH_BOOST_PYTHON)
|
||||||
|
@@ -0,0 +1,30 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(BOOST_ADDRESS_MODEL 64)
|
||||||
|
if(BLENDER_PLATFORM_ARM)
|
||||||
|
set(BOOST_ARCHITECTURE arm)
|
||||||
|
else()
|
||||||
|
set(BOOST_ARCHITECTURE x86)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
if(MSVC_VERSION GREATER_EQUAL 1920) # 2019
|
||||||
|
set(BOOST_TOOLSET toolset=msvc-14.2)
|
||||||
|
set(BOOST_COMPILER_STRING -vc142)
|
||||||
|
else() # 2017
|
||||||
|
set(BOOST_TOOLSET toolset=msvc-14.1)
|
||||||
|
set(BOOST_COMPILER_STRING -vc141)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(DEFAULT_BOOST_FLAGS
|
||||||
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
|
-DBoost_USE_STATIC_RUNTIME=OFF
|
||||||
|
-DBOOST_ROOT=${LIBDIR}/boost
|
||||||
|
-DBoost_NO_SYSTEM_PATHS=ON
|
||||||
|
-DBoost_NO_BOOST_CMAKE=ON
|
||||||
|
-DBoost_ADDITIONAL_VERSIONS=${BOOST_VERSION_SHORT}
|
||||||
|
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
||||||
|
)
|
@@ -56,10 +56,7 @@ if(UNIX)
|
|||||||
"On Debian and Ubuntu:\n"
|
"On Debian and Ubuntu:\n"
|
||||||
" apt install autoconf automake libtool yasm tcl ninja-build meson python3-mako\n"
|
" apt install autoconf automake libtool yasm tcl ninja-build meson python3-mako\n"
|
||||||
"\n"
|
"\n"
|
||||||
"On macOS Intel (with homebrew):\n"
|
"On macOS (with homebrew):\n"
|
||||||
" brew install autoconf automake bison libtool pkg-config yasm\n"
|
|
||||||
"\n"
|
|
||||||
"On macOS ARM (with homebrew):\n"
|
|
||||||
" brew install autoconf automake bison flex libtool pkg-config yasm\n"
|
" brew install autoconf automake bison flex libtool pkg-config yasm\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Other platforms:\n"
|
"Other platforms:\n"
|
||||||
|
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
set(CLEW_EXTRA_ARGS)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_clew
|
|
||||||
URL file://${PACKAGE_DIR}/${CLEW_FILE}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH ${CLEW_HASH_TYPE}=${CLEW_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/clew
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/clew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CLEW_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/clew
|
|
||||||
)
|
|
@@ -1,13 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
set(CUEW_EXTRA_ARGS)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_cuew
|
|
||||||
URL file://${PACKAGE_DIR}/${CUEW_FILE}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH ${CUEW_HASH_TYPE}=${CUEW_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/cuew
|
|
||||||
PATCH_COMMAND ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/cuew/src/external_cuew < ${PATCH_DIR}/cuew.diff
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/cuew -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${CUEW_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/cuew
|
|
||||||
)
|
|
@@ -39,10 +39,6 @@ download_source(FREETYPE)
|
|||||||
download_source(GLEW)
|
download_source(GLEW)
|
||||||
download_source(FREEGLUT)
|
download_source(FREEGLUT)
|
||||||
download_source(ALEMBIC)
|
download_source(ALEMBIC)
|
||||||
download_source(GLFW)
|
|
||||||
download_source(CLEW)
|
|
||||||
download_source(GLFW)
|
|
||||||
download_source(CUEW)
|
|
||||||
download_source(OPENSUBDIV)
|
download_source(OPENSUBDIV)
|
||||||
download_source(SDL)
|
download_source(SDL)
|
||||||
download_source(OPENCOLLADA)
|
download_source(OPENCOLLADA)
|
||||||
@@ -71,9 +67,7 @@ download_source(FFMPEG)
|
|||||||
download_source(FFTW)
|
download_source(FFTW)
|
||||||
download_source(ICONV)
|
download_source(ICONV)
|
||||||
download_source(SNDFILE)
|
download_source(SNDFILE)
|
||||||
if(WITH_WEBP)
|
download_source(WEBP)
|
||||||
download_source(WEBP)
|
|
||||||
endif()
|
|
||||||
download_source(SPNAV)
|
download_source(SPNAV)
|
||||||
download_source(JEMALLOC)
|
download_source(JEMALLOC)
|
||||||
download_source(XML2)
|
download_source(XML2)
|
||||||
@@ -102,3 +96,23 @@ download_source(HARU)
|
|||||||
download_source(ZSTD)
|
download_source(ZSTD)
|
||||||
download_source(FLEX)
|
download_source(FLEX)
|
||||||
download_source(BROTLI)
|
download_source(BROTLI)
|
||||||
|
download_source(FMT)
|
||||||
|
download_source(ROBINMAP)
|
||||||
|
download_source(IMATH)
|
||||||
|
download_source(PYSTRING)
|
||||||
|
download_source(LEVEL_ZERO)
|
||||||
|
download_source(DPCPP)
|
||||||
|
download_source(VCINTRINSICS)
|
||||||
|
download_source(OPENCLHEADERS)
|
||||||
|
download_source(ICDLOADER)
|
||||||
|
download_source(MP11)
|
||||||
|
download_source(SPIRV_HEADERS)
|
||||||
|
download_source(IGC)
|
||||||
|
download_source(IGC_LLVM)
|
||||||
|
download_source(IGC_OPENCL_CLANG)
|
||||||
|
download_source(IGC_VCINTRINSICS)
|
||||||
|
download_source(IGC_SPIRV_HEADERS)
|
||||||
|
download_source(IGC_SPIRV_TOOLS)
|
||||||
|
download_source(IGC_SPIRV_TRANSLATOR)
|
||||||
|
download_source(GMMLIB)
|
||||||
|
download_source(OCLOC)
|
||||||
|
109
build_files/build_environment/cmake/dpcpp.cmake
Normal file
109
build_files/build_environment/cmake/dpcpp.cmake
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(LLVM_GENERATOR "Ninja")
|
||||||
|
else()
|
||||||
|
set(LLVM_GENERATOR "Unix Makefiles")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(DPCPP_CONFIGURE_ARGS
|
||||||
|
# When external deps dpcpp needs are not found it will automatically
|
||||||
|
# download the during the configure stage using FetchContent. Given
|
||||||
|
# we need to keep an archive of all source used during build for compliance
|
||||||
|
# reasons it CANNOT download anything we do not know about. By setting
|
||||||
|
# this property to ON, all downloads are disabled, and we will have to
|
||||||
|
# provide the missing deps some other way, a build error beats a compliance
|
||||||
|
# violation
|
||||||
|
--cmake-opt FETCHCONTENT_FULLY_DISCONNECTED=ON
|
||||||
|
)
|
||||||
|
set(DPCPP_SOURCE_ROOT ${BUILD_DIR}/dpcpp/src/external_dpcpp/)
|
||||||
|
set(DPCPP_EXTRA_ARGS
|
||||||
|
# When external deps dpcpp needs are not found it will automatically
|
||||||
|
# download the during the configure stage using FetchContent. Given
|
||||||
|
# we need to keep an archive of all source used during build for compliance
|
||||||
|
# reasons it CANNOT download anything we do not know about. By setting
|
||||||
|
# this property to ON, all downloads are disabled, and we will have to
|
||||||
|
# provide the missing deps some other way, a build or configure error
|
||||||
|
# beats a compliance violation
|
||||||
|
-DFETCHCONTENT_FULLY_DISCONNECTED=ON
|
||||||
|
-DLLVMGenXIntrinsics_SOURCE_DIR=${BUILD_DIR}/vcintrinsics/src/external_vcintrinsics/
|
||||||
|
-DOpenCL_HEADERS=file://${PACKAGE_DIR}/${OPENCLHEADERS_FILE}
|
||||||
|
-DOpenCL_LIBRARY_SRC=file://${PACKAGE_DIR}/${ICDLOADER_FILE}
|
||||||
|
-DBOOST_MP11_SOURCE_DIR=${BUILD_DIR}/mp11/src/external_mp11/
|
||||||
|
-DLEVEL_ZERO_LIBRARY=${LIBDIR}/level-zero/lib/${LIBPREFIX}ze_loader${SHAREDLIBEXT}
|
||||||
|
-DLEVEL_ZERO_INCLUDE_DIR=${LIBDIR}/level-zero/include
|
||||||
|
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=${BUILD_DIR}/spirvheaders/src/external_spirvheaders/
|
||||||
|
# Below here is copied from an invocation of buildbot/config.py
|
||||||
|
-DLLVM_ENABLE_ASSERTIONS=ON
|
||||||
|
-DLLVM_TARGETS_TO_BUILD=X86
|
||||||
|
-DLLVM_EXTERNAL_PROJECTS=sycl^^llvm-spirv^^opencl^^libdevice^^xpti^^xptifw
|
||||||
|
-DLLVM_EXTERNAL_SYCL_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/sycl
|
||||||
|
-DLLVM_EXTERNAL_LLVM_SPIRV_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/llvm-spirv
|
||||||
|
-DLLVM_EXTERNAL_XPTI_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/xpti
|
||||||
|
-DXPTI_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/xpti
|
||||||
|
-DLLVM_EXTERNAL_XPTIFW_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/xptifw
|
||||||
|
-DLLVM_EXTERNAL_LIBDEVICE_SOURCE_DIR=${DPCPP_SOURCE_ROOT}/libdevice
|
||||||
|
-DLLVM_ENABLE_PROJECTS=clang^^sycl^^llvm-spirv^^opencl^^libdevice^^xpti^^xptifw
|
||||||
|
-DLIBCLC_TARGETS_TO_BUILD=
|
||||||
|
-DLIBCLC_GENERATE_REMANGLED_VARIANTS=OFF
|
||||||
|
-DSYCL_BUILD_PI_HIP_PLATFORM=AMD
|
||||||
|
-DLLVM_BUILD_TOOLS=ON
|
||||||
|
-DSYCL_ENABLE_WERROR=OFF
|
||||||
|
-DSYCL_INCLUDE_TESTS=ON
|
||||||
|
-DLLVM_ENABLE_DOXYGEN=OFF
|
||||||
|
-DLLVM_ENABLE_SPHINX=OFF
|
||||||
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DSYCL_ENABLE_XPTI_TRACING=ON
|
||||||
|
-DLLVM_ENABLE_LLD=OFF
|
||||||
|
-DXPTI_ENABLE_WERROR=OFF
|
||||||
|
-DSYCL_CLANG_EXTRA_FLAGS=
|
||||||
|
-DSYCL_ENABLE_PLUGINS=level_zero
|
||||||
|
-DCMAKE_INSTALL_RPATH=\$ORIGIN
|
||||||
|
-DPython3_ROOT_DIR=${LIBDIR}/python/
|
||||||
|
-DPython3_EXECUTABLE=${PYTHON_BINARY}
|
||||||
|
-DPYTHON_EXECUTABLE=${PYTHON_BINARY}
|
||||||
|
-DLLDB_ENABLE_CURSES=OFF
|
||||||
|
-DLLVM_ENABLE_TERMINFO=OFF
|
||||||
|
)
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
list(APPEND DPCPP_EXTRA_ARGS -DPython3_FIND_REGISTRY=NEVER)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
ExternalProject_Add(external_dpcpp
|
||||||
|
URL file://${PACKAGE_DIR}/${DPCPP_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${DPCPP_HASH_TYPE}=${DPCPP_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/dpcpp
|
||||||
|
CMAKE_GENERATOR ${LLVM_GENERATOR}
|
||||||
|
SOURCE_SUBDIR llvm
|
||||||
|
LIST_SEPARATOR ^^
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/dpcpp ${DEFAULT_CMAKE_FLAGS} ${DPCPP_EXTRA_ARGS}
|
||||||
|
#CONFIGURE_COMMAND ${PYTHON_BINARY} ${BUILD_DIR}/dpcpp/src/external_dpcpp/buildbot/configure.py ${DPCPP_CONFIGURE_ARGS}
|
||||||
|
#BUILD_COMMAND echo "." #${PYTHON_BINARY} ${BUILD_DIR}/dpcpp/src/external_dpcpp/buildbot/compile.py
|
||||||
|
INSTALL_COMMAND ${CMAKE_COMMAND} --build . -- deploy-sycl-toolchain
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/dpcpp/src/external_dpcpp < ${PATCH_DIR}/dpcpp.diff
|
||||||
|
INSTALL_DIR ${LIBDIR}/dpcpp
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(
|
||||||
|
external_dpcpp
|
||||||
|
external_python
|
||||||
|
external_python_site_packages
|
||||||
|
external_vcintrinsics
|
||||||
|
external_openclheaders
|
||||||
|
external_icdloader
|
||||||
|
external_mp11
|
||||||
|
external_level-zero
|
||||||
|
external_spirvheaders
|
||||||
|
)
|
||||||
|
|
||||||
|
if(BUILD_MODE STREQUAL Release AND WIN32)
|
||||||
|
ExternalProject_Add_Step(external_dpcpp after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/dpcpp/bin/clang-cl.exe
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/dpcpp/bin/clang-cpp.exe
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/dpcpp/bin/clang.exe
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/dpcpp ${HARVEST_TARGET}/dpcpp
|
||||||
|
)
|
||||||
|
endif()
|
61
build_files/build_environment/cmake/dpcpp_deps.cmake
Normal file
61
build_files/build_environment/cmake/dpcpp_deps.cmake
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
# These are build time requirements for dpcpp
|
||||||
|
# We only have to unpack these dpcpp will build
|
||||||
|
# them.
|
||||||
|
|
||||||
|
ExternalProject_Add(external_vcintrinsics
|
||||||
|
URL file://${PACKAGE_DIR}/${VCINTRINSICS_FILE}
|
||||||
|
URL_HASH ${VCINTRINSICS_HASH_TYPE}=${VCINTRINSICS_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/vcintrinsics
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
||||||
|
|
||||||
|
# opencl headers do not have to be unpacked, dpcpp will do it
|
||||||
|
# but it wouldn't hurt to do it anyway as an opertunity to validate
|
||||||
|
# the hash is correct.
|
||||||
|
ExternalProject_Add(external_openclheaders
|
||||||
|
URL file://${PACKAGE_DIR}/${OPENCLHEADERS_FILE}
|
||||||
|
URL_HASH ${OPENCLHEADERS_HASH_TYPE}=${OPENCLHEADERS_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/openclheaders
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
||||||
|
|
||||||
|
# icdloader does not have to be unpacked, dpcpp will do it
|
||||||
|
# but it wouldn't hurt to do it anyway as an opertunity to validate
|
||||||
|
# the hash is correct.
|
||||||
|
ExternalProject_Add(external_icdloader
|
||||||
|
URL file://${PACKAGE_DIR}/${ICDLOADER_FILE}
|
||||||
|
URL_HASH ${ICDLOADER_HASH_TYPE}=${ICDLOADER_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/icdloader
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_mp11
|
||||||
|
URL file://${PACKAGE_DIR}/${MP11_FILE}
|
||||||
|
URL_HASH ${MP11_HASH_TYPE}=${MP11_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/mp11
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_spirvheaders
|
||||||
|
URL file://${PACKAGE_DIR}/${SPIRV_HEADERS_FILE}
|
||||||
|
URL_HASH ${SPIRV_HEADERS_HASH_TYPE}=${SPIRV_HEADERS_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/spirvheaders
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
@@ -10,44 +10,25 @@ set(EMBREE_EXTRA_ARGS
|
|||||||
-DEMBREE_RAY_MASK=ON
|
-DEMBREE_RAY_MASK=ON
|
||||||
-DEMBREE_FILTER_FUNCTION=ON
|
-DEMBREE_FILTER_FUNCTION=ON
|
||||||
-DEMBREE_BACKFACE_CULLING=OFF
|
-DEMBREE_BACKFACE_CULLING=OFF
|
||||||
-DEMBREE_MAX_ISA=AVX2
|
|
||||||
-DEMBREE_TASKING_SYSTEM=TBB
|
-DEMBREE_TASKING_SYSTEM=TBB
|
||||||
-DEMBREE_TBB_ROOT=${LIBDIR}/tbb
|
-DEMBREE_TBB_ROOT=${LIBDIR}/tbb
|
||||||
-DTBB_ROOT=${LIBDIR}/tbb
|
-DTBB_ROOT=${LIBDIR}/tbb
|
||||||
-DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if (NOT BLENDER_PLATFORM_ARM)
|
||||||
|
set(EMBREE_EXTRA_ARGS
|
||||||
|
${EMBREE_EXTRA_ARGS}
|
||||||
|
-DEMBREE_MAX_ISA=AVX2)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(TBB_STATIC_LIBRARY)
|
if(TBB_STATIC_LIBRARY)
|
||||||
set(EMBREE_EXTRA_ARGS
|
set(EMBREE_EXTRA_ARGS
|
||||||
${EMBREE_EXTRA_ARGS}
|
${EMBREE_EXTRA_ARGS}
|
||||||
-DEMBREE_TBB_LIBRARY_NAME=tbb_static
|
-DEMBREE_TBB_COMPONENT=tbb_static
|
||||||
-DEMBREE_TBBMALLOC_LIBRARY_NAME=tbbmalloc_static
|
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
ExternalProject_Add(external_embree
|
||||||
set(EMBREE_BUILD_DIR ${BUILD_MODE}/)
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
|
||||||
list(APPEND EMBREE_EXTRA_ARGS
|
|
||||||
-DEMBREE_TBBMALLOC_LIBRARY_NAME=tbbmalloc_debug
|
|
||||||
-DEMBREE_TBB_LIBRARY_NAME=tbb_debug
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(EMBREE_BUILD_DIR)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BLENDER_PLATFORM_ARM)
|
|
||||||
ExternalProject_Add(external_embree
|
|
||||||
GIT_REPOSITORY ${EMBREE_ARM_GIT}
|
|
||||||
GIT_TAG "blender-arm"
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
PREFIX ${BUILD_DIR}/embree
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/embree
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
ExternalProject_Add(external_embree
|
|
||||||
URL file://${PACKAGE_DIR}/${EMBREE_FILE}
|
URL file://${PACKAGE_DIR}/${EMBREE_FILE}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH ${EMBREE_HASH_TYPE}=${EMBREE_HASH}
|
URL_HASH ${EMBREE_HASH_TYPE}=${EMBREE_HASH}
|
||||||
@@ -55,8 +36,7 @@ else()
|
|||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/embree/src/external_embree < ${PATCH_DIR}/embree.diff
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/embree/src/external_embree < ${PATCH_DIR}/embree.diff
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/embree ${DEFAULT_CMAKE_FLAGS} ${EMBREE_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/embree
|
INSTALL_DIR ${LIBDIR}/embree
|
||||||
)
|
)
|
||||||
endif()
|
|
||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_embree
|
external_embree
|
||||||
|
@@ -5,6 +5,8 @@ ExternalProject_Add(external_flex
|
|||||||
URL_HASH ${FLEX_HASH_TYPE}=${FLEX_HASH}
|
URL_HASH ${FLEX_HASH_TYPE}=${FLEX_HASH}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
PREFIX ${BUILD_DIR}/flex
|
PREFIX ${BUILD_DIR}/flex
|
||||||
|
# This patch fixes build with some versions of glibc (https://github.com/westes/flex/commit/24fd0551333e7eded87b64dd36062da3df2f6380)
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -d ${BUILD_DIR}/flex/src/external_flex < ${PATCH_DIR}/flex.diff
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flex
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/flex
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/flex/src/external_flex/ && make install
|
||||||
|
14
build_files/build_environment/cmake/fmt.cmake
Normal file
14
build_files/build_environment/cmake/fmt.cmake
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(FMT_EXTRA_ARGS
|
||||||
|
-DFMT_TEST=Off
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_fmt
|
||||||
|
URL file://${PACKAGE_DIR}/${FMT_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${FMT_HASH_TYPE}=${FMT_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/fmt
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/fmt ${DEFAULT_CMAKE_FLAGS} ${FMT_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/fmt
|
||||||
|
)
|
@@ -1,12 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
set(GLFW_EXTRA_ARGS)
|
|
||||||
|
|
||||||
ExternalProject_Add(external_glfw
|
|
||||||
URL file://${PACKAGE_DIR}/${GLFW_FILE}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH ${GLFW_HASH_TYPE}=${GLFW_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/glfw
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/glfw -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${GLFW_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/glfw
|
|
||||||
)
|
|
13
build_files/build_environment/cmake/gmmlib.cmake
Normal file
13
build_files/build_environment/cmake/gmmlib.cmake
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(GMMLIB_EXTRA_ARGS
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_gmmlib
|
||||||
|
URL file://${PACKAGE_DIR}/${GMMLIB_FILE}
|
||||||
|
URL_HASH ${GMMLIB_HASH_TYPE}=${GMMLIB_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/gmmlib
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/gmmlib ${DEFAULT_CMAKE_FLAGS} ${GMMLIB_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/gmmlib
|
||||||
|
)
|
@@ -14,8 +14,8 @@ if(WIN32)
|
|||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
add_custom_target(Harvest_Release_Results
|
add_custom_target(Harvest_Release_Results
|
||||||
COMMAND # jpeg rename libfile + copy include
|
COMMAND # jpeg rename libfile + copy include
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/jpeg/lib/jpeg-static.lib ${HARVEST_TARGET}/jpeg/lib/libjpeg.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/jpeg/include/ ${HARVEST_TARGET}/jpeg/include/ &&
|
||||||
# png
|
# png
|
||||||
${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
|
${CMAKE_COMMAND} -E copy ${LIBDIR}/png/lib/libpng16_static.lib ${HARVEST_TARGET}/png/lib/libpng.lib &&
|
||||||
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
|
${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/png/include/ ${HARVEST_TARGET}/png/include/ &&
|
||||||
@@ -67,6 +67,8 @@ harvest(brotli/include brotli/include "*.h")
|
|||||||
harvest(brotli/lib brotli/lib "*.a")
|
harvest(brotli/lib brotli/lib "*.a")
|
||||||
harvest(boost/include boost/include "*")
|
harvest(boost/include boost/include "*")
|
||||||
harvest(boost/lib boost/lib "*.a")
|
harvest(boost/lib boost/lib "*.a")
|
||||||
|
harvest(imath/include imath/include "*.h")
|
||||||
|
harvest(imath/lib imath/lib "*.a")
|
||||||
harvest(ffmpeg/include ffmpeg/include "*.h")
|
harvest(ffmpeg/include ffmpeg/include "*.h")
|
||||||
harvest(ffmpeg/lib ffmpeg/lib "*.a")
|
harvest(ffmpeg/lib ffmpeg/lib "*.a")
|
||||||
harvest(fftw3/include fftw3/include "*.h")
|
harvest(fftw3/include fftw3/include "*.h")
|
||||||
@@ -80,9 +82,13 @@ harvest(gmp/include gmp/include "*.h")
|
|||||||
harvest(gmp/lib gmp/lib "*.a")
|
harvest(gmp/lib gmp/lib "*.a")
|
||||||
harvest(jemalloc/include jemalloc/include "*.h")
|
harvest(jemalloc/include jemalloc/include "*.h")
|
||||||
harvest(jemalloc/lib jemalloc/lib "*.a")
|
harvest(jemalloc/lib jemalloc/lib "*.a")
|
||||||
harvest(jpg/include jpeg/include "*.h")
|
harvest(jpeg/include jpeg/include "*.h")
|
||||||
harvest(jpg/lib jpeg/lib "libjpeg.a")
|
harvest(jpeg/lib jpeg/lib "libjpeg.a")
|
||||||
harvest(lame/lib ffmpeg/lib "*.a")
|
harvest(lame/lib ffmpeg/lib "*.a")
|
||||||
|
if(NOT APPLE)
|
||||||
|
harvest(level-zero/include/level_zero level-zero/include/level_zero "*.h")
|
||||||
|
harvest(level-zero/lib level-zero/lib "*.so*")
|
||||||
|
endif()
|
||||||
harvest(llvm/bin llvm/bin "clang-format")
|
harvest(llvm/bin llvm/bin "clang-format")
|
||||||
if(BUILD_CLANG_TOOLS)
|
if(BUILD_CLANG_TOOLS)
|
||||||
harvest(llvm/bin llvm/bin "clang-tidy")
|
harvest(llvm/bin llvm/bin "clang-tidy")
|
||||||
@@ -135,13 +141,13 @@ harvest(openimagedenoise/include openimagedenoise/include "*")
|
|||||||
harvest(openimagedenoise/lib openimagedenoise/lib "*.a")
|
harvest(openimagedenoise/lib openimagedenoise/lib "*.a")
|
||||||
harvest(embree/include embree/include "*.h")
|
harvest(embree/include embree/include "*.h")
|
||||||
harvest(embree/lib embree/lib "*.a")
|
harvest(embree/lib embree/lib "*.a")
|
||||||
harvest(openjpeg/include/openjpeg-2.3 openjpeg/include "*.h")
|
harvest(openjpeg/include/openjpeg-${OPENJPEG_SHORT_VERSION} openjpeg/include "*.h")
|
||||||
harvest(openjpeg/lib openjpeg/lib "*.a")
|
harvest(openjpeg/lib openjpeg/lib "*.a")
|
||||||
harvest(opensubdiv/include opensubdiv/include "*.h")
|
harvest(opensubdiv/include opensubdiv/include "*.h")
|
||||||
harvest(opensubdiv/lib opensubdiv/lib "*.a")
|
harvest(opensubdiv/lib opensubdiv/lib "*.a")
|
||||||
harvest(openvdb/include/openvdb openvdb/include/openvdb "*.h")
|
harvest(openvdb/include/openvdb openvdb/include/openvdb "*.h")
|
||||||
|
harvest(openvdb/include/nanovdb openvdb/include/nanovdb "*.h")
|
||||||
harvest(openvdb/lib openvdb/lib "*.a")
|
harvest(openvdb/lib openvdb/lib "*.a")
|
||||||
harvest(nanovdb/nanovdb nanovdb/include/nanovdb "*.h")
|
|
||||||
harvest(xr_openxr_sdk/include/openxr xr_openxr_sdk/include/openxr "*.h")
|
harvest(xr_openxr_sdk/include/openxr xr_openxr_sdk/include/openxr "*.h")
|
||||||
harvest(xr_openxr_sdk/lib xr_openxr_sdk/lib "*.a")
|
harvest(xr_openxr_sdk/lib xr_openxr_sdk/lib "*.a")
|
||||||
harvest(osl/bin osl/bin "oslc")
|
harvest(osl/bin osl/bin "oslc")
|
||||||
@@ -169,9 +175,10 @@ harvest(tiff/lib tiff/lib "*.a")
|
|||||||
harvest(vorbis/lib ffmpeg/lib "*.a")
|
harvest(vorbis/lib ffmpeg/lib "*.a")
|
||||||
harvest(opus/lib ffmpeg/lib "*.a")
|
harvest(opus/lib ffmpeg/lib "*.a")
|
||||||
harvest(vpx/lib ffmpeg/lib "*.a")
|
harvest(vpx/lib ffmpeg/lib "*.a")
|
||||||
harvest(webp/lib ffmpeg/lib "*.a")
|
|
||||||
harvest(x264/lib ffmpeg/lib "*.a")
|
harvest(x264/lib ffmpeg/lib "*.a")
|
||||||
harvest(xvidcore/lib ffmpeg/lib "*.a")
|
harvest(xvidcore/lib ffmpeg/lib "*.a")
|
||||||
|
harvest(webp/lib webp/lib "*.a")
|
||||||
|
harvest(webp/include webp/include "*.h")
|
||||||
harvest(usd/include usd/include "*.h")
|
harvest(usd/include usd/include "*.h")
|
||||||
harvest(usd/lib/usd usd/lib/usd "*")
|
harvest(usd/lib/usd usd/lib/usd "*")
|
||||||
harvest(usd/plugin usd/plugin "*")
|
harvest(usd/plugin usd/plugin "*")
|
||||||
@@ -185,6 +192,10 @@ harvest(zstd/lib zstd/lib "*.a")
|
|||||||
if(UNIX AND NOT APPLE)
|
if(UNIX AND NOT APPLE)
|
||||||
harvest(libglu/lib mesa/lib "*.so*")
|
harvest(libglu/lib mesa/lib "*.so*")
|
||||||
harvest(mesa/lib64 mesa/lib "*.so*")
|
harvest(mesa/lib64 mesa/lib "*.so*")
|
||||||
endif()
|
|
||||||
|
harvest(dpcpp dpcpp "*")
|
||||||
|
harvest(igc dpcpp/lib/igc "*")
|
||||||
|
harvest(ocloc dpcpp/lib/ocloc "*")
|
||||||
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
126
build_files/build_environment/cmake/igc.cmake
Normal file
126
build_files/build_environment/cmake/igc.cmake
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
unpack_only(igc_vcintrinsics)
|
||||||
|
unpack_only(igc_spirv_headers)
|
||||||
|
unpack_only(igc_spirv_tools)
|
||||||
|
|
||||||
|
#
|
||||||
|
# igc_opencl_clang contains patches that need to be applied
|
||||||
|
# to external_igc_llvm and igc_spirv_translator, we unpack
|
||||||
|
# igc_opencl_clang first, then have the patch stages of
|
||||||
|
# external_igc_llvm and igc_spirv_translator apply them.
|
||||||
|
#
|
||||||
|
|
||||||
|
ExternalProject_Add(external_igc_opencl_clang
|
||||||
|
URL file://${PACKAGE_DIR}/${IGC_OPENCL_CLANG_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${IGC_OPENCL_CLANG_HASH_TYPE}=${IGC_OPENCL_CLANG_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/igc_opencl_clang
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/igc_opencl_clang/src/external_igc_opencl_clang/ < ${PATCH_DIR}/igc_opencl_clang.diff
|
||||||
|
)
|
||||||
|
|
||||||
|
set(IGC_OPENCL_CLANG_PATCH_DIR ${BUILD_DIR}/igc_opencl_clang/src/external_igc_opencl_clang/patches)
|
||||||
|
set(IGC_LLVM_SOURCE_DIR ${BUILD_DIR}/igc_llvm/src/external_igc_llvm)
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_SOURCE_DIR ${BUILD_DIR}/igc_spirv_translator/src/external_igc_spirv_translator)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_igc_llvm
|
||||||
|
URL file://${PACKAGE_DIR}/${IGC_LLVM_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${IGC_LLVM_HASH_TYPE}=${IGC_LLVM_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/igc_llvm
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/clang/0001-OpenCL-3.0-support.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/clang/0002-Remove-__IMAGE_SUPPORT__-macro-for-SPIR.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/clang/0003-Avoid-calling-ParseCommandLineOptions-in-BackendUtil.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/clang/0004-OpenCL-support-cl_ext_float_atomics.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/clang/0005-OpenCL-Add-cl_khr_integer_dot_product.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/llvm/0001-Memory-leak-fix-for-Managed-Static-Mutex.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_LLVM_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/llvm/0002-Remove-repo-name-in-LLVM-IR.patch
|
||||||
|
)
|
||||||
|
add_dependencies(
|
||||||
|
external_igc_llvm
|
||||||
|
external_igc_opencl_clang
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_igc_spirv_translator
|
||||||
|
URL file://${PACKAGE_DIR}/${IGC_SPIRV_TRANSLATOR_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${IGC_SPIRV_TRANSLATOR_HASH_TYPE}=${IGC_SPIRV_TRANSLATOR_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/igc_spirv_translator
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${IGC_SPIRV_TRANSLATOR_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/spirv/0001-update-SPIR-V-headers-for-SPV_INTEL_split_barrier.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_SPIRV_TRANSLATOR_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/spirv/0002-Add-support-for-split-barriers-extension-SPV_INTEL_s.patch &&
|
||||||
|
${PATCH_CMD} -p 1 -d ${IGC_SPIRV_TRANSLATOR_SOURCE_DIR} < ${IGC_OPENCL_CLANG_PATCH_DIR}/spirv/0003-Support-cl_bf16_conversions.patch
|
||||||
|
)
|
||||||
|
add_dependencies(
|
||||||
|
external_igc_spirv_translator
|
||||||
|
external_igc_opencl_clang
|
||||||
|
)
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(IGC_GENERATOR "Ninja")
|
||||||
|
set(IGC_TARGET Windows64)
|
||||||
|
else()
|
||||||
|
set(IGC_GENERATOR "Unix Makefiles")
|
||||||
|
set(IGC_TARGET Linux64)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(IGC_EXTRA_ARGS
|
||||||
|
-DIGC_OPTION__ARCHITECTURE_TARGET=${IGC_TARGET}
|
||||||
|
-DIGC_OPTION__ARCHITECTURE_HOST=${IGC_TARGET}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(UNIX AND NOT APPLE)
|
||||||
|
list(APPEND IGC_EXTRA_ARGS
|
||||||
|
-DFLEX_EXECUTABLE=${LIBDIR}/flex/bin/flex
|
||||||
|
-DFLEX_INCLUDE_DIR=${LIBDIR}/flex/include
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
ExternalProject_Add(external_igc
|
||||||
|
URL file://${PACKAGE_DIR}/${IGC_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${IGC_HASH_TYPE}=${IGC_HASH}
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/igc ${DEFAULT_CMAKE_FLAGS} ${IGC_EXTRA_ARGS}
|
||||||
|
|
||||||
|
# IGC is pretty set in its way where sub projects ought to live, for some it offers
|
||||||
|
# hooks to supply alternatives folders, other are just hardocded with no way to configure
|
||||||
|
# we symlink everything here, since it's less work than trying to convince the cmake
|
||||||
|
# scripts to accept alternative locations.
|
||||||
|
#
|
||||||
|
PATCH_COMMAND ${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_llvm/src/external_igc_llvm/ ${BUILD_DIR}/igc/src/llvm-project &&
|
||||||
|
${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_opencl_clang/src/external_igc_opencl_clang/ ${BUILD_DIR}/igc/src/llvm-project/llvm/projects/opencl-clang &&
|
||||||
|
${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_spirv_translator/src/external_igc_spirv_translator/ ${BUILD_DIR}/igc/src/llvm-project/llvm/projects/llvm-spirv &&
|
||||||
|
${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_spirv_tools/src/external_igc_spirv_tools/ ${BUILD_DIR}/igc/src/SPIRV-Tools &&
|
||||||
|
${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_spirv_headers/src/external_igc_spirv_headers/ ${BUILD_DIR}/igc/src/SPIRV-Headers &&
|
||||||
|
${CMAKE_COMMAND} -E create_symlink ${BUILD_DIR}/igc_vcintrinsics/src/external_igc_vcintrinsics/ ${BUILD_DIR}/igc/src/vc-intrinsics
|
||||||
|
PREFIX ${BUILD_DIR}/igc
|
||||||
|
INSTALL_DIR ${LIBDIR}/igc
|
||||||
|
INSTALL_COMMAND ${CMAKE_COMMAND} --install . --strip
|
||||||
|
CMAKE_GENERATOR ${IGC_GENERATOR}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(
|
||||||
|
external_igc
|
||||||
|
external_igc_vcintrinsics
|
||||||
|
external_igc_llvm
|
||||||
|
external_igc_opencl_clang
|
||||||
|
external_igc_vcintrinsics
|
||||||
|
external_igc_spirv_headers
|
||||||
|
external_igc_spirv_tools
|
||||||
|
external_igc_spirv_translator
|
||||||
|
)
|
||||||
|
|
||||||
|
if(UNIX AND NOT APPLE)
|
||||||
|
add_dependencies(
|
||||||
|
external_igc
|
||||||
|
external_flex
|
||||||
|
)
|
||||||
|
endif()
|
24
build_files/build_environment/cmake/imath.cmake
Normal file
24
build_files/build_environment/cmake/imath.cmake
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(IMATH_EXTRA_ARGS
|
||||||
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DBUILD_TESTING=OFF
|
||||||
|
-DIMATH_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_imath
|
||||||
|
URL file://${PACKAGE_DIR}/${IMATH_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${IMATH_HASH_TYPE}=${IMATH_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/imath
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/imath ${DEFAULT_CMAKE_FLAGS} ${IMATH_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/imath
|
||||||
|
)
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
ExternalProject_Add_Step(external_imath after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/imath/lib ${HARVEST_TARGET}/imath/lib
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/imath/include ${HARVEST_TARGET}/imath/include
|
||||||
|
DEPENDEES install
|
||||||
|
)
|
||||||
|
endif()
|
@@ -6,6 +6,7 @@ if(WIN32)
|
|||||||
-DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe
|
-DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe
|
||||||
-DM4_EXECUTABLE=${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/m4.exe
|
-DM4_EXECUTABLE=${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/m4.exe
|
||||||
-DARM_ENABLED=Off
|
-DARM_ENABLED=Off
|
||||||
|
-DPython3_FIND_REGISTRY=NEVER
|
||||||
)
|
)
|
||||||
elseif(APPLE)
|
elseif(APPLE)
|
||||||
# Use bison and flex installed via Homebrew.
|
# Use bison and flex installed via Homebrew.
|
||||||
@@ -27,7 +28,7 @@ elseif(UNIX)
|
|||||||
set(ISPC_EXTRA_ARGS_UNIX
|
set(ISPC_EXTRA_ARGS_UNIX
|
||||||
-DCMAKE_C_COMPILER=${LIBDIR}/llvm/bin/clang
|
-DCMAKE_C_COMPILER=${LIBDIR}/llvm/bin/clang
|
||||||
-DCMAKE_CXX_COMPILER=${LIBDIR}/llvm/bin/clang++
|
-DCMAKE_CXX_COMPILER=${LIBDIR}/llvm/bin/clang++
|
||||||
-DARM_ENABLED=Off
|
-DARM_ENABLED=${BLENDER_PLATFORM_ARM}
|
||||||
-DFLEX_EXECUTABLE=${LIBDIR}/flex/bin/flex
|
-DFLEX_EXECUTABLE=${LIBDIR}/flex/bin/flex
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
@@ -43,6 +44,8 @@ set(ISPC_EXTRA_ARGS
|
|||||||
-DISPC_INCLUDE_TESTS=Off
|
-DISPC_INCLUDE_TESTS=Off
|
||||||
-DCLANG_LIBRARY_DIR=${LIBDIR}/llvm/lib
|
-DCLANG_LIBRARY_DIR=${LIBDIR}/llvm/lib
|
||||||
-DCLANG_INCLUDE_DIRS=${LIBDIR}/llvm/include
|
-DCLANG_INCLUDE_DIRS=${LIBDIR}/llvm/include
|
||||||
|
-DPython3_ROOT_DIR=${LIBDIR}/python/
|
||||||
|
-DPython3_EXECUTABLE=${PYTHON_BINARY}
|
||||||
${ISPC_EXTRA_ARGS_WIN}
|
${ISPC_EXTRA_ARGS_WIN}
|
||||||
${ISPC_EXTRA_ARGS_APPLE}
|
${ISPC_EXTRA_ARGS_APPLE}
|
||||||
${ISPC_EXTRA_ARGS_UNIX}
|
${ISPC_EXTRA_ARGS_UNIX}
|
||||||
@@ -61,6 +64,7 @@ ExternalProject_Add(external_ispc
|
|||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_ispc
|
external_ispc
|
||||||
ll
|
ll
|
||||||
|
external_python
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
@@ -2,44 +2,52 @@
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# cmake for windows
|
# cmake for windows
|
||||||
set(JPEG_EXTRA_ARGS -DNASM=${NASM_PATH} -DWITH_JPEG8=ON -DCMAKE_DEBUG_POSTFIX=d -DWITH_CRT_DLL=On)
|
set(JPEG_EXTRA_ARGS
|
||||||
|
-DNASM=${NASM_PATH}
|
||||||
|
-DWITH_JPEG8=ON
|
||||||
|
-DCMAKE_DEBUG_POSTFIX=d
|
||||||
|
-DWITH_CRT_DLL=On
|
||||||
|
-DENABLE_SHARED=OFF
|
||||||
|
-DENABLE_STATIC=ON
|
||||||
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_jpeg
|
ExternalProject_Add(external_jpeg
|
||||||
URL file://${PACKAGE_DIR}/${JPEG_FILE}
|
URL file://${PACKAGE_DIR}/${JPEG_FILE}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH ${JPEG_HASH_TYPE}=${JPEG_HASH}
|
URL_HASH ${JPEG_HASH_TYPE}=${JPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/jpg
|
PREFIX ${BUILD_DIR}/jpeg
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpeg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/jpg
|
INSTALL_DIR ${LIBDIR}/jpeg
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
|
||||||
ExternalProject_Add_Step(external_jpeg after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpg/lib/jpegd${LIBEXT} ${LIBDIR}/jpg/lib/jpeg${LIBEXT}
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
set(JPEG_LIBRARY jpeg-static${LIBEXT})
|
set(JPEG_LIBRARY jpeg-static${LIBEXT})
|
||||||
else()
|
else()
|
||||||
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
set(JPEG_LIBRARY jpeg-staticd${LIBEXT})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(BUILD_MODE STREQUAL Release)
|
||||||
|
ExternalProject_Add_Step(external_jpeg after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/jpeg/lib/${JPEG_LIBRARY} ${LIBDIR}/jpeg/lib/jpeg${LIBEXT}
|
||||||
|
DEPENDEES install
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
else(WIN32)
|
else(WIN32)
|
||||||
# cmake for unix
|
# cmake for unix
|
||||||
set(JPEG_EXTRA_ARGS
|
set(JPEG_EXTRA_ARGS
|
||||||
-DWITH_JPEG8=ON
|
-DWITH_JPEG8=ON
|
||||||
-DENABLE_STATIC=ON
|
-DENABLE_STATIC=ON
|
||||||
-DENABLE_SHARED=OFF
|
-DENABLE_SHARED=OFF
|
||||||
-DCMAKE_INSTALL_LIBDIR=${LIBDIR}/jpg/lib)
|
-DCMAKE_INSTALL_LIBDIR=${LIBDIR}/jpeg/lib)
|
||||||
|
|
||||||
ExternalProject_Add(external_jpeg
|
ExternalProject_Add(external_jpeg
|
||||||
URL file://${PACKAGE_DIR}/${JPEG_FILE}
|
URL file://${PACKAGE_DIR}/${JPEG_FILE}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH ${JPEG_HASH_TYPE}=${JPEG_HASH}
|
URL_HASH ${JPEG_HASH_TYPE}=${JPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/jpg
|
PREFIX ${BUILD_DIR}/jpeg
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/jpeg ${DEFAULT_CMAKE_FLAGS} ${JPEG_EXTRA_ARGS}
|
||||||
INSTALL_DIR ${LIBDIR}/jpg
|
INSTALL_DIR ${LIBDIR}/jpeg
|
||||||
)
|
)
|
||||||
|
|
||||||
set(JPEG_LIBRARY libjpeg${LIBEXT})
|
set(JPEG_LIBRARY libjpeg${LIBEXT})
|
||||||
|
21
build_files/build_environment/cmake/level-zero.cmake
Normal file
21
build_files/build_environment/cmake/level-zero.cmake
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(LEVEL_ZERO_EXTRA_ARGS
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_level-zero
|
||||||
|
URL file://${PACKAGE_DIR}/${LEVEL_ZERO_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${LEVEL_ZERO_HASH_TYPE}=${LEVEL_ZERO_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/level-zero
|
||||||
|
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/level-zero/src/external_level-zero < ${PATCH_DIR}/level-zero.diff
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/level-zero ${DEFAULT_CMAKE_FLAGS} ${LEVEL_ZERO_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/level-zero
|
||||||
|
)
|
||||||
|
|
||||||
|
if(BUILD_MODE STREQUAL Release AND WIN32)
|
||||||
|
ExternalProject_Add_Step(external_level-zero after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/level-zero ${HARVEST_TARGET}/level-zero
|
||||||
|
DEPENDEES install
|
||||||
|
)
|
||||||
|
endif()
|
@@ -25,11 +25,14 @@ set(LLVM_EXTRA_ARGS
|
|||||||
-DLLVM_BUILD_LLVM_C_DYLIB=OFF
|
-DLLVM_BUILD_LLVM_C_DYLIB=OFF
|
||||||
-DLLVM_ENABLE_UNWIND_TABLES=OFF
|
-DLLVM_ENABLE_UNWIND_TABLES=OFF
|
||||||
-DLLVM_ENABLE_PROJECTS=clang${LLVM_BUILD_CLANG_TOOLS_EXTRA}
|
-DLLVM_ENABLE_PROJECTS=clang${LLVM_BUILD_CLANG_TOOLS_EXTRA}
|
||||||
|
-DPython3_ROOT_DIR=${LIBDIR}/python/
|
||||||
|
-DPython3_EXECUTABLE=${PYTHON_BINARY}
|
||||||
${LLVM_XML2_ARGS}
|
${LLVM_XML2_ARGS}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(LLVM_GENERATOR "Ninja")
|
set(LLVM_GENERATOR "Ninja")
|
||||||
|
list(APPEND LLVM_EXTRA_ARGS -DPython3_FIND_REGISTRY=NEVER)
|
||||||
else()
|
else()
|
||||||
set(LLVM_GENERATOR "Unix Makefiles")
|
set(LLVM_GENERATOR "Unix Makefiles")
|
||||||
endif()
|
endif()
|
||||||
@@ -74,3 +77,8 @@ if(APPLE)
|
|||||||
external_xml2
|
external_xml2
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
add_dependencies(
|
||||||
|
ll
|
||||||
|
external_python
|
||||||
|
)
|
||||||
|
18
build_files/build_environment/cmake/macros.cmake
Normal file
18
build_files/build_environment/cmake/macros.cmake
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
# shorthand to only unpack a certain dependency
|
||||||
|
macro(unpack_only name)
|
||||||
|
string(TOUPPER ${name} UPPER_NAME)
|
||||||
|
set(TARGET_FILE ${${UPPER_NAME}_FILE})
|
||||||
|
set(TARGET_HASH_TYPE ${${UPPER_NAME}_HASH_TYPE})
|
||||||
|
set(TARGET_HASH ${${UPPER_NAME}_HASH})
|
||||||
|
ExternalProject_Add(external_${name}
|
||||||
|
URL file://${PACKAGE_DIR}/${TARGET_FILE}
|
||||||
|
URL_HASH ${TARGET_HASH_TYPE}=${TARGET_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/${name}
|
||||||
|
CONFIGURE_COMMAND echo .
|
||||||
|
BUILD_COMMAND echo .
|
||||||
|
INSTALL_COMMAND echo .
|
||||||
|
)
|
||||||
|
endmacro()
|
@@ -1,39 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
||||||
|
|
||||||
set(NANOVDB_EXTRA_ARGS
|
|
||||||
# NanoVDB is header-only, so only need the install target
|
|
||||||
-DNANOVDB_BUILD_UNITTESTS=OFF
|
|
||||||
-DNANOVDB_BUILD_EXAMPLES=OFF
|
|
||||||
-DNANOVDB_BUILD_BENCHMARK=OFF
|
|
||||||
-DNANOVDB_BUILD_DOCS=OFF
|
|
||||||
-DNANOVDB_BUILD_TOOLS=OFF
|
|
||||||
-DNANOVDB_CUDA_KEEP_PTX=OFF
|
|
||||||
# Do not need to include any of the dependencies because of this
|
|
||||||
-DNANOVDB_USE_OPENVDB=OFF
|
|
||||||
-DNANOVDB_USE_OPENGL=OFF
|
|
||||||
-DNANOVDB_USE_OPENCL=OFF
|
|
||||||
-DNANOVDB_USE_CUDA=OFF
|
|
||||||
-DNANOVDB_USE_TBB=OFF
|
|
||||||
-DNANOVDB_USE_BLOSC=OFF
|
|
||||||
-DNANOVDB_USE_ZLIB=OFF
|
|
||||||
-DNANOVDB_USE_OPTIX=OFF
|
|
||||||
-DNANOVDB_ALLOW_FETCHCONTENT=OFF
|
|
||||||
)
|
|
||||||
|
|
||||||
ExternalProject_Add(nanovdb
|
|
||||||
URL file://${PACKAGE_DIR}/${NANOVDB_FILE}
|
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
|
||||||
URL_HASH ${NANOVDB_HASH_TYPE}=${NANOVDB_HASH}
|
|
||||||
PREFIX ${BUILD_DIR}/nanovdb
|
|
||||||
SOURCE_SUBDIR nanovdb
|
|
||||||
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/nanovdb/src/nanovdb < ${PATCH_DIR}/nanovdb.diff
|
|
||||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/nanovdb ${DEFAULT_CMAKE_FLAGS} ${NANOVDB_EXTRA_ARGS}
|
|
||||||
INSTALL_DIR ${LIBDIR}/nanovdb
|
|
||||||
)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
ExternalProject_Add_Step(nanovdb after_install
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/nanovdb/nanovdb ${HARVEST_TARGET}/nanovdb/include/nanovdb
|
|
||||||
DEPENDEES install
|
|
||||||
)
|
|
||||||
endif()
|
|
24
build_files/build_environment/cmake/ocloc.cmake
Normal file
24
build_files/build_environment/cmake/ocloc.cmake
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(OCLOC_EXTRA_ARGS
|
||||||
|
-DNEO_SKIP_UNIT_TESTS=1
|
||||||
|
-DNEO_BUILD_WITH_OCL=0
|
||||||
|
-DBUILD_WITH_L0=0
|
||||||
|
-DIGC_DIR=${LIBDIR}/igc
|
||||||
|
-DGMM_DIR=${LIBDIR}/gmmlib
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_ocloc
|
||||||
|
URL file://${PACKAGE_DIR}/${OCLOC_FILE}
|
||||||
|
URL_HASH ${OCLOC_HASH_TYPE}=${OCLOC_HASH}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
PREFIX ${BUILD_DIR}/ocloc
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ocloc ${DEFAULT_CMAKE_FLAGS} ${OCLOC_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/ocloc
|
||||||
|
)
|
||||||
|
|
||||||
|
add_dependencies(
|
||||||
|
external_ocloc
|
||||||
|
external_igc
|
||||||
|
external_gmmlib
|
||||||
|
)
|
@@ -11,13 +11,12 @@ set(OPENCOLORIO_EXTRA_ARGS
|
|||||||
-DOCIO_BUILD_GPU_TESTS=OFF
|
-DOCIO_BUILD_GPU_TESTS=OFF
|
||||||
-DOCIO_USE_SSE=ON
|
-DOCIO_USE_SSE=ON
|
||||||
|
|
||||||
# Manually build ext packages except for pystring, which does not have
|
-DOCIO_INSTALL_EXT_PACKAGES=NONE
|
||||||
# a CMake or autotools build system that we can easily use.
|
|
||||||
-DOCIO_INSTALL_EXT_PACKAGES=MISSING
|
|
||||||
-DHalf_ROOT=${LIBDIR}/openexr
|
|
||||||
-DHalf_STATIC_LIBRARY=ON
|
|
||||||
-Dexpat_ROOT=${LIBDIR}/expat
|
-Dexpat_ROOT=${LIBDIR}/expat
|
||||||
-Dyaml-cpp_ROOT=${LIBDIR}/yamlcpp
|
-Dyaml-cpp_ROOT=${LIBDIR}/yamlcpp
|
||||||
|
-Dpystring_ROOT=${LIBDIR}/pystring
|
||||||
|
-DImath_ROOT=${LIBDIR}/imath
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BLENDER_PLATFORM_ARM)
|
if(BLENDER_PLATFORM_ARM)
|
||||||
@@ -30,7 +29,9 @@ endif()
|
|||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
${OPENCOLORIO_EXTRA_ARGS}
|
${OPENCOLORIO_EXTRA_ARGS}
|
||||||
-DOCIO_INLINES_HIDDEN=OFF
|
-Dexpat_LIBRARY=${LIBDIR}/expat/lib/libexpatMD
|
||||||
|
-Dyaml-cpp_LIBRARY=${LIBDIR}/expat/lib/libyaml-cppmd.lib
|
||||||
|
-DImath_LIBRARY=${LIBDIR}/imath/lib/imath${OPENEXR_VERSION_POSTFIX}
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OPENCOLORIO_EXTRA_ARGS
|
set(OPENCOLORIO_EXTRA_ARGS
|
||||||
@@ -52,7 +53,8 @@ add_dependencies(
|
|||||||
external_opencolorio
|
external_opencolorio
|
||||||
external_yamlcpp
|
external_yamlcpp
|
||||||
external_expat
|
external_expat
|
||||||
external_openexr
|
external_imath
|
||||||
|
external_pystring
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -62,7 +64,7 @@ if(WIN32)
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib ${HARVEST_TARGET}/opencolorio/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib ${HARVEST_TARGET}/opencolorio/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/expat/lib/libexpatMD.lib ${HARVEST_TARGET}/opencolorio/lib/libexpatMD.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/expat/lib/libexpatMD.lib ${HARVEST_TARGET}/opencolorio/lib/libexpatMD.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/pystring.lib ${HARVEST_TARGET}/opencolorio/lib/pystring.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pystring/lib/pystring.lib ${HARVEST_TARGET}/opencolorio/lib/pystring.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
@@ -71,7 +73,7 @@ if(WIN32)
|
|||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmdd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmdd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/expat/lib/libexpatdMD.lib ${HARVEST_TARGET}/opencolorio/lib/libexpatdMD.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/expat/lib/libexpatdMD.lib ${HARVEST_TARGET}/opencolorio/lib/libexpatdMD.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/pystring.lib ${HARVEST_TARGET}/opencolorio/lib/pystring_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/pystring/lib/pystring.lib ${HARVEST_TARGET}/opencolorio/lib/pystring_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
@@ -79,7 +81,7 @@ else()
|
|||||||
ExternalProject_Add_Step(external_opencolorio after_install
|
ExternalProject_Add_Step(external_opencolorio after_install
|
||||||
COMMAND cp ${LIBDIR}/yamlcpp/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/
|
COMMAND cp ${LIBDIR}/yamlcpp/lib/libyaml-cpp.a ${LIBDIR}/opencolorio/lib/
|
||||||
COMMAND cp ${LIBDIR}/expat/lib/libexpat.a ${LIBDIR}/opencolorio/lib/
|
COMMAND cp ${LIBDIR}/expat/lib/libexpat.a ${LIBDIR}/opencolorio/lib/
|
||||||
COMMAND cp ${BUILD_DIR}/opencolorio/src/external_opencolorio-build/ext/dist/lib/libpystring.a ${LIBDIR}/opencolorio/lib/
|
COMMAND cp ${LIBDIR}/pystring/lib/libpystring.a ${LIBDIR}/opencolorio/lib/
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -16,12 +16,10 @@ set(OPENEXR_EXTRA_ARGS
|
|||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DBUILD_TESTING=OFF
|
-DBUILD_TESTING=OFF
|
||||||
-DOPENEXR_BUILD_BOTH_STATIC_SHARED=OFF
|
-DOPENEXR_BUILD_BOTH_STATIC_SHARED=OFF
|
||||||
-DILMBASE_BUILD_BOTH_STATIC_SHARED=OFF
|
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
-DOPENEXR_BUILD_UTILS=OFF
|
-DOPENEXR_INSTALL_TOOLS=OFF
|
||||||
-DPYILMBASE_ENABLE=OFF
|
-DOPENEXR_INSTALL_EXAMPLES=OFF
|
||||||
-DOPENEXR_VIEWERS_ENABLE=OFF
|
-DImath_DIR=${LIBDIR}/imath/lib/cmake/Imath
|
||||||
-DILMBASE_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
|
||||||
-DOPENEXR_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
-DOPENEXR_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -8,6 +8,8 @@ set(OIDN_EXTRA_ARGS
|
|||||||
-DOIDN_STATIC_LIB=ON
|
-DOIDN_STATIC_LIB=ON
|
||||||
-DOIDN_STATIC_RUNTIME=OFF
|
-DOIDN_STATIC_RUNTIME=OFF
|
||||||
-DISPC_EXECUTABLE=${LIBDIR}/ispc/bin/ispc
|
-DISPC_EXECUTABLE=${LIBDIR}/ispc/bin/ispc
|
||||||
|
-DOIDN_FILTER_RTLIGHTMAP=OFF
|
||||||
|
-DPYTHON_EXECUTABLE=${PYTHON_BINARY}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -37,6 +39,7 @@ add_dependencies(
|
|||||||
external_openimagedenoise
|
external_openimagedenoise
|
||||||
external_tbb
|
external_tbb
|
||||||
external_ispc
|
external_ispc
|
||||||
|
external_python
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
@@ -23,35 +23,20 @@ else()
|
|||||||
set(OIIO_SIMD_FLAGS)
|
set(OIIO_SIMD_FLAGS)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_WEBP)
|
|
||||||
set(WEBP_ARGS
|
|
||||||
-DWEBP_INCLUDE_DIR=${LIBDIR}/webp/include
|
|
||||||
-DWEBP_LIBRARY=${LIBDIR}/webp/lib/${LIBPREFIX}webp${LIBEXT}
|
|
||||||
)
|
|
||||||
set(WEBP_DEP external_webp)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOpenJpeg_ROOT=${LIBDIR}/openjpeg_msvc
|
-DOpenJPEG_ROOT=${LIBDIR}/openjpeg_msvc
|
||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_FLAGS
|
set(OPENJPEG_FLAGS
|
||||||
-DOpenJpeg_ROOT=${LIBDIR}/openjpeg
|
-DOpenJPEG_ROOT=${LIBDIR}/openjpeg
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENIMAGEIO_EXTRA_ARGS
|
set(OPENIMAGEIO_EXTRA_ARGS
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
${OPENIMAGEIO_LINKSTATIC}
|
${OPENIMAGEIO_LINKSTATIC}
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
${DEFAULT_BOOST_FLAGS}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
|
||||||
-DBoost_USE_STATIC_RUNTIME=OFF
|
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
|
||||||
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
|
||||||
-DUSE_LIBSQUISH=OFF
|
-DUSE_LIBSQUISH=OFF
|
||||||
-DUSE_QT5=OFF
|
-DUSE_QT5=OFF
|
||||||
-DUSE_NUKE=OFF
|
-DUSE_NUKE=OFF
|
||||||
@@ -62,7 +47,6 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-DUSE_LIBHEIF=OFF
|
-DUSE_LIBHEIF=OFF
|
||||||
-DUSE_OPENGL=OFF
|
-DUSE_OPENGL=OFF
|
||||||
-DUSE_TBB=OFF
|
-DUSE_TBB=OFF
|
||||||
-DUSE_FIELD3D=OFF
|
|
||||||
-DUSE_QT=OFF
|
-DUSE_QT=OFF
|
||||||
-DUSE_PYTHON=OFF
|
-DUSE_PYTHON=OFF
|
||||||
-DUSE_GIF=OFF
|
-DUSE_GIF=OFF
|
||||||
@@ -73,7 +57,7 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-DUSE_FREETYPE=OFF
|
-DUSE_FREETYPE=OFF
|
||||||
-DUSE_LIBRAW=OFF
|
-DUSE_LIBRAW=OFF
|
||||||
-DUSE_OPENCOLORIO=OFF
|
-DUSE_OPENCOLORIO=OFF
|
||||||
-DUSE_WEBP=${WITH_WEBP}
|
-DUSE_WEBP=ON
|
||||||
-DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
|
-DOIIO_BUILD_TOOLS=${OIIO_TOOLS}
|
||||||
-DOIIO_BUILD_TESTS=OFF
|
-DOIIO_BUILD_TESTS=OFF
|
||||||
-DBUILD_TESTING=OFF
|
-DBUILD_TESTING=OFF
|
||||||
@@ -83,14 +67,9 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
|
-DPNG_PNG_INCLUDE_DIR=${LIBDIR}/png/include
|
||||||
-DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
|
-DTIFF_LIBRARY=${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT}
|
||||||
-DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
|
-DTIFF_INCLUDE_DIR=${LIBDIR}/tiff/include
|
||||||
-DJPEG_LIBRARY=${LIBDIR}/jpg/lib/${JPEG_LIBRARY}
|
-DJPEG_LIBRARY=${LIBDIR}/jpeg/lib/${JPEG_LIBRARY}
|
||||||
-DJPEG_INCLUDE_DIR=${LIBDIR}/jpg/include
|
-DJPEG_INCLUDE_DIR=${LIBDIR}/jpeg/include
|
||||||
${OPENJPEG_FLAGS}
|
${OPENJPEG_FLAGS}
|
||||||
-DOpenEXR_USE_STATIC_LIBS=On
|
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
|
||||||
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
|
||||||
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
@@ -98,8 +77,14 @@ set(OPENIMAGEIO_EXTRA_ARGS
|
|||||||
-DUSE_EXTERNAL_PUGIXML=ON
|
-DUSE_EXTERNAL_PUGIXML=ON
|
||||||
-DPUGIXML_LIBRARY=${LIBDIR}/pugixml/lib/${LIBPREFIX}pugixml${LIBEXT}
|
-DPUGIXML_LIBRARY=${LIBDIR}/pugixml/lib/${LIBPREFIX}pugixml${LIBEXT}
|
||||||
-DPUGIXML_INCLUDE_DIR=${LIBDIR}/pugixml/include/
|
-DPUGIXML_INCLUDE_DIR=${LIBDIR}/pugixml/include/
|
||||||
${WEBP_FLAGS}
|
-DBUILD_MISSING_ROBINMAP=OFF
|
||||||
|
-DBUILD_MISSING_FMT=OFF
|
||||||
|
-DFMT_INCLUDE_DIR=${LIBDIR}/fmt/include/
|
||||||
|
-DRobinmap_ROOT=${LIBDIR}/robinmap
|
||||||
|
-DWebP_ROOT=${LIBDIR}/webp
|
||||||
${OIIO_SIMD_FLAGS}
|
${OIIO_SIMD_FLAGS}
|
||||||
|
-DOpenEXR_ROOT=${LIBDIR}/openexr
|
||||||
|
-DImath_ROOT=${LIBDIR}/imath
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_openimageio
|
ExternalProject_Add(external_openimageio
|
||||||
@@ -117,12 +102,15 @@ add_dependencies(
|
|||||||
external_png
|
external_png
|
||||||
external_zlib
|
external_zlib
|
||||||
external_openexr
|
external_openexr
|
||||||
|
external_imath
|
||||||
external_jpeg
|
external_jpeg
|
||||||
external_boost
|
external_boost
|
||||||
external_tiff
|
external_tiff
|
||||||
external_pugixml
|
external_pugixml
|
||||||
|
external_fmt
|
||||||
|
external_robinmap
|
||||||
external_openjpeg${OPENJPEG_POSTFIX}
|
external_openjpeg${OPENJPEG_POSTFIX}
|
||||||
${WEBP_DEP}
|
external_webp
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -137,8 +125,8 @@ if(WIN32)
|
|||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_openimageio after_install
|
ExternalProject_Add_Step(external_openimageio after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_d.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_d.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openimageio/lib/OpenImageIO_Util_d.lib ${HARVEST_TARGET}/openimageio/lib/OpenImageIO_Util_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -3,20 +3,24 @@
|
|||||||
# Note the encoder/decoder may use png/tiff/lcms system libraries, but the
|
# Note the encoder/decoder may use png/tiff/lcms system libraries, but the
|
||||||
# library itself does not depend on them, so should give no problems.
|
# library itself does not depend on them, so should give no problems.
|
||||||
|
|
||||||
set(OPENJPEG_EXTRA_ARGS -DBUILD_SHARED_LIBS=OFF)
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
|
set(OPENJPEG_EXTRA_ARGS -G "MSYS Makefiles" -DBUILD_PKGCONFIG_FILES=On)
|
||||||
else()
|
else()
|
||||||
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
set(OPENJPEG_EXTRA_ARGS ${DEFAULT_CMAKE_FLAGS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(OPENJPEG_EXTRA_ARGS
|
||||||
|
${OPENJPEG_EXTRA_ARGS}
|
||||||
|
-DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DBUILD_CODEC=OFF
|
||||||
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_openjpeg
|
ExternalProject_Add(external_openjpeg
|
||||||
URL file://${PACKAGE_DIR}/${OPENJPEG_FILE}
|
URL file://${PACKAGE_DIR}/${OPENJPEG_FILE}
|
||||||
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
URL_HASH ${OPENJPEG_HASH_TYPE}=${OPENJPEG_HASH}
|
URL_HASH ${OPENJPEG_HASH_TYPE}=${OPENJPEG_HASH}
|
||||||
PREFIX ${BUILD_DIR}/openjpeg
|
PREFIX ${BUILD_DIR}/openjpeg
|
||||||
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg -DBUILD_SHARED_LIBS=Off -DBUILD_THIRDPARTY=OFF ${BUILD_DIR}/openjpeg/src/external_openjpeg
|
CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build && ${CMAKE_COMMAND} ${OPENJPEG_EXTRA_ARGS} -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openjpeg ${BUILD_DIR}/openjpeg/src/external_openjpeg
|
||||||
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
|
BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make -j${MAKE_THREADS}
|
||||||
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
|
INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openjpeg/src/external_openjpeg-build/ && make install
|
||||||
INSTALL_DIR ${LIBDIR}/openjpeg
|
INSTALL_DIR ${LIBDIR}/openjpeg
|
||||||
|
@@ -1,19 +1,25 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
|
-DNO_LIB=OFF
|
||||||
-DNO_EXAMPLES=ON
|
-DNO_EXAMPLES=ON
|
||||||
|
-DNO_TUTORIALS=ON
|
||||||
-DNO_REGRESSION=ON
|
-DNO_REGRESSION=ON
|
||||||
-DNO_PYTHON=ON
|
|
||||||
-DNO_MAYA=ON
|
|
||||||
-DNO_PTEX=ON
|
-DNO_PTEX=ON
|
||||||
-DNO_DOC=ON
|
-DNO_DOC=ON
|
||||||
-DNO_CLEW=OFF
|
-DNO_OMP=ON
|
||||||
-DNO_OPENCL=OFF
|
-DNO_TBB=OFF
|
||||||
-DNO_TUTORIALS=ON
|
-DNO_CUDA=ON
|
||||||
-DGLEW_INCLUDE_DIR=${LIBDIR}/glew/include
|
-DNO_OPENCL=ON
|
||||||
-DGLEW_LIBRARY=${LIBDIR}/glew/lib/libGLEW${LIBEXT}
|
-DNO_CLEW=ON
|
||||||
-DGLFW_INCLUDE_DIR=${LIBDIR}/glfw/include
|
-DNO_OPENGL=OFF
|
||||||
-DGLFW_LIBRARIES=${LIBDIR}/glfw/lib/glfw3${LIBEXT}
|
-DNO_METAL=OFF
|
||||||
|
-DNO_DX=ON
|
||||||
|
-DNO_TESTS=ON
|
||||||
|
-DNO_GLTESTS=ON
|
||||||
|
-DNO_GLEW=ON
|
||||||
|
-DNO_GLFW=ON
|
||||||
|
-DNO_GLFW_X11=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -21,30 +27,12 @@ if(WIN32)
|
|||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
|
-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
|
||||||
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb.lib
|
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/tbb.lib
|
||||||
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
|
||||||
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
|
|
||||||
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
|
||||||
-DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
|
|
||||||
)
|
)
|
||||||
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
|
||||||
-DNO_CUDA=OFF
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
|
||||||
-DNO_CUDA=ON
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
else()
|
else()
|
||||||
set(OPENSUBDIV_EXTRA_ARGS
|
set(OPENSUBDIV_EXTRA_ARGS
|
||||||
${OPENSUBDIV_EXTRA_ARGS}
|
${OPENSUBDIV_EXTRA_ARGS}
|
||||||
-DNO_CUDA=ON
|
-DTBB_INCLUDE_DIR=${LIBDIR}/tbb/include
|
||||||
-DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
|
-DTBB_tbb_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
||||||
-DCLEW_INCLUDE_DIR=${LIBDIR}/clew/include/CL
|
|
||||||
-DCLEW_LIBRARY=${LIBDIR}/clew/lib/static/${LIBPREFIX}clew${LIBEXT}
|
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -76,9 +64,5 @@ endif()
|
|||||||
|
|
||||||
add_dependencies(
|
add_dependencies(
|
||||||
external_opensubdiv
|
external_opensubdiv
|
||||||
external_glew
|
|
||||||
external_glfw
|
|
||||||
external_clew
|
|
||||||
external_cuew
|
|
||||||
external_tbb
|
external_tbb
|
||||||
)
|
)
|
||||||
|
@@ -13,6 +13,7 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENVDB_EXTRA_ARGS
|
set(OPENVDB_EXTRA_ARGS
|
||||||
|
${DEFAULT_BOOST_FLAGS}
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
-DBoost_USE_MULTITHREADED=ON
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
-DBoost_USE_STATIC_LIBS=ON
|
||||||
@@ -24,22 +25,20 @@ set(OPENVDB_EXTRA_ARGS
|
|||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/
|
||||||
-DBlosc_INCLUDE_DIR=${LIBDIR}/blosc/include/
|
-DBlosc_INCLUDE_DIR=${LIBDIR}/blosc/include/
|
||||||
-DBlosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
-DBlosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
||||||
-DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF
|
-DBlosc_LIBRARY_RELEASE=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
||||||
-DOPENVDB_BUILD_UNITTESTS=Off
|
-DBlosc_LIBRARY_DEBUG=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT}
|
||||||
-DOPENVDB_BUILD_PYTHON_MODULE=Off
|
-DOPENVDB_BUILD_UNITTESTS=OFF
|
||||||
|
-DOPENVDB_BUILD_PYTHON_MODULE=OFF
|
||||||
|
-DOPENVDB_BUILD_NANOVDB=ON
|
||||||
|
-DNANOVDB_BUILD_TOOLS=OFF
|
||||||
-DBlosc_ROOT=${LIBDIR}/blosc/
|
-DBlosc_ROOT=${LIBDIR}/blosc/
|
||||||
-DTBB_ROOT=${LIBDIR}/tbb/
|
-DTBB_ROOT=${LIBDIR}/tbb/
|
||||||
-DOpenEXR_ROOT=${LIBDIR}/openexr
|
|
||||||
-DIlmBase_ROOT=${LIBDIR}/openexr
|
|
||||||
-DOPENEXR_LIBRARYDIR=${LIBDIR}/openexr/lib
|
|
||||||
# All libs live in openexr, even the ilmbase ones
|
|
||||||
-DILMBASE_LIBRARYDIR=${LIBDIR}/openexr/lib
|
|
||||||
-DOPENVDB_CORE_SHARED=${OPENVDB_SHARED}
|
-DOPENVDB_CORE_SHARED=${OPENVDB_SHARED}
|
||||||
-DOPENVDB_CORE_STATIC=${OPENVDB_STATIC}
|
-DOPENVDB_CORE_STATIC=${OPENVDB_STATIC}
|
||||||
-DOPENVDB_BUILD_BINARIES=Off
|
-DOPENVDB_BUILD_BINARIES=OFF
|
||||||
-DCMAKE_DEBUG_POSTFIX=_d
|
-DCMAKE_DEBUG_POSTFIX=_d
|
||||||
-DILMBASE_USE_STATIC_LIBS=On
|
-DBLOSC_USE_STATIC_LIBS=ON
|
||||||
-DOPENEXR_USE_STATIC_LIBS=On
|
-DUSE_NANOVDB=ON
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@@ -48,15 +47,6 @@ if(WIN32)
|
|||||||
# needs to link pthreads due to it being a blosc dependency
|
# needs to link pthreads due to it being a blosc dependency
|
||||||
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
||||||
-DCMAKE_CXX_STANDARD_LIBRARIES="${LIBDIR}/pthreads/lib/pthreadVC3.lib"
|
-DCMAKE_CXX_STANDARD_LIBRARIES="${LIBDIR}/pthreads/lib/pthreadVC3.lib"
|
||||||
-DUSE_EXR=On
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
# OpenVDB can't find the _static libraries automatically.
|
|
||||||
set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}
|
|
||||||
-DTbb_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
|
||||||
-DTbb_tbb_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT}
|
|
||||||
-DTbb_tbbmalloc_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_static${LIBEXT}
|
|
||||||
-DTbb_tbbmalloc_proxy_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_proxy_static${LIBEXT}
|
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -74,7 +64,6 @@ add_dependencies(
|
|||||||
openvdb
|
openvdb
|
||||||
external_tbb
|
external_tbb
|
||||||
external_boost
|
external_boost
|
||||||
external_openexr
|
|
||||||
external_zlib
|
external_zlib
|
||||||
external_blosc
|
external_blosc
|
||||||
)
|
)
|
||||||
@@ -82,7 +71,7 @@ add_dependencies(
|
|||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(openvdb after_install
|
ExternalProject_Add_Step(openvdb after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include/openvdb ${HARVEST_TARGET}/openvdb/include/openvdb
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/openvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/openvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/bin/openvdb.dll ${HARVEST_TARGET}/openvdb/bin/openvdb.dll
|
COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/bin/openvdb.dll ${HARVEST_TARGET}/openvdb/bin/openvdb.dll
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
|
@@ -3,7 +3,6 @@
|
|||||||
if(WIN32)
|
if(WIN32)
|
||||||
option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/fftw3 by installing mingw64" ON)
|
option(ENABLE_MINGW64 "Enable building of ffmpeg/iconv/libsndfile/fftw3 by installing mingw64" ON)
|
||||||
endif()
|
endif()
|
||||||
option(WITH_WEBP "Enable building of oiio with webp support" OFF)
|
|
||||||
option(WITH_BOOST_PYTHON "Enable building of boost with python support" OFF)
|
option(WITH_BOOST_PYTHON "Enable building of boost with python support" OFF)
|
||||||
cmake_host_system_information(RESULT NUM_CORES QUERY NUMBER_OF_LOGICAL_CORES)
|
cmake_host_system_information(RESULT NUM_CORES QUERY NUMBER_OF_LOGICAL_CORES)
|
||||||
set(MAKE_THREADS ${NUM_CORES} CACHE STRING "Number of threads to run make with")
|
set(MAKE_THREADS ${NUM_CORES} CACHE STRING "Number of threads to run make with")
|
||||||
@@ -39,32 +38,33 @@ message("BUILD_DIR = ${BUILD_DIR}")
|
|||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
set(PATCH_CMD ${DOWNLOAD_DIR}/mingw/mingw64/msys/1.0/bin/patch.exe)
|
||||||
set(LIBEXT ".lib")
|
set(LIBEXT ".lib")
|
||||||
|
set(SHAREDLIBEXT ".lib")
|
||||||
set(LIBPREFIX "")
|
set(LIBPREFIX "")
|
||||||
|
|
||||||
# For OIIO and OSL
|
# For OIIO and OSL
|
||||||
set(COMMON_DEFINES /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
|
set(COMMON_DEFINES /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS)
|
||||||
|
|
||||||
if(MSVC_VERSION GREATER 1909)
|
if(MSVC_VERSION GREATER 1909)
|
||||||
set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
|
set(COMMON_MSVC_FLAGS "/Wv:18") #some deps with warnings as error aren't quite ready for dealing with the new 2017 warnings.
|
||||||
endif()
|
endif()
|
||||||
string(APPEND COMMON_MSVC_FLAGS " /bigobj")
|
string(APPEND COMMON_MSVC_FLAGS " /bigobj")
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
endif()
|
endif()
|
||||||
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MD ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MD ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
|
|
||||||
if(WITH_OPTIMIZED_DEBUG)
|
if(WITH_OPTIMIZED_DEBUG)
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
else()
|
else()
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
endif()
|
endif()
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MD /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MD /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=2 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
|
||||||
|
|
||||||
set(PLATFORM_FLAGS)
|
set(PLATFORM_FLAGS)
|
||||||
set(PLATFORM_CXX_FLAGS)
|
set(PLATFORM_CXX_FLAGS)
|
||||||
@@ -97,6 +97,7 @@ if(WIN32)
|
|||||||
else()
|
else()
|
||||||
set(PATCH_CMD patch)
|
set(PATCH_CMD patch)
|
||||||
set(LIBEXT ".a")
|
set(LIBEXT ".a")
|
||||||
|
set(SHAREDLIBEXT ".so")
|
||||||
set(LIBPREFIX "lib")
|
set(LIBPREFIX "lib")
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
|
@@ -3,33 +3,15 @@
|
|||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}")
|
||||||
set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
|
set(OSL_FLEX_BISON -DFLEX_EXECUTABLE=${LIBDIR}/flexbison/win_flex.exe -DBISON_EXECUTABLE=${LIBDIR}/flexbison/win_bison.exe)
|
||||||
set(OSL_SIMD_FLAGS -DOIIO_NOSIMD=1 -DOIIO_SIMD=sse2)
|
|
||||||
else()
|
else()
|
||||||
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
|
set(OSL_CMAKE_CXX_STANDARD_LIBRARIES)
|
||||||
set(OSL_FLEX_BISON)
|
set(OSL_FLEX_BISON)
|
||||||
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
set(OSL_OPENIMAGEIO_LIBRARY "${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO${LIBEXT};${LIBDIR}/openimageio/lib/${LIBPREFIX}OpenImageIO_Util${LIBEXT};${LIBDIR}/png/lib/${LIBPREFIX}png16${LIBEXT};${LIBDIR}/jpeg/lib/${LIBPREFIX}jpeg${LIBEXT};${LIBDIR}/tiff/lib/${LIBPREFIX}tiff${LIBEXT};${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/openexr/lib/Imath${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Half{OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/IlmThread${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Iex${OPENEXR_VERSION_POSTFIX}.lib")
|
|
||||||
|
|
||||||
set(OSL_EXTRA_ARGS
|
set(OSL_EXTRA_ARGS
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
${DEFAULT_BOOST_FLAGS}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
|
||||||
-DBoost_USE_STATIC_RUNTIME=OFF
|
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
|
||||||
-DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
|
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
|
||||||
-DOpenEXR_ROOT=${LIBDIR}/openexr/
|
-DOpenEXR_ROOT=${LIBDIR}/openexr/
|
||||||
-DIlmBase_ROOT=${LIBDIR}/openexr/
|
|
||||||
-DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
|
||||||
-DOPENEXR_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/
|
|
||||||
-DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
|
||||||
-DOpenImageIO_ROOT=${LIBDIR}/openimageio/
|
-DOpenImageIO_ROOT=${LIBDIR}/openimageio/
|
||||||
-DOSL_BUILD_TESTS=OFF
|
-DOSL_BUILD_TESTS=OFF
|
||||||
-DOSL_BUILD_MATERIALX=OFF
|
-DOSL_BUILD_MATERIALX=OFF
|
||||||
@@ -49,10 +31,10 @@ set(OSL_EXTRA_ARGS
|
|||||||
-DUSE_QT=OFF
|
-DUSE_QT=OFF
|
||||||
-DUSE_Qt5=OFF
|
-DUSE_Qt5=OFF
|
||||||
-DINSTALL_DOCS=OFF
|
-DINSTALL_DOCS=OFF
|
||||||
${OSL_SIMD_FLAGS}
|
|
||||||
-Dpugixml_ROOT=${LIBDIR}/pugixml
|
-Dpugixml_ROOT=${LIBDIR}/pugixml
|
||||||
-DUSE_PYTHON=OFF
|
-DUSE_PYTHON=OFF
|
||||||
-DCMAKE_CXX_STANDARD=14
|
-DCMAKE_CXX_STANDARD=14
|
||||||
|
-DImath_ROOT=${LIBDIR}/imath
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_osl
|
ExternalProject_Add(external_osl
|
||||||
|
22
build_files/build_environment/cmake/pystring.cmake
Normal file
22
build_files/build_environment/cmake/pystring.cmake
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(PYSTRING_EXTRA_ARGS
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_pystring
|
||||||
|
URL file://${PACKAGE_DIR}/${PYSTRING_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${PYSTRING_HASH_TYPE}=${PYSTRING_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/pystring
|
||||||
|
PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_pystring.txt ${BUILD_DIR}/pystring/src/external_pystring/CMakeLists.txt
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/pystring ${DEFAULT_CMAKE_FLAGS} ${PYSTRING_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/pystring
|
||||||
|
)
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
ExternalProject_Add_Step(external_pystring after_install
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pystring/lib ${HARVEST_TARGET}/pystring/lib
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/pystring/include ${HARVEST_TARGET}/pystring/include
|
||||||
|
DEPENDEES install
|
||||||
|
)
|
||||||
|
endif()
|
@@ -15,7 +15,7 @@ ExternalProject_Add(external_python_site_packages
|
|||||||
CONFIGURE_COMMAND ${PIP_CONFIGURE_COMMAND}
|
CONFIGURE_COMMAND ${PIP_CONFIGURE_COMMAND}
|
||||||
BUILD_COMMAND ""
|
BUILD_COMMAND ""
|
||||||
PREFIX ${BUILD_DIR}/site_packages
|
PREFIX ${BUILD_DIR}/site_packages
|
||||||
INSTALL_COMMAND ${PYTHON_BINARY} -m pip install --no-cache-dir ${SITE_PACKAGES_EXTRA} cython==${CYTHON_VERSION} idna==${IDNA_VERSION} charset-normalizer==${CHARSET_NORMALIZER_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} zstandard==${ZSTANDARD_VERSION} --no-binary :all:
|
INSTALL_COMMAND ${PYTHON_BINARY} -m pip install --no-cache-dir ${SITE_PACKAGES_EXTRA} cython==${CYTHON_VERSION} idna==${IDNA_VERSION} charset-normalizer==${CHARSET_NORMALIZER_VERSION} urllib3==${URLLIB3_VERSION} certifi==${CERTIFI_VERSION} requests==${REQUESTS_VERSION} zstandard==${ZSTANDARD_VERSION} autopep8==${AUTOPEP8_VERSION} pycodestyle==${PYCODESTYLE_VERSION} toml==${TOML_VERSION} --no-binary :all:
|
||||||
)
|
)
|
||||||
|
|
||||||
if(USE_PIP_NUMPY)
|
if(USE_PIP_NUMPY)
|
||||||
|
13
build_files/build_environment/cmake/robinmap.cmake
Normal file
13
build_files/build_environment/cmake/robinmap.cmake
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
set(ROBINMAP_EXTRA_ARGS
|
||||||
|
)
|
||||||
|
|
||||||
|
ExternalProject_Add(external_robinmap
|
||||||
|
URL file://${PACKAGE_DIR}/${ROBINMAP_FILE}
|
||||||
|
DOWNLOAD_DIR ${DOWNLOAD_DIR}
|
||||||
|
URL_HASH ${ROBINMAP_HASH_TYPE}=${ROBINMAP_HASH}
|
||||||
|
PREFIX ${BUILD_DIR}/robinmap
|
||||||
|
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/robinmap ${DEFAULT_CMAKE_FLAGS} ${ROBINMAP_EXTRA_ARGS}
|
||||||
|
INSTALL_DIR ${LIBDIR}/robinmap
|
||||||
|
)
|
@@ -1,11 +1,5 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
if(WITH_WEBP)
|
|
||||||
set(WITH_TIFF_WEBP ON)
|
|
||||||
else()
|
|
||||||
set(WITH_TIFF_WEBP OFF)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(TIFF_EXTRA_ARGS
|
set(TIFF_EXTRA_ARGS
|
||||||
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
-DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
|
||||||
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
-DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include
|
||||||
@@ -14,7 +8,7 @@ set(TIFF_EXTRA_ARGS
|
|||||||
-Dlzma=OFF
|
-Dlzma=OFF
|
||||||
-Djbig=OFF
|
-Djbig=OFF
|
||||||
-Dzstd=OFF
|
-Dzstd=OFF
|
||||||
-Dwebp=${WITH_TIFF_WEBP}
|
-Dwebp=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_tiff
|
ExternalProject_Add(external_tiff
|
||||||
|
@@ -1,39 +1,72 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
# OIIO and OSL are statically linked for us, but USD doesn't know
|
||||||
|
set(USD_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DOIIO_STATIC_DEFINE /DOSL_STATIC_DEFINE")
|
||||||
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
|
# USD does not look for debug libs, nor does it link them
|
||||||
|
# when building static, so this is just to keep find_package happy
|
||||||
|
# if we ever link dynamically on windows util will need to be linked as well.
|
||||||
|
set(USD_OIIO_CMAKE_DEFINES "-DOIIO_LIBRARIES=${LIBDIR}/openimageio/lib/OpenImageIO_d${LIBEXT}")
|
||||||
|
endif()
|
||||||
|
set(USD_PLATFORM_FLAGS
|
||||||
|
${USD_OIIO_CMAKE_DEFINES}
|
||||||
|
-DCMAKE_CXX_FLAGS=${USD_CXX_FLAGS}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(USD_EXTRA_ARGS
|
set(USD_EXTRA_ARGS
|
||||||
-DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
|
${DEFAULT_BOOST_FLAGS}
|
||||||
-DBoost_USE_MULTITHREADED=ON
|
${USD_PLATFORM_FLAGS}
|
||||||
-DBoost_USE_STATIC_LIBS=ON
|
# This is a preventative measure that avoids possible conflicts when add-ons
|
||||||
-DBoost_USE_STATIC_RUNTIME=OFF
|
# try to load another USD library into the same process space.
|
||||||
-DBOOST_ROOT=${LIBDIR}/boost
|
-DPXR_SET_INTERNAL_NAMESPACE=usdBlender
|
||||||
-DBoost_NO_SYSTEM_PATHS=ON
|
-DOPENSUBDIV_ROOT_DIR=${LIBDIR}/opensubdiv
|
||||||
-DBoost_NO_BOOST_CMAKE=ON
|
-DOpenImageIO_ROOT=${LIBDIR}/openimageio
|
||||||
|
-DOPENEXR_LIBRARIES=${LIBDIR}/imath/lib/imath${OPENEXR_VERSION_POSTFIX}${LIBEXT}
|
||||||
|
-DOPENEXR_INCLUDE_DIR=${LIBDIR}/imath/include
|
||||||
|
-DPXR_ENABLE_PYTHON_SUPPORT=OFF
|
||||||
|
-DPXR_BUILD_IMAGING=ON
|
||||||
|
-DPXR_BUILD_TESTS=OFF
|
||||||
|
-DPXR_BUILD_EXAMPLES=OFF
|
||||||
|
-DPXR_BUILD_TUTORIALS=OFF
|
||||||
|
-DPXR_ENABLE_HDF5_SUPPORT=OFF
|
||||||
|
-DPXR_ENABLE_MATERIALX_SUPPORT=OFF
|
||||||
|
-DPXR_ENABLE_OPENVDB_SUPPORT=OFF
|
||||||
|
-DPYTHON_EXECUTABLE=${PYTHON_BINARY}
|
||||||
|
-DPXR_BUILD_MONOLITHIC=ON
|
||||||
|
# OSL is an optional dependency of the Imaging module. However, since that
|
||||||
|
# module was included for its support for converting primitive shapes (sphere,
|
||||||
|
# cube, etc.) to geometry, it's not necessary. Disabling it will make it
|
||||||
|
# simpler to build Blender; currently only Cycles uses OSL.
|
||||||
|
-DPXR_ENABLE_OSL_SUPPORT=OFF
|
||||||
|
# GL support on Linux also links to X11 libraries. Enabling it would break
|
||||||
|
# headless or Wayland-only builds. OpenGL support would be useful if someone
|
||||||
|
# wants to work on a Hydra viewport in Blender; when that's actually being
|
||||||
|
# worked on, we could patch in a new PXR_ENABLE_X11_SUPPORT option (to
|
||||||
|
# separate OpenGL from X11) and contribute it upstream.
|
||||||
|
-DPXR_ENABLE_GL_SUPPORT=OFF
|
||||||
|
# Disable Metal since USD fails to build this when OpenGL is disabled.
|
||||||
|
-DPXR_ENABLE_METAL_SUPPORT=OFF
|
||||||
|
# OIIO is used for loading image textures in Hydra Storm / Embree renderers,
|
||||||
|
# which we don't use.
|
||||||
|
-DPXR_BUILD_OPENIMAGEIO_PLUGIN=OFF
|
||||||
|
# USD 22.03 does not support OCIO 2.x
|
||||||
|
# Tracking ticket https://github.com/PixarAnimationStudios/USD/issues/1386
|
||||||
|
-DPXR_BUILD_OPENCOLORIO_PLUGIN=OFF
|
||||||
|
-DPXR_ENABLE_PTEX_SUPPORT=OFF
|
||||||
|
-DPXR_BUILD_USD_TOOLS=OFF
|
||||||
|
-DCMAKE_DEBUG_POSTFIX=_d
|
||||||
|
-DBUILD_SHARED_LIBS=Off
|
||||||
|
# USD is hellbound on making a shared lib, unless you point this variable to a valid cmake file
|
||||||
|
# doesn't have to make sense, but as long as it points somewhere valid it will skip the shared lib.
|
||||||
|
-DPXR_MONOLITHIC_IMPORT=${BUILD_DIR}/usd/src/external_usd/cmake/defaults/Version.cmake
|
||||||
-DTBB_INCLUDE_DIRS=${LIBDIR}/tbb/include
|
-DTBB_INCLUDE_DIRS=${LIBDIR}/tbb/include
|
||||||
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
-DTBB_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
||||||
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
-DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
||||||
# USD wants the tbb debug lib set even when you are doing a release build
|
# USD wants the tbb debug lib set even when you are doing a release build
|
||||||
# Otherwise it will error out during the cmake configure phase.
|
# Otherwise it will error out during the cmake configure phase.
|
||||||
-DTBB_LIBRARIES_DEBUG=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
-DTBB_LIBRARIES_DEBUG=${LIBDIR}/tbb/lib/${LIBPREFIX}${TBB_LIBRARY}${LIBEXT}
|
||||||
|
|
||||||
# This is a preventative measure that avoids possible conflicts when add-ons
|
|
||||||
# try to load another USD library into the same process space.
|
|
||||||
-DPXR_SET_INTERNAL_NAMESPACE=usdBlender
|
|
||||||
|
|
||||||
-DPXR_ENABLE_PYTHON_SUPPORT=OFF
|
|
||||||
-DPXR_BUILD_IMAGING=OFF
|
|
||||||
-DPXR_BUILD_TESTS=OFF
|
|
||||||
-DBUILD_SHARED_LIBS=OFF
|
|
||||||
-DPYTHON_EXECUTABLE=${PYTHON_BINARY}
|
|
||||||
-DPXR_BUILD_MONOLITHIC=ON
|
|
||||||
|
|
||||||
# The PXR_BUILD_USD_TOOLS argument is patched-in by usd.diff. An upstream pull request
|
|
||||||
# can be found at https://github.com/PixarAnimationStudios/USD/pull/1048.
|
|
||||||
-DPXR_BUILD_USD_TOOLS=OFF
|
|
||||||
|
|
||||||
-DCMAKE_DEBUG_POSTFIX=_d
|
|
||||||
# USD is hellbound on making a shared lib, unless you point this variable to a valid cmake file
|
|
||||||
# doesn't have to make sense, but as long as it points somewhere valid it will skip the shared lib.
|
|
||||||
-DPXR_MONOLITHIC_IMPORT=${BUILD_DIR}/usd/src/external_usd/cmake/defaults/Version.cmake
|
|
||||||
)
|
)
|
||||||
|
|
||||||
ExternalProject_Add(external_usd
|
ExternalProject_Add(external_usd
|
||||||
@@ -50,37 +83,31 @@ add_dependencies(
|
|||||||
external_usd
|
external_usd
|
||||||
external_tbb
|
external_tbb
|
||||||
external_boost
|
external_boost
|
||||||
|
external_opensubdiv
|
||||||
)
|
)
|
||||||
|
|
||||||
# Since USD 21.11 the libraries are prefixed with "usd_", i.e. "libusd_m.a" became "libusd_usd_m.a".
|
# Since USD 21.11 the libraries are prefixed with "usd_", i.e. "libusd_m.a" became "libusd_usd_m.a".
|
||||||
# See https://github.com/PixarAnimationStudios/USD/blob/release/CHANGELOG.md#2111---2021-11-01
|
# See https://github.com/PixarAnimationStudios/USD/blob/release/CHANGELOG.md#2111---2021-11-01
|
||||||
if (USD_VERSION VERSION_LESS 21.11)
|
if(NOT WIN32)
|
||||||
|
if (USD_VERSION VERSION_LESS 21.11)
|
||||||
set(PXR_LIB_PREFIX "")
|
set(PXR_LIB_PREFIX "")
|
||||||
else()
|
else()
|
||||||
set(PXR_LIB_PREFIX "usd_")
|
set(PXR_LIB_PREFIX "usd_")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# USD currently demands python be available at build time
|
|
||||||
# and then proceeds not to use it, but still checks that the
|
|
||||||
# version of the interpreter it is not going to use is atleast 2.7
|
|
||||||
# so we need this dep currently since there is no system python
|
|
||||||
# on windows.
|
|
||||||
add_dependencies(
|
|
||||||
external_usd
|
|
||||||
external_python
|
|
||||||
)
|
|
||||||
if(BUILD_MODE STREQUAL Release)
|
if(BUILD_MODE STREQUAL Release)
|
||||||
ExternalProject_Add_Step(external_usd after_install
|
ExternalProject_Add_Step(external_usd after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/ ${HARVEST_TARGET}/usd
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/ ${HARVEST_TARGET}/usd
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Release/${PXR_LIB_PREFIX}usd_m.lib ${HARVEST_TARGET}/usd/lib/lib${PXR_LIB_PREFIX}usd_m.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Release/usd_usd_m.lib ${HARVEST_TARGET}/usd/lib/usd_usd_m.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(BUILD_MODE STREQUAL Debug)
|
if(BUILD_MODE STREQUAL Debug)
|
||||||
ExternalProject_Add_Step(external_usd after_install
|
ExternalProject_Add_Step(external_usd after_install
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/lib ${HARVEST_TARGET}/usd/lib
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/usd/lib ${HARVEST_TARGET}/usd/lib
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Debug/${PXR_LIB_PREFIX}usd_m_d.lib ${HARVEST_TARGET}/usd/lib/lib${PXR_LIB_PREFIX}usd_m_d.lib
|
COMMAND ${CMAKE_COMMAND} -E copy ${BUILD_DIR}/usd/src/external_usd-build/pxr/Debug/usd_usd_m_d.lib ${HARVEST_TARGET}/usd/lib/usd_usd_m_d.lib
|
||||||
DEPENDEES install
|
DEPENDEES install
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -1,14 +1,14 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
set(ZLIB_VERSION 1.2.11)
|
set(ZLIB_VERSION 1.2.12)
|
||||||
set(ZLIB_URI https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz)
|
set(ZLIB_URI https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz)
|
||||||
set(ZLIB_HASH 1c9f62f0778697a09d36121ead88e08e)
|
set(ZLIB_HASH 5fc414a9726be31427b440b434d05f78)
|
||||||
set(ZLIB_HASH_TYPE MD5)
|
set(ZLIB_HASH_TYPE MD5)
|
||||||
set(ZLIB_FILE zlib-${ZLIB_VERSION}.tar.gz)
|
set(ZLIB_FILE zlib-${ZLIB_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OPENAL_VERSION 1.20.1)
|
set(OPENAL_VERSION 1.21.1)
|
||||||
set(OPENAL_URI http://openal-soft.org/openal-releases/openal-soft-${OPENAL_VERSION}.tar.bz2)
|
set(OPENAL_URI http://openal-soft.org/openal-releases/openal-soft-${OPENAL_VERSION}.tar.bz2)
|
||||||
set(OPENAL_HASH 556695068ce8375b89986083d810fd35)
|
set(OPENAL_HASH a936806ebd8de417b0ffd8cf3f48f456)
|
||||||
set(OPENAL_HASH_TYPE MD5)
|
set(OPENAL_HASH_TYPE MD5)
|
||||||
set(OPENAL_FILE openal-soft-${OPENAL_VERSION}.tar.bz2)
|
set(OPENAL_FILE openal-soft-${OPENAL_VERSION}.tar.bz2)
|
||||||
|
|
||||||
@@ -18,24 +18,24 @@ set(PNG_HASH 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca)
|
|||||||
set(PNG_HASH_TYPE SHA256)
|
set(PNG_HASH_TYPE SHA256)
|
||||||
set(PNG_FILE libpng-${PNG_VERSION}.tar.xz)
|
set(PNG_FILE libpng-${PNG_VERSION}.tar.xz)
|
||||||
|
|
||||||
set(JPEG_VERSION 2.0.4)
|
set(JPEG_VERSION 2.1.3)
|
||||||
set(JPEG_URI https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_VERSION}.tar.gz)
|
set(JPEG_URI https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_VERSION}.tar.gz)
|
||||||
set(JPEG_HASH 44c43e4a9fb352f47090804529317c88)
|
set(JPEG_HASH 627b980fad0573e08e4c3b80b290fc91)
|
||||||
set(JPEG_HASH_TYPE MD5)
|
set(JPEG_HASH_TYPE MD5)
|
||||||
set(JPEG_FILE libjpeg-turbo-${JPEG_VERSION}.tar.gz)
|
set(JPEG_FILE libjpeg-turbo-${JPEG_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(BOOST_VERSION 1.73.0)
|
set(BOOST_VERSION 1.78.0)
|
||||||
set(BOOST_VERSION_NODOTS 1_73_0)
|
set(BOOST_VERSION_SHORT 1.78)
|
||||||
set(BOOST_VERSION_NODOTS_SHORT 1_73)
|
set(BOOST_VERSION_NODOTS 1_78_0)
|
||||||
|
set(BOOST_VERSION_NODOTS_SHORT 1_78)
|
||||||
set(BOOST_URI https://boostorg.jfrog.io/artifactory/main/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
set(BOOST_URI https://boostorg.jfrog.io/artifactory/main/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
||||||
set(BOOST_HASH 4036cd27ef7548b8d29c30ea10956196)
|
set(BOOST_HASH c2f6428ac52b0e5a3c9b2e1d8cc832b5)
|
||||||
set(BOOST_HASH_TYPE MD5)
|
set(BOOST_HASH_TYPE MD5)
|
||||||
set(BOOST_FILE boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
set(BOOST_FILE boost_${BOOST_VERSION_NODOTS}.tar.gz)
|
||||||
|
|
||||||
# Using old version as recommended by OpenVDB build documentation.
|
set(BLOSC_VERSION 1.21.1)
|
||||||
set(BLOSC_VERSION 1.5.0)
|
|
||||||
set(BLOSC_URI https://github.com/Blosc/c-blosc/archive/v${BLOSC_VERSION}.tar.gz)
|
set(BLOSC_URI https://github.com/Blosc/c-blosc/archive/v${BLOSC_VERSION}.tar.gz)
|
||||||
set(BLOSC_HASH 6e4a49c8c06f05aa543f3312cfce3d55)
|
set(BLOSC_HASH 134b55813b1dca57019d2a2dc1f7a923)
|
||||||
set(BLOSC_HASH_TYPE MD5)
|
set(BLOSC_HASH_TYPE MD5)
|
||||||
set(BLOSC_FILE blosc-${BLOSC_VERSION}.tar.gz)
|
set(BLOSC_FILE blosc-${BLOSC_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -45,12 +45,19 @@ set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653)
|
|||||||
set(PTHREADS_HASH_TYPE MD5)
|
set(PTHREADS_HASH_TYPE MD5)
|
||||||
set(PTHREADS_FILE pthreads4w-code-${PTHREADS_VERSION}.zip)
|
set(PTHREADS_FILE pthreads4w-code-${PTHREADS_VERSION}.zip)
|
||||||
|
|
||||||
set(OPENEXR_VERSION 2.5.5)
|
set(OPENEXR_VERSION 3.1.4)
|
||||||
set(OPENEXR_URI https://github.com/AcademySoftwareFoundation/openexr/archive/v${OPENEXR_VERSION}.tar.gz)
|
set(OPENEXR_URI https://github.com/AcademySoftwareFoundation/openexr/archive/v${OPENEXR_VERSION}.tar.gz)
|
||||||
set(OPENEXR_HASH 85e8a979092c9055d10ed103062d31a0)
|
set(OPENEXR_HASH e990be1ff765797bc2d93a8060e1c1f2)
|
||||||
set(OPENEXR_HASH_TYPE MD5)
|
set(OPENEXR_HASH_TYPE MD5)
|
||||||
set(OPENEXR_FILE openexr-${OPENEXR_VERSION}.tar.gz)
|
set(OPENEXR_FILE openexr-${OPENEXR_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IMATH_VERSION 3.1.4)
|
||||||
|
set(IMATH_URI https://github.com/AcademySoftwareFoundation/Imath/archive/v${OPENEXR_VERSION}.tar.gz)
|
||||||
|
set(IMATH_HASH fddf14ec73e12c34e74c3c175e311a3f)
|
||||||
|
set(IMATH_HASH_TYPE MD5)
|
||||||
|
set(IMATH_FILE imath-${IMATH_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# Openexr started appending _d on its own so now
|
# Openexr started appending _d on its own so now
|
||||||
# we need to tell the build the postfix is _s while
|
# we need to tell the build the postfix is _s while
|
||||||
@@ -85,42 +92,21 @@ set(FREEGLUT_HASH 90c3ca4dd9d51cf32276bc5344ec9754)
|
|||||||
set(FREEGLUT_HASH_TYPE MD5)
|
set(FREEGLUT_HASH_TYPE MD5)
|
||||||
set(FREEGLUT_FILE freeglut-${FREEGLUT_VERSION}.tar.gz)
|
set(FREEGLUT_FILE freeglut-${FREEGLUT_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(ALEMBIC_VERSION 1.7.16)
|
set(ALEMBIC_VERSION 1.8.3)
|
||||||
set(ALEMBIC_URI https://github.com/alembic/alembic/archive/${ALEMBIC_VERSION}.tar.gz)
|
set(ALEMBIC_URI https://github.com/alembic/alembic/archive/${ALEMBIC_VERSION}.tar.gz)
|
||||||
set(ALEMBIC_HASH effcc86e42fe6605588e3de57bde6677)
|
set(ALEMBIC_HASH 2cd8d6e5a3ac4a014e24a4b04f4fadf9)
|
||||||
set(ALEMBIC_HASH_TYPE MD5)
|
set(ALEMBIC_HASH_TYPE MD5)
|
||||||
set(ALEMBIC_FILE alembic-${ALEMBIC_VERSION}.tar.gz)
|
set(ALEMBIC_FILE alembic-${ALEMBIC_VERSION}.tar.gz)
|
||||||
|
|
||||||
# hash is for 3.1.2
|
set(OPENSUBDIV_VERSION v3_4_4)
|
||||||
set(GLFW_GIT_UID 30306e54705c3adae9fe082c816a3be71963485c)
|
|
||||||
set(GLFW_URI https://github.com/glfw/glfw/archive/${GLFW_GIT_UID}.zip)
|
|
||||||
set(GLFW_HASH 20cacb1613da7eeb092f3ac4f6b2b3d0)
|
|
||||||
set(GLFW_HASH_TYPE MD5)
|
|
||||||
set(GLFW_FILE glfw-${GLFW_GIT_UID}.zip)
|
|
||||||
|
|
||||||
# latest uid in git as of 2016-04-01
|
|
||||||
set(CLEW_GIT_UID 277db43f6cafe8b27c6f1055f69dc67da4aeb299)
|
|
||||||
set(CLEW_URI https://github.com/OpenCLWrangler/clew/archive/${CLEW_GIT_UID}.zip)
|
|
||||||
set(CLEW_HASH 2c699d10ed78362e71f56fae2a4c5f98)
|
|
||||||
set(CLEW_HASH_TYPE MD5)
|
|
||||||
set(CLEW_FILE clew-${CLEW_GIT_UID}.zip)
|
|
||||||
|
|
||||||
# latest uid in git as of 2016-04-01
|
|
||||||
set(CUEW_GIT_UID 1744972026de9cf27c8a7dc39cf39cd83d5f922f)
|
|
||||||
set(CUEW_URI https://github.com/CudaWrangler/cuew/archive/${CUEW_GIT_UID}.zip)
|
|
||||||
set(CUEW_HASH 86760d62978ebfd96cd93f5aa1abaf4a)
|
|
||||||
set(CUEW_HASH_TYPE MD5)
|
|
||||||
set(CUEW_FILE cuew-${CUEW_GIT_UID}.zip)
|
|
||||||
|
|
||||||
set(OPENSUBDIV_VERSION v3_4_3)
|
|
||||||
set(OPENSUBDIV_URI https://github.com/PixarAnimationStudios/OpenSubdiv/archive/${OPENSUBDIV_VERSION}.tar.gz)
|
set(OPENSUBDIV_URI https://github.com/PixarAnimationStudios/OpenSubdiv/archive/${OPENSUBDIV_VERSION}.tar.gz)
|
||||||
set(OPENSUBDIV_HASH 7bbfa275d021fb829e521df749160edb)
|
set(OPENSUBDIV_HASH 39ecc5caf0abebc943d1ce131855e76e)
|
||||||
set(OPENSUBDIV_HASH_TYPE MD5)
|
set(OPENSUBDIV_HASH_TYPE MD5)
|
||||||
set(OPENSUBDIV_FILE opensubdiv-${OPENSUBDIV_VERSION}.tar.gz)
|
set(OPENSUBDIV_FILE opensubdiv-${OPENSUBDIV_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(SDL_VERSION 2.0.12)
|
set(SDL_VERSION 2.0.20)
|
||||||
set(SDL_URI https://www.libsdl.org/release/SDL2-${SDL_VERSION}.tar.gz)
|
set(SDL_URI https://www.libsdl.org/release/SDL2-${SDL_VERSION}.tar.gz)
|
||||||
set(SDL_HASH 783b6f2df8ff02b19bb5ce492b99c8ff)
|
set(SDL_HASH a53acc02e1cca98c4123229069b67c9e)
|
||||||
set(SDL_HASH_TYPE MD5)
|
set(SDL_HASH_TYPE MD5)
|
||||||
set(SDL_FILE SDL2-${SDL_VERSION}.tar.gz)
|
set(SDL_FILE SDL2-${SDL_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -130,9 +116,9 @@ set(OPENCOLLADA_HASH ee7dae874019fea7be11613d07567493)
|
|||||||
set(OPENCOLLADA_HASH_TYPE MD5)
|
set(OPENCOLLADA_HASH_TYPE MD5)
|
||||||
set(OPENCOLLADA_FILE opencollada-${OPENCOLLADA_VERSION}.tar.gz)
|
set(OPENCOLLADA_FILE opencollada-${OPENCOLLADA_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OPENCOLORIO_VERSION 2.0.0)
|
set(OPENCOLORIO_VERSION 2.1.1)
|
||||||
set(OPENCOLORIO_URI https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/v${OPENCOLORIO_VERSION}.tar.gz)
|
set(OPENCOLORIO_URI https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/v${OPENCOLORIO_VERSION}.tar.gz)
|
||||||
set(OPENCOLORIO_HASH 1a2e3478b6cd9a1549f24e1b2205e3f0)
|
set(OPENCOLORIO_HASH 604f562e073f23d88ce89ed4f7f709ba)
|
||||||
set(OPENCOLORIO_HASH_TYPE MD5)
|
set(OPENCOLORIO_HASH_TYPE MD5)
|
||||||
set(OPENCOLORIO_FILE OpenColorIO-${OPENCOLORIO_VERSION}.tar.gz)
|
set(OPENCOLORIO_FILE OpenColorIO-${OPENCOLORIO_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -155,21 +141,37 @@ set(OPENMP_URI https://github.com/llvm/llvm-project/releases/download/llvmorg-${
|
|||||||
set(OPENMP_HASH_TYPE MD5)
|
set(OPENMP_HASH_TYPE MD5)
|
||||||
set(OPENMP_FILE openmp-${OPENMP_VERSION}.src.tar.xz)
|
set(OPENMP_FILE openmp-${OPENMP_VERSION}.src.tar.xz)
|
||||||
|
|
||||||
set(OPENIMAGEIO_VERSION 2.2.15.1)
|
set(OPENIMAGEIO_VERSION v2.3.13.0)
|
||||||
set(OPENIMAGEIO_URI https://github.com/OpenImageIO/oiio/archive/Release-${OPENIMAGEIO_VERSION}.tar.gz)
|
set(OPENIMAGEIO_URI https://github.com/OpenImageIO/oiio/archive/refs/tags/${OPENIMAGEIO_VERSION}.tar.gz)
|
||||||
set(OPENIMAGEIO_HASH 3db5c5f0b3dc91597c75e5df09eb9072)
|
set(OPENIMAGEIO_HASH de45fb38501c4581062b522b53b6141c)
|
||||||
set(OPENIMAGEIO_HASH_TYPE MD5)
|
set(OPENIMAGEIO_HASH_TYPE MD5)
|
||||||
set(OPENIMAGEIO_FILE OpenImageIO-${OPENIMAGEIO_VERSION}.tar.gz)
|
set(OPENIMAGEIO_FILE OpenImageIO-${OPENIMAGEIO_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(TIFF_VERSION 4.1.0)
|
# 8.0.0 is currently oiio's preferred version although never versions may be available.
|
||||||
|
# the preferred version can be found in oiio's externalpackages.cmake
|
||||||
|
set(FMT_VERSION 8.0.0)
|
||||||
|
set(FMT_URI https://github.com/fmtlib/fmt/archive/refs/tags/${FMT_VERSION}.tar.gz)
|
||||||
|
set(FMT_HASH 7bce0e9e022e586b178b150002e7c2339994e3c2bbe44027e9abb0d60f9cce83)
|
||||||
|
set(FMT_HASH_TYPE SHA256)
|
||||||
|
set(FMT_FILE fmt-${FMT_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# 0.6.2 is currently oiio's preferred version although never versions may be available.
|
||||||
|
# the preferred version can be found in oiio's externalpackages.cmake
|
||||||
|
set(ROBINMAP_VERSION v0.6.2)
|
||||||
|
set(ROBINMAP_URI https://github.com/Tessil/robin-map/archive/refs/tags/${ROBINMAP_VERSION}.tar.gz)
|
||||||
|
set(ROBINMAP_HASH c08ec4b1bf1c85eb0d6432244a6a89862229da1cb834f3f90fba8dc35d8c8ef1)
|
||||||
|
set(ROBINMAP_HASH_TYPE SHA256)
|
||||||
|
set(ROBINMAP_FILE robinmap-${ROBINMAP_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(TIFF_VERSION 4.3.0)
|
||||||
set(TIFF_URI http://download.osgeo.org/libtiff/tiff-${TIFF_VERSION}.tar.gz)
|
set(TIFF_URI http://download.osgeo.org/libtiff/tiff-${TIFF_VERSION}.tar.gz)
|
||||||
set(TIFF_HASH 2165e7aba557463acc0664e71a3ed424)
|
set(TIFF_HASH 0a2e4744d1426a8fc8211c0cdbc3a1b3)
|
||||||
set(TIFF_HASH_TYPE MD5)
|
set(TIFF_HASH_TYPE MD5)
|
||||||
set(TIFF_FILE tiff-${TIFF_VERSION}.tar.gz)
|
set(TIFF_FILE tiff-${TIFF_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OSL_VERSION 1.11.14.1)
|
set(OSL_VERSION 1.11.17.0)
|
||||||
set(OSL_URI https://github.com/imageworks/OpenShadingLanguage/archive/Release-${OSL_VERSION}.tar.gz)
|
set(OSL_URI https://github.com/imageworks/OpenShadingLanguage/archive/Release-${OSL_VERSION}.tar.gz)
|
||||||
set(OSL_HASH 1abd7ce40481771a9fa937f19595d2f2)
|
set(OSL_HASH 63265472ce14548839ace2e21e401544)
|
||||||
set(OSL_HASH_TYPE MD5)
|
set(OSL_HASH_TYPE MD5)
|
||||||
set(OSL_FILE OpenShadingLanguage-${OSL_VERSION}.tar.gz)
|
set(OSL_FILE OpenShadingLanguage-${OSL_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -181,24 +183,18 @@ set(PYTHON_HASH 14e8c22458ed7779a1957b26cde01db9)
|
|||||||
set(PYTHON_HASH_TYPE MD5)
|
set(PYTHON_HASH_TYPE MD5)
|
||||||
set(PYTHON_FILE Python-${PYTHON_VERSION}.tar.xz)
|
set(PYTHON_FILE Python-${PYTHON_VERSION}.tar.xz)
|
||||||
|
|
||||||
set(TBB_VERSION 2020_U2)
|
set(TBB_VERSION 2020_U3)
|
||||||
set(TBB_URI https://github.com/oneapi-src/oneTBB/archive/${TBB_VERSION}.tar.gz)
|
set(TBB_URI https://github.com/oneapi-src/oneTBB/archive/${TBB_VERSION}.tar.gz)
|
||||||
set(TBB_HASH 1b711ae956524855088df3bbf5ec65dc)
|
set(TBB_HASH 55ec8df6eae5ed6364a47f0e671e460c)
|
||||||
set(TBB_HASH_TYPE MD5)
|
set(TBB_HASH_TYPE MD5)
|
||||||
set(TBB_FILE oneTBB-${TBB_VERSION}.tar.gz)
|
set(TBB_FILE oneTBB-${TBB_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OPENVDB_VERSION 8.0.1)
|
set(OPENVDB_VERSION 9.0.0)
|
||||||
set(OPENVDB_URI https://github.com/AcademySoftwareFoundation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz)
|
set(OPENVDB_URI https://github.com/AcademySoftwareFoundation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz)
|
||||||
set(OPENVDB_HASH 01b490be16cc0e15c690f9a153c21461)
|
set(OPENVDB_HASH 684ce40c2f74f3a0c9cac530e1c7b07e)
|
||||||
set(OPENVDB_HASH_TYPE MD5)
|
set(OPENVDB_HASH_TYPE MD5)
|
||||||
set(OPENVDB_FILE openvdb-${OPENVDB_VERSION}.tar.gz)
|
set(OPENVDB_FILE openvdb-${OPENVDB_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(NANOVDB_GIT_UID dc37d8a631922e7bef46712947dc19b755f3e841)
|
|
||||||
set(NANOVDB_URI https://github.com/AcademySoftwareFoundation/openvdb/archive/${NANOVDB_GIT_UID}.tar.gz)
|
|
||||||
set(NANOVDB_HASH e7b9e863ec2f3b04ead171dec2322807)
|
|
||||||
set(NANOVDB_HASH_TYPE MD5)
|
|
||||||
set(NANOVDB_FILE nano-vdb-${NANOVDB_GIT_UID}.tar.gz)
|
|
||||||
|
|
||||||
set(IDNA_VERSION 3.3)
|
set(IDNA_VERSION 3.3)
|
||||||
set(CHARSET_NORMALIZER_VERSION 2.0.10)
|
set(CHARSET_NORMALIZER_VERSION 2.0.10)
|
||||||
set(URLLIB3_VERSION 1.26.8)
|
set(URLLIB3_VERSION 1.26.8)
|
||||||
@@ -208,6 +204,9 @@ set(CYTHON_VERSION 0.29.26)
|
|||||||
# The version of the zstd library used to build the Python package should match ZSTD_VERSION defined below.
|
# The version of the zstd library used to build the Python package should match ZSTD_VERSION defined below.
|
||||||
# At this time of writing, 0.17.0 was already released, but built against zstd 1.5.1, while we use 1.5.0.
|
# At this time of writing, 0.17.0 was already released, but built against zstd 1.5.1, while we use 1.5.0.
|
||||||
set(ZSTANDARD_VERSION 0.16.0)
|
set(ZSTANDARD_VERSION 0.16.0)
|
||||||
|
set(AUTOPEP8_VERSION 1.6.0)
|
||||||
|
set(PYCODESTYLE_VERSION 2.8.0)
|
||||||
|
set(TOML_VERSION 0.10.2)
|
||||||
|
|
||||||
set(NUMPY_VERSION 1.22.0)
|
set(NUMPY_VERSION 1.22.0)
|
||||||
set(NUMPY_SHORT_VERSION 1.22)
|
set(NUMPY_SHORT_VERSION 1.22)
|
||||||
@@ -222,15 +221,15 @@ set(LAME_HASH 83e260acbe4389b54fe08e0bdbf7cddb)
|
|||||||
set(LAME_HASH_TYPE MD5)
|
set(LAME_HASH_TYPE MD5)
|
||||||
set(LAME_FILE lame-${LAME_VERSION}.tar.gz)
|
set(LAME_FILE lame-${LAME_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OGG_VERSION 1.3.4)
|
set(OGG_VERSION 1.3.5)
|
||||||
set(OGG_URI http://downloads.xiph.org/releases/ogg/libogg-${OGG_VERSION}.tar.gz)
|
set(OGG_URI http://downloads.xiph.org/releases/ogg/libogg-${OGG_VERSION}.tar.gz)
|
||||||
set(OGG_HASH fe5670640bd49e828d64d2879c31cb4dde9758681bb664f9bdbf159a01b0c76e)
|
set(OGG_HASH 0eb4b4b9420a0f51db142ba3f9c64b333f826532dc0f48c6410ae51f4799b664)
|
||||||
set(OGG_HASH_TYPE SHA256)
|
set(OGG_HASH_TYPE SHA256)
|
||||||
set(OGG_FILE libogg-${OGG_VERSION}.tar.gz)
|
set(OGG_FILE libogg-${OGG_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(VORBIS_VERSION 1.3.6)
|
set(VORBIS_VERSION 1.3.7)
|
||||||
set(VORBIS_URI http://downloads.xiph.org/releases/vorbis/libvorbis-${VORBIS_VERSION}.tar.gz)
|
set(VORBIS_URI http://downloads.xiph.org/releases/vorbis/libvorbis-${VORBIS_VERSION}.tar.gz)
|
||||||
set(VORBIS_HASH 6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb)
|
set(VORBIS_HASH 0e982409a9c3fc82ee06e08205b1355e5c6aa4c36bca58146ef399621b0ce5ab)
|
||||||
set(VORBIS_HASH_TYPE SHA256)
|
set(VORBIS_HASH_TYPE SHA256)
|
||||||
set(VORBIS_FILE libvorbis-${VORBIS_VERSION}.tar.gz)
|
set(VORBIS_FILE libvorbis-${VORBIS_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -240,15 +239,15 @@ set(THEORA_HASH b6ae1ee2fa3d42ac489287d3ec34c5885730b1296f0801ae577a35193d3affbc
|
|||||||
set(THEORA_HASH_TYPE SHA256)
|
set(THEORA_HASH_TYPE SHA256)
|
||||||
set(THEORA_FILE libtheora-${THEORA_VERSION}.tar.bz2)
|
set(THEORA_FILE libtheora-${THEORA_VERSION}.tar.bz2)
|
||||||
|
|
||||||
set(FLAC_VERSION 1.3.3)
|
set(FLAC_VERSION 1.3.4)
|
||||||
set(FLAC_URI http://downloads.xiph.org/releases/flac/flac-${FLAC_VERSION}.tar.xz)
|
set(FLAC_URI http://downloads.xiph.org/releases/flac/flac-${FLAC_VERSION}.tar.xz)
|
||||||
set(FLAC_HASH 213e82bd716c9de6db2f98bcadbc4c24c7e2efe8c75939a1a84e28539c4e1748)
|
set(FLAC_HASH 8ff0607e75a322dd7cd6ec48f4f225471404ae2730d0ea945127b1355155e737 )
|
||||||
set(FLAC_HASH_TYPE SHA256)
|
set(FLAC_HASH_TYPE SHA256)
|
||||||
set(FLAC_FILE flac-${FLAC_VERSION}.tar.xz)
|
set(FLAC_FILE flac-${FLAC_VERSION}.tar.xz)
|
||||||
|
|
||||||
set(VPX_VERSION 1.8.2)
|
set(VPX_VERSION 1.11.0)
|
||||||
set(VPX_URI https://github.com/webmproject/libvpx/archive/v${VPX_VERSION}/libvpx-v${VPX_VERSION}.tar.gz)
|
set(VPX_URI https://github.com/webmproject/libvpx/archive/v${VPX_VERSION}/libvpx-v${VPX_VERSION}.tar.gz)
|
||||||
set(VPX_HASH 8735d9fcd1a781ae6917f28f239a8aa358ce4864ba113ea18af4bb2dc8b474ac)
|
set(VPX_HASH 965e51c91ad9851e2337aebcc0f517440c637c506f3a03948062e3d5ea129a83)
|
||||||
set(VPX_HASH_TYPE SHA256)
|
set(VPX_HASH_TYPE SHA256)
|
||||||
set(VPX_FILE libvpx-v${VPX_VERSION}.tar.gz)
|
set(VPX_FILE libvpx-v${VPX_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -258,9 +257,9 @@ set(OPUS_HASH 65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d)
|
|||||||
set(OPUS_HASH_TYPE SHA256)
|
set(OPUS_HASH_TYPE SHA256)
|
||||||
set(OPUS_FILE opus-${OPUS_VERSION}.tar.gz)
|
set(OPUS_FILE opus-${OPUS_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(X264_VERSION 33f9e1474613f59392be5ab6a7e7abf60fa63622)
|
set(X264_VERSION 35fe20d1ba49918ec739a5b068c208ca82f977f7)
|
||||||
set(X264_URI https://code.videolan.org/videolan/x264/-/archive/${X264_VERSION}/x264-${X264_VERSION}.tar.gz)
|
set(X264_URI https://code.videolan.org/videolan/x264/-/archive/${X264_VERSION}/x264-${X264_VERSION}.tar.gz)
|
||||||
set(X264_HASH 5456450ee1ae02cd2328be3157367a232a0ab73315e8c8f80dab80469524f525)
|
set(X264_HASH bb4f7da03936b5a030ed5827133b58eb3f701d7e5dce32cca4ba6df93797d42e)
|
||||||
set(X264_HASH_TYPE SHA256)
|
set(X264_HASH_TYPE SHA256)
|
||||||
set(X264_FILE x264-${X264_VERSION}.tar.gz)
|
set(X264_FILE x264-${X264_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -270,22 +269,22 @@ set(XVIDCORE_HASH abbdcbd39555691dd1c9b4d08f0a031376a3b211652c0d8b3b8aa9be1303ce
|
|||||||
set(XVIDCORE_HASH_TYPE SHA256)
|
set(XVIDCORE_HASH_TYPE SHA256)
|
||||||
set(XVIDCORE_FILE xvidcore-${XVIDCORE_VERSION}.tar.gz)
|
set(XVIDCORE_FILE xvidcore-${XVIDCORE_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OPENJPEG_VERSION 2.3.1)
|
set(OPENJPEG_VERSION 2.4.0)
|
||||||
set(OPENJPEG_SHORT_VERSION 2.3)
|
set(OPENJPEG_SHORT_VERSION 2.4)
|
||||||
set(OPENJPEG_URI https://github.com/uclouvain/openjpeg/archive/v${OPENJPEG_VERSION}.tar.gz)
|
set(OPENJPEG_URI https://github.com/uclouvain/openjpeg/archive/v${OPENJPEG_VERSION}.tar.gz)
|
||||||
set(OPENJPEG_HASH 63f5a4713ecafc86de51bfad89cc07bb788e9bba24ebbf0c4ca637621aadb6a9)
|
set(OPENJPEG_HASH 8702ba68b442657f11aaeb2b338443ca8d5fb95b0d845757968a7be31ef7f16d)
|
||||||
set(OPENJPEG_HASH_TYPE SHA256)
|
set(OPENJPEG_HASH_TYPE SHA256)
|
||||||
set(OPENJPEG_FILE openjpeg-v${OPENJPEG_VERSION}.tar.gz)
|
set(OPENJPEG_FILE openjpeg-v${OPENJPEG_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(FFMPEG_VERSION 4.4)
|
set(FFMPEG_VERSION 5.0)
|
||||||
set(FFMPEG_URI http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
set(FFMPEG_URI http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
||||||
set(FFMPEG_HASH 42093549751b582cf0f338a21a3664f52e0a9fbe0d238d3c992005e493607d0e)
|
set(FFMPEG_HASH c0130b8db2c763430fd1c6905288d61bc44ee0548ad5fcd2dfd650b88432bed9)
|
||||||
set(FFMPEG_HASH_TYPE SHA256)
|
set(FFMPEG_HASH_TYPE SHA256)
|
||||||
set(FFMPEG_FILE ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
set(FFMPEG_FILE ffmpeg-${FFMPEG_VERSION}.tar.bz2)
|
||||||
|
|
||||||
set(FFTW_VERSION 3.3.8)
|
set(FFTW_VERSION 3.3.10)
|
||||||
set(FFTW_URI http://www.fftw.org/fftw-${FFTW_VERSION}.tar.gz)
|
set(FFTW_URI http://www.fftw.org/fftw-${FFTW_VERSION}.tar.gz)
|
||||||
set(FFTW_HASH 8aac833c943d8e90d51b697b27d4384d)
|
set(FFTW_HASH 8ccbf6a5ea78a16dbc3e1306e234cc5c)
|
||||||
set(FFTW_HASH_TYPE MD5)
|
set(FFTW_HASH_TYPE MD5)
|
||||||
set(FFTW_FILE fftw-${FFTW_VERSION}.tar.gz)
|
set(FFTW_FILE fftw-${FFTW_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -301,9 +300,9 @@ set(SNDFILE_HASH 646b5f98ce89ac60cdb060fcd398247c)
|
|||||||
set(SNDFILE_HASH_TYPE MD5)
|
set(SNDFILE_HASH_TYPE MD5)
|
||||||
set(SNDFILE_FILE libsndfile-${SNDFILE_VERSION}.tar.gz)
|
set(SNDFILE_FILE libsndfile-${SNDFILE_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(WEBP_VERSION 0.6.1)
|
set(WEBP_VERSION 1.2.2)
|
||||||
set(WEBP_URI https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${WEBP_VERSION}.tar.gz)
|
set(WEBP_URI https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${WEBP_VERSION}.tar.gz)
|
||||||
set(WEBP_HASH b49ce9c3e3e9acae4d91bca44bb85a72)
|
set(WEBP_HASH b5e2e414a8adee4c25fe56b18dd9c549)
|
||||||
set(WEBP_HASH_TYPE MD5)
|
set(WEBP_HASH_TYPE MD5)
|
||||||
set(WEBP_FILE libwebp-${WEBP_VERSION}.tar.gz)
|
set(WEBP_FILE libwebp-${WEBP_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -338,9 +337,15 @@ set(YAMLCPP_HASH b45bf1089a382e81f6b661062c10d0c2)
|
|||||||
set(YAMLCPP_HASH_TYPE MD5)
|
set(YAMLCPP_HASH_TYPE MD5)
|
||||||
set(YAMLCPP_FILE yaml-cpp-${YAMLCPP_VERSION}.tar.gz)
|
set(YAMLCPP_FILE yaml-cpp-${YAMLCPP_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(EXPAT_VERSION 2_2_10)
|
set(PYSTRING_VERSION v1.1.3)
|
||||||
|
set(PYSTRING_URI https://codeload.github.com/imageworks/pystring/tar.gz/refs/tags/${PYSTRING_VERSION})
|
||||||
|
set(PYSTRING_HASH f2c68786b359f5e4e62bed53bc4fb86d)
|
||||||
|
set(PYSTRING_HASH_TYPE MD5)
|
||||||
|
set(PYSTRING_FILE pystring-${PYSTRING_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(EXPAT_VERSION 2_4_4)
|
||||||
set(EXPAT_URI https://github.com/libexpat/libexpat/archive/R_${EXPAT_VERSION}.tar.gz)
|
set(EXPAT_URI https://github.com/libexpat/libexpat/archive/R_${EXPAT_VERSION}.tar.gz)
|
||||||
set(EXPAT_HASH 7ca5f09959fcb9a57618368deb627b9f)
|
set(EXPAT_HASH 2d3e81dee94b452369dc6394ff0f8f98)
|
||||||
set(EXPAT_HASH_TYPE MD5)
|
set(EXPAT_HASH_TYPE MD5)
|
||||||
set(EXPAT_FILE libexpat-${EXPAT_VERSION}.tar.gz)
|
set(EXPAT_FILE libexpat-${EXPAT_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -405,22 +410,21 @@ set(SQLITE_HASH fb558c49ee21a837713c4f1e7e413309aabdd9c7)
|
|||||||
set(SQLITE_HASH_TYPE SHA1)
|
set(SQLITE_HASH_TYPE SHA1)
|
||||||
set(SQLITE_FILE sqlite-src-3240000.zip)
|
set(SQLITE_FILE sqlite-src-3240000.zip)
|
||||||
|
|
||||||
set(EMBREE_VERSION 3.10.0)
|
set(EMBREE_VERSION 3.13.4)
|
||||||
set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
|
set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
|
||||||
set(EMBREE_HASH 4bbe29e7eaa46417efc75fc5f1e8eb87)
|
set(EMBREE_HASH 52d0be294d6c88ba7a6c9e046796e7be)
|
||||||
set(EMBREE_HASH_TYPE MD5)
|
set(EMBREE_HASH_TYPE MD5)
|
||||||
set(EMBREE_FILE embree-v${EMBREE_VERSION}.zip)
|
set(EMBREE_FILE embree-v${EMBREE_VERSION}.zip)
|
||||||
set(EMBREE_ARM_GIT https://github.com/brechtvl/embree.git)
|
|
||||||
|
|
||||||
set(USD_VERSION 21.02)
|
set(USD_VERSION 22.03)
|
||||||
set(USD_URI https://github.com/PixarAnimationStudios/USD/archive/v${USD_VERSION}.tar.gz)
|
set(USD_URI https://github.com/PixarAnimationStudios/USD/archive/v${USD_VERSION}.tar.gz)
|
||||||
set(USD_HASH 1dd1e2092d085ed393c1f7c450a4155a)
|
set(USD_HASH e0e441a05057692a83124a1195b09eed)
|
||||||
set(USD_HASH_TYPE MD5)
|
set(USD_HASH_TYPE MD5)
|
||||||
set(USD_FILE usd-v${USD_VERSION}.tar.gz)
|
set(USD_FILE usd-v${USD_VERSION}.tar.gz)
|
||||||
|
|
||||||
set(OIDN_VERSION 1.4.1)
|
set(OIDN_VERSION 1.4.3)
|
||||||
set(OIDN_URI https://github.com/OpenImageDenoise/oidn/releases/download/v${OIDN_VERSION}/oidn-${OIDN_VERSION}.src.tar.gz)
|
set(OIDN_URI https://github.com/OpenImageDenoise/oidn/releases/download/v${OIDN_VERSION}/oidn-${OIDN_VERSION}.src.tar.gz)
|
||||||
set(OIDN_HASH df4007b0ab93b1c41cdf223b075d01c0)
|
set(OIDN_HASH 027093eaf5e8b4e45835b991137b38e6)
|
||||||
set(OIDN_HASH_TYPE MD5)
|
set(OIDN_HASH_TYPE MD5)
|
||||||
set(OIDN_FILE oidn-${OIDN_VERSION}.src.tar.gz)
|
set(OIDN_FILE oidn-${OIDN_VERSION}.src.tar.gz)
|
||||||
|
|
||||||
@@ -454,9 +458,9 @@ set(WL_PROTOCOLS_URI https://gitlab.freedesktop.org/wayland/wayland-protocols/-/
|
|||||||
set(WL_PROTOCOLS_HASH af5ca07e13517cdbab33504492cef54a)
|
set(WL_PROTOCOLS_HASH af5ca07e13517cdbab33504492cef54a)
|
||||||
set(WL_PROTOCOLS_HASH_TYPE MD5)
|
set(WL_PROTOCOLS_HASH_TYPE MD5)
|
||||||
|
|
||||||
set(ISPC_VERSION v1.16.0)
|
set(ISPC_VERSION v1.17.0)
|
||||||
set(ISPC_URI https://github.com/ispc/ispc/archive/${ISPC_VERSION}.tar.gz)
|
set(ISPC_URI https://github.com/ispc/ispc/archive/${ISPC_VERSION}.tar.gz)
|
||||||
set(ISPC_HASH 2e3abedbc0ea9aaec17d6562c632454d)
|
set(ISPC_HASH 4f476a3109332a77fe839a9014c60ca9)
|
||||||
set(ISPC_HASH_TYPE MD5)
|
set(ISPC_HASH_TYPE MD5)
|
||||||
set(ISPC_FILE ispc-${ISPC_VERSION}.tar.gz)
|
set(ISPC_FILE ispc-${ISPC_VERSION}.tar.gz)
|
||||||
|
|
||||||
@@ -492,3 +496,140 @@ set(BROTLI_URI https://github.com/google/brotli/archive/refs/tags/${BROTLI_VERSI
|
|||||||
set(BROTLI_HASH f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46)
|
set(BROTLI_HASH f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46)
|
||||||
set(BROTLI_HASH_TYPE SHA256)
|
set(BROTLI_HASH_TYPE SHA256)
|
||||||
set(BROTLI_FILE brotli-${BROTLI_VERSION}.tar.gz)
|
set(BROTLI_FILE brotli-${BROTLI_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(LEVEL_ZERO_VERSION v1.7.15)
|
||||||
|
set(LEVEL_ZERO_URI https://github.com/oneapi-src/level-zero/archive/refs/tags/${LEVEL_ZERO_VERSION}.tar.gz)
|
||||||
|
set(LEVEL_ZERO_HASH c39bb05a8e5898aa6c444e1704105b93d3f1888b9c333f8e7e73825ffbfb2617)
|
||||||
|
set(LEVEL_ZERO_HASH_TYPE SHA256)
|
||||||
|
set(LEVEL_ZERO_FILE level-zero-${LEVEL_ZERO_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(DPCPP_VERSION 20220620)
|
||||||
|
set(DPCPP_URI https://github.com/intel/llvm/archive/refs/tags/sycl-nightly/${DPCPP_VERSION}.tar.gz)
|
||||||
|
set(DPCPP_HASH a5f41abd5229d28afa92cbd8a5d8d786ee698bf239f722929fd686276bad692c)
|
||||||
|
set(DPCPP_HASH_TYPE SHA256)
|
||||||
|
set(DPCPP_FILE DPCPP-${DPCPP_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
########################
|
||||||
|
### DPCPP DEPS BEGIN ###
|
||||||
|
########################
|
||||||
|
# The following deps are build time requirements for dpcpp, when possible
|
||||||
|
# the source in the dpcpp source tree for the version chosen is documented
|
||||||
|
# by each dep, these will only have to be downloaded and unpacked, dpcpp
|
||||||
|
# will take care of building them, unpack is being done in dpcpp_deps.cmake
|
||||||
|
|
||||||
|
# Source llvm/lib/SYCLLowerIR/CMakeLists.txt
|
||||||
|
set(VCINTRINSICS_VERSION 984bb27baacce6ee5c716c2e64845f2a1928025b)
|
||||||
|
set(VCINTRINSICS_URI https://github.com/intel/vc-intrinsics/archive/${VCINTRINSICS_VERSION}.tar.gz)
|
||||||
|
set(VCINTRINSICS_HASH abea415a15a0dd11fdc94dee8fb462910f2548311b787e02f42509789e1b0d7b)
|
||||||
|
set(VCINTRINSICS_HASH_TYPE SHA256)
|
||||||
|
set(VCINTRINSICS_FILE vc-intrinsics-${VCINTRINSICS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# Source opencl/CMakeLists.txt
|
||||||
|
set(OPENCLHEADERS_VERSION dcd5bede6859d26833cd85f0d6bbcee7382dc9b3)
|
||||||
|
set(OPENCLHEADERS_URI https://github.com/KhronosGroup/OpenCL-Headers/archive/${OPENCLHEADERS_VERSION}.tar.gz)
|
||||||
|
set(OPENCLHEADERS_HASH ca8090359654e94f2c41e946b7e9d826253d795ae809ce7c83a7d3c859624693)
|
||||||
|
set(OPENCLHEADERS_HASH_TYPE SHA256)
|
||||||
|
set(OPENCLHEADERS_FILE opencl_headers-${OPENCLHEADERS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# Source opencl/CMakeLists.txt
|
||||||
|
set(ICDLOADER_VERSION aec3952654832211636fc4af613710f80e203b0a)
|
||||||
|
set(ICDLOADER_URI https://github.com/KhronosGroup/OpenCL-ICD-Loader/archive/${ICDLOADER_VERSION}.tar.gz)
|
||||||
|
set(ICDLOADER_HASH e1880551d67bd8dc31d13de63b94bbfd6b1f315b6145dad1ffcd159b89bda93c)
|
||||||
|
set(ICDLOADER_HASH_TYPE SHA256)
|
||||||
|
set(ICDLOADER_FILE icdloader-${ICDLOADER_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# Source sycl/cmake/modules/AddBoostMp11Headers.cmake
|
||||||
|
# Using external MP11 here, getting AddBoostMp11Headers.cmake to recognize
|
||||||
|
# our copy in boost directly was more trouble than it was worth.
|
||||||
|
set(MP11_VERSION 7bc4e1ae9b36ec8ee635c3629b59ec525bbe82b9)
|
||||||
|
set(MP11_URI https://github.com/boostorg/mp11/archive/${MP11_VERSION}.tar.gz)
|
||||||
|
set(MP11_HASH 071ee2bd3952ec89882edb3af25dd1816f6b61723f66e42eea32f4d02ceef426)
|
||||||
|
set(MP11_HASH_TYPE SHA256)
|
||||||
|
set(MP11_FILE mp11-${MP11_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# Source llvm-spirv/CMakeLists.txt (repo)
|
||||||
|
# Source llvm-spirv/spirv-headers-tag.conf (hash)
|
||||||
|
set(SPIRV_HEADERS_VERSION 36c0c1596225e728bd49abb7ef56a3953e7ed468)
|
||||||
|
set(SPIRV_HEADERS_URI https://github.com/KhronosGroup/SPIRV-Headers/archive/${SPIRV_HEADERS_VERSION}.tar.gz)
|
||||||
|
set(SPIRV_HEADERS_HASH 7a5c89633f8740456fe8adee052033e134476d267411d1336c0cb1e587a9229a)
|
||||||
|
set(SPIRV_HEADERS_HASH_TYPE SHA256)
|
||||||
|
set(SPIRV_HEADERS_FILE SPIR-V-Headers-${SPIRV_HEADERS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
######################
|
||||||
|
### DPCPP DEPS END ###
|
||||||
|
######################
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
### Intel Graphics Compiler DEPS BEGIN ###
|
||||||
|
##########################################
|
||||||
|
# The following deps are build time requirements for the intel graphics
|
||||||
|
# compiler, the versions used are taken from the following location
|
||||||
|
# https://github.com/intel/intel-graphics-compiler/releases
|
||||||
|
|
||||||
|
set(IGC_VERSION 1.0.11222)
|
||||||
|
set(IGC_URI https://github.com/intel/intel-graphics-compiler/archive/refs/tags/igc-${IGC_VERSION}.tar.gz)
|
||||||
|
set(IGC_HASH d92f0608dcbb52690855685f9447282e5c09c0ba98ae35fabf114fcf8b1e9fcf)
|
||||||
|
set(IGC_HASH_TYPE SHA256)
|
||||||
|
set(IGC_FILE igc-${IGC_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IGC_LLVM_VERSION llvmorg-11.1.0)
|
||||||
|
set(IGC_LLVM_URI https://github.com/llvm/llvm-project/archive/refs/tags/${IGC_LLVM_VERSION}.tar.gz)
|
||||||
|
set(IGC_LLVM_HASH 53a0719f3f4b0388013cfffd7b10c7d5682eece1929a9553c722348d1f866e79)
|
||||||
|
set(IGC_LLVM_HASH_TYPE SHA256)
|
||||||
|
set(IGC_LLVM_FILE ${IGC_LLVM_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
# WARNING WARNING WARNING
|
||||||
|
#
|
||||||
|
# IGC_OPENCL_CLANG contains patches for some of its dependencies.
|
||||||
|
#
|
||||||
|
# Whenever IGC_OPENCL_CLANG_VERSION changes, one *MUST* inspect
|
||||||
|
# IGC_OPENCL_CLANG's patches folder and update igc.cmake to account for
|
||||||
|
# any added or removed patches.
|
||||||
|
#
|
||||||
|
# WARNING WARNING WARNING
|
||||||
|
|
||||||
|
set(IGC_OPENCL_CLANG_VERSION bbdd1587f577397a105c900be114b56755d1f7dc)
|
||||||
|
set(IGC_OPENCL_CLANG_URI https://github.com/intel/opencl-clang/archive/${IGC_OPENCL_CLANG_VERSION}.tar.gz)
|
||||||
|
set(IGC_OPENCL_CLANG_HASH d08315f1b0d8a6fef33de2b3e6aa7356534c324910634962c72523d970773efc)
|
||||||
|
set(IGC_OPENCL_CLANG_HASH_TYPE SHA256)
|
||||||
|
set(IGC_OPENCL_CLANG_FILE opencl-clang-${IGC_OPENCL_CLANG_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IGC_VCINTRINSICS_VERSION v0.4.0)
|
||||||
|
set(IGC_VCINTRINSICS_URI https://github.com/intel/vc-intrinsics/archive/refs/tags/${IGC_VCINTRINSICS_VERSION}.tar.gz)
|
||||||
|
set(IGC_VCINTRINSICS_HASH c8b92682ad5031cf9d5b82a40e7d5c0e763cd9278660adbcaa69aab988e4b589)
|
||||||
|
set(IGC_VCINTRINSICS_HASH_TYPE SHA256)
|
||||||
|
set(IGC_VCINTRINSICS_FILE vc-intrinsics-${IGC_VCINTRINSICS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IGC_SPIRV_HEADERS_VERSION sdk-1.3.204.1)
|
||||||
|
set(IGC_SPIRV_HEADERS_URI https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/${IGC_SPIRV_HEADERS_VERSION}.tar.gz)
|
||||||
|
set(IGC_SPIRV_HEADERS_HASH 262864053968c217d45b24b89044a7736a32361894743dd6cfe788df258c746c)
|
||||||
|
set(IGC_SPIRV_HEADERS_HASH_TYPE SHA256)
|
||||||
|
set(IGC_SPIRV_HEADERS_FILE SPIR-V-Headers-${IGC_SPIRV_HEADERS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IGC_SPIRV_TOOLS_VERSION sdk-1.3.204.1)
|
||||||
|
set(IGC_SPIRV_TOOLS_URI https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/${IGC_SPIRV_TOOLS_VERSION}.tar.gz)
|
||||||
|
set(IGC_SPIRV_TOOLS_HASH 6e19900e948944243024aedd0a201baf3854b377b9cc7a386553bc103b087335)
|
||||||
|
set(IGC_SPIRV_TOOLS_HASH_TYPE SHA256)
|
||||||
|
set(IGC_SPIRV_TOOLS_FILE SPIR-V-Tools-${IGC_SPIRV_TOOLS_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_VERSION 99420daab98998a7e36858befac9c5ed109d4920)
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_URI https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/${IGC_SPIRV_TRANSLATOR_VERSION}.tar.gz)
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_HASH 77dfb4ddb6bfb993535562c02ddea23f0a0d1c5a0258c1afe7e27c894ff783a8)
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_HASH_TYPE SHA256)
|
||||||
|
set(IGC_SPIRV_TRANSLATOR_FILE SPIR-V-Translator-${IGC_SPIRV_TRANSLATOR_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
########################################
|
||||||
|
### Intel Graphics Compiler DEPS END ###
|
||||||
|
########################################
|
||||||
|
|
||||||
|
set(GMMLIB_VERSION intel-gmmlib-22.1.2)
|
||||||
|
set(GMMLIB_URI https://github.com/intel/gmmlib/archive/refs/tags/${GMMLIB_VERSION}.tar.gz)
|
||||||
|
set(GMMLIB_HASH 3b9a6d5e7e3f5748b3d0a2fb0e980ae943907fece0980bd9c0508e71c838e334)
|
||||||
|
set(GMMLIB_HASH_TYPE SHA256)
|
||||||
|
set(GMMLIB_FILE ${GMMLIB_VERSION}.tar.gz)
|
||||||
|
|
||||||
|
set(OCLOC_VERSION 22.20.23198)
|
||||||
|
set(OCLOC_URI https://github.com/intel/compute-runtime/archive/refs/tags/${OCLOC_VERSION}.tar.gz)
|
||||||
|
set(OCLOC_HASH ab22b8bf2560a57fdd3def0e35a62ca75991406f959c0263abb00cd6cd9ae998)
|
||||||
|
set(OCLOC_HASH_TYPE SHA256)
|
||||||
|
set(OCLOC_FILE ocloc-${OCLOC_VERSION}.tar.gz)
|
||||||
|
@@ -4,9 +4,15 @@
|
|||||||
# library itself does not depend on them, so should give no problems.
|
# library itself does not depend on them, so should give no problems.
|
||||||
|
|
||||||
set(WEBP_EXTRA_ARGS
|
set(WEBP_EXTRA_ARGS
|
||||||
-DWEBP_HAVE_SSE2=ON
|
-DWEBP_BUILD_ANIM_UTILS=OFF
|
||||||
-DWEBP_HAVE_SSE41=OFF
|
-DWEBP_BUILD_CWEBP=OFF
|
||||||
-DWEBP_HAVE_AVX2=OFF
|
-DWEBP_BUILD_DWEBP=OFF
|
||||||
|
-DWEBP_BUILD_GIF2WEBP=OFF
|
||||||
|
-DWEBP_BUILD_IMG2WEBP=OFF
|
||||||
|
-DWEBP_BUILD_VWEBP=OFF
|
||||||
|
-DWEBP_BUILD_WEBPINFO=OFF
|
||||||
|
-DWEBP_BUILD_WEBPMUX=OFF
|
||||||
|
-DWEBP_BUILD_EXTRAS=OFF
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
@@ -37,10 +37,6 @@ graph[autosize = false, size = "25.7,8.3!", resolution = 300, overlap = false, s
|
|||||||
external_openimageio -- external_webp;
|
external_openimageio -- external_webp;
|
||||||
external_openimageio -- external_opencolorio_extra;
|
external_openimageio -- external_opencolorio_extra;
|
||||||
external_openmp -- external_clang;
|
external_openmp -- external_clang;
|
||||||
external_opensubdiv -- external_glew;
|
|
||||||
external_opensubdiv -- external_glfw;
|
|
||||||
external_opensubdiv -- external_clew;
|
|
||||||
external_opensubdiv -- external_cuew;
|
|
||||||
external_opensubdiv -- external_tbb;
|
external_opensubdiv -- external_tbb;
|
||||||
openvdb -- external_tbb;
|
openvdb -- external_tbb;
|
||||||
openvdb -- external_boost;
|
openvdb -- external_boost;
|
||||||
|
@@ -36,19 +36,19 @@ getopt \
|
|||||||
-o s:i:t:h \
|
-o s:i:t:h \
|
||||||
--long source:,install:,tmp:,info:,threads:,help,show-deps,no-sudo,no-build,no-confirm,\
|
--long source:,install:,tmp:,info:,threads:,help,show-deps,no-sudo,no-build,no-confirm,\
|
||||||
with-all,with-opencollada,with-jack,with-pulseaudio,with-embree,with-oidn,with-nanovdb,\
|
with-all,with-opencollada,with-jack,with-pulseaudio,with-embree,with-oidn,with-nanovdb,\
|
||||||
ver-ocio:,ver-oiio:,ver-llvm:,ver-osl:,ver-osd:,ver-openvdb:,ver-xr-openxr:,\
|
ver-ocio:,ver-oiio:,ver-llvm:,ver-osl:,ver-osd:,ver-openvdb:,ver-xr-openxr:,ver-level-zero:\
|
||||||
force-all,force-python,force-boost,force-tbb,\
|
force-all,force-python,force-boost,force-tbb,\
|
||||||
force-ocio,force-imath,force-openexr,force-oiio,force-llvm,force-osl,force-osd,force-openvdb,\
|
force-ocio,force-imath,force-openexr,force-oiio,force-llvm,force-osl,force-osd,force-openvdb,\
|
||||||
force-ffmpeg,force-opencollada,force-alembic,force-embree,force-oidn,force-usd,\
|
force-ffmpeg,force-opencollada,force-alembic,force-embree,force-oidn,force-usd,\
|
||||||
force-xr-openxr,\
|
force-xr-openxr,force-level-zero,\
|
||||||
build-all,build-python,build-boost,build-tbb,\
|
build-all,build-python,build-boost,build-tbb,\
|
||||||
build-ocio,build-imath,build-openexr,build-oiio,build-llvm,build-osl,build-osd,build-openvdb,\
|
build-ocio,build-imath,build-openexr,build-oiio,build-llvm,build-osl,build-osd,build-openvdb,\
|
||||||
build-ffmpeg,build-opencollada,build-alembic,build-embree,build-oidn,build-usd,\
|
build-ffmpeg,build-opencollada,build-alembic,build-embree,build-oidn,build-usd,\
|
||||||
build-xr-openxr,\
|
build-xr-openxr,build-level-zero,\
|
||||||
skip-python,skip-boost,skip-tbb,\
|
skip-python,skip-boost,skip-tbb,\
|
||||||
skip-ocio,skip-imath,skip-openexr,skip-oiio,skip-llvm,skip-osl,skip-osd,skip-openvdb,\
|
skip-ocio,skip-imath,skip-openexr,skip-oiio,skip-llvm,skip-osl,skip-osd,skip-openvdb,\
|
||||||
skip-ffmpeg,skip-opencollada,skip-alembic,skip-embree,skip-oidn,skip-usd,\
|
skip-ffmpeg,skip-opencollada,skip-alembic,skip-embree,skip-oidn,skip-usd,\
|
||||||
skip-xr-openxr \
|
skip-xr-openxr,skip-level-zero \
|
||||||
-- "$@" \
|
-- "$@" \
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -165,6 +165,9 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS:
|
|||||||
--ver-xr-openxr=<ver>
|
--ver-xr-openxr=<ver>
|
||||||
Force version of OpenXR-SDK.
|
Force version of OpenXR-SDK.
|
||||||
|
|
||||||
|
--ver-level-zero=<ver>
|
||||||
|
Force version of OneAPI Level Zero library.
|
||||||
|
|
||||||
Note about the --ver-foo options:
|
Note about the --ver-foo options:
|
||||||
It may not always work as expected (some libs are actually checked out from a git rev...), yet it might help
|
It may not always work as expected (some libs are actually checked out from a git rev...), yet it might help
|
||||||
to fix some build issues (like LLVM mismatch with the version used by your graphic system).
|
to fix some build issues (like LLVM mismatch with the version used by your graphic system).
|
||||||
@@ -226,6 +229,9 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS:
|
|||||||
--build-xr-openxr
|
--build-xr-openxr
|
||||||
Force the build of OpenXR-SDK.
|
Force the build of OpenXR-SDK.
|
||||||
|
|
||||||
|
--build-level-zero=<ver>
|
||||||
|
Force the build of OneAPI Level Zero library.
|
||||||
|
|
||||||
Note about the --build-foo options:
|
Note about the --build-foo options:
|
||||||
* They force the script to prefer building dependencies rather than using available packages.
|
* They force the script to prefer building dependencies rather than using available packages.
|
||||||
This may make things simpler and allow working around some distribution bugs, but on the other hand it will
|
This may make things simpler and allow working around some distribution bugs, but on the other hand it will
|
||||||
@@ -293,6 +299,9 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS:
|
|||||||
--force-xr-openxr
|
--force-xr-openxr
|
||||||
Force the rebuild of OpenXR-SDK.
|
Force the rebuild of OpenXR-SDK.
|
||||||
|
|
||||||
|
--force-level-zero=<ver>
|
||||||
|
Force the rebuild of OneAPI Level Zero library.
|
||||||
|
|
||||||
Note about the --force-foo options:
|
Note about the --force-foo options:
|
||||||
* They obviously only have an effect if those libraries are built by this script
|
* They obviously only have an effect if those libraries are built by this script
|
||||||
(i.e. if there is no available and satisfactory package)!
|
(i.e. if there is no available and satisfactory package)!
|
||||||
@@ -351,7 +360,10 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS:
|
|||||||
Unconditionally skip Universal Scene Description installation/building.
|
Unconditionally skip Universal Scene Description installation/building.
|
||||||
|
|
||||||
--skip-xr-openxr
|
--skip-xr-openxr
|
||||||
Unconditionally skip OpenXR-SDK installation/building.\""
|
Unconditionally skip OpenXR-SDK installation/building.
|
||||||
|
|
||||||
|
--skip-level-zero=<ver>
|
||||||
|
Unconditionally skip OneAPI Level Zero installation/building.\""
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
# Main Vars
|
# Main Vars
|
||||||
@@ -453,7 +465,7 @@ TBB_VERSION="2020"
|
|||||||
TBB_VERSION_SHORT="2020"
|
TBB_VERSION_SHORT="2020"
|
||||||
TBB_VERSION_UPDATE="_U3" # Used for source packages...
|
TBB_VERSION_UPDATE="_U3" # Used for source packages...
|
||||||
TBB_VERSION_MIN="2018"
|
TBB_VERSION_MIN="2018"
|
||||||
TBB_VERSION_MEX="2022"
|
TBB_VERSION_MEX="2021" # 2021 introduces 'oneTBB', which has lots of compatibility breakage with previous versions
|
||||||
TBB_FORCE_BUILD=false
|
TBB_FORCE_BUILD=false
|
||||||
TBB_FORCE_REBUILD=false
|
TBB_FORCE_REBUILD=false
|
||||||
TBB_SKIP=false
|
TBB_SKIP=false
|
||||||
@@ -539,10 +551,10 @@ ALEMBIC_FORCE_BUILD=false
|
|||||||
ALEMBIC_FORCE_REBUILD=false
|
ALEMBIC_FORCE_REBUILD=false
|
||||||
ALEMBIC_SKIP=false
|
ALEMBIC_SKIP=false
|
||||||
|
|
||||||
USD_VERSION="21.02"
|
USD_VERSION="22.03"
|
||||||
USD_VERSION_SHORT="21.02"
|
USD_VERSION_SHORT="22.03"
|
||||||
USD_VERSION_MIN="20.05"
|
USD_VERSION_MIN="20.05"
|
||||||
USD_VERSION_MEX="22.00"
|
USD_VERSION_MEX="23.00"
|
||||||
USD_FORCE_BUILD=false
|
USD_FORCE_BUILD=false
|
||||||
USD_FORCE_REBUILD=false
|
USD_FORCE_REBUILD=false
|
||||||
USD_SKIP=false
|
USD_SKIP=false
|
||||||
@@ -555,7 +567,7 @@ OPENCOLLADA_FORCE_BUILD=false
|
|||||||
OPENCOLLADA_FORCE_REBUILD=false
|
OPENCOLLADA_FORCE_REBUILD=false
|
||||||
OPENCOLLADA_SKIP=false
|
OPENCOLLADA_SKIP=false
|
||||||
|
|
||||||
EMBREE_VERSION="3.13.3"
|
EMBREE_VERSION="3.13.4"
|
||||||
EMBREE_VERSION_SHORT="3.13"
|
EMBREE_VERSION_SHORT="3.13"
|
||||||
EMBREE_VERSION_MIN="3.13"
|
EMBREE_VERSION_MIN="3.13"
|
||||||
EMBREE_VERSION_MEX="4.0"
|
EMBREE_VERSION_MEX="4.0"
|
||||||
@@ -573,14 +585,13 @@ OIDN_SKIP=false
|
|||||||
|
|
||||||
ISPC_VERSION="1.17.0"
|
ISPC_VERSION="1.17.0"
|
||||||
|
|
||||||
FFMPEG_VERSION="4.4"
|
LEVEL_ZERO_VERSION="1.7.15"
|
||||||
FFMPEG_VERSION_SHORT="4.4"
|
LEVEL_ZERO_VERSION_SHORT="1.7"
|
||||||
FFMPEG_VERSION_MIN="3.0"
|
LEVEL_ZERO_VERSION_MIN="1.7"
|
||||||
FFMPEG_VERSION_MEX="5.0"
|
LEVEL_ZERO_VERSION_MEX="2.0"
|
||||||
FFMPEG_FORCE_BUILD=false
|
LEVEL_ZERO_FORCE_BUILD=false
|
||||||
FFMPEG_FORCE_REBUILD=false
|
LEVEL_ZERO_FORCE_REBUILD=false
|
||||||
FFMPEG_SKIP=false
|
LEVEL_ZERO_SKIP=false
|
||||||
_ffmpeg_list_sep=";"
|
|
||||||
|
|
||||||
XR_OPENXR_VERSION="1.0.22"
|
XR_OPENXR_VERSION="1.0.22"
|
||||||
XR_OPENXR_VERSION_SHORT="1.0"
|
XR_OPENXR_VERSION_SHORT="1.0"
|
||||||
@@ -590,6 +601,15 @@ XR_OPENXR_FORCE_BUILD=false
|
|||||||
XR_OPENXR_FORCE_REBUILD=false
|
XR_OPENXR_FORCE_REBUILD=false
|
||||||
XR_OPENXR_SKIP=false
|
XR_OPENXR_SKIP=false
|
||||||
|
|
||||||
|
FFMPEG_VERSION="5.0"
|
||||||
|
FFMPEG_VERSION_SHORT="5.0"
|
||||||
|
FFMPEG_VERSION_MIN="4.0"
|
||||||
|
FFMPEG_VERSION_MEX="6.0"
|
||||||
|
FFMPEG_FORCE_BUILD=false
|
||||||
|
FFMPEG_FORCE_REBUILD=false
|
||||||
|
FFMPEG_SKIP=false
|
||||||
|
_ffmpeg_list_sep=";"
|
||||||
|
|
||||||
# FFMPEG optional libs.
|
# FFMPEG optional libs.
|
||||||
VORBIS_USE=false
|
VORBIS_USE=false
|
||||||
VORBIS_DEV=""
|
VORBIS_DEV=""
|
||||||
@@ -615,9 +635,6 @@ MP3LAME_DEV=""
|
|||||||
OPENJPEG_USE=false
|
OPENJPEG_USE=false
|
||||||
OPENJPEG_DEV=""
|
OPENJPEG_DEV=""
|
||||||
|
|
||||||
# Whether to use system GLEW or not (OpenSubDiv needs recent glew to work).
|
|
||||||
NO_SYSTEM_GLEW=false
|
|
||||||
|
|
||||||
# Switch to english language, else some things (like check_package_DEB()) won't work!
|
# Switch to english language, else some things (like check_package_DEB()) won't work!
|
||||||
LANG_BACK=$LANG
|
LANG_BACK=$LANG
|
||||||
LANG=""
|
LANG=""
|
||||||
@@ -781,6 +798,12 @@ while true; do
|
|||||||
XR_OPENXR_VERSION_SHORT=$XR_OPENXR_VERSION
|
XR_OPENXR_VERSION_SHORT=$XR_OPENXR_VERSION
|
||||||
shift; shift; continue
|
shift; shift; continue
|
||||||
;;
|
;;
|
||||||
|
--ver-level-zero)
|
||||||
|
LEVEL_ZERO_VERSION="$2"
|
||||||
|
LEVEL_ZERO_VERSION_MIN=$LEVEL_ZERO_VERSION
|
||||||
|
LEVEL_ZERO_VERSION_SHORT=$LEVEL_ZERO_VERSION
|
||||||
|
shift; shift; continue
|
||||||
|
;;
|
||||||
--build-all)
|
--build-all)
|
||||||
PYTHON_FORCE_BUILD=true
|
PYTHON_FORCE_BUILD=true
|
||||||
BOOST_FORCE_BUILD=true
|
BOOST_FORCE_BUILD=true
|
||||||
@@ -800,6 +823,7 @@ while true; do
|
|||||||
ALEMBIC_FORCE_BUILD=true
|
ALEMBIC_FORCE_BUILD=true
|
||||||
USD_FORCE_BUILD=true
|
USD_FORCE_BUILD=true
|
||||||
XR_OPENXR_FORCE_BUILD=true
|
XR_OPENXR_FORCE_BUILD=true
|
||||||
|
LEVEL_ZERO_FORCE_BUILD=true
|
||||||
shift; continue
|
shift; continue
|
||||||
;;
|
;;
|
||||||
--build-python)
|
--build-python)
|
||||||
@@ -857,6 +881,9 @@ while true; do
|
|||||||
--build-xr-openxr)
|
--build-xr-openxr)
|
||||||
XR_OPENXR_FORCE_BUILD=true; shift; continue
|
XR_OPENXR_FORCE_BUILD=true; shift; continue
|
||||||
;;
|
;;
|
||||||
|
--build-level-zero)
|
||||||
|
LEVEL_ZERO_FORCE_BUILD=true; shift; continue
|
||||||
|
;;
|
||||||
--force-all)
|
--force-all)
|
||||||
PYTHON_FORCE_REBUILD=true
|
PYTHON_FORCE_REBUILD=true
|
||||||
BOOST_FORCE_REBUILD=true
|
BOOST_FORCE_REBUILD=true
|
||||||
@@ -876,6 +903,7 @@ while true; do
|
|||||||
ALEMBIC_FORCE_REBUILD=true
|
ALEMBIC_FORCE_REBUILD=true
|
||||||
USD_FORCE_REBUILD=true
|
USD_FORCE_REBUILD=true
|
||||||
XR_OPENXR_FORCE_REBUILD=true
|
XR_OPENXR_FORCE_REBUILD=true
|
||||||
|
LEVEL_ZERO_FORCE_REBUILD=true
|
||||||
shift; continue
|
shift; continue
|
||||||
;;
|
;;
|
||||||
--force-python)
|
--force-python)
|
||||||
@@ -933,6 +961,9 @@ while true; do
|
|||||||
--force-xr-openxr)
|
--force-xr-openxr)
|
||||||
XR_OPENXR_FORCE_REBUILD=true; shift; continue
|
XR_OPENXR_FORCE_REBUILD=true; shift; continue
|
||||||
;;
|
;;
|
||||||
|
--force-level-zero)
|
||||||
|
LEVEL_ZERO_FORCE_REBUILD=true; shift; continue
|
||||||
|
;;
|
||||||
--skip-python)
|
--skip-python)
|
||||||
PYTHON_SKIP=true; shift; continue
|
PYTHON_SKIP=true; shift; continue
|
||||||
;;
|
;;
|
||||||
@@ -987,6 +1018,9 @@ while true; do
|
|||||||
--skip-xr-openxr)
|
--skip-xr-openxr)
|
||||||
XR_OPENXR_SKIP=true; shift; continue
|
XR_OPENXR_SKIP=true; shift; continue
|
||||||
;;
|
;;
|
||||||
|
--skip-level-zero)
|
||||||
|
LEVEL_ZERO_SKIP=true; shift; continue
|
||||||
|
;;
|
||||||
--)
|
--)
|
||||||
# no more arguments to parse
|
# no more arguments to parse
|
||||||
break
|
break
|
||||||
@@ -1128,14 +1162,16 @@ OIDN_SOURCE=( "https://github.com/OpenImageDenoise/oidn/releases/download/v${OID
|
|||||||
|
|
||||||
ISPC_BINARY=( "https://github.com/ispc/ispc/releases/download/v${ISPC_VERSION}/ispc-v${ISPC_VERSION}-linux.tar.gz" )
|
ISPC_BINARY=( "https://github.com/ispc/ispc/releases/download/v${ISPC_VERSION}/ispc-v${ISPC_VERSION}-linux.tar.gz" )
|
||||||
|
|
||||||
FFMPEG_SOURCE=( "http://ffmpeg.org/releases/ffmpeg-$FFMPEG_VERSION.tar.bz2" )
|
|
||||||
|
|
||||||
XR_OPENXR_USE_REPO=false
|
XR_OPENXR_USE_REPO=false
|
||||||
XR_OPENXR_SOURCE=("https://github.com/KhronosGroup/OpenXR-SDK/archive/release-${XR_OPENXR_VERSION}.tar.gz")
|
XR_OPENXR_SOURCE=("https://github.com/KhronosGroup/OpenXR-SDK/archive/release-${XR_OPENXR_VERSION}.tar.gz")
|
||||||
XR_OPENXR_SOURCE_REPO=("https://github.com/KhronosGroup/OpenXR-SDK.git")
|
XR_OPENXR_SOURCE_REPO=("https://github.com/KhronosGroup/OpenXR-SDK.git")
|
||||||
XR_OPENXR_REPO_UID="458984d7f59d1ae6dc1b597d94b02e4f7132eaba"
|
XR_OPENXR_REPO_UID="458984d7f59d1ae6dc1b597d94b02e4f7132eaba"
|
||||||
XR_OPENXR_REPO_BRANCH="master"
|
XR_OPENXR_REPO_BRANCH="master"
|
||||||
|
|
||||||
|
LEVEL_ZERO_SOURCE=("https://github.com/oneapi-src/level-zero/archive/refs/tags/v${LEVEL_ZERO_VERSION}.tar.gz")
|
||||||
|
|
||||||
|
FFMPEG_SOURCE=( "http://ffmpeg.org/releases/ffmpeg-$FFMPEG_VERSION.tar.bz2" )
|
||||||
|
|
||||||
# C++11 is required now
|
# C++11 is required now
|
||||||
CXXFLAGS_BACK=$CXXFLAGS
|
CXXFLAGS_BACK=$CXXFLAGS
|
||||||
CXXFLAGS="$CXXFLAGS -std=c++11"
|
CXXFLAGS="$CXXFLAGS -std=c++11"
|
||||||
@@ -1154,7 +1190,7 @@ Those libraries should be available as packages in all recent distributions (opt
|
|||||||
* libx11, libxcursor, libxi, libxrandr, libxinerama (and other libx... as needed).
|
* libx11, libxcursor, libxi, libxrandr, libxinerama (and other libx... as needed).
|
||||||
* libwayland-client0, libwayland-cursor0, libwayland-egl1, libxkbcommon0, libdbus-1-3, libegl1 (Wayland)
|
* libwayland-client0, libwayland-cursor0, libwayland-egl1, libxkbcommon0, libdbus-1-3, libegl1 (Wayland)
|
||||||
* libsqlite3, libzstd, libbz2, libssl, libfftw3, libxml2, libtinyxml, yasm, libyaml-cpp, flex.
|
* libsqlite3, libzstd, libbz2, libssl, libfftw3, libxml2, libtinyxml, yasm, libyaml-cpp, flex.
|
||||||
* libsdl2, libglew, libpugixml, libpotrace, [libgmp], [libglewmx], fontconfig, [libharu/libhpdf].\""
|
* libsdl2, libglew, libpugixml, libpotrace, [libgmp], fontconfig, [libharu/libhpdf].\""
|
||||||
|
|
||||||
DEPS_SPECIFIC_INFO="\"BUILDABLE DEPENDENCIES:
|
DEPS_SPECIFIC_INFO="\"BUILDABLE DEPENDENCIES:
|
||||||
|
|
||||||
@@ -1187,7 +1223,8 @@ You may also want to build them yourself (optional ones are [between brackets]):
|
|||||||
* [OpenImageDenoise $OIDN_VERSION] (from $OIDN_SOURCE).
|
* [OpenImageDenoise $OIDN_VERSION] (from $OIDN_SOURCE).
|
||||||
* [Alembic $ALEMBIC_VERSION] (from $ALEMBIC_SOURCE).
|
* [Alembic $ALEMBIC_VERSION] (from $ALEMBIC_SOURCE).
|
||||||
* [Universal Scene Description $USD_VERSION] (from $USD_SOURCE).
|
* [Universal Scene Description $USD_VERSION] (from $USD_SOURCE).
|
||||||
* [OpenXR-SDK $XR_OPENXR_VERSION] (from $XR_OPENXR_SOURCE).\""
|
* [OpenXR-SDK $XR_OPENXR_VERSION] (from $XR_OPENXR_SOURCE).
|
||||||
|
* [OneAPI Level Zero $LEVEL_ZERO_VERSION] (from $LEVEL_ZERO_SOURCE).\""
|
||||||
|
|
||||||
if [ "$DO_SHOW_DEPS" = true ]; then
|
if [ "$DO_SHOW_DEPS" = true ]; then
|
||||||
PRINT ""
|
PRINT ""
|
||||||
@@ -1647,7 +1684,7 @@ compile_TBB() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# To be changed each time we make edits that would modify the compiled result!
|
# To be changed each time we make edits that would modify the compiled result!
|
||||||
tbb_magic=0
|
tbb_magic=1
|
||||||
_init_tbb
|
_init_tbb
|
||||||
|
|
||||||
# Force having own builds for the dependencies.
|
# Force having own builds for the dependencies.
|
||||||
@@ -2656,14 +2693,13 @@ compile_OSD() {
|
|||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
|
|
||||||
if [ -d $INST/tbb ]; then
|
|
||||||
cmake_d="$cmake_d $cmake_d -D TBB_LOCATION=$INST/tbb"
|
|
||||||
fi
|
|
||||||
cmake_d="-D CMAKE_BUILD_TYPE=Release"
|
cmake_d="-D CMAKE_BUILD_TYPE=Release"
|
||||||
|
if [ -d $INST/tbb ]; then
|
||||||
|
cmake_d="$cmake_d -D TBB_LOCATION=$INST/tbb"
|
||||||
|
fi
|
||||||
cmake_d="$cmake_d -D CMAKE_INSTALL_PREFIX=$_inst"
|
cmake_d="$cmake_d -D CMAKE_INSTALL_PREFIX=$_inst"
|
||||||
# ptex is only needed when nicholas bishop is ready
|
|
||||||
cmake_d="$cmake_d -D NO_PTEX=1"
|
cmake_d="$cmake_d -D NO_PTEX=1"
|
||||||
cmake_d="$cmake_d -D NO_CLEW=1 -D NO_CUDA=1 -D NO_OPENCL=1"
|
cmake_d="$cmake_d -D NO_CLEW=1 -D NO_CUDA=1 -D NO_OPENCL=1 -D NO_GLEW=1"
|
||||||
# maya plugin, docs, tutorials, regression tests and examples are not needed
|
# maya plugin, docs, tutorials, regression tests and examples are not needed
|
||||||
cmake_d="$cmake_d -D NO_MAYA=1 -D NO_DOC=1 -D NO_TUTORIALS=1 -D NO_REGRESSION=1 -DNO_EXAMPLES=1"
|
cmake_d="$cmake_d -D NO_MAYA=1 -D NO_DOC=1 -D NO_TUTORIALS=1 -D NO_REGRESSION=1 -DNO_EXAMPLES=1"
|
||||||
|
|
||||||
@@ -3286,7 +3322,7 @@ compile_Embree() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# To be changed each time we make edits that would modify the compiled results!
|
# To be changed each time we make edits that would modify the compiled results!
|
||||||
embree_magic=10
|
embree_magic=11
|
||||||
_init_embree
|
_init_embree
|
||||||
|
|
||||||
# Force having own builds for the dependencies.
|
# Force having own builds for the dependencies.
|
||||||
@@ -3346,7 +3382,7 @@ compile_Embree() {
|
|||||||
|
|
||||||
cmake_d="$cmake_d -D EMBREE_TASKING_SYSTEM=TBB"
|
cmake_d="$cmake_d -D EMBREE_TASKING_SYSTEM=TBB"
|
||||||
if [ -d $INST/tbb ]; then
|
if [ -d $INST/tbb ]; then
|
||||||
make_d="$make_d EMBREE_TBB_ROOT=$INST/tbb"
|
cmake_d="$cmake_d -D EMBREE_TBB_ROOT=$INST/tbb"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cmake $cmake_d ../
|
cmake $cmake_d ../
|
||||||
@@ -3485,7 +3521,7 @@ compile_OIDN() {
|
|||||||
install_ISPC
|
install_ISPC
|
||||||
|
|
||||||
# To be changed each time we make edits that would modify the compiled results!
|
# To be changed each time we make edits that would modify the compiled results!
|
||||||
oidn_magic=9
|
oidn_magic=10
|
||||||
_init_oidn
|
_init_oidn
|
||||||
|
|
||||||
# Force having own builds for the dependencies.
|
# Force having own builds for the dependencies.
|
||||||
@@ -3541,7 +3577,7 @@ compile_OIDN() {
|
|||||||
cmake_d="$cmake_d -D ISPC_DIR_HINT=$_ispc_path_bin"
|
cmake_d="$cmake_d -D ISPC_DIR_HINT=$_ispc_path_bin"
|
||||||
|
|
||||||
if [ -d $INST/tbb ]; then
|
if [ -d $INST/tbb ]; then
|
||||||
make_d="$make_d TBB_ROOT=$INST/tbb"
|
cmake_d="$cmake_d -D TBB_ROOT=$INST/tbb"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cmake $cmake_d ../
|
cmake $cmake_d ../
|
||||||
@@ -3822,6 +3858,103 @@ compile_XR_OpenXR_SDK() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------------------
|
||||||
|
# Build OneAPI Level Zero library.
|
||||||
|
|
||||||
|
_init_level_zero() {
|
||||||
|
_src=$SRC/level-zero-$LEVEL_ZERO_VERSION
|
||||||
|
_git=false
|
||||||
|
_inst=$INST/level-zero-$LEVEL_ZERO_VERSION_SHORT
|
||||||
|
_inst_shortcut=$INST/level-zero
|
||||||
|
}
|
||||||
|
|
||||||
|
_update_deps_level_zero() {
|
||||||
|
:
|
||||||
|
}
|
||||||
|
|
||||||
|
clean_Level_Zero() {
|
||||||
|
_init_level_zero
|
||||||
|
if [ -d $_inst ]; then
|
||||||
|
# Force rebuilding the dependencies if needed.
|
||||||
|
_update_deps_level_zero false true
|
||||||
|
fi
|
||||||
|
_clean
|
||||||
|
}
|
||||||
|
|
||||||
|
compile_Level_Zero() {
|
||||||
|
if [ "$NO_BUILD" = true ]; then
|
||||||
|
WARNING "--no-build enabled, Level Zero will not be compiled!"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
# To be changed each time we make edits that would modify the compiled result!
|
||||||
|
level_zero_magic=1
|
||||||
|
_init_level_zero
|
||||||
|
|
||||||
|
# Force having own builds for the dependencies.
|
||||||
|
_update_deps_level_zero true false
|
||||||
|
|
||||||
|
# Clean install if needed!
|
||||||
|
magic_compile_check level-zero-$LEVEL_ZERO_VERSION $level_zero_magic
|
||||||
|
if [ $? -eq 1 -o "$LEVEL_ZERO_FORCE_REBUILD" = true ]; then
|
||||||
|
clean_Level_Zero
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d $_inst ]; then
|
||||||
|
INFO "Building Level-Zero-$LEVEL_ZERO_VERSION"
|
||||||
|
|
||||||
|
# Force rebuilding the dependencies.
|
||||||
|
_update_deps_level_zero true true
|
||||||
|
|
||||||
|
prepare_inst
|
||||||
|
|
||||||
|
if [ ! -d $_src ]; then
|
||||||
|
mkdir -p $SRC
|
||||||
|
|
||||||
|
download LEVEL_ZERO_SOURCE[@] "$_src.tar.gz"
|
||||||
|
INFO "Unpacking Level-Zero-$LEVEL_ZERO_VERSION"
|
||||||
|
tar -C $SRC -xf $_src.tar.gz
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $_src
|
||||||
|
|
||||||
|
# Always refresh the whole build!
|
||||||
|
if [ -d build ]; then
|
||||||
|
rm -rf build
|
||||||
|
fi
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
|
||||||
|
# Keep flags in sync with LEVEL_ZERO_EXTRA_ARGS in level-zero.cmake!
|
||||||
|
cmake_d="-D CMAKE_BUILD_TYPE=Release"
|
||||||
|
cmake_d="$cmake_d -D CMAKE_INSTALL_PREFIX=$_inst"
|
||||||
|
|
||||||
|
cmake $cmake_d ..
|
||||||
|
|
||||||
|
make -j$THREADS && make install
|
||||||
|
make clean
|
||||||
|
|
||||||
|
if [ ! -d $_inst ]; then
|
||||||
|
ERROR "Level-Zero-$LEVEL_ZERO_VERSION failed to compile, exiting"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
magic_compile_set level-zero-$LEVEL_ZERO_VERSION $level_zero_magic
|
||||||
|
|
||||||
|
cd $CWD
|
||||||
|
INFO "Done compiling Level-Zero-$LEVEL_ZERO_VERSION!"
|
||||||
|
else
|
||||||
|
INFO "Own Level-Zero-$LEVEL_ZERO_VERSION is up to date, nothing to do!"
|
||||||
|
INFO "If you want to force rebuild of this lib, use the --force-level-zero option."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d $_inst ]; then
|
||||||
|
_create_inst_shortcut
|
||||||
|
fi
|
||||||
|
run_ldconfig "level-zero"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
# Install on DEB-like
|
# Install on DEB-like
|
||||||
|
|
||||||
@@ -3925,7 +4058,6 @@ install_DEB() {
|
|||||||
libopenal-dev libglew-dev yasm \
|
libopenal-dev libglew-dev yasm \
|
||||||
libsdl2-dev libfftw3-dev patch bzip2 libxml2-dev libtinyxml-dev libjemalloc-dev \
|
libsdl2-dev libfftw3-dev patch bzip2 libxml2-dev libtinyxml-dev libjemalloc-dev \
|
||||||
libgmp-dev libpugixml-dev libpotrace-dev libhpdf-dev libzstd-dev libpystring-dev"
|
libgmp-dev libpugixml-dev libpotrace-dev libhpdf-dev libzstd-dev libpystring-dev"
|
||||||
# libglewmx-dev (broken in deb testing currently...)
|
|
||||||
|
|
||||||
VORBIS_USE=true
|
VORBIS_USE=true
|
||||||
OGG_USE=true
|
OGG_USE=true
|
||||||
@@ -4034,7 +4166,7 @@ install_DEB() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check cmake/glew versions and disable features for older distros.
|
# Check cmake version and disable features for older distros.
|
||||||
# This is so Blender can at least compile.
|
# This is so Blender can at least compile.
|
||||||
PRINT ""
|
PRINT ""
|
||||||
_cmake=`get_package_version_DEB cmake`
|
_cmake=`get_package_version_DEB cmake`
|
||||||
@@ -4051,28 +4183,6 @@ install_DEB() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PRINT ""
|
|
||||||
_glew=`get_package_version_DEB libglew-dev`
|
|
||||||
if [ -z $_glew ]; then
|
|
||||||
# Stupid virtual package in Ubuntu 12.04 doesn't show version number...
|
|
||||||
_glew=`apt-cache showpkg libglew-dev|tail -n1|awk '{print $2}'|sed 's/-.*//'`
|
|
||||||
fi
|
|
||||||
version_ge $_glew "1.9.0"
|
|
||||||
if [ $? -eq 1 ]; then
|
|
||||||
version_ge $_glew "1.7.0"
|
|
||||||
if [ $? -eq 1 ]; then
|
|
||||||
WARNING "OpenSubdiv disabled because GLEW-$_glew is not enough"
|
|
||||||
WARNING "Blender will not use system GLEW library"
|
|
||||||
OSD_SKIP=true
|
|
||||||
NO_SYSTEM_GLEW=true
|
|
||||||
else
|
|
||||||
WARNING "OpenSubdiv will compile with GLEW-$_glew but with limited capability"
|
|
||||||
WARNING "Blender will not use system GLEW library"
|
|
||||||
NO_SYSTEM_GLEW=true
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
PRINT ""
|
PRINT ""
|
||||||
_do_compile_python=false
|
_do_compile_python=false
|
||||||
if [ "$PYTHON_SKIP" = true ]; then
|
if [ "$PYTHON_SKIP" = true ]; then
|
||||||
@@ -4458,6 +4568,18 @@ install_DEB() {
|
|||||||
PRINT ""
|
PRINT ""
|
||||||
compile_XR_OpenXR_SDK
|
compile_XR_OpenXR_SDK
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PRINT ""
|
||||||
|
if [ "$LEVEL_ZERO_SKIP" = true ]; then
|
||||||
|
WARNING "Skipping Level Zero installation, as requested..."
|
||||||
|
elif [ "$LEVEL_ZERO_FORCE_BUILD" = true ]; then
|
||||||
|
INFO "Forced Level Zero building, as requested..."
|
||||||
|
compile_Level_Zero
|
||||||
|
else
|
||||||
|
# No package currently!
|
||||||
|
PRINT ""
|
||||||
|
compile_Level_Zero
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -5144,6 +5266,18 @@ install_RPM() {
|
|||||||
# No package currently!
|
# No package currently!
|
||||||
compile_XR_OpenXR_SDK
|
compile_XR_OpenXR_SDK
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PRINT ""
|
||||||
|
if [ "$LEVEL_ZERO_SKIP" = true ]; then
|
||||||
|
WARNING "Skipping Level Zero installation, as requested..."
|
||||||
|
elif [ "$LEVEL_ZERO_FORCE_BUILD" = true ]; then
|
||||||
|
INFO "Forced Level Zero building, as requested..."
|
||||||
|
compile_Level_Zero
|
||||||
|
else
|
||||||
|
# No package currently!
|
||||||
|
PRINT ""
|
||||||
|
compile_Level_Zero
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -5721,6 +5855,18 @@ install_ARCH() {
|
|||||||
# No package currently!
|
# No package currently!
|
||||||
compile_XR_OpenXR_SDK
|
compile_XR_OpenXR_SDK
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PRINT ""
|
||||||
|
if [ "$LEVEL_ZERO_SKIP" = true ]; then
|
||||||
|
WARNING "Skipping Level Zero installation, as requested..."
|
||||||
|
elif [ "$LEVEL_ZERO_FORCE_BUILD" = true ]; then
|
||||||
|
INFO "Forced Level Zero building, as requested..."
|
||||||
|
compile_Level_Zero
|
||||||
|
else
|
||||||
|
# No package currently!
|
||||||
|
PRINT ""
|
||||||
|
compile_Level_Zero
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -5895,6 +6041,14 @@ install_OTHER() {
|
|||||||
INFO "Forced OpenXR-SDK building, as requested..."
|
INFO "Forced OpenXR-SDK building, as requested..."
|
||||||
compile_XR_OpenXR_SDK
|
compile_XR_OpenXR_SDK
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PRINT ""
|
||||||
|
if [ "$LEVEL_ZERO_SKIP" = true ]; then
|
||||||
|
WARNING "Skipping Level Zero installation, as requested..."
|
||||||
|
elif [ "$LEVEL_ZERO_FORCE_BUILD" = true ]; then
|
||||||
|
INFO "Forced Level Zero building, as requested..."
|
||||||
|
compile_Level_Zero
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
@@ -6109,12 +6263,6 @@ print_info() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$NO_SYSTEM_GLEW" = true ]; then
|
|
||||||
_1="-D WITH_SYSTEM_GLEW=OFF"
|
|
||||||
PRINT " $_1"
|
|
||||||
_buildargs="$_buildargs $_1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$FFMPEG_SKIP" = false ]; then
|
if [ "$FFMPEG_SKIP" = false ]; then
|
||||||
_1="-D WITH_CODEC_FFMPEG=ON"
|
_1="-D WITH_CODEC_FFMPEG=ON"
|
||||||
PRINT " $_1"
|
PRINT " $_1"
|
||||||
@@ -6137,6 +6285,18 @@ print_info() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Not yet available in Blender.
|
||||||
|
#~ if [ "$LEVEL_ZERO_SKIP" = false ]; then
|
||||||
|
#~ _1="-D WITH_LEVEL_ZERO=ON"
|
||||||
|
#~ PRINT " $_1"
|
||||||
|
#~ _buildargs="$_buildargs $_1"
|
||||||
|
#~ if [ -d $INST/level-zero ]; then
|
||||||
|
#~ _1="-D LEVEL_ZERO_ROOT_DIR=$INST/level-zero"
|
||||||
|
#~ PRINT " $_1"
|
||||||
|
#~ _buildargs="$_buildargs $_1"
|
||||||
|
#~ fi
|
||||||
|
#~ fi
|
||||||
|
|
||||||
PRINT ""
|
PRINT ""
|
||||||
PRINT "Or even simpler, just run (in your blender-source dir):"
|
PRINT "Or even simpler, just run (in your blender-source dir):"
|
||||||
PRINT " make -j$THREADS BUILD_CMAKE_ARGS=\"$_buildargs\""
|
PRINT " make -j$THREADS BUILD_CMAKE_ARGS=\"$_buildargs\""
|
||||||
|
@@ -0,0 +1,32 @@
|
|||||||
|
# SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
# Copyright Contributors to the OpenColorIO Project.
|
||||||
|
|
||||||
|
project(pystring)
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.10)
|
||||||
|
|
||||||
|
set(HEADERS
|
||||||
|
pystring.h
|
||||||
|
)
|
||||||
|
|
||||||
|
set(SOURCES
|
||||||
|
pystring.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(${PROJECT_NAME} STATIC ${HEADERS} ${SOURCES})
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
set(pystring_CXX_FLAGS "${pystring_CXX_FLAGS} -fPIC")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||||
|
COMPILE_FLAGS "${PLATFORM_COMPILE_FLAGS} ${pystring_CXX_FLAGS}"
|
||||||
|
PUBLIC_HEADER "${HEADERS}"
|
||||||
|
)
|
||||||
|
|
||||||
|
install(TARGETS ${PROJECT_NAME}
|
||||||
|
RUNTIME DESTINATION bin
|
||||||
|
LIBRARY DESTINATION lib
|
||||||
|
ARCHIVE DESTINATION lib
|
||||||
|
PUBLIC_HEADER DESTINATION include/pystring
|
||||||
|
)
|
@@ -1,26 +0,0 @@
|
|||||||
--- CmakeLists.txt.orig 2015-12-31 03:46:41 -0700
|
|
||||||
+++ CMakeLists.txt 2016-04-01 13:28:33 -0600
|
|
||||||
@@ -22,3 +22,10 @@
|
|
||||||
|
|
||||||
add_executable(testcuew cuewTest/cuewTest.c include/cuew.h)
|
|
||||||
target_link_libraries(testcuew cuew ${CMAKE_DL_LIBS})
|
|
||||||
+
|
|
||||||
+install(TARGETS cuew
|
|
||||||
+ LIBRARY DESTINATION lib COMPONENT libraries
|
|
||||||
+ ARCHIVE DESTINATION lib/static COMPONENT libraries)
|
|
||||||
+
|
|
||||||
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/cuew.h
|
|
||||||
+ DESTINATION include/)
|
|
||||||
\ No newline at end of file
|
|
||||||
--- src/cuew.c 2016-04-01 13:41:43 -0600
|
|
||||||
+++ src/cuew.c 2016-04-01 13:41:11 -0600
|
|
||||||
@@ -15,7 +15,9 @@
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
|
||||||
+#if _MSC_VER < 1900
|
|
||||||
# define snprintf _snprintf
|
|
||||||
+#endif
|
|
||||||
# define popen _popen
|
|
||||||
# define pclose _pclose
|
|
||||||
# define _CRT_SECURE_NO_WARNINGS
|
|
54
build_files/build_environment/patches/dpcpp.diff
Normal file
54
build_files/build_environment/patches/dpcpp.diff
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
diff -Naur external_dpcpp.orig/sycl/source/CMakeLists.txt external_dpcpp/sycl/source/CMakeLists.txt
|
||||||
|
--- external_dpcpp.orig/sycl/source/CMakeLists.txt 2022-05-20 04:19:45.067771362 +0000
|
||||||
|
+++ external_dpcpp/sycl/source/CMakeLists.txt 2022-05-20 04:21:49.708025048 +0000
|
||||||
|
@@ -66,10 +66,10 @@
|
||||||
|
target_compile_options(${LIB_OBJ_NAME} PUBLIC
|
||||||
|
-fvisibility=hidden -fvisibility-inlines-hidden)
|
||||||
|
set(linker_script "${CMAKE_CURRENT_SOURCE_DIR}/ld-version-script.txt")
|
||||||
|
- set(abi_linker_script "${CMAKE_CURRENT_SOURCE_DIR}/abi_replacements_linux.txt")
|
||||||
|
- target_link_libraries(
|
||||||
|
- ${LIB_NAME} PRIVATE "-Wl,${abi_linker_script}")
|
||||||
|
- set_target_properties(${LIB_NAME} PROPERTIES LINK_DEPENDS ${abi_linker_script})
|
||||||
|
+# set(abi_linker_script "${CMAKE_CURRENT_SOURCE_DIR}/abi_replacements_linux.txt")
|
||||||
|
+# target_link_libraries(
|
||||||
|
+# ${LIB_NAME} PRIVATE "-Wl,${abi_linker_script}")
|
||||||
|
+# set_target_properties(${LIB_NAME} PROPERTIES LINK_DEPENDS ${abi_linker_script})
|
||||||
|
target_link_libraries(
|
||||||
|
${LIB_NAME} PRIVATE "-Wl,--version-script=${linker_script}")
|
||||||
|
set_target_properties(${LIB_NAME} PROPERTIES LINK_DEPENDS ${linker_script})
|
||||||
|
diff -Naur llvm-sycl-nightly-20220501.orig\opencl/CMakeLists.txt llvm-sycl-nightly-20220501\opencl/CMakeLists.txt
|
||||||
|
--- llvm-sycl-nightly-20220501.orig/opencl/CMakeLists.txt 2022-04-29 13:47:11 -0600
|
||||||
|
+++ llvm-sycl-nightly-20220501/opencl/CMakeLists.txt 2022-05-21 15:25:06 -0600
|
||||||
|
@@ -11,6 +11,11 @@
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
+# Blender code below is determined to use FetchContent_Declare
|
||||||
|
+# temporarily allow it (but feed it our downloaded tarball
|
||||||
|
+# in the OpenCL_HEADERS variable
|
||||||
|
+set(FETCHCONTENT_FULLY_DISCONNECTED OFF)
|
||||||
|
+
|
||||||
|
# Repo URLs
|
||||||
|
|
||||||
|
set(OCL_HEADERS_REPO
|
||||||
|
@@ -77,5 +82,6 @@
|
||||||
|
|
||||||
|
FetchContent_MakeAvailable(ocl-icd)
|
||||||
|
add_library(OpenCL-ICD ALIAS OpenCL)
|
||||||
|
+set(FETCHCONTENT_FULLY_DISCONNECTED ON)
|
||||||
|
|
||||||
|
add_subdirectory(opencl-aot)
|
||||||
|
diff -Naur llvm-sycl-nightly-20220208.orig/libdevice/cmake/modules/SYCLLibdevice.cmake llvm-sycl-nightly-20220208/libdevice/cmake/modules/SYCLLibdevice.cmake
|
||||||
|
--- llvm-sycl-nightly-20220208.orig/libdevice/cmake/modules/SYCLLibdevice.cmake 2022-02-08 09:17:24 -0700
|
||||||
|
+++ llvm-sycl-nightly-20220208/libdevice/cmake/modules/SYCLLibdevice.cmake 2022-05-24 11:35:51 -0600
|
||||||
|
@@ -36,7 +36,9 @@
|
||||||
|
add_custom_target(libsycldevice-obj)
|
||||||
|
add_custom_target(libsycldevice-spv)
|
||||||
|
|
||||||
|
-add_custom_target(libsycldevice DEPENDS
|
||||||
|
+# Blender: add ALL here otherwise this target will not build
|
||||||
|
+# and cause an error due to missing files during the install phase.
|
||||||
|
+add_custom_target(libsycldevice ALL DEPENDS
|
||||||
|
libsycldevice-obj
|
||||||
|
libsycldevice-spv)
|
||||||
|
|
@@ -1,14 +1,37 @@
|
|||||||
diff -Naur orig/common/sys/platform.h external_embree/common/sys/platform.h
|
diff -Naur org/kernels/rtcore_config.h.in embree-3.13.4/kernels/rtcore_config.h.in
|
||||||
--- orig/common/sys/platform.h 2020-05-13 23:08:53 -0600
|
--- org/kernels/rtcore_config.h.in 2022-06-14 22:13:52 -0600
|
||||||
+++ external_embree/common/sys/platform.h 2020-06-13 17:40:26 -0600
|
+++ embree-3.13.4/kernels/rtcore_config.h.in 2022-06-24 15:20:12 -0600
|
||||||
@@ -84,8 +84,8 @@
|
@@ -14,6 +14,7 @@
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
#cmakedefine01 EMBREE_MIN_WIDTH
|
||||||
|
#define RTC_MIN_WIDTH EMBREE_MIN_WIDTH
|
||||||
|
|
||||||
#ifdef __WIN32__
|
+#cmakedefine EMBREE_STATIC_LIB
|
||||||
-#define dll_export __declspec(dllexport)
|
#cmakedefine EMBREE_API_NAMESPACE
|
||||||
-#define dll_import __declspec(dllimport)
|
|
||||||
+#define dll_export
|
#if defined(EMBREE_API_NAMESPACE)
|
||||||
+#define dll_import
|
diff --git a/kernels/CMakeLists.txt b/kernels/CMakeLists.txt
|
||||||
#else
|
index 7c2f43d..106b1d5 100644
|
||||||
#define dll_export __attribute__ ((visibility ("default")))
|
--- a/kernels/CMakeLists.txt
|
||||||
#define dll_import
|
+++ b/kernels/CMakeLists.txt
|
||||||
|
@@ -201,6 +201,12 @@ embree_files(EMBREE_LIBRARY_FILES_AVX512 ${AVX512})
|
||||||
|
#message("AVX2: ${EMBREE_LIBRARY_FILES_AVX2}")
|
||||||
|
#message("AVX512: ${EMBREE_LIBRARY_FILES_AVX512}")
|
||||||
|
|
||||||
|
+# Bundle Neon2x into the main static library.
|
||||||
|
+IF(EMBREE_ISA_NEON2X AND EMBREE_STATIC_LIB)
|
||||||
|
+ LIST(APPEND EMBREE_LIBRARY_FILES ${EMBREE_LIBRARY_FILES_AVX2})
|
||||||
|
+ LIST(REMOVE_DUPLICATES EMBREE_LIBRARY_FILES)
|
||||||
|
+ENDIF()
|
||||||
|
+
|
||||||
|
# replaces all .cpp files with a dummy file that includes that .cpp file
|
||||||
|
# this is to work around an ICC name mangling issue related to lambda functions under windows
|
||||||
|
MACRO (CreateISADummyFiles list isa)
|
||||||
|
@@ -277,7 +283,7 @@ IF (EMBREE_ISA_AVX AND EMBREE_LIBRARY_FILES_AVX)
|
||||||
|
ENDIF()
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
-IF (EMBREE_ISA_AVX2 AND EMBREE_LIBRARY_FILES_AVX2)
|
||||||
|
+IF (EMBREE_ISA_AVX2 AND EMBREE_LIBRARY_FILES_AVX2 AND NOT (EMBREE_ISA_NEON2X AND EMBREE_STATIC_LIB))
|
||||||
|
DISABLE_STACK_PROTECTOR_FOR_INTERSECTORS(${EMBREE_LIBRARY_FILES_AVX2})
|
||||||
|
ADD_LIBRARY(embree_avx2 STATIC ${EMBREE_LIBRARY_FILES_AVX2})
|
||||||
|
TARGET_LINK_LIBRARIES(embree_avx2 PRIVATE tasking)
|
||||||
|
15
build_files/build_environment/patches/flex.diff
Normal file
15
build_files/build_environment/patches/flex.diff
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index c6f12d644..3c977a4e3 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -25,8 +25,10 @@
|
||||||
|
# autoconf requirements and initialization
|
||||||
|
|
||||||
|
AC_INIT([the fast lexical analyser generator],[2.6.4],[flex-help@lists.sourceforge.net],[flex])
|
||||||
|
+AC_PREREQ([2.60])
|
||||||
|
AC_CONFIG_SRCDIR([src/scan.l])
|
||||||
|
AC_CONFIG_AUX_DIR([build-aux])
|
||||||
|
+AC_USE_SYSTEM_EXTENSIONS
|
||||||
|
LT_INIT
|
||||||
|
AM_INIT_AUTOMAKE([1.15 -Wno-portability foreign std-options dist-lzip parallel-tests subdir-objects])
|
||||||
|
AC_CONFIG_HEADER([src/config.h])
|
44
build_files/build_environment/patches/igc_opencl_clang.diff
Normal file
44
build_files/build_environment/patches/igc_opencl_clang.diff
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
diff -Naur external_igc_opencl_clang.orig/CMakeLists.txt external_igc_opencl_clang/CMakeLists.txt
|
||||||
|
--- external_igc_opencl_clang.orig/CMakeLists.txt 2022-03-16 05:51:10 -0600
|
||||||
|
+++ external_igc_opencl_clang/CMakeLists.txt 2022-05-23 10:40:09 -0600
|
||||||
|
@@ -126,22 +126,24 @@
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-
|
||||||
|
- set(SPIRV_BASE_REVISION llvm_release_110)
|
||||||
|
- set(TARGET_BRANCH "ocl-open-110")
|
||||||
|
- get_filename_component(LLVM_MONOREPO_DIR ${LLVM_SOURCE_DIR} DIRECTORY)
|
||||||
|
- set(LLVM_PATCHES_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/patches/llvm
|
||||||
|
- ${CMAKE_CURRENT_SOURCE_DIR}/patches/clang)
|
||||||
|
- apply_patches(${LLVM_MONOREPO_DIR}
|
||||||
|
- "${LLVM_PATCHES_DIRS}"
|
||||||
|
- ${LLVM_BASE_REVISION}
|
||||||
|
- ${TARGET_BRANCH}
|
||||||
|
- ret)
|
||||||
|
- apply_patches(${SPIRV_SOURCE_DIR}
|
||||||
|
- ${CMAKE_CURRENT_SOURCE_DIR}/patches/spirv
|
||||||
|
- ${SPIRV_BASE_REVISION}
|
||||||
|
- ${TARGET_BRANCH}
|
||||||
|
- ret)
|
||||||
|
+ #
|
||||||
|
+ # Blender: Why apply these manually in igc.cmake
|
||||||
|
+ #
|
||||||
|
+ #set(SPIRV_BASE_REVISION llvm_release_110)
|
||||||
|
+ #set(TARGET_BRANCH "ocl-open-110")
|
||||||
|
+ #get_filename_component(LLVM_MONOREPO_DIR ${LLVM_SOURCE_DIR} DIRECTORY)
|
||||||
|
+ #set(LLVM_PATCHES_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/patches/llvm
|
||||||
|
+ # ${CMAKE_CURRENT_SOURCE_DIR}/patches/clang)
|
||||||
|
+ #apply_patches(${LLVM_MONOREPO_DIR}
|
||||||
|
+ # "${LLVM_PATCHES_DIRS}"
|
||||||
|
+ # ${LLVM_BASE_REVISION}
|
||||||
|
+ # ${TARGET_BRANCH}
|
||||||
|
+ # ret)
|
||||||
|
+ #apply_patches(${SPIRV_SOURCE_DIR}
|
||||||
|
+ # ${CMAKE_CURRENT_SOURCE_DIR}/patches/spirv
|
||||||
|
+ # ${SPIRV_BASE_REVISION}
|
||||||
|
+ # ${TARGET_BRANCH}
|
||||||
|
+ # ret)
|
||||||
|
endif(NOT USE_PREBUILT_LLVM)
|
||||||
|
|
||||||
|
#
|
@@ -1,43 +1,6 @@
|
|||||||
diff -Naur external_ispc/CMakeLists.txt external_ispc_fixed/CMakeLists.txt
|
diff -Naur ispc-1.17.0.org/CMakeLists.txt ispc-1.17.0/CMakeLists.txt
|
||||||
--- external_ispc/CMakeLists.txt 2020-04-23 17:29:06 -0600
|
--- ispc-1.17.0.org/CMakeLists.txt 2022-01-15 01:35:15 -0700
|
||||||
+++ external_ispc_fixed/CMakeLists.txt 2020-05-05 09:01:09 -0600
|
+++ ispc-1.17.0/CMakeLists.txt 2022-02-12 12:44:24 -0700
|
||||||
@@ -389,7 +389,7 @@
|
|
||||||
|
|
||||||
# Link against Clang libraries
|
|
||||||
foreach(clangLib ${CLANG_LIBRARY_LIST})
|
|
||||||
- find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS})
|
|
||||||
+ find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIR})
|
|
||||||
list(APPEND CLANG_LIBRARY_FULL_PATH_LIST ${${clangLib}Path})
|
|
||||||
endforeach()
|
|
||||||
target_link_libraries(${PROJECT_NAME} ${CLANG_LIBRARY_FULL_PATH_LIST})
|
|
||||||
diff -Naur orig/CMakeLists.txt external_ispc/CMakeLists.txt
|
|
||||||
--- orig/CMakeLists.txt 2020-05-05 09:19:11 -0600
|
|
||||||
+++ external_ispc/CMakeLists.txt 2020-05-05 09:26:44 -0600
|
|
||||||
@@ -333,7 +333,7 @@
|
|
||||||
|
|
||||||
# Include directories
|
|
||||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
|
||||||
- ${LLVM_INCLUDE_DIRS}
|
|
||||||
+ ${LLVM_INCLUDE_DIRS} ${CLANG_INCLUDE_DIRS}
|
|
||||||
${GENX_DEPS_DIR}/include
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR})
|
|
||||||
diff -Naur orig/cmake/GenerateBuiltins.cmake.txt external_ispc/cmake/GenerateBuiltins.cmake.txt
|
|
||||||
+++ orig/cmake/GenerateBuiltins.cmake 2020-05-25 13:32:40.830803821 +0200
|
|
||||||
+++ external_ispc/cmake/GenerateBuiltins.cmake 2020-05-25 13:32:40.830803821 +0200
|
|
||||||
@@ -97,6 +97,8 @@
|
|
||||||
|
|
||||||
if ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "x86")
|
|
||||||
set(target_arch "i686")
|
|
||||||
+ # Blender: disable 32bit due to build issues on Linux and being unnecessary.
|
|
||||||
+ set(SKIP ON)
|
|
||||||
elseif ("${bit}" STREQUAL "64" AND ${arch} STREQUAL "x86")
|
|
||||||
set(target_arch "x86_64")
|
|
||||||
elseif ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "arm")
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index 46a8db8..f53beef 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -36,8 +36,12 @@
|
@@ -36,8 +36,12 @@
|
||||||
cmake_minimum_required(VERSION 3.13)
|
cmake_minimum_required(VERSION 3.13)
|
||||||
|
|
||||||
@@ -53,7 +16,25 @@ index 46a8db8..f53beef 100644
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PROJECT_NAME ispc)
|
set(PROJECT_NAME ispc)
|
||||||
@@ -412,6 +416,29 @@ else()
|
@@ -443,7 +447,7 @@
|
||||||
|
|
||||||
|
# Include directories
|
||||||
|
target_include_directories(${PROJECT_NAME} PRIVATE
|
||||||
|
- ${LLVM_INCLUDE_DIRS}
|
||||||
|
+ ${LLVM_INCLUDE_DIRS} ${CLANG_INCLUDE_DIRS}
|
||||||
|
${XE_DEPS_DIR}/include
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR})
|
||||||
|
@@ -507,7 +511,7 @@
|
||||||
|
|
||||||
|
# Link against Clang libraries
|
||||||
|
foreach(clangLib ${CLANG_LIBRARY_LIST})
|
||||||
|
- find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS})
|
||||||
|
+ find_library(${clangLib}Path NAMES ${clangLib} HINTS ${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIR})
|
||||||
|
list(APPEND CLANG_LIBRARY_FULL_PATH_LIST ${${clangLib}Path})
|
||||||
|
endforeach()
|
||||||
|
target_link_libraries(${PROJECT_NAME} ${CLANG_LIBRARY_FULL_PATH_LIST})
|
||||||
|
@@ -546,6 +550,29 @@
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -83,3 +64,15 @@ index 46a8db8..f53beef 100644
|
|||||||
# Build target for utility checking host ISA
|
# Build target for utility checking host ISA
|
||||||
if (ISPC_INCLUDE_UTILS)
|
if (ISPC_INCLUDE_UTILS)
|
||||||
add_executable(check_isa "")
|
add_executable(check_isa "")
|
||||||
|
diff -Naur ispc-1.17.0.org/cmake/GenerateBuiltins.cmake ispc-1.17.0/cmake/GenerateBuiltins.cmake
|
||||||
|
--- ispc-1.17.0.org/cmake/GenerateBuiltins.cmake 2022-01-15 01:35:15 -0700
|
||||||
|
+++ ispc-1.17.0/cmake/GenerateBuiltins.cmake 2022-02-12 12:44:24 -0700
|
||||||
|
@@ -124,6 +124,8 @@
|
||||||
|
|
||||||
|
if ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "x86")
|
||||||
|
set(target_arch "i686")
|
||||||
|
+ # Blender: disable 32bit due to build issues on Linux and being unnecessary.
|
||||||
|
+ set(SKIP ON)
|
||||||
|
elseif ("${bit}" STREQUAL "64" AND ${arch} STREQUAL "x86")
|
||||||
|
set(target_arch "x86_64")
|
||||||
|
elseif ("${bit}" STREQUAL "32" AND ${arch} STREQUAL "arm")
|
||||||
|
13
build_files/build_environment/patches/level-zero.diff
Normal file
13
build_files/build_environment/patches/level-zero.diff
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
diff -Naur external_levelzero_org/CMakeLists.txt external_levelzero/CMakeLists.txt
|
||||||
|
--- external_levelzero_org/CMakeLists.txt 2022-03-07 13:22:11 -0700
|
||||||
|
+++ external_levelzero/CMakeLists.txt 2022-03-29 13:22:15 -0600
|
||||||
|
@@ -77,9 +77,6 @@
|
||||||
|
#enabling Control Flow Guard
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /guard:cf")
|
||||||
|
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /guard:cf")
|
||||||
|
- # enable Spectre Mitigation
|
||||||
|
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Qspectre")
|
||||||
|
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /Qspectre")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#CXX compiler support
|
@@ -1,374 +0,0 @@
|
|||||||
Index: nanovdb/nanovdb/NanoVDB.h
|
|
||||||
===================================================================
|
|
||||||
--- a/nanovdb/nanovdb/NanoVDB.h (revision 62751)
|
|
||||||
+++ b/nanovdb/nanovdb/NanoVDB.h (working copy)
|
|
||||||
@@ -152,8 +152,8 @@
|
|
||||||
|
|
||||||
#endif // __CUDACC_RTC__
|
|
||||||
|
|
||||||
-#ifdef __CUDACC__
|
|
||||||
-// Only define __hostdev__ when using NVIDIA CUDA compiler
|
|
||||||
+#if defined(__CUDACC__) || defined(__HIP__)
|
|
||||||
+// Only define __hostdev__ when using NVIDIA CUDA or HIP compiler
|
|
||||||
#define __hostdev__ __host__ __device__
|
|
||||||
#else
|
|
||||||
#define __hostdev__
|
|
||||||
@@ -461,7 +461,7 @@
|
|
||||||
/// Maximum floating-point values
|
|
||||||
template<typename T>
|
|
||||||
struct Maximum;
|
|
||||||
-#ifdef __CUDA_ARCH__
|
|
||||||
+#if defined(__CUDA_ARCH__) || defined(__HIP__)
|
|
||||||
template<>
|
|
||||||
struct Maximum<int>
|
|
||||||
{
|
|
||||||
@@ -1006,10 +1006,10 @@
|
|
||||||
using Vec3i = Vec3<int>;
|
|
||||||
|
|
||||||
/// @brief Return a single precision floating-point vector of this coordinate
|
|
||||||
-Vec3f Coord::asVec3s() const { return Vec3f(float(mVec[0]), float(mVec[1]), float(mVec[2])); }
|
|
||||||
+inline __hostdev__ Vec3f Coord::asVec3s() const { return Vec3f(float(mVec[0]), float(mVec[1]), float(mVec[2])); }
|
|
||||||
|
|
||||||
/// @brief Return a double precision floating-point vector of this coordinate
|
|
||||||
-Vec3d Coord::asVec3d() const { return Vec3d(double(mVec[0]), double(mVec[1]), double(mVec[2])); }
|
|
||||||
+inline __hostdev__ Vec3d Coord::asVec3d() const { return Vec3d(double(mVec[0]), double(mVec[1]), double(mVec[2])); }
|
|
||||||
|
|
||||||
// ----------------------------> Vec4 <--------------------------------------
|
|
||||||
|
|
||||||
@@ -1820,7 +1820,7 @@
|
|
||||||
}; // Map
|
|
||||||
|
|
||||||
template<typename Mat4T>
|
|
||||||
-void Map::set(const Mat4T& mat, const Mat4T& invMat, double taper)
|
|
||||||
+__hostdev__ void Map::set(const Mat4T& mat, const Mat4T& invMat, double taper)
|
|
||||||
{
|
|
||||||
float * mf = mMatF, *vf = mVecF;
|
|
||||||
float* mif = mInvMatF;
|
|
||||||
@@ -2170,7 +2170,7 @@
|
|
||||||
}; // Class Grid
|
|
||||||
|
|
||||||
template<typename TreeT>
|
|
||||||
-int Grid<TreeT>::findBlindDataForSemantic(GridBlindDataSemantic semantic) const
|
|
||||||
+__hostdev__ int Grid<TreeT>::findBlindDataForSemantic(GridBlindDataSemantic semantic) const
|
|
||||||
{
|
|
||||||
for (uint32_t i = 0, n = blindDataCount(); i < n; ++i)
|
|
||||||
if (blindMetaData(i).mSemantic == semantic)
|
|
||||||
@@ -2328,7 +2328,7 @@
|
|
||||||
}; // Tree class
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
-void Tree<RootT>::extrema(ValueType& min, ValueType& max) const
|
|
||||||
+__hostdev__ void Tree<RootT>::extrema(ValueType& min, ValueType& max) const
|
|
||||||
{
|
|
||||||
min = this->root().valueMin();
|
|
||||||
max = this->root().valueMax();
|
|
||||||
@@ -2336,7 +2336,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<typename NodeT>
|
|
||||||
-const NodeT* Tree<RootT>::getNode(uint32_t i) const
|
|
||||||
+__hostdev__ const NodeT* Tree<RootT>::getNode(uint32_t i) const
|
|
||||||
{
|
|
||||||
static_assert(is_same<TreeNodeT<NodeT::LEVEL>, NodeT>::value, "Tree::getNode: unvalid node type");
|
|
||||||
NANOVDB_ASSERT(i < DataType::mCount[NodeT::LEVEL]);
|
|
||||||
@@ -2345,7 +2345,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<int LEVEL>
|
|
||||||
-const typename TreeNode<Tree<RootT>, LEVEL>::type* Tree<RootT>::getNode(uint32_t i) const
|
|
||||||
+__hostdev__ const typename TreeNode<Tree<RootT>, LEVEL>::type* Tree<RootT>::getNode(uint32_t i) const
|
|
||||||
{
|
|
||||||
NANOVDB_ASSERT(i < DataType::mCount[LEVEL]);
|
|
||||||
return reinterpret_cast<const TreeNodeT<LEVEL>*>(reinterpret_cast<const uint8_t*>(this) + DataType::mBytes[LEVEL]) + i;
|
|
||||||
@@ -2353,7 +2353,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<typename NodeT>
|
|
||||||
-NodeT* Tree<RootT>::getNode(uint32_t i)
|
|
||||||
+__hostdev__ NodeT* Tree<RootT>::getNode(uint32_t i)
|
|
||||||
{
|
|
||||||
static_assert(is_same<TreeNodeT<NodeT::LEVEL>, NodeT>::value, "Tree::getNode: invalid node type");
|
|
||||||
NANOVDB_ASSERT(i < DataType::mCount[NodeT::LEVEL]);
|
|
||||||
@@ -2362,7 +2362,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<int LEVEL>
|
|
||||||
-typename TreeNode<Tree<RootT>, LEVEL>::type* Tree<RootT>::getNode(uint32_t i)
|
|
||||||
+__hostdev__ typename TreeNode<Tree<RootT>, LEVEL>::type* Tree<RootT>::getNode(uint32_t i)
|
|
||||||
{
|
|
||||||
NANOVDB_ASSERT(i < DataType::mCount[LEVEL]);
|
|
||||||
return reinterpret_cast<TreeNodeT<LEVEL>*>(reinterpret_cast<uint8_t*>(this) + DataType::mBytes[LEVEL]) + i;
|
|
||||||
@@ -2370,7 +2370,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<typename NodeT>
|
|
||||||
-uint32_t Tree<RootT>::getNodeID(const NodeT& node) const
|
|
||||||
+__hostdev__ uint32_t Tree<RootT>::getNodeID(const NodeT& node) const
|
|
||||||
{
|
|
||||||
static_assert(is_same<TreeNodeT<NodeT::LEVEL>, NodeT>::value, "Tree::getNodeID: invalid node type");
|
|
||||||
const NodeT* first = reinterpret_cast<const NodeT*>(reinterpret_cast<const uint8_t*>(this) + DataType::mBytes[NodeT::LEVEL]);
|
|
||||||
@@ -2380,7 +2380,7 @@
|
|
||||||
|
|
||||||
template<typename RootT>
|
|
||||||
template<typename NodeT>
|
|
||||||
-uint32_t Tree<RootT>::getLinearOffset(const NodeT& node) const
|
|
||||||
+__hostdev__ uint32_t Tree<RootT>::getLinearOffset(const NodeT& node) const
|
|
||||||
{
|
|
||||||
return this->getNodeID(node) + DataType::mPFSum[NodeT::LEVEL];
|
|
||||||
}
|
|
||||||
@@ -3366,7 +3366,7 @@
|
|
||||||
}; // LeafNode class
|
|
||||||
|
|
||||||
template<typename ValueT, typename CoordT, template<uint32_t> class MaskT, uint32_t LOG2DIM>
|
|
||||||
-inline void LeafNode<ValueT, CoordT, MaskT, LOG2DIM>::updateBBox()
|
|
||||||
+inline __hostdev__ void LeafNode<ValueT, CoordT, MaskT, LOG2DIM>::updateBBox()
|
|
||||||
{
|
|
||||||
static_assert(LOG2DIM == 3, "LeafNode::updateBBox: only supports LOGDIM = 3!");
|
|
||||||
if (!this->isActive()) return;
|
|
||||||
Index: nanovdb/nanovdb/util/SampleFromVoxels.h
|
|
||||||
===================================================================
|
|
||||||
--- a/nanovdb/nanovdb/util/SampleFromVoxels.h (revision 62751)
|
|
||||||
+++ b/nanovdb/nanovdb/util/SampleFromVoxels.h (working copy)
|
|
||||||
@@ -22,7 +22,7 @@
|
|
||||||
#define NANOVDB_SAMPLE_FROM_VOXELS_H_HAS_BEEN_INCLUDED
|
|
||||||
|
|
||||||
// Only define __hostdev__ when compiling as NVIDIA CUDA
|
|
||||||
-#ifdef __CUDACC__
|
|
||||||
+#if defined(__CUDACC__) || defined(__HIP__)
|
|
||||||
#define __hostdev__ __host__ __device__
|
|
||||||
#else
|
|
||||||
#include <cmath> // for floor
|
|
||||||
@@ -136,7 +136,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const Vec3T& xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const Vec3T& xyz) const
|
|
||||||
{
|
|
||||||
const CoordT ijk = Round<CoordT>(xyz);
|
|
||||||
if (ijk != mPos) {
|
|
||||||
@@ -147,7 +147,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const CoordT& ijk) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const CoordT& ijk) const
|
|
||||||
{
|
|
||||||
if (ijk != mPos) {
|
|
||||||
mPos = ijk;
|
|
||||||
@@ -158,7 +158,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, false>::operator()(const Vec3T& xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, false>::operator()(const Vec3T& xyz) const
|
|
||||||
{
|
|
||||||
return mAcc.getValue(Round<CoordT>(xyz));
|
|
||||||
}
|
|
||||||
@@ -195,7 +195,7 @@
|
|
||||||
}; // TrilinearSamplerBase
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-void TrilinearSampler<TreeOrAccT>::stencil(CoordT& ijk, ValueT (&v)[2][2][2]) const
|
|
||||||
+__hostdev__ void TrilinearSampler<TreeOrAccT>::stencil(CoordT& ijk, ValueT (&v)[2][2][2]) const
|
|
||||||
{
|
|
||||||
v[0][0][0] = mAcc.getValue(ijk); // i, j, k
|
|
||||||
|
|
||||||
@@ -224,7 +224,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType TrilinearSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType TrilinearSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
|
||||||
{
|
|
||||||
#if 0
|
|
||||||
auto lerp = [](ValueT a, ValueT b, ValueT w){ return fma(w, b-a, a); };// = w*(b-a) + a
|
|
||||||
@@ -239,7 +239,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-Vec3T<typename TreeOrAccT::ValueType> TrilinearSampler<TreeOrAccT>::gradient(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
|
||||||
+__hostdev__ Vec3T<typename TreeOrAccT::ValueType> TrilinearSampler<TreeOrAccT>::gradient(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
|
||||||
{
|
|
||||||
static_assert(std::is_floating_point<ValueT>::value, "TrilinearSampler::gradient requires a floating-point type");
|
|
||||||
#if 0
|
|
||||||
@@ -270,7 +270,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-bool TrilinearSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[2][2][2])
|
|
||||||
+__hostdev__ bool TrilinearSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[2][2][2])
|
|
||||||
{
|
|
||||||
static_assert(std::is_floating_point<ValueT>::value, "TrilinearSampler::zeroCrossing requires a floating-point type");
|
|
||||||
const bool less = v[0][0][0] < ValueT(0);
|
|
||||||
@@ -363,7 +363,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
this->cache(xyz);
|
|
||||||
return BaseT::sample(xyz, mVal);
|
|
||||||
@@ -370,7 +370,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(const CoordT &ijk) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(const CoordT &ijk) const
|
|
||||||
{
|
|
||||||
return ijk == mPos ? mVal[0][0][0] : BaseT::mAcc.getValue(ijk);
|
|
||||||
}
|
|
||||||
@@ -377,7 +377,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, true>::gradient(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, true>::gradient(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
this->cache(xyz);
|
|
||||||
return BaseT::gradient(xyz, mVal);
|
|
||||||
@@ -393,7 +393,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-void SampleFromVoxels<TreeOrAccT, 1, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 1, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
{
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
if (ijk != mPos) {
|
|
||||||
@@ -406,7 +406,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
ValueT val[2][2][2];
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
@@ -418,7 +418,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
auto lerp = [](ValueT a, ValueT b, RealT w) { return a + ValueT(w) * (b - a); };
|
|
||||||
|
|
||||||
@@ -463,7 +463,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-inline Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, false>::gradient(Vec3T<RealT> xyz) const
|
|
||||||
+inline __hostdev__ Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, false>::gradient(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
ValueT val[2][2][2];
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
@@ -473,7 +473,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-bool SampleFromVoxels<TreeOrAccT, 1, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ bool SampleFromVoxels<TreeOrAccT, 1, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
ValueT val[2][2][2];
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
@@ -510,7 +510,7 @@
|
|
||||||
}; // TriquadraticSamplerBase
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-void TriquadraticSampler<TreeOrAccT>::stencil(const CoordT &ijk, ValueT (&v)[3][3][3]) const
|
|
||||||
+__hostdev__ void TriquadraticSampler<TreeOrAccT>::stencil(const CoordT &ijk, ValueT (&v)[3][3][3]) const
|
|
||||||
{
|
|
||||||
CoordT p(ijk[0] - 1, 0, 0);
|
|
||||||
for (int dx = 0; dx < 3; ++dx, ++p[0]) {
|
|
||||||
@@ -526,7 +526,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType TriquadraticSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[3][3][3])
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType TriquadraticSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[3][3][3])
|
|
||||||
{
|
|
||||||
auto kernel = [](const ValueT* value, double weight)->ValueT {
|
|
||||||
return weight * (weight * (0.5f * (value[0] + value[2]) - value[1]) +
|
|
||||||
@@ -545,7 +545,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-bool TriquadraticSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[3][3][3])
|
|
||||||
+__hostdev__ bool TriquadraticSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[3][3][3])
|
|
||||||
{
|
|
||||||
static_assert(std::is_floating_point<ValueT>::value, "TrilinearSampler::zeroCrossing requires a floating-point type");
|
|
||||||
const bool less = v[0][0][0] < ValueT(0);
|
|
||||||
@@ -624,7 +624,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
this->cache(xyz);
|
|
||||||
return BaseT::sample(xyz, mVal);
|
|
||||||
@@ -631,7 +631,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(const CoordT &ijk) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(const CoordT &ijk) const
|
|
||||||
{
|
|
||||||
return ijk == mPos ? mVal[1][1][1] : BaseT::mAcc.getValue(ijk);
|
|
||||||
}
|
|
||||||
@@ -646,7 +646,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-void SampleFromVoxels<TreeOrAccT, 2, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 2, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
{
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
if (ijk != mPos) {
|
|
||||||
@@ -657,7 +657,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, false>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
ValueT val[3][3][3];
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
@@ -667,7 +667,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-bool SampleFromVoxels<TreeOrAccT, 2, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ bool SampleFromVoxels<TreeOrAccT, 2, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
ValueT val[3][3][3];
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
@@ -710,7 +710,7 @@
|
|
||||||
}; // TricubicSampler
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
-void TricubicSampler<TreeOrAccT>::stencil(const CoordT& ijk, ValueT (&C)[64]) const
|
|
||||||
+__hostdev__ void TricubicSampler<TreeOrAccT>::stencil(const CoordT& ijk, ValueT (&C)[64]) const
|
|
||||||
{
|
|
||||||
auto fetch = [&](int i, int j, int k) -> ValueT& { return C[((i + 1) << 4) + ((j + 1) << 2) + k + 1]; };
|
|
||||||
|
|
||||||
@@ -929,7 +929,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 3, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 3, true>::operator()(Vec3T<RealT> xyz) const
|
|
||||||
{
|
|
||||||
this->cache(xyz);
|
|
||||||
return BaseT::sample(xyz, mC);
|
|
||||||
@@ -937,7 +937,7 @@
|
|
||||||
|
|
||||||
template<typename TreeOrAccT>
|
|
||||||
template<typename RealT, template<typename...> class Vec3T>
|
|
||||||
-void SampleFromVoxels<TreeOrAccT, 3, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 3, true>::cache(Vec3T<RealT>& xyz) const
|
|
||||||
{
|
|
||||||
CoordT ijk = Floor<CoordT>(xyz);
|
|
||||||
if (ijk != mPos) {
|
|
@@ -1,35 +1,16 @@
|
|||||||
diff -Naur openvdb-8.0.0/cmake/FindIlmBase.cmake openvdb/cmake/FindIlmBase.cmake
|
diff -ur openvdb-9.0.0/cmake/FindTBB.cmake openvdb/cmake/FindTBB.cmake
|
||||||
--- openvdb-8.0.0/cmake/FindIlmBase.cmake 2020-12-24 10:13:14 -0700
|
--- openvdb-9.0.0/cmake/FindTBB.cmake 2021-10-30 03:55:40.000000000 +0100
|
||||||
+++ openvdb/cmake/FindIlmBase.cmake 2021-02-05 12:07:49 -0700
|
+++ openvdb/cmake/FindTBB.cmake 2022-03-31 11:33:15.592329750 +0100
|
||||||
@@ -217,6 +217,12 @@
|
@@ -252,7 +252,8 @@
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".lib")
|
set(_TBB_LIB_NAME "${_TBB_LIB_NAME}${TBB_DEBUG_SUFFIX}")
|
||||||
endif()
|
endif()
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES "${_IlmBase_Version_Suffix}.lib")
|
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
- find_library(Tbb_${COMPONENT}_LIBRARY_${BUILD_TYPE} ${_TBB_LIB_NAME}
|
||||||
+ "_s.lib"
|
+ find_library(Tbb_${COMPONENT}_LIBRARY_${BUILD_TYPE}
|
||||||
+ )
|
+ NAMES ${_TBB_LIB_NAME} ${_TBB_LIB_NAME}_static
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
${_FIND_TBB_ADDITIONAL_OPTIONS}
|
||||||
+ "_s_d.lib"
|
PATHS ${_TBB_LIBRARYDIR_SEARCH_DIRS}
|
||||||
+ )
|
PATH_SUFFIXES ${CMAKE_INSTALL_LIBDIR} lib64 lib
|
||||||
else()
|
|
||||||
if(ILMBASE_USE_STATIC_LIBS)
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
|
||||||
diff -Naur openvdb-8.0.0/cmake/FindOpenEXR.cmake openvdb/cmake/FindOpenEXR.cmake
|
|
||||||
--- openvdb-8.0.0/cmake/FindOpenEXR.cmake 2020-12-24 10:13:14 -0700
|
|
||||||
+++ openvdb/cmake/FindOpenEXR.cmake 2021-02-05 12:23:39 -0700
|
|
||||||
@@ -210,6 +210,12 @@
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".lib")
|
|
||||||
endif()
|
|
||||||
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES "${_OpenEXR_Version_Suffix}.lib")
|
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
+ "_s.lib"
|
|
||||||
+ )
|
|
||||||
+ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES
|
|
||||||
+ "_s_d.lib"
|
|
||||||
+ )
|
|
||||||
else()
|
|
||||||
if(OPENEXR_USE_STATIC_LIBS)
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
|
||||||
diff -Naur openvdb-8.0.0/openvdb/openvdb/CMakeLists.txt openvdb/openvdb/openvdb/CMakeLists.txt
|
diff -Naur openvdb-8.0.0/openvdb/openvdb/CMakeLists.txt openvdb/openvdb/openvdb/CMakeLists.txt
|
||||||
--- openvdb-8.0.0/openvdb/openvdb/CMakeLists.txt 2020-12-24 10:13:14 -0700
|
--- openvdb-8.0.0/openvdb/openvdb/CMakeLists.txt 2020-12-24 10:13:14 -0700
|
||||||
+++ openvdb/openvdb/openvdb/CMakeLists.txt 2021-02-05 11:18:33 -0700
|
+++ openvdb/openvdb/openvdb/CMakeLists.txt 2021-02-05 11:18:33 -0700
|
||||||
@@ -118,3 +99,321 @@ diff -Naur openvdb-8.0.0/openvdb/openvdb/version.rc.in openvdb/openvdb/openvdb/v
|
|||||||
+
|
+
|
||||||
+ END
|
+ END
|
||||||
+END
|
+END
|
||||||
|
diff --git a/nanovdb/nanovdb/NanoVDB.h b/nanovdb/nanovdb/NanoVDB.h
|
||||||
|
index cc2e54b77..703d2eabc 100644
|
||||||
|
--- a/nanovdb/nanovdb/NanoVDB.h
|
||||||
|
+++ b/nanovdb/nanovdb/NanoVDB.h
|
||||||
|
@@ -161,8 +161,8 @@ typedef unsigned long long uint64_t;
|
||||||
|
|
||||||
|
#endif // __CUDACC_RTC__
|
||||||
|
|
||||||
|
-#ifdef __CUDACC__
|
||||||
|
-// Only define __hostdev__ when using NVIDIA CUDA compiler
|
||||||
|
+#if defined(__CUDACC__) || defined(__HIP__)
|
||||||
|
+// Only define __hostdev__ when using NVIDIA CUDA or HIP compiler
|
||||||
|
#define __hostdev__ __host__ __device__
|
||||||
|
#else
|
||||||
|
#define __hostdev__
|
||||||
|
@@ -611,7 +611,7 @@ struct Delta<double>
|
||||||
|
/// Maximum floating-point values
|
||||||
|
template<typename T>
|
||||||
|
struct Maximum;
|
||||||
|
-#ifdef __CUDA_ARCH__
|
||||||
|
+#if defined(__CUDA_ARCH__) || defined(__HIP__)
|
||||||
|
template<>
|
||||||
|
struct Maximum<int>
|
||||||
|
{
|
||||||
|
@@ -1176,10 +1176,10 @@ using Vec3f = Vec3<float>;
|
||||||
|
using Vec3i = Vec3<int>;
|
||||||
|
|
||||||
|
/// @brief Return a single precision floating-point vector of this coordinate
|
||||||
|
-Vec3f Coord::asVec3s() const { return Vec3f(float(mVec[0]), float(mVec[1]), float(mVec[2])); }
|
||||||
|
+__hostdev__ inline Vec3f Coord::asVec3s() const { return Vec3f(float(mVec[0]), float(mVec[1]), float(mVec[2])); }
|
||||||
|
|
||||||
|
/// @brief Return a double precision floating-point vector of this coordinate
|
||||||
|
-Vec3d Coord::asVec3d() const { return Vec3d(double(mVec[0]), double(mVec[1]), double(mVec[2])); }
|
||||||
|
+__hostdev__ inline Vec3d Coord::asVec3d() const { return Vec3d(double(mVec[0]), double(mVec[1]), double(mVec[2])); }
|
||||||
|
|
||||||
|
// ----------------------------> Vec4 <--------------------------------------
|
||||||
|
|
||||||
|
@@ -2042,7 +2042,7 @@ struct Map
|
||||||
|
}; // Map
|
||||||
|
|
||||||
|
template<typename Mat4T>
|
||||||
|
-void Map::set(const Mat4T& mat, const Mat4T& invMat, double taper)
|
||||||
|
+__hostdev__ void Map::set(const Mat4T& mat, const Mat4T& invMat, double taper)
|
||||||
|
{
|
||||||
|
float * mf = mMatF, *vf = mVecF;
|
||||||
|
float* mif = mInvMatF;
|
||||||
|
@@ -2486,7 +2486,7 @@ class Grid : private GridData
|
||||||
|
}; // Class Grid
|
||||||
|
|
||||||
|
template<typename TreeT>
|
||||||
|
-int Grid<TreeT>::findBlindDataForSemantic(GridBlindDataSemantic semantic) const
|
||||||
|
+__hostdev__ int Grid<TreeT>::findBlindDataForSemantic(GridBlindDataSemantic semantic) const
|
||||||
|
{
|
||||||
|
for (uint32_t i = 0, n = this->blindDataCount(); i < n; ++i)
|
||||||
|
if (this->blindMetaData(i).mSemantic == semantic)
|
||||||
|
@@ -2671,7 +2671,7 @@ class Tree : private TreeData<RootT::LEVEL>
|
||||||
|
}; // Tree class
|
||||||
|
|
||||||
|
template<typename RootT>
|
||||||
|
-void Tree<RootT>::extrema(ValueType& min, ValueType& max) const
|
||||||
|
+__hostdev__ void Tree<RootT>::extrema(ValueType& min, ValueType& max) const
|
||||||
|
{
|
||||||
|
min = this->root().minimum();
|
||||||
|
max = this->root().maximum();
|
||||||
|
@@ -3880,7 +3880,7 @@ class LeafNode : private LeafData<BuildT, CoordT, MaskT, Log2Dim>
|
||||||
|
}; // LeafNode class
|
||||||
|
|
||||||
|
template<typename ValueT, typename CoordT, template<uint32_t> class MaskT, uint32_t LOG2DIM>
|
||||||
|
-inline void LeafNode<ValueT, CoordT, MaskT, LOG2DIM>::updateBBox()
|
||||||
|
+__hostdev__ inline void LeafNode<ValueT, CoordT, MaskT, LOG2DIM>::updateBBox()
|
||||||
|
{
|
||||||
|
static_assert(LOG2DIM == 3, "LeafNode::updateBBox: only supports LOGDIM = 3!");
|
||||||
|
if (!this->isActive()) return;
|
||||||
|
diff --git a/nanovdb/nanovdb/util/SampleFromVoxels.h b/nanovdb/nanovdb/util/SampleFromVoxels.h
|
||||||
|
index 852123dac..e779d66cf 100644
|
||||||
|
--- a/nanovdb/nanovdb/util/SampleFromVoxels.h
|
||||||
|
+++ b/nanovdb/nanovdb/util/SampleFromVoxels.h
|
||||||
|
@@ -22,7 +22,7 @@
|
||||||
|
#define NANOVDB_SAMPLE_FROM_VOXELS_H_HAS_BEEN_INCLUDED
|
||||||
|
|
||||||
|
// Only define __hostdev__ when compiling as NVIDIA CUDA
|
||||||
|
-#ifdef __CUDACC__
|
||||||
|
+#if defined(__CUDACC__) || defined(__HIP__)
|
||||||
|
#define __hostdev__ __host__ __device__
|
||||||
|
#else
|
||||||
|
#include <cmath> // for floor
|
||||||
|
@@ -136,7 +136,7 @@ class SampleFromVoxels<TreeOrAccT, 0, false>
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const Vec3T& xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const Vec3T& xyz) const
|
||||||
|
{
|
||||||
|
const CoordT ijk = Round<CoordT>(xyz);
|
||||||
|
if (ijk != mPos) {
|
||||||
|
@@ -147,7 +147,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const CoordT& ijk) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()(const CoordT& ijk) const
|
||||||
|
{
|
||||||
|
if (ijk != mPos) {
|
||||||
|
mPos = ijk;
|
||||||
|
@@ -158,7 +158,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, true>::operator()
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, false>::operator()(const Vec3T& xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 0, false>::operator()(const Vec3T& xyz) const
|
||||||
|
{
|
||||||
|
return mAcc.getValue(Round<CoordT>(xyz));
|
||||||
|
}
|
||||||
|
@@ -195,7 +195,7 @@ class TrilinearSampler
|
||||||
|
}; // TrilinearSamplerBase
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-void TrilinearSampler<TreeOrAccT>::stencil(CoordT& ijk, ValueT (&v)[2][2][2]) const
|
||||||
|
+__hostdev__ void TrilinearSampler<TreeOrAccT>::stencil(CoordT& ijk, ValueT (&v)[2][2][2]) const
|
||||||
|
{
|
||||||
|
v[0][0][0] = mAcc.getValue(ijk); // i, j, k
|
||||||
|
|
||||||
|
@@ -224,7 +224,7 @@ void TrilinearSampler<TreeOrAccT>::stencil(CoordT& ijk, ValueT (&v)[2][2][2]) co
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType TrilinearSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType TrilinearSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
||||||
|
{
|
||||||
|
#if 0
|
||||||
|
auto lerp = [](ValueT a, ValueT b, ValueT w){ return fma(w, b-a, a); };// = w*(b-a) + a
|
||||||
|
@@ -239,7 +239,7 @@ typename TreeOrAccT::ValueType TrilinearSampler<TreeOrAccT>::sample(const Vec3T<
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-Vec3T<typename TreeOrAccT::ValueType> TrilinearSampler<TreeOrAccT>::gradient(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
||||||
|
+__hostdev__ Vec3T<typename TreeOrAccT::ValueType> TrilinearSampler<TreeOrAccT>::gradient(const Vec3T<RealT> &uvw, const ValueT (&v)[2][2][2])
|
||||||
|
{
|
||||||
|
static_assert(is_floating_point<ValueT>::value, "TrilinearSampler::gradient requires a floating-point type");
|
||||||
|
#if 0
|
||||||
|
@@ -270,7 +270,7 @@ Vec3T<typename TreeOrAccT::ValueType> TrilinearSampler<TreeOrAccT>::gradient(con
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-bool TrilinearSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[2][2][2])
|
||||||
|
+__hostdev__ bool TrilinearSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[2][2][2])
|
||||||
|
{
|
||||||
|
static_assert(is_floating_point<ValueT>::value, "TrilinearSampler::zeroCrossing requires a floating-point type");
|
||||||
|
const bool less = v[0][0][0] < ValueT(0);
|
||||||
|
@@ -363,21 +363,21 @@ class SampleFromVoxels<TreeOrAccT, 1, true> : public TrilinearSampler<TreeOrAccT
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
this->cache(xyz);
|
||||||
|
return BaseT::sample(xyz, mVal);
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(const CoordT &ijk) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, true>::operator()(const CoordT &ijk) const
|
||||||
|
{
|
||||||
|
return ijk == mPos ? mVal[0][0][0] : BaseT::mAcc.getValue(ijk);
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, true>::gradient(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, true>::gradient(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
this->cache(xyz);
|
||||||
|
return BaseT::gradient(xyz, mVal);
|
||||||
|
@@ -393,7 +393,7 @@ __hostdev__ bool SampleFromVoxels<TreeOrAccT, 1, true>::zeroCrossing(Vec3T<RealT
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-void SampleFromVoxels<TreeOrAccT, 1, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 1, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
{
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
if (ijk != mPos) {
|
||||||
|
@@ -406,7 +406,7 @@ void SampleFromVoxels<TreeOrAccT, 1, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
ValueT val[2][2][2];
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
@@ -418,7 +418,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator(
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
auto lerp = [](ValueT a, ValueT b, RealT w) { return a + ValueT(w) * (b - a); };
|
||||||
|
|
||||||
|
@@ -463,7 +463,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 1, false>::operator(
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-inline Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, false>::gradient(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ inline Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, false>::gradient(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
ValueT val[2][2][2];
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
@@ -473,7 +473,7 @@ inline Vec3T<typename TreeOrAccT::ValueType> SampleFromVoxels<TreeOrAccT, 1, fal
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-bool SampleFromVoxels<TreeOrAccT, 1, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ bool SampleFromVoxels<TreeOrAccT, 1, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
ValueT val[2][2][2];
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
@@ -510,7 +510,7 @@ class TriquadraticSampler
|
||||||
|
}; // TriquadraticSamplerBase
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-void TriquadraticSampler<TreeOrAccT>::stencil(const CoordT &ijk, ValueT (&v)[3][3][3]) const
|
||||||
|
+__hostdev__ void TriquadraticSampler<TreeOrAccT>::stencil(const CoordT &ijk, ValueT (&v)[3][3][3]) const
|
||||||
|
{
|
||||||
|
CoordT p(ijk[0] - 1, 0, 0);
|
||||||
|
for (int dx = 0; dx < 3; ++dx, ++p[0]) {
|
||||||
|
@@ -526,7 +526,7 @@ void TriquadraticSampler<TreeOrAccT>::stencil(const CoordT &ijk, ValueT (&v)[3][
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType TriquadraticSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[3][3][3])
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType TriquadraticSampler<TreeOrAccT>::sample(const Vec3T<RealT> &uvw, const ValueT (&v)[3][3][3])
|
||||||
|
{
|
||||||
|
auto kernel = [](const ValueT* value, double weight)->ValueT {
|
||||||
|
return weight * (weight * (0.5f * (value[0] + value[2]) - value[1]) +
|
||||||
|
@@ -545,7 +545,7 @@ typename TreeOrAccT::ValueType TriquadraticSampler<TreeOrAccT>::sample(const Vec
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-bool TriquadraticSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[3][3][3])
|
||||||
|
+__hostdev__ bool TriquadraticSampler<TreeOrAccT>::zeroCrossing(const ValueT (&v)[3][3][3])
|
||||||
|
{
|
||||||
|
static_assert(is_floating_point<ValueT>::value, "TrilinearSampler::zeroCrossing requires a floating-point type");
|
||||||
|
const bool less = v[0][0][0] < ValueT(0);
|
||||||
|
@@ -624,14 +624,14 @@ class SampleFromVoxels<TreeOrAccT, 2, true> : public TriquadraticSampler<TreeOrA
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
this->cache(xyz);
|
||||||
|
return BaseT::sample(xyz, mVal);
|
||||||
|
}
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(const CoordT &ijk) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, true>::operator()(const CoordT &ijk) const
|
||||||
|
{
|
||||||
|
return ijk == mPos ? mVal[1][1][1] : BaseT::mAcc.getValue(ijk);
|
||||||
|
}
|
||||||
|
@@ -646,7 +646,7 @@ __hostdev__ bool SampleFromVoxels<TreeOrAccT, 2, true>::zeroCrossing(Vec3T<RealT
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-void SampleFromVoxels<TreeOrAccT, 2, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 2, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
{
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
if (ijk != mPos) {
|
||||||
|
@@ -657,7 +657,7 @@ void SampleFromVoxels<TreeOrAccT, 2, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, false>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
ValueT val[3][3][3];
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
@@ -667,7 +667,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 2, false>::operator(
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-bool SampleFromVoxels<TreeOrAccT, 2, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ bool SampleFromVoxels<TreeOrAccT, 2, false>::zeroCrossing(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
ValueT val[3][3][3];
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
@@ -710,7 +710,7 @@ class TricubicSampler
|
||||||
|
}; // TricubicSampler
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
-void TricubicSampler<TreeOrAccT>::stencil(const CoordT& ijk, ValueT (&C)[64]) const
|
||||||
|
+__hostdev__ void TricubicSampler<TreeOrAccT>::stencil(const CoordT& ijk, ValueT (&C)[64]) const
|
||||||
|
{
|
||||||
|
auto fetch = [&](int i, int j, int k) -> ValueT& { return C[((i + 1) << 4) + ((j + 1) << 2) + k + 1]; };
|
||||||
|
|
||||||
|
@@ -929,7 +929,7 @@ class SampleFromVoxels<TreeOrAccT, 3, true> : public TricubicSampler<TreeOrAccT>
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 3, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
+__hostdev__ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 3, true>::operator()(Vec3T<RealT> xyz) const
|
||||||
|
{
|
||||||
|
this->cache(xyz);
|
||||||
|
return BaseT::sample(xyz, mC);
|
||||||
|
@@ -937,7 +937,7 @@ typename TreeOrAccT::ValueType SampleFromVoxels<TreeOrAccT, 3, true>::operator()
|
||||||
|
|
||||||
|
template<typename TreeOrAccT>
|
||||||
|
template<typename RealT, template<typename...> class Vec3T>
|
||||||
|
-void SampleFromVoxels<TreeOrAccT, 3, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
+__hostdev__ void SampleFromVoxels<TreeOrAccT, 3, true>::cache(Vec3T<RealT>& xyz) const
|
||||||
|
{
|
||||||
|
CoordT ijk = Floor<CoordT>(xyz);
|
||||||
|
if (ijk != mPos) {
|
||||||
|
|
||||||
|
@@ -48,25 +48,6 @@ diff -Naur org/CMakeLists.txt external_osl/CMakeLists.txt
|
|||||||
|
|
||||||
set (OSL_NO_DEFAULT_TEXTURESYSTEM OFF CACHE BOOL "Do not use create a raw OIIO::TextureSystem")
|
set (OSL_NO_DEFAULT_TEXTURESYSTEM OFF CACHE BOOL "Do not use create a raw OIIO::TextureSystem")
|
||||||
if (OSL_NO_DEFAULT_TEXTURESYSTEM)
|
if (OSL_NO_DEFAULT_TEXTURESYSTEM)
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index 990f50d69..46ef7351d 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -252,11 +252,9 @@ install (EXPORT OSL_EXPORTED_TARGETS
|
|
||||||
FILE ${OSL_TARGETS_EXPORT_NAME}
|
|
||||||
NAMESPACE ${PROJECT_NAME}::)
|
|
||||||
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-
|
|
||||||
-osl_add_all_tests()
|
|
||||||
-
|
|
||||||
+if (${PROJECT_NAME}_BUILD_TESTS AND NOT ${PROJECT_NAME}_IS_SUBPROJECT)
|
|
||||||
+ osl_add_all_tests()
|
|
||||||
+endif ()
|
|
||||||
|
|
||||||
if (NOT ${PROJECT_NAME}_IS_SUBPROJECT)
|
|
||||||
include (packaging)
|
|
||||||
diff -Naur external_osl_orig/src/cmake/externalpackages.cmake external_osl/src/cmake/externalpackages.cmake
|
diff -Naur external_osl_orig/src/cmake/externalpackages.cmake external_osl/src/cmake/externalpackages.cmake
|
||||||
--- external_osl_orig/src/cmake/externalpackages.cmake 2021-06-01 13:44:18 -0600
|
--- external_osl_orig/src/cmake/externalpackages.cmake 2021-06-01 13:44:18 -0600
|
||||||
+++ external_osl/src/cmake/externalpackages.cmake 2021-06-28 07:44:32 -0600
|
+++ external_osl/src/cmake/externalpackages.cmake 2021-06-28 07:44:32 -0600
|
||||||
|
@@ -10,217 +10,22 @@ diff -x .git -ur usd.orig/cmake/defaults/Packages.cmake external_usd/cmake/defau
|
|||||||
add_definitions(${TBB_DEFINITIONS})
|
add_definitions(${TBB_DEFINITIONS})
|
||||||
|
|
||||||
# --math
|
# --math
|
||||||
diff -Naur external_usd_base/cmake/macros/Public.cmake external_usd/cmake/macros/Public.cmake
|
|
||||||
--- external_usd_base/cmake/macros/Public.cmake 2019-10-24 14:39:53 -0600
|
|
||||||
+++ external_usd/cmake/macros/Public.cmake 2020-01-11 13:33:29 -0700
|
|
||||||
@@ -996,6 +996,12 @@
|
|
||||||
foreach(lib ${PXR_OBJECT_LIBS})
|
|
||||||
string(TOUPPER ${lib} uppercaseName)
|
|
||||||
list(APPEND exports "${uppercaseName}_EXPORTS=1")
|
|
||||||
+ # When building for blender, we do NOT want to export all symbols on windows.
|
|
||||||
+ # This is a dirty hack, but USD makes it impossible to do the right thing
|
|
||||||
+ # with the default options exposed.
|
|
||||||
+ if (WIN32)
|
|
||||||
+ list(APPEND exports "PXR_STATIC=1")
|
|
||||||
+ endif()
|
|
||||||
endforeach()
|
|
||||||
foreach(lib ${PXR_OBJECT_LIBS})
|
|
||||||
set(objects "${objects};\$<TARGET_OBJECTS:${lib}>")
|
|
||||||
diff -ru USD-20.11/pxr/base/tf/pxrLZ4/lz4.cpp external_usd/pxr/base/tf/pxrLZ4/lz4.cpp
|
|
||||||
--- USD-20.11/pxr/base/tf/pxrLZ4/lz4.cpp 2020-10-14 19:25:19.000000000 +0100
|
|
||||||
+++ external_usd/pxr/base/tf/pxrLZ4/lz4.cpp 2021-02-09 09:28:51.496190085 +0000
|
|
||||||
@@ -614,6 +614,15 @@
|
|
||||||
/*-************************************
|
|
||||||
* Internal Definitions used in Tests
|
|
||||||
**************************************/
|
|
||||||
+
|
|
||||||
+/*******************************************************************
|
|
||||||
+ * Disabled in Blender. The BLOSC library also exposes these
|
|
||||||
+ * functions, and this causes 'duplicate symbol' linker errors.
|
|
||||||
+ *
|
|
||||||
+ * This problem has been reported upstream at
|
|
||||||
+ * https://github.com/PixarAnimationStudios/USD/issues/1447
|
|
||||||
+ *
|
|
||||||
+ *******************************************************************
|
|
||||||
#if defined (__cplusplus)
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
@@ -627,6 +636,7 @@
|
|
||||||
#if defined (__cplusplus)
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+********************************************************************/
|
|
||||||
|
|
||||||
/*-******************************
|
diff -Naur usd_orig/cmake/defaults/msvcdefaults.cmake external_usd/cmake/defaults/msvcdefaults.cmake
|
||||||
* Compression functions
|
--- usd_orig/cmake/defaults/msvcdefaults.cmake 2022-02-18 14:49:09 -0700
|
||||||
|
+++ external_usd/cmake/defaults/msvcdefaults.cmake 2022-03-14 11:41:50 -0600
|
||||||
|
@@ -120,9 +120,6 @@
|
||||||
|
# for all translation units.
|
||||||
|
set(_PXR_CXX_FLAGS "${_PXR_CXX_FLAGS} /bigobj")
|
||||||
|
|
||||||
From 442d087962f762deeb8b6e49a0955753fcf9aeb9 Mon Sep 17 00:00:00 2001
|
-# Enable PDB generation.
|
||||||
From: Tsahi Zidenberg <tsahee@amazon.com>
|
-set(_PXR_CXX_FLAGS "${_PXR_CXX_FLAGS} /Zi")
|
||||||
Date: Sun, 15 Nov 2020 15:18:24 +0000
|
-
|
||||||
Subject: [PATCH 1/2] stackTrace: support aarch64/linux
|
# Enable multiprocessor builds.
|
||||||
|
set(_PXR_CXX_FLAGS "${_PXR_CXX_FLAGS} /MP")
|
||||||
stacktrace calls syscall directly via assembler. Create compatible
|
set(_PXR_CXX_FLAGS "${_PXR_CXX_FLAGS} /Gm-")
|
||||||
aarch64 code.
|
|
||||||
---
|
|
||||||
pxr/base/arch/stackTrace.cpp | 30 ++++++++++++++++++++++++------
|
|
||||||
1 file changed, 24 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/stackTrace.cpp b/pxr/base/arch/stackTrace.cpp
|
|
||||||
index dcc1dfd46..c11aabeb1 100644
|
|
||||||
--- a/pxr/base/arch/stackTrace.cpp
|
|
||||||
+++ b/pxr/base/arch/stackTrace.cpp
|
|
||||||
@@ -583,7 +583,6 @@ nonLockingLinux__execve (const char *file,
|
|
||||||
char *const argv[],
|
|
||||||
char *const envp[])
|
|
||||||
{
|
|
||||||
-#if defined(ARCH_BITS_64)
|
|
||||||
/*
|
|
||||||
* We make a direct system call here, because we can't find an
|
|
||||||
* execve which corresponds with the non-locking fork we call
|
|
||||||
@@ -594,7 +593,27 @@ nonLockingLinux__execve (const char *file,
|
|
||||||
* hangs in a threaded app. (We use the non-locking fork to get
|
|
||||||
* around problems with forking when we have had memory
|
|
||||||
* corruption.) whew.
|
|
||||||
- *
|
|
||||||
+ */
|
|
||||||
+
|
|
||||||
+ unsigned long result;
|
|
||||||
+
|
|
||||||
+#if defined (__aarch64__)
|
|
||||||
+ {
|
|
||||||
+ register long __file_result asm ("x0") = (long)file;
|
|
||||||
+ register char* const* __argv asm ("x1") = argv;
|
|
||||||
+ register char* const* __envp asm ("x2") = envp;
|
|
||||||
+ register long __num_execve asm ("x8") = 221;
|
|
||||||
+ __asm__ __volatile__ (
|
|
||||||
+ "svc 0"
|
|
||||||
+ : "=r" (__file_result)
|
|
||||||
+ : "r"(__num_execve), "r" (__file_result), "r" (__argv), "r" (__envp)
|
|
||||||
+ : "memory"
|
|
||||||
+ );
|
|
||||||
+ result = __file_result;
|
|
||||||
+ }
|
|
||||||
+#elif defined(ARCH_CPU_INTEL) && defined(ARCH_BITS_64)
|
|
||||||
+
|
|
||||||
+ /*
|
|
||||||
* %rdi, %rsi, %rdx, %rcx, %r8, %r9 are args 0-5
|
|
||||||
* syscall clobbers %rcx and %r11
|
|
||||||
*
|
|
||||||
@@ -603,7 +622,6 @@ nonLockingLinux__execve (const char *file,
|
|
||||||
* constraints to gcc.
|
|
||||||
*/
|
|
||||||
|
|
||||||
- unsigned long result;
|
|
||||||
__asm__ __volatile__ (
|
|
||||||
"mov %0, %%rdi \n\t"
|
|
||||||
"mov %%rcx, %%rsi \n\t"
|
|
||||||
@@ -614,6 +632,9 @@ nonLockingLinux__execve (const char *file,
|
|
||||||
: "0" (file), "c" (argv), "d" (envp)
|
|
||||||
: "memory", "cc", "r11"
|
|
||||||
);
|
|
||||||
+#else
|
|
||||||
+#error Unknown architecture
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (result >= 0xfffffffffffff000) {
|
|
||||||
errno = -result;
|
|
||||||
@@ -621,9 +642,6 @@ nonLockingLinux__execve (const char *file,
|
|
||||||
}
|
|
||||||
|
|
||||||
return result;
|
|
||||||
-#else
|
|
||||||
-#error Unknown architecture
|
|
||||||
-#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
From a1dffe02519bb3c6ccbbe8c6c58304da5db98995 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tsahi Zidenberg <tsahee@amazon.com>
|
|
||||||
Date: Sun, 15 Nov 2020 15:22:52 +0000
|
|
||||||
Subject: [PATCH 2/2] timing: support aarch64/linux
|
|
||||||
|
|
||||||
The aarch64 arch-timer is directly accessible to userspace via two
|
|
||||||
registers:
|
|
||||||
CNTVCT_EL0 - holds the current counter value
|
|
||||||
CNTFRQ_EL0 - holds the counter frequency (in Hz)
|
|
||||||
---
|
|
||||||
pxr/base/arch/timing.cpp | 6 ++++++
|
|
||||||
pxr/base/arch/timing.h | 6 +++++-
|
|
||||||
2 files changed, 11 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/timing.cpp b/pxr/base/arch/timing.cpp
|
|
||||||
index 27ad58fed..9022950c1 100644
|
|
||||||
--- a/pxr/base/arch/timing.cpp
|
|
||||||
+++ b/pxr/base/arch/timing.cpp
|
|
||||||
@@ -59,6 +59,11 @@ ARCH_HIDDEN
|
|
||||||
void
|
|
||||||
Arch_InitTickTimer()
|
|
||||||
{
|
|
||||||
+#ifdef __aarch64__
|
|
||||||
+ uint64_t counter_hz;
|
|
||||||
+ __asm __volatile("mrs %0, CNTFRQ_EL0" : "=&r" (counter_hz));
|
|
||||||
+ Arch_NanosecondsPerTick = double(1e9) / double(counter_hz);
|
|
||||||
+#else
|
|
||||||
// NOTE: Normally ifstream would be cleaner, but it causes crashes when
|
|
||||||
// used in conjunction with DSOs and the Intel Compiler.
|
|
||||||
FILE *in;
|
|
||||||
@@ -135,6 +140,7 @@ Arch_InitTickTimer()
|
|
||||||
}
|
|
||||||
|
|
||||||
Arch_NanosecondsPerTick = double(1e9) / double(cpuHz);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
#elif defined(ARCH_OS_WINDOWS)
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/timing.h b/pxr/base/arch/timing.h
|
|
||||||
index 67ec0d15f..6dc3e85a0 100644
|
|
||||||
--- a/pxr/base/arch/timing.h
|
|
||||||
+++ b/pxr/base/arch/timing.h
|
|
||||||
@@ -36,7 +36,7 @@
|
|
||||||
/// \addtogroup group_arch_SystemFunctions
|
|
||||||
///@{
|
|
||||||
|
|
||||||
-#if defined(ARCH_OS_LINUX)
|
|
||||||
+#if defined(ARCH_OS_LINUX) && defined(ARCH_CPU_INTEL)
|
|
||||||
#include <x86intrin.h>
|
|
||||||
#elif defined(ARCH_OS_DARWIN)
|
|
||||||
#include <mach/mach_time.h>
|
|
||||||
@@ -69,6 +69,10 @@ ArchGetTickTime()
|
|
||||||
#elif defined(ARCH_CPU_INTEL)
|
|
||||||
// On Intel we'll use the rdtsc instruction.
|
|
||||||
return __rdtsc();
|
|
||||||
+#elif defined (__aarch64__)
|
|
||||||
+ uint64_t result;
|
|
||||||
+ __asm __volatile("mrs %0, CNTVCT_EL0" : "=&r" (result));
|
|
||||||
+ return result;
|
|
||||||
#else
|
|
||||||
#error Unknown architecture.
|
|
||||||
#endif
|
|
||||||
|
|
||||||
diff --git a/pxr/base/arch/demangle.cpp b/pxr/base/arch/demangle.cpp
|
|
||||||
index 67ec0d15f..6dc3e85a0 100644
|
|
||||||
--- a/pxr/base/arch/demangle.cpp
|
|
||||||
+++ b/pxr/base/arch/demangle.cpp
|
|
||||||
@@ -36,6 +36,7 @@
|
|
||||||
#if (ARCH_COMPILER_GCC_MAJOR == 3 && ARCH_COMPILER_GCC_MINOR >= 1) || \
|
|
||||||
ARCH_COMPILER_GCC_MAJOR > 3 || defined(ARCH_COMPILER_CLANG)
|
|
||||||
#define _AT_LEAST_GCC_THREE_ONE_OR_CLANG
|
|
||||||
+#include <cxxabi.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
PXR_NAMESPACE_OPEN_SCOPE
|
|
||||||
@@ -138,7 +139,6 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(_AT_LEAST_GCC_THREE_ONE_OR_CLANG)
|
|
||||||
-#include <cxxabi.h>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This routine doesn't work when you get to gcc3.4.
|
|
||||||
|
|
||||||
diff --git a/pxr/base/work/singularTask.h b/pxr/base/work/singularTask.h
|
diff --git a/pxr/base/work/singularTask.h b/pxr/base/work/singularTask.h
|
||||||
index 67ec0d15f..6dc3e85a0 100644
|
|
||||||
--- a/pxr/base/work/singularTask.h
|
--- a/pxr/base/work/singularTask.h
|
||||||
+++ b/pxr/base/work/singularTask.h
|
+++ b/pxr/base/work/singularTask.h
|
||||||
@@ -120,7 +120,7 @@
|
@@ -120,7 +120,7 @@
|
||||||
@@ -232,3 +37,66 @@ index 67ec0d15f..6dc3e85a0 100644
|
|||||||
do { _fn(); } while (
|
do { _fn(); } while (
|
||||||
!count.compare_exchange_strong(old, 0));
|
!count.compare_exchange_strong(old, 0));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
diff --git a/pxr/usd/sdr/shaderMetadataHelpers.h b/pxr/usd/sdr/shaderMetadataHelpers.h
|
||||||
|
--- a/pxr/usd/sdr/shaderMetadataHelpers.h
|
||||||
|
+++ b/pxr/usd/sdr/shaderMetadataHelpers.h
|
||||||
|
@@ -32,6 +32,8 @@
|
||||||
|
#include "pxr/base/tf/token.h"
|
||||||
|
#include "pxr/usd/sdr/declare.h"
|
||||||
|
|
||||||
|
+#include <limits>
|
||||||
|
+
|
||||||
|
PXR_NAMESPACE_OPEN_SCOPE
|
||||||
|
|
||||||
|
/// \namespace ShaderMetadataHelpers
|
||||||
|
|
||||||
|
diff --git a/pxr/base/arch/timing.h b/pxr/base/arch/timing.h
|
||||||
|
index 517561f..fda5a1f 100644
|
||||||
|
--- a/pxr/base/arch/timing.h
|
||||||
|
+++ b/pxr/base/arch/timing.h
|
||||||
|
@@ -91,6 +91,10 @@ ArchGetTickTime()
|
||||||
|
inline uint64_t
|
||||||
|
ArchGetStartTickTime()
|
||||||
|
{
|
||||||
|
+ // BLENDER: avoid using rdtsc instruction that is not supported on older CPUs.
|
||||||
|
+ return ArchGetTickTime();
|
||||||
|
+
|
||||||
|
+#if 0
|
||||||
|
uint64_t t;
|
||||||
|
#if defined (ARCH_OS_DARWIN)
|
||||||
|
return ArchGetTickTime();
|
||||||
|
@@ -123,6 +127,7 @@ ArchGetStartTickTime()
|
||||||
|
#error "Unsupported architecture."
|
||||||
|
#endif
|
||||||
|
return t;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Get a "stop" tick time for measuring an interval of time. See
|
||||||
|
@@ -132,6 +137,10 @@ ArchGetStartTickTime()
|
||||||
|
inline uint64_t
|
||||||
|
ArchGetStopTickTime()
|
||||||
|
{
|
||||||
|
+ // BLENDER: avoid using rdtsc instruction that is not supported on older CPUs.
|
||||||
|
+ return ArchGetTickTime();
|
||||||
|
+
|
||||||
|
+#if 0
|
||||||
|
uint64_t t;
|
||||||
|
#if defined (ARCH_OS_DARWIN)
|
||||||
|
return ArchGetTickTime();
|
||||||
|
@@ -162,11 +171,11 @@ ArchGetStopTickTime()
|
||||||
|
#error "Unsupported architecture."
|
||||||
|
#endif
|
||||||
|
return t;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
-#if defined (doxygen) || \
|
||||||
|
- (!defined(ARCH_OS_DARWIN) && defined(ARCH_CPU_INTEL) && \
|
||||||
|
- (defined(ARCH_COMPILER_CLANG) || defined(ARCH_COMPILER_GCC)))
|
||||||
|
+// BLENDER: avoid using rdtsc instruction that is not supported on older CPUs.
|
||||||
|
+#if 0
|
||||||
|
|
||||||
|
/// A simple timer class for measuring an interval of time using the
|
||||||
|
/// ArchTickTimer facilities.
|
||||||
|
@@ -46,6 +46,18 @@ if "%3" == "debug" set CMAKE_DEBUG_OPTIONS=-DWITH_OPTIMIZED_DEBUG=Off
|
|||||||
set dobuild=1
|
set dobuild=1
|
||||||
if "%4" == "nobuild" set dobuild=0
|
if "%4" == "nobuild" set dobuild=0
|
||||||
|
|
||||||
|
REM If Python is be available certain deps may try to
|
||||||
|
REM to use this over the version we build, to prevent that
|
||||||
|
REM make sure pythonw is NOT in the path. We look for pythonw.exe
|
||||||
|
REM since windows apparently ships a python.exe that just opens up
|
||||||
|
REM the windows store but does not ship any actual python files that
|
||||||
|
REM could cause issues.
|
||||||
|
for %%X in (pythonw.exe) do (set PYTHONW=%%~$PATH:X)
|
||||||
|
if EXIST "%PYTHONW%" (
|
||||||
|
echo PYTHON found at %PYTHONW% dependencies cannot be build with python available in the path
|
||||||
|
goto exit
|
||||||
|
)
|
||||||
|
|
||||||
set SOURCE_DIR=%~dp0\..
|
set SOURCE_DIR=%~dp0\..
|
||||||
set BUILD_DIR=%cd%\build
|
set BUILD_DIR=%cd%\build
|
||||||
set HARVEST_DIR=%BUILD_DIR%\output
|
set HARVEST_DIR=%BUILD_DIR%\output
|
||||||
@@ -98,8 +110,8 @@ echo %DATE% %TIME% : Start > %StatusFile%
|
|||||||
cmake -G "%CMAKE_BUILDER%" %CMAKE_BUILD_ARCH% -Thost=x64 %SOURCE_DIR% -DPACKAGE_DIR=%BUILD_DIR%/packages -DDOWNLOAD_DIR=%BUILD_DIR%/downloads -DBUILD_MODE=Release -DHARVEST_TARGET=%HARVEST_DIR%/%HARVESTROOT%%VSVER_SHORT%/
|
cmake -G "%CMAKE_BUILDER%" %CMAKE_BUILD_ARCH% -Thost=x64 %SOURCE_DIR% -DPACKAGE_DIR=%BUILD_DIR%/packages -DDOWNLOAD_DIR=%BUILD_DIR%/downloads -DBUILD_MODE=Release -DHARVEST_TARGET=%HARVEST_DIR%/%HARVESTROOT%%VSVER_SHORT%/
|
||||||
echo %DATE% %TIME% : Release Configuration done >> %StatusFile%
|
echo %DATE% %TIME% : Release Configuration done >> %StatusFile%
|
||||||
if "%dobuild%" == "1" (
|
if "%dobuild%" == "1" (
|
||||||
msbuild /m "ll.vcxproj" /p:Configuration=Release /fl /flp:logfile=BlenderDeps_llvm.log;Verbosity=normal
|
msbuild /m:1 "ll.vcxproj" /p:Configuration=Release /fl /flp:logfile=BlenderDeps_llvm.log;Verbosity=normal
|
||||||
msbuild /m "BlenderDependencies.sln" /p:Configuration=Release /fl /flp:logfile=BlenderDeps.log;Verbosity=minimal /verbosity:minimal
|
msbuild /m:1 "BlenderDependencies.sln" /p:Configuration=Release /fl /flp:logfile=BlenderDeps.log;Verbosity=minimal /verbosity:minimal
|
||||||
echo %DATE% %TIME% : Release Build done >> %StatusFile%
|
echo %DATE% %TIME% : Release Build done >> %StatusFile%
|
||||||
cmake --build . --target Harvest_Release_Results > Harvest_Release.txt
|
cmake --build . --target Harvest_Release_Results > Harvest_Release.txt
|
||||||
)
|
)
|
||||||
@@ -111,8 +123,8 @@ cd %Staging%\%BuildDir%%ARCH%D
|
|||||||
cmake -G "%CMAKE_BUILDER%" %CMAKE_BUILD_ARCH% -Thost=x64 %SOURCE_DIR% -DPACKAGE_DIR=%BUILD_DIR%/packages -DDOWNLOAD_DIR=%BUILD_DIR%/downloads -DCMAKE_BUILD_TYPE=Debug -DBUILD_MODE=Debug -DHARVEST_TARGET=%HARVEST_DIR%/%HARVESTROOT%%VSVER_SHORT%/ %CMAKE_DEBUG_OPTIONS%
|
cmake -G "%CMAKE_BUILDER%" %CMAKE_BUILD_ARCH% -Thost=x64 %SOURCE_DIR% -DPACKAGE_DIR=%BUILD_DIR%/packages -DDOWNLOAD_DIR=%BUILD_DIR%/downloads -DCMAKE_BUILD_TYPE=Debug -DBUILD_MODE=Debug -DHARVEST_TARGET=%HARVEST_DIR%/%HARVESTROOT%%VSVER_SHORT%/ %CMAKE_DEBUG_OPTIONS%
|
||||||
echo %DATE% %TIME% : Debug Configuration done >> %StatusFile%
|
echo %DATE% %TIME% : Debug Configuration done >> %StatusFile%
|
||||||
if "%dobuild%" == "1" (
|
if "%dobuild%" == "1" (
|
||||||
msbuild /m "ll.vcxproj" /p:Configuration=Debug /fl /flp:logfile=BlenderDeps_llvm.log;;Verbosity=normal
|
msbuild /m:1 "ll.vcxproj" /p:Configuration=Debug /fl /flp:logfile=BlenderDeps_llvm.log;;Verbosity=normal
|
||||||
msbuild /m "BlenderDependencies.sln" /p:Configuration=Debug /verbosity:n /fl /flp:logfile=BlenderDeps.log;;Verbosity=normal
|
msbuild /m:1 "BlenderDependencies.sln" /p:Configuration=Debug /verbosity:n /fl /flp:logfile=BlenderDeps.log;;Verbosity=normal
|
||||||
echo %DATE% %TIME% : Debug Build done >> %StatusFile%
|
echo %DATE% %TIME% : Debug Build done >> %StatusFile%
|
||||||
cmake --build . --target Harvest_Debug_Results> Harvest_Debug.txt
|
cmake --build . --target Harvest_Debug_Results> Harvest_Debug.txt
|
||||||
)
|
)
|
||||||
|
56
build_files/cmake/Modules/FindLevelZero.cmake
Normal file
56
build_files/cmake/Modules/FindLevelZero.cmake
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
# SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
# Copyright 2021-2022 Intel Corporation
|
||||||
|
|
||||||
|
# - Find Level Zero library
|
||||||
|
# Find Level Zero headers and libraries needed by oneAPI implementation
|
||||||
|
# This module defines
|
||||||
|
# LEVEL_ZERO_LIBRARY, libraries to link against in order to use L0.
|
||||||
|
# LEVEL_ZERO_INCLUDE_DIR, directories where L0 headers can be found.
|
||||||
|
# LEVEL_ZERO_ROOT_DIR, The base directory to search for L0 files.
|
||||||
|
# This can also be an environment variable.
|
||||||
|
# LEVEL_ZERO_FOUND, If false, then don't try to use L0.
|
||||||
|
|
||||||
|
IF(NOT LEVEL_ZERO_ROOT_DIR AND NOT $ENV{LEVEL_ZERO_ROOT_DIR} STREQUAL "")
|
||||||
|
SET(LEVEL_ZERO_ROOT_DIR $ENV{LEVEL_ZERO_ROOT_DIR})
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
SET(_level_zero_search_dirs
|
||||||
|
${LEVEL_ZERO_ROOT_DIR}
|
||||||
|
/usr/lib
|
||||||
|
/usr/local/lib
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(_LEVEL_ZERO_LIBRARY
|
||||||
|
NAMES
|
||||||
|
ze_loader
|
||||||
|
HINTS
|
||||||
|
${_level_zero_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib64 lib
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(_LEVEL_ZERO_INCLUDE_DIR
|
||||||
|
NAMES
|
||||||
|
level_zero/ze_api.h
|
||||||
|
HINTS
|
||||||
|
${_level_zero_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
include
|
||||||
|
)
|
||||||
|
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(LevelZero DEFAULT_MSG _LEVEL_ZERO_LIBRARY _LEVEL_ZERO_INCLUDE_DIR)
|
||||||
|
|
||||||
|
IF(LevelZero_FOUND)
|
||||||
|
SET(LEVEL_ZERO_LIBRARY ${_LEVEL_ZERO_LIBRARY})
|
||||||
|
SET(LEVEL_ZERO_INCLUDE_DIR ${_LEVEL_ZERO_INCLUDE_DIR} ${_LEVEL_ZERO_INCLUDE_PARENT_DIR})
|
||||||
|
SET(LEVEL_ZERO_FOUND TRUE)
|
||||||
|
ELSE()
|
||||||
|
SET(LEVEL_ZERO_FOUND FALSE)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(
|
||||||
|
LEVEL_ZERO_LIBRARY
|
||||||
|
LEVEL_ZERO_INCLUDE_DIR
|
||||||
|
)
|
@@ -85,9 +85,9 @@ STRING(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENE
|
|||||||
IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
|
IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
|
||||||
SET(_openexr_FIND_COMPONENTS
|
SET(_openexr_FIND_COMPONENTS
|
||||||
Iex
|
Iex
|
||||||
IlmThread
|
|
||||||
OpenEXR
|
OpenEXR
|
||||||
OpenEXRCore
|
OpenEXRCore
|
||||||
|
IlmThread
|
||||||
)
|
)
|
||||||
ELSE()
|
ELSE()
|
||||||
SET(_openexr_FIND_COMPONENTS
|
SET(_openexr_FIND_COMPONENTS
|
||||||
|
@@ -175,7 +175,9 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(PythonLibsUnix DEFAULT_MSG
|
|||||||
IF(PYTHONLIBSUNIX_FOUND)
|
IF(PYTHONLIBSUNIX_FOUND)
|
||||||
# Assign cache items
|
# Assign cache items
|
||||||
SET(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR} ${PYTHON_INCLUDE_CONFIG_DIR})
|
SET(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIR} ${PYTHON_INCLUDE_CONFIG_DIR})
|
||||||
|
IF(NOT WITH_PYTHON_MODULE)
|
||||||
SET(PYTHON_LIBRARIES ${PYTHON_LIBRARY})
|
SET(PYTHON_LIBRARIES ${PYTHON_LIBRARY})
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
FIND_FILE(PYTHON_SITE_PACKAGES
|
FIND_FILE(PYTHON_SITE_PACKAGES
|
||||||
NAMES
|
NAMES
|
||||||
|
88
build_files/cmake/Modules/FindSYCL.cmake
Normal file
88
build_files/cmake/Modules/FindSYCL.cmake
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
# SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
# Copyright 2021-2022 Intel Corporation
|
||||||
|
|
||||||
|
# - Find SYCL library
|
||||||
|
# Find the native SYCL header and libraries needed by oneAPI implementation
|
||||||
|
# This module defines
|
||||||
|
# SYCL_COMPILER, compiler which will be used for compilation of SYCL code
|
||||||
|
# SYCL_LIBRARY, libraries to link against in order to use SYCL.
|
||||||
|
# SYCL_INCLUDE_DIR, directories where SYCL headers can be found
|
||||||
|
# SYCL_ROOT_DIR, The base directory to search for SYCL files.
|
||||||
|
# This can also be an environment variable.
|
||||||
|
# SYCL_FOUND, If false, then don't try to use SYCL.
|
||||||
|
|
||||||
|
IF(NOT SYCL_ROOT_DIR AND NOT $ENV{SYCL_ROOT_DIR} STREQUAL "")
|
||||||
|
SET(SYCL_ROOT_DIR $ENV{SYCL_ROOT_DIR})
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
SET(_sycl_search_dirs
|
||||||
|
${SYCL_ROOT_DIR}
|
||||||
|
/usr/lib
|
||||||
|
/usr/local/lib
|
||||||
|
/opt/intel/oneapi/compiler/latest/linux/
|
||||||
|
C:/Program\ Files\ \(x86\)/Intel/oneAPI/compiler/latest/windows
|
||||||
|
)
|
||||||
|
|
||||||
|
# Find DPC++ compiler.
|
||||||
|
# Since the compiler name is possibly conflicting with the system-wide
|
||||||
|
# CLang start with looking for either dpcpp or clang binary in the given
|
||||||
|
# list of search paths only. If that fails, try to look for a system-wide
|
||||||
|
# dpcpp binary.
|
||||||
|
FIND_PROGRAM(SYCL_COMPILER
|
||||||
|
NAMES
|
||||||
|
dpcpp
|
||||||
|
clang++
|
||||||
|
HINTS
|
||||||
|
${_sycl_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
bin
|
||||||
|
NO_CMAKE_FIND_ROOT_PATH
|
||||||
|
NAMES_PER_DIR
|
||||||
|
)
|
||||||
|
|
||||||
|
# NOTE: No clang++ here so that we do not pick up a system-wide CLang
|
||||||
|
# compiler.
|
||||||
|
if(NOT SYCL_COMPILER)
|
||||||
|
FIND_PROGRAM(SYCL_COMPILER
|
||||||
|
NAMES
|
||||||
|
dpcpp
|
||||||
|
HINTS
|
||||||
|
${_sycl_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
bin
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
FIND_LIBRARY(SYCL_LIBRARY
|
||||||
|
NAMES
|
||||||
|
sycl
|
||||||
|
HINTS
|
||||||
|
${_sycl_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib64 lib
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(SYCL_INCLUDE_DIR
|
||||||
|
NAMES
|
||||||
|
CL/sycl.hpp
|
||||||
|
HINTS
|
||||||
|
${_sycl_search_dirs}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
include
|
||||||
|
include/sycl
|
||||||
|
)
|
||||||
|
|
||||||
|
INCLUDE(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SYCL DEFAULT_MSG SYCL_LIBRARY SYCL_INCLUDE_DIR)
|
||||||
|
|
||||||
|
IF(SYCL_FOUND)
|
||||||
|
get_filename_component(_SYCL_INCLUDE_PARENT_DIR ${SYCL_INCLUDE_DIR} DIRECTORY)
|
||||||
|
SET(SYCL_INCLUDE_DIR ${SYCL_INCLUDE_DIR} ${_SYCL_INCLUDE_PARENT_DIR})
|
||||||
|
ELSE()
|
||||||
|
SET(SYCL_SYCL_FOUND FALSE)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(
|
||||||
|
_SYCL_INCLUDE_PARENT_DIR
|
||||||
|
)
|
@@ -64,6 +64,7 @@ ENDIF()
|
|||||||
MARK_AS_ADVANCED(
|
MARK_AS_ADVANCED(
|
||||||
USD_INCLUDE_DIR
|
USD_INCLUDE_DIR
|
||||||
USD_LIBRARY_DIR
|
USD_LIBRARY_DIR
|
||||||
|
USD_LIBRARY
|
||||||
)
|
)
|
||||||
|
|
||||||
UNSET(_usd_SEARCH_DIRS)
|
UNSET(_usd_SEARCH_DIRS)
|
||||||
|
@@ -74,4 +74,9 @@ ENDIF()
|
|||||||
MARK_AS_ADVANCED(
|
MARK_AS_ADVANCED(
|
||||||
WEBP_INCLUDE_DIR
|
WEBP_INCLUDE_DIR
|
||||||
WEBP_LIBRARY_DIR
|
WEBP_LIBRARY_DIR
|
||||||
|
|
||||||
|
# Generated names.
|
||||||
|
WEBP_WEBPDEMUX_LIBRARY
|
||||||
|
WEBP_WEBPMUX_LIBRARY
|
||||||
|
WEBP_WEBP_LIBRARY
|
||||||
)
|
)
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Example linux usage
|
Example linux usage
|
||||||
python3 ~/blender-git/blender/build_files/cmake/cmake_netbeans_project.py ~/blender-git/cmake
|
python3 ~/blender-git/blender/build_files/cmake/cmake_netbeans_project.py ~/blender-git/cmake
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
r"""
|
r"""
|
||||||
Example Linux usage:
|
Example Linux usage:
|
||||||
python ~/blender-git/blender/build_files/cmake/cmake_qtcreator_project.py --build-dir ~/blender-git/cmake
|
python ~/blender-git/blender/build_files/cmake/cmake_qtcreator_project.py --build-dir ~/blender-git/cmake
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
import project_source_info
|
import project_source_info
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
import project_source_info
|
import project_source_info
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
CHECKER_IGNORE_PREFIX = [
|
CHECKER_IGNORE_PREFIX = [
|
||||||
"extern",
|
"extern",
|
||||||
"intern/moto",
|
"intern/moto",
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
CHECKER_IGNORE_PREFIX = [
|
CHECKER_IGNORE_PREFIX = [
|
||||||
"extern",
|
"extern",
|
||||||
"intern/moto",
|
"intern/moto",
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
CHECKER_IGNORE_PREFIX = [
|
CHECKER_IGNORE_PREFIX = [
|
||||||
"extern",
|
"extern",
|
||||||
"intern/moto",
|
"intern/moto",
|
||||||
|
@@ -30,6 +30,7 @@ set(WITH_IMAGE_HDR ON CACHE BOOL "" FORCE)
|
|||||||
set(WITH_IMAGE_OPENEXR ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENEXR ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_OPENJPEG ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENJPEG ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_TIFF ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_TIFF ON CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IMAGE_WEBP ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INPUT_NDOF ON CACHE BOOL "" FORCE)
|
set(WITH_INPUT_NDOF ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INPUT_IME ON CACHE BOOL "" FORCE)
|
set(WITH_INPUT_IME ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INTERNATIONAL ON CACHE BOOL "" FORCE)
|
set(WITH_INTERNATIONAL ON CACHE BOOL "" FORCE)
|
||||||
|
@@ -34,8 +34,12 @@ set(WITH_IMAGE_HDR OFF CACHE BOOL "" FORCE)
|
|||||||
set(WITH_IMAGE_OPENEXR OFF CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENEXR OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_OPENJPEG OFF CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENJPEG OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_TIFF OFF CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_TIFF OFF CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IMAGE_WEBP OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_INPUT_NDOF OFF CACHE BOOL "" FORCE)
|
set(WITH_INPUT_NDOF OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_INTERNATIONAL OFF CACHE BOOL "" FORCE)
|
set(WITH_INTERNATIONAL OFF CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IO_STL OFF CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IO_WAVEFRONT_OBJ OFF CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IO_GPENCIL OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
set(WITH_JACK OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_LIBMV OFF CACHE BOOL "" FORCE)
|
set(WITH_LIBMV OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_LLVM OFF CACHE BOOL "" FORCE)
|
set(WITH_LLVM OFF CACHE BOOL "" FORCE)
|
||||||
|
@@ -31,6 +31,7 @@ set(WITH_IMAGE_HDR ON CACHE BOOL "" FORCE)
|
|||||||
set(WITH_IMAGE_OPENEXR ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENEXR ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_OPENJPEG ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_OPENJPEG ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_IMAGE_TIFF ON CACHE BOOL "" FORCE)
|
set(WITH_IMAGE_TIFF ON CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_IMAGE_WEBP ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INPUT_NDOF ON CACHE BOOL "" FORCE)
|
set(WITH_INPUT_NDOF ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INPUT_IME ON CACHE BOOL "" FORCE)
|
set(WITH_INPUT_IME ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_INTERNATIONAL ON CACHE BOOL "" FORCE)
|
set(WITH_INTERNATIONAL ON CACHE BOOL "" FORCE)
|
||||||
@@ -77,6 +78,11 @@ if(UNIX AND NOT APPLE)
|
|||||||
set(WITH_PULSEAUDIO ON CACHE BOOL "" FORCE)
|
set(WITH_PULSEAUDIO ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_X11_XINPUT ON CACHE BOOL "" FORCE)
|
set(WITH_X11_XINPUT ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_X11_XF86VMODE ON CACHE BOOL "" FORCE)
|
set(WITH_X11_XF86VMODE ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
# Disable oneAPI on Linux for the time being.
|
||||||
|
# The AoT compilation takes too long to be used officially in the buildbot CI/CD and the JIT
|
||||||
|
# compilation has ABI compatibility issues when running builds made on centOS on Ubuntu.
|
||||||
|
set(WITH_CYCLES_DEVICE_ONEAPI OFF CACHE BOOL "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
if(NOT APPLE)
|
if(NOT APPLE)
|
||||||
set(WITH_XR_OPENXR ON CACHE BOOL "" FORCE)
|
set(WITH_XR_OPENXR ON CACHE BOOL "" FORCE)
|
||||||
@@ -85,4 +91,8 @@ if(NOT APPLE)
|
|||||||
set(WITH_CYCLES_CUDA_BINARIES ON CACHE BOOL "" FORCE)
|
set(WITH_CYCLES_CUDA_BINARIES ON CACHE BOOL "" FORCE)
|
||||||
set(WITH_CYCLES_CUBIN_COMPILER OFF CACHE BOOL "" FORCE)
|
set(WITH_CYCLES_CUBIN_COMPILER OFF CACHE BOOL "" FORCE)
|
||||||
set(WITH_CYCLES_HIP_BINARIES ON CACHE BOOL "" FORCE)
|
set(WITH_CYCLES_HIP_BINARIES ON CACHE BOOL "" FORCE)
|
||||||
|
set(WITH_CYCLES_DEVICE_ONEAPI ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
# Disable AoT kernels compilations until buildbot can deliver them in a reasonabel time.
|
||||||
|
set(WITH_CYCLES_ONEAPI_BINARIES OFF CACHE BOOL "" FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
@@ -71,6 +71,7 @@ set(CMAKE_PREFIX_PATH ${LIB_SUBDIRS})
|
|||||||
# Find precompiled libraries, and avoid system or user-installed ones.
|
# Find precompiled libraries, and avoid system or user-installed ones.
|
||||||
|
|
||||||
if(EXISTS ${LIBDIR})
|
if(EXISTS ${LIBDIR})
|
||||||
|
include(platform_old_libs_update)
|
||||||
without_system_libs_begin()
|
without_system_libs_begin()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -214,7 +215,12 @@ if(WITH_SDL)
|
|||||||
find_package(SDL2)
|
find_package(SDL2)
|
||||||
set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIRS})
|
set(SDL_INCLUDE_DIR ${SDL2_INCLUDE_DIRS})
|
||||||
set(SDL_LIBRARY ${SDL2_LIBRARIES})
|
set(SDL_LIBRARY ${SDL2_LIBRARIES})
|
||||||
string(APPEND PLATFORM_LINKFLAGS " -framework ForceFeedback")
|
string(APPEND PLATFORM_LINKFLAGS " -framework ForceFeedback -framework GameController")
|
||||||
|
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
|
||||||
|
# The minimum macOS version of the libraries makes it so this is included in SDL on arm64
|
||||||
|
# but not x86_64.
|
||||||
|
string(APPEND PLATFORM_LINKFLAGS " -framework CoreHaptics")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PNG_ROOT ${LIBDIR}/png)
|
set(PNG_ROOT ${LIBDIR}/png)
|
||||||
|
46
build_files/cmake/platform/platform_old_libs_update.cmake
Normal file
46
build_files/cmake/platform/platform_old_libs_update.cmake
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
# Copyright 2022 Blender Foundation. All rights reserved.
|
||||||
|
|
||||||
|
# Auto update existing CMake caches for new libraries
|
||||||
|
|
||||||
|
function(unset_cache_variables pattern)
|
||||||
|
get_cmake_property(_cache_variables CACHE_VARIABLES)
|
||||||
|
foreach (_cache_variable ${_cache_variables})
|
||||||
|
if("${_cache_variable}" MATCHES "${pattern}")
|
||||||
|
unset(${_cache_variable} CACHE)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
# Detect update from 3.1 to 3.2 libs.
|
||||||
|
if(UNIX AND
|
||||||
|
DEFINED OPENEXR_VERSION AND
|
||||||
|
OPENEXR_VERSION VERSION_LESS "3.0.0" AND
|
||||||
|
EXISTS ${LIBDIR}/imath)
|
||||||
|
message(STATUS "Auto updating CMake configuration for Blender 3.2 libraries")
|
||||||
|
|
||||||
|
unset_cache_variables("^OPENIMAGEIO")
|
||||||
|
unset_cache_variables("^OPENEXR")
|
||||||
|
unset_cache_variables("^IMATH")
|
||||||
|
unset_cache_variables("^PNG")
|
||||||
|
unset_cache_variables("^USD")
|
||||||
|
unset_cache_variables("^WEBP")
|
||||||
|
unset_cache_variables("^NANOVDB")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Automatically set WebP on/off depending if libraries are available.
|
||||||
|
if(EXISTS ${LIBDIR}/webp)
|
||||||
|
if(WITH_OPENIMAGEIO)
|
||||||
|
set(WITH_IMAGE_WEBP ON CACHE BOOL "" FORCE)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
set(WITH_IMAGE_WEBP OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# NanoVDB moved into openvdb.
|
||||||
|
if(UNIX AND DEFINED NANOVDB_INCLUDE_DIR)
|
||||||
|
if(NOT EXISTS ${NANOVDB_INCLUDE_DIR} AND
|
||||||
|
EXISTS ${LIBDIR}/openvdb/include/nanovdb)
|
||||||
|
unset_cache_variables("^NANOVDB")
|
||||||
|
endif()
|
||||||
|
endif()
|
@@ -38,13 +38,22 @@ if(EXISTS ${LIBDIR})
|
|||||||
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
|
||||||
|
|
||||||
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
file(GLOB LIB_SUBDIRS ${LIBDIR}/*)
|
||||||
|
|
||||||
# Ignore Mesa software OpenGL libraries, they are not intended to be
|
# Ignore Mesa software OpenGL libraries, they are not intended to be
|
||||||
# linked against but to optionally override at runtime.
|
# linked against but to optionally override at runtime.
|
||||||
list(REMOVE_ITEM LIB_SUBDIRS ${LIBDIR}/mesa)
|
list(REMOVE_ITEM LIB_SUBDIRS ${LIBDIR}/mesa)
|
||||||
|
|
||||||
|
# Ignore DPC++ as it contains its own copy of LLVM/CLang which we do
|
||||||
|
# not need to be ever discovered for the Blender linking.
|
||||||
|
list(REMOVE_ITEM LIB_SUBDIRS ${LIBDIR}/dpcpp)
|
||||||
|
|
||||||
# NOTE: Make sure "proper" compiled zlib comes first before the one
|
# NOTE: Make sure "proper" compiled zlib comes first before the one
|
||||||
# which is a part of OpenCollada. They have different ABI, and we
|
# which is a part of OpenCollada. They have different ABI, and we
|
||||||
# do need to use the official one.
|
# do need to use the official one.
|
||||||
set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
|
set(CMAKE_PREFIX_PATH ${LIBDIR}/zlib ${LIB_SUBDIRS})
|
||||||
|
|
||||||
|
include(platform_old_libs_update)
|
||||||
|
|
||||||
set(WITH_STATIC_LIBS ON)
|
set(WITH_STATIC_LIBS ON)
|
||||||
# OpenMP usually can't be statically linked into shared libraries,
|
# OpenMP usually can't be statically linked into shared libraries,
|
||||||
# due to not being compiled with position independent code.
|
# due to not being compiled with position independent code.
|
||||||
@@ -268,6 +277,18 @@ if(WITH_CYCLES AND WITH_CYCLES_OSL)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(WITH_CYCLES_DEVICE_ONEAPI)
|
||||||
|
set(CYCLES_LEVEL_ZERO ${LIBDIR}/level-zero CACHE PATH "Path to Level Zero installation")
|
||||||
|
if(EXISTS ${CYCLES_LEVEL_ZERO} AND NOT LEVEL_ZERO_ROOT_DIR)
|
||||||
|
set(LEVEL_ZERO_ROOT_DIR ${CYCLES_LEVEL_ZERO})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(CYCLES_SYCL ${LIBDIR}/dpcpp CACHE PATH "Path to DPC++ and SYCL installation")
|
||||||
|
if(EXISTS ${CYCLES_SYCL} AND NOT SYCL_ROOT_DIR)
|
||||||
|
set(SYCL_ROOT_DIR ${CYCLES_SYCL})
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENVDB)
|
if(WITH_OPENVDB)
|
||||||
find_package_wrapper(OpenVDB)
|
find_package_wrapper(OpenVDB)
|
||||||
find_package_wrapper(Blosc)
|
find_package_wrapper(Blosc)
|
||||||
@@ -373,6 +394,7 @@ if(WITH_IMAGE_WEBP)
|
|||||||
find_package_wrapper(WebP)
|
find_package_wrapper(WebP)
|
||||||
if(NOT WEBP_FOUND)
|
if(NOT WEBP_FOUND)
|
||||||
set(WITH_IMAGE_WEBP OFF)
|
set(WITH_IMAGE_WEBP OFF)
|
||||||
|
message(WARNING "WebP not found, disabling WITH_IMAGE_WEBP")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -394,6 +416,9 @@ if(WITH_OPENIMAGEIO)
|
|||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
|
list(APPEND OPENIMAGEIO_LIBRARIES "${OPENEXR_LIBRARIES}")
|
||||||
endif()
|
endif()
|
||||||
|
if(WITH_IMAGE_WEBP)
|
||||||
|
list(APPEND OPENIMAGEIO_LIBRARIES "${WEBP_LIBRARIES}")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT OPENIMAGEIO_FOUND)
|
if(NOT OPENIMAGEIO_FOUND)
|
||||||
set(WITH_OPENIMAGEIO OFF)
|
set(WITH_OPENIMAGEIO OFF)
|
||||||
@@ -606,17 +631,42 @@ if(WITH_GHOST_WAYLAND)
|
|||||||
pkg_check_modules(wayland-scanner REQUIRED wayland-scanner)
|
pkg_check_modules(wayland-scanner REQUIRED wayland-scanner)
|
||||||
pkg_check_modules(xkbcommon REQUIRED xkbcommon)
|
pkg_check_modules(xkbcommon REQUIRED xkbcommon)
|
||||||
pkg_check_modules(wayland-cursor REQUIRED wayland-cursor)
|
pkg_check_modules(wayland-cursor REQUIRED wayland-cursor)
|
||||||
|
|
||||||
|
if(WITH_GHOST_WAYLAND_DBUS)
|
||||||
pkg_check_modules(dbus REQUIRED dbus-1)
|
pkg_check_modules(dbus REQUIRED dbus-1)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(WITH_GL_EGL ON)
|
if(WITH_GHOST_WAYLAND_LIBDECOR)
|
||||||
|
pkg_check_modules(libdecor REQUIRED libdecor-0>=0.1)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
|
${xkbcommon_LINK_LIBRARIES}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(NOT WITH_GHOST_WAYLAND_DYNLOAD)
|
||||||
list(APPEND PLATFORM_LINKLIBS
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
${wayland-client_LINK_LIBRARIES}
|
${wayland-client_LINK_LIBRARIES}
|
||||||
${wayland-egl_LINK_LIBRARIES}
|
${wayland-egl_LINK_LIBRARIES}
|
||||||
${xkbcommon_LINK_LIBRARIES}
|
|
||||||
${wayland-cursor_LINK_LIBRARIES}
|
${wayland-cursor_LINK_LIBRARIES}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WITH_GHOST_WAYLAND_DBUS)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
${dbus_LINK_LIBRARIES}
|
${dbus_LINK_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
add_definitions(-DWITH_GHOST_WAYLAND_DBUS)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WITH_GHOST_WAYLAND_LIBDECOR)
|
||||||
|
if(NOT WITH_GHOST_WAYLAND_DYNLOAD)
|
||||||
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
|
${libdecor_LIBRARIES}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
add_definitions(-DWITH_GHOST_WAYLAND_LIBDECOR)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_GHOST_X11)
|
if(WITH_GHOST_X11)
|
||||||
|
@@ -104,7 +104,7 @@ string(APPEND CMAKE_MODULE_LINKER_FLAGS " /SAFESEH:NO /ignore:4099")
|
|||||||
list(APPEND PLATFORM_LINKLIBS
|
list(APPEND PLATFORM_LINKLIBS
|
||||||
ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 Comctl32 version
|
ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 Comctl32 version
|
||||||
advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp Shlwapi
|
advapi32 shfolder shell32 ole32 oleaut32 uuid psapi Dbghelp Shlwapi
|
||||||
pathcch Shcore
|
pathcch Shcore Dwmapi
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_INPUT_IME)
|
if(WITH_INPUT_IME)
|
||||||
@@ -262,6 +262,8 @@ if(NOT EXISTS "${LIBDIR}/")
|
|||||||
message(FATAL_ERROR "\n\nWindows requires pre-compiled libs at: '${LIBDIR}'. Please run `make update` in the blender source folder to obtain them.")
|
message(FATAL_ERROR "\n\nWindows requires pre-compiled libs at: '${LIBDIR}'. Please run `make update` in the blender source folder to obtain them.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
include(platform_old_libs_update)
|
||||||
|
|
||||||
if(CMAKE_GENERATOR MATCHES "^Visual Studio.+" AND # Only supported in the VS IDE
|
if(CMAKE_GENERATOR MATCHES "^Visual Studio.+" AND # Only supported in the VS IDE
|
||||||
MSVC_VERSION GREATER_EQUAL 1924 AND # Supported for 16.4+
|
MSVC_VERSION GREATER_EQUAL 1924 AND # Supported for 16.4+
|
||||||
WITH_CLANG_TIDY # And Clang Tidy needs to be on
|
WITH_CLANG_TIDY # And Clang Tidy needs to be on
|
||||||
@@ -343,13 +345,18 @@ if(WITH_FFTW3)
|
|||||||
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
set(FFTW3_LIBPATH ${FFTW3}/lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
windows_find_package(WebP)
|
if(WITH_IMAGE_WEBP)
|
||||||
if(NOT WEBP_FOUND)
|
windows_find_package(WebP)
|
||||||
|
if(NOT WEBP_FOUND)
|
||||||
if(EXISTS ${LIBDIR}/webp)
|
if(EXISTS ${LIBDIR}/webp)
|
||||||
set(WEBP_INCLUDE_DIRS ${LIBDIR}/webp/include)
|
set(WEBP_INCLUDE_DIRS ${LIBDIR}/webp/include)
|
||||||
set(WEBP_ROOT_DIR ${LIBDIR}/webp)
|
set(WEBP_ROOT_DIR ${LIBDIR}/webp)
|
||||||
set(WEBP_LIBRARIES ${LIBDIR}/webp/lib/webp.lib ${LIBDIR}/webp/lib/webpdemux.lib ${LIBDIR}/webp/lib/webpmux.lib)
|
set(WEBP_LIBRARIES ${LIBDIR}/webp/lib/webp.lib ${LIBDIR}/webp/lib/webpdemux.lib ${LIBDIR}/webp/lib/webpmux.lib)
|
||||||
set(WEBP_FOUND ON)
|
set(WEBP_FOUND ON)
|
||||||
|
else()
|
||||||
|
message(STATUS "WITH_IMAGE_WEBP is ON but WEBP libraries are not found, setting WITH_IMAGE_WEBP=OFF")
|
||||||
|
set(WITH_IMAGE_WEBP OFF)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -414,15 +421,47 @@ if(WITH_CODEC_FFMPEG)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_OPENEXR)
|
if(WITH_IMAGE_OPENEXR)
|
||||||
windows_find_package(OpenEXR REQUIRED)
|
# Imath and OpenEXR have a single combined build option and include and library variables
|
||||||
if(NOT OpenEXR_FOUND)
|
# used by the rest of the build system.
|
||||||
|
set(IMATH_ROOT_DIR ${LIBDIR}/imath)
|
||||||
|
set(IMATH_VERSION "3.14")
|
||||||
|
windows_find_package(IMATH REQUIRED)
|
||||||
|
if(NOT IMATH_FOUND)
|
||||||
|
set(IMATH ${LIBDIR}/imath)
|
||||||
|
set(IMATH_INCLUDE_DIR ${IMATH}/include)
|
||||||
|
set(IMATH_INCLUDE_DIRS ${IMATH_INCLUDE_DIR} ${IMATH}/include/Imath)
|
||||||
|
set(IMATH_LIBPATH ${IMATH}/lib)
|
||||||
|
set(IMATH_LIBRARIES
|
||||||
|
optimized ${IMATH_LIBPATH}/Imath_s.lib
|
||||||
|
debug ${IMATH_LIBPATH}/Imath_s_d.lib
|
||||||
|
)
|
||||||
|
endif()
|
||||||
set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
|
set(OPENEXR_ROOT_DIR ${LIBDIR}/openexr)
|
||||||
set(OPENEXR_VERSION "2.1")
|
set(OPENEXR_VERSION "3.14")
|
||||||
|
windows_find_package(OPENEXR REQUIRED)
|
||||||
|
if(NOT OpenEXR_FOUND)
|
||||||
warn_hardcoded_paths(OpenEXR)
|
warn_hardcoded_paths(OpenEXR)
|
||||||
set(OPENEXR ${LIBDIR}/openexr)
|
set(OPENEXR ${LIBDIR}/openexr)
|
||||||
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
set(OPENEXR_INCLUDE_DIR ${OPENEXR}/include)
|
||||||
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR}/include/OpenEXR)
|
set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${IMATH_INCLUDE_DIRS} ${OPENEXR}/include/OpenEXR)
|
||||||
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
set(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
||||||
|
# Check if the 3.x library name exists
|
||||||
|
# if not assume this is a 2.x library folder
|
||||||
|
if(EXISTS "${OPENEXR_LIBPATH}/OpenEXR_s.lib")
|
||||||
|
set(OPENEXR_LIBRARIES
|
||||||
|
optimized ${OPENEXR_LIBPATH}/Iex_s.lib
|
||||||
|
optimized ${OPENEXR_LIBPATH}/IlmThread_s.lib
|
||||||
|
optimized ${OPENEXR_LIBPATH}/OpenEXR_s.lib
|
||||||
|
optimized ${OPENEXR_LIBPATH}/OpenEXRCore_s.lib
|
||||||
|
optimized ${OPENEXR_LIBPATH}/OpenEXRUtil_s.lib
|
||||||
|
debug ${OPENEXR_LIBPATH}/Iex_s_d.lib
|
||||||
|
debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
|
||||||
|
debug ${OPENEXR_LIBPATH}/OpenEXR_s_d.lib
|
||||||
|
debug ${OPENEXR_LIBPATH}/OpenEXRCore_s_d.lib
|
||||||
|
debug ${OPENEXR_LIBPATH}/OpenEXRUtil_s_d.lib
|
||||||
|
${IMATH_LIBRARIES}
|
||||||
|
)
|
||||||
|
else()
|
||||||
set(OPENEXR_LIBRARIES
|
set(OPENEXR_LIBRARIES
|
||||||
optimized ${OPENEXR_LIBPATH}/Iex_s.lib
|
optimized ${OPENEXR_LIBPATH}/Iex_s.lib
|
||||||
optimized ${OPENEXR_LIBPATH}/Half_s.lib
|
optimized ${OPENEXR_LIBPATH}/Half_s.lib
|
||||||
@@ -436,6 +475,7 @@ if(WITH_IMAGE_OPENEXR)
|
|||||||
debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
|
debug ${OPENEXR_LIBPATH}/IlmThread_s_d.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_IMAGE_TIFF)
|
if(WITH_IMAGE_TIFF)
|
||||||
@@ -500,8 +540,14 @@ if(WITH_BOOST)
|
|||||||
if(NOT BOOST_VERSION)
|
if(NOT BOOST_VERSION)
|
||||||
message(FATAL_ERROR "Unable to determine Boost version")
|
message(FATAL_ERROR "Unable to determine Boost version")
|
||||||
endif()
|
endif()
|
||||||
|
set(BOOST_POSTFIX "vc142-mt-x64-${BOOST_VERSION}.lib")
|
||||||
|
set(BOOST_DEBUG_POSTFIX "vc142-mt-gd-x64-${BOOST_VERSION}.lib")
|
||||||
|
if(NOT EXISTS ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX})
|
||||||
|
# If the new library names do not exist fall back to the old ones
|
||||||
|
# to ease the transition period between the libs.
|
||||||
set(BOOST_POSTFIX "vc141-mt-x64-${BOOST_VERSION}.lib")
|
set(BOOST_POSTFIX "vc141-mt-x64-${BOOST_VERSION}.lib")
|
||||||
set(BOOST_DEBUG_POSTFIX "vc141-mt-gd-x64-${BOOST_VERSION}.lib")
|
set(BOOST_DEBUG_POSTFIX "vc141-mt-gd-x64-${BOOST_VERSION}.lib")
|
||||||
|
endif()
|
||||||
set(BOOST_LIBRARIES
|
set(BOOST_LIBRARIES
|
||||||
optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
|
||||||
optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
|
optimized ${BOOST_LIBPATH}/libboost_filesystem-${BOOST_POSTFIX}
|
||||||
@@ -545,7 +591,6 @@ if(WITH_OPENIMAGEIO)
|
|||||||
set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
|
set(OIIO_DEBUG debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_d.lib debug ${OPENIMAGEIO_LIBPATH}/OpenImageIO_Util_d.lib)
|
||||||
set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
|
set(OPENIMAGEIO_LIBRARIES ${OIIO_OPTIMIZED} ${OIIO_DEBUG})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
|
set(OPENIMAGEIO_DEFINITIONS "-DUSE_TBB=0")
|
||||||
set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
|
set(OPENIMAGEIO_IDIFF "${OPENIMAGEIO}/bin/idiff.exe")
|
||||||
add_definitions(-DOIIO_STATIC_DEFINE)
|
add_definitions(-DOIIO_STATIC_DEFINE)
|
||||||
@@ -575,6 +620,7 @@ if(WITH_LLVM)
|
|||||||
message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
|
message(WARNING "LLVM debug libs not present on this system. Using release libs for debug builds.")
|
||||||
set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
|
set(LLVM_LIBRARY ${LLVM_LIBRARY_OPTIMIZED})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_OPENCOLORIO)
|
if(WITH_OPENCOLORIO)
|
||||||
@@ -594,7 +640,6 @@ if(WITH_OPENCOLORIO)
|
|||||||
debug ${OPENCOLORIO_LIBPATH}/pystring_d.lib
|
debug ${OPENCOLORIO_LIBPATH}/pystring_d.lib
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENCOLORIO_DEFINITIONS "-DOpenColorIO_SKIP_IMPORTS")
|
set(OPENCOLORIO_DEFINITIONS "-DOpenColorIO_SKIP_IMPORTS")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -604,17 +649,24 @@ if(WITH_OPENVDB)
|
|||||||
set(OPENVDB ${LIBDIR}/openVDB)
|
set(OPENVDB ${LIBDIR}/openVDB)
|
||||||
set(OPENVDB_LIBPATH ${OPENVDB}/lib)
|
set(OPENVDB_LIBPATH ${OPENVDB}/lib)
|
||||||
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
|
set(OPENVDB_INCLUDE_DIRS ${OPENVDB}/include)
|
||||||
set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib)
|
set(OPENVDB_LIBRARIES optimized ${OPENVDB_LIBPATH}/openvdb.lib debug ${OPENVDB_LIBPATH}/openvdb_d.lib )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(OPENVDB_DEFINITIONS -DNOMINMAX -D_USE_MATH_DEFINES)
|
set(OPENVDB_DEFINITIONS -DNOMINMAX -D_USE_MATH_DEFINES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_NANOVDB)
|
if(WITH_NANOVDB)
|
||||||
|
set(NANOVDB ${LIBDIR}/openvdb)
|
||||||
|
set(NANOVDB_INCLUDE_DIR ${NANOVDB}/include)
|
||||||
|
if(NOT EXISTS "${NANOVDB_INCLUDE_DIR}/nanovdb")
|
||||||
|
# When not found, could be an older lib folder with where nanovdb
|
||||||
|
# had its own lib folder, to ease the transition period, fall back
|
||||||
|
# to that copy if the copy in openvdb is not found.
|
||||||
set(NANOVDB ${LIBDIR}/nanoVDB)
|
set(NANOVDB ${LIBDIR}/nanoVDB)
|
||||||
set(NANOVDB_INCLUDE_DIR ${NANOVDB}/include)
|
set(NANOVDB_INCLUDE_DIR ${NANOVDB}/include)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(WITH_OPENIMAGEDENOISE)
|
if(WITH_OPENIMAGEDENOISE)
|
||||||
set(OPENIMAGEDENOISE ${LIBDIR}/OpenImageDenoise)
|
set(OPENIMAGEDENOISE ${LIBDIR}/OpenImageDenoise)
|
||||||
set(OPENIMAGEDENOISE_LIBPATH ${LIBDIR}/OpenImageDenoise/lib)
|
set(OPENIMAGEDENOISE_LIBPATH ${LIBDIR}/OpenImageDenoise/lib)
|
||||||
@@ -640,7 +692,12 @@ endif()
|
|||||||
|
|
||||||
if(WITH_IMAGE_OPENJPEG)
|
if(WITH_IMAGE_OPENJPEG)
|
||||||
set(OPENJPEG ${LIBDIR}/openjpeg)
|
set(OPENJPEG ${LIBDIR}/openjpeg)
|
||||||
|
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.4)
|
||||||
|
if(NOT EXISTS "${OPENJPEG_INCLUDE_DIRS}")
|
||||||
|
# when not found, could be an older lib folder with openjpeg 2.3
|
||||||
|
# to ease the transition period, fall back if 2.4 is not found.
|
||||||
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
|
set(OPENJPEG_INCLUDE_DIRS ${OPENJPEG}/include/openjpeg-2.3)
|
||||||
|
endif()
|
||||||
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
|
set(OPENJPEG_LIBRARIES ${OPENJPEG}/lib/openjp2.lib)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@@ -783,9 +840,16 @@ if(WITH_USD)
|
|||||||
windows_find_package(USD)
|
windows_find_package(USD)
|
||||||
if(NOT USD_FOUND)
|
if(NOT USD_FOUND)
|
||||||
set(USD_INCLUDE_DIRS ${LIBDIR}/usd/include)
|
set(USD_INCLUDE_DIRS ${LIBDIR}/usd/include)
|
||||||
|
set(USD_RELEASE_LIB ${LIBDIR}/usd/lib/usd_usd_m.lib)
|
||||||
|
set(USD_DEBUG_LIB ${LIBDIR}/usd/lib/usd_usd_m_d.lib)
|
||||||
|
set(USD_LIBRARY_DIR ${LIBDIR}/usd/lib)
|
||||||
|
# Older USD had different filenames, if the new ones are
|
||||||
|
# not found see if the older ones exist, to ease the
|
||||||
|
# transition period while landing libs.
|
||||||
|
if(NOT EXISTS "${USD_RELEASE_LIB}")
|
||||||
set(USD_RELEASE_LIB ${LIBDIR}/usd/lib/libusd_m.lib)
|
set(USD_RELEASE_LIB ${LIBDIR}/usd/lib/libusd_m.lib)
|
||||||
set(USD_DEBUG_LIB ${LIBDIR}/usd/lib/libusd_m_d.lib)
|
set(USD_DEBUG_LIB ${LIBDIR}/usd/lib/libusd_m_d.lib)
|
||||||
set(USD_LIBRARY_DIR ${LIBDIR}/usd/lib)
|
endif()
|
||||||
set(USD_LIBRARIES
|
set(USD_LIBRARIES
|
||||||
debug ${USD_DEBUG_LIB}
|
debug ${USD_DEBUG_LIB}
|
||||||
optimized ${USD_RELEASE_LIB}
|
optimized ${USD_RELEASE_LIB}
|
||||||
@@ -886,3 +950,6 @@ endif()
|
|||||||
|
|
||||||
set(ZSTD_INCLUDE_DIRS ${LIBDIR}/zstd/include)
|
set(ZSTD_INCLUDE_DIRS ${LIBDIR}/zstd/include)
|
||||||
set(ZSTD_LIBRARIES ${LIBDIR}/zstd/lib/zstd_static.lib)
|
set(ZSTD_LIBRARIES ${LIBDIR}/zstd/lib/zstd_static.lib)
|
||||||
|
|
||||||
|
set(LEVEL_ZERO_ROOT_DIR ${LIBDIR}/level_zero)
|
||||||
|
set(SYCL_ROOT_DIR ${LIBDIR}/dpcpp)
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Module for accessing project file data for Blender.
|
Module for accessing project file data for Blender.
|
||||||
|
|
||||||
@@ -170,7 +168,7 @@ def cmake_advanced_info() -> Union[Tuple[List[str], List[Tuple[str, str]]], Tupl
|
|||||||
project_path = create_eclipse_project()
|
project_path = create_eclipse_project()
|
||||||
|
|
||||||
if not exists(project_path):
|
if not exists(project_path):
|
||||||
print("Generating Eclipse Prokect File Failed: %r not found" % project_path)
|
print("Generating Eclipse Project File Failed: %r not found" % project_path)
|
||||||
return None, None
|
return None, None
|
||||||
|
|
||||||
from xml.dom.minidom import parse
|
from xml.dom.minidom import parse
|
||||||
|
@@ -1,7 +1,5 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
__all__ = (
|
__all__ = (
|
||||||
"build_info",
|
"build_info",
|
||||||
"SOURCE_DIR",
|
"SOURCE_DIR",
|
||||||
@@ -114,7 +112,6 @@ def makefile_log() -> List[str]:
|
|||||||
print("Can't execute process")
|
print("Can't execute process")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
|
||||||
while process.poll():
|
while process.poll():
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
|
||||||
@@ -228,7 +225,7 @@ def build_defines_as_args() -> List[str]:
|
|||||||
def queue_processes(
|
def queue_processes(
|
||||||
process_funcs: Sequence[Tuple[Callable[..., subprocess.Popen[Any]], Tuple[Any, ...]]],
|
process_funcs: Sequence[Tuple[Callable[..., subprocess.Popen[Any]], Tuple[Any, ...]]],
|
||||||
*,
|
*,
|
||||||
job_total: int =-1,
|
job_total: int = -1,
|
||||||
sleep: float = 0.1,
|
sleep: float = 0.1,
|
||||||
) -> None:
|
) -> None:
|
||||||
""" Takes a list of function arg pairs, each function must return a process
|
""" Takes a list of function arg pairs, each function must return a process
|
||||||
|
@@ -54,6 +54,8 @@ buildbot:
|
|||||||
version: '10.1.243'
|
version: '10.1.243'
|
||||||
cuda11:
|
cuda11:
|
||||||
version: '11.4.1'
|
version: '11.4.1'
|
||||||
|
hip:
|
||||||
|
version: '5.2.21440'
|
||||||
optix:
|
optix:
|
||||||
version: '7.3.0'
|
version: '7.3.0'
|
||||||
cmake:
|
cmake:
|
||||||
|
@@ -1,8 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import shutil
|
import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
|
@@ -143,8 +143,8 @@ def packages_path(current_directory: Path, cli_args: Any) -> Optional[Path]:
|
|||||||
|
|
||||||
return Path(relpath)
|
return Path(relpath)
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
### Manifest creation
|
# Manifest creation
|
||||||
|
|
||||||
|
|
||||||
def create_manifest(
|
def create_manifest(
|
||||||
@@ -195,7 +195,8 @@ def packages_to_manifest(outfile: TextIO, packages_dir: Path) -> None:
|
|||||||
print(path, file=outfile)
|
print(path, file=outfile)
|
||||||
|
|
||||||
|
|
||||||
### Higher-level functions
|
# -----------------------------------------------------------------------------
|
||||||
|
# Higher-level functions
|
||||||
|
|
||||||
|
|
||||||
def create_tarball(
|
def create_tarball(
|
||||||
@@ -249,7 +250,8 @@ def cleanup(manifest: Path) -> None:
|
|||||||
print("OK")
|
print("OK")
|
||||||
|
|
||||||
|
|
||||||
## Low-level commands
|
# -----------------------------------------------------------------------------
|
||||||
|
# Low-level commands
|
||||||
|
|
||||||
|
|
||||||
def git_ls_files(directory: Path = Path(".")) -> Iterable[Path]:
|
def git_ls_files(directory: Path = Path(".")) -> Iterable[Path]:
|
||||||
@@ -265,7 +267,7 @@ def git_ls_files(directory: Path = Path(".")) -> Iterable[Path]:
|
|||||||
yield path
|
yield path
|
||||||
|
|
||||||
|
|
||||||
def git_command(*cli_args: Union[bytes, str, Path] ) -> Iterable[str]:
|
def git_command(*cli_args: Union[bytes, str, Path]) -> Iterable[str]:
|
||||||
"""Generator, yields lines of output from a Git command."""
|
"""Generator, yields lines of output from a Git command."""
|
||||||
command = ("git", *cli_args)
|
command = ("git", *cli_args)
|
||||||
|
|
||||||
|
@@ -129,6 +129,7 @@ def svn_update(args, release_version):
|
|||||||
call(svn_non_interactive + ["switch", svn_url + dirname, dirpath], exit_on_error=False)
|
call(svn_non_interactive + ["switch", svn_url + dirname, dirpath], exit_on_error=False)
|
||||||
call(svn_non_interactive + ["update", dirpath])
|
call(svn_non_interactive + ["update", dirpath])
|
||||||
|
|
||||||
|
|
||||||
# Test if git repo can be updated.
|
# Test if git repo can be updated.
|
||||||
def git_update_skip(args, check_remote_exists=True):
|
def git_update_skip(args, check_remote_exists=True):
|
||||||
if make_utils.command_missing(args.git_command):
|
if make_utils.command_missing(args.git_command):
|
||||||
|
@@ -47,8 +47,10 @@ def check_output(cmd, exit_on_error=True):
|
|||||||
|
|
||||||
|
|
||||||
def git_branch_exists(git_command, branch):
|
def git_branch_exists(git_command, branch):
|
||||||
return call([git_command, "rev-parse", "--verify", branch], exit_on_error=False, silent=True) == 0 or \
|
return (
|
||||||
|
call([git_command, "rev-parse", "--verify", branch], exit_on_error=False, silent=True) == 0 or
|
||||||
call([git_command, "rev-parse", "--verify", "remotes/origin/" + branch], exit_on_error=False, silent=True) == 0
|
call([git_command, "rev-parse", "--verify", "remotes/origin/" + branch], exit_on_error=False, silent=True) == 0
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def git_branch(git_command):
|
def git_branch(git_command):
|
||||||
|
@@ -3,13 +3,10 @@ for %%X in (svn.exe) do (set SVN=%%~$PATH:X)
|
|||||||
for %%X in (cmake.exe) do (set CMAKE=%%~$PATH:X)
|
for %%X in (cmake.exe) do (set CMAKE=%%~$PATH:X)
|
||||||
for %%X in (ctest.exe) do (set CTEST=%%~$PATH:X)
|
for %%X in (ctest.exe) do (set CTEST=%%~$PATH:X)
|
||||||
for %%X in (git.exe) do (set GIT=%%~$PATH:X)
|
for %%X in (git.exe) do (set GIT=%%~$PATH:X)
|
||||||
REM For python, default on 39 but if that does not exist also check
|
REM For python, default on 310 but if that does not exist also check
|
||||||
REM the 310,311 and 312 folders to see if those are there, it checks
|
REM the 311, 312 and finally 39 folders to see if those are there, it checks
|
||||||
REM this far ahead to ensure good lib folder compatibility in the future.
|
REM this far ahead to ensure good lib folder compatibility in the future
|
||||||
set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe
|
REM it falls back to 3.9 just incase it is a very old lib folder.
|
||||||
if EXIST %PYTHON% (
|
|
||||||
goto detect_python_done
|
|
||||||
)
|
|
||||||
set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\310\bin\python.exe
|
set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\310\bin\python.exe
|
||||||
if EXIST %PYTHON% (
|
if EXIST %PYTHON% (
|
||||||
goto detect_python_done
|
goto detect_python_done
|
||||||
@@ -22,6 +19,10 @@ set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\312\bin\python.exe
|
|||||||
if EXIST %PYTHON% (
|
if EXIST %PYTHON% (
|
||||||
goto detect_python_done
|
goto detect_python_done
|
||||||
)
|
)
|
||||||
|
set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe
|
||||||
|
if EXIST %PYTHON% (
|
||||||
|
goto detect_python_done
|
||||||
|
)
|
||||||
|
|
||||||
if NOT EXIST %PYTHON% (
|
if NOT EXIST %PYTHON% (
|
||||||
echo Warning: Python not found, there is likely an issue with the library folder
|
echo Warning: Python not found, there is likely an issue with the library folder
|
||||||
|
@@ -378,7 +378,8 @@ def usage():
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|
||||||
import os, os.path
|
import os
|
||||||
|
import os.path
|
||||||
|
|
||||||
try:
|
try:
|
||||||
bpy = __import__('bpy')
|
bpy = __import__('bpy')
|
||||||
@@ -410,7 +411,7 @@ def main():
|
|||||||
# read blend header from blend file
|
# read blend header from blend file
|
||||||
log.info("2: read file:")
|
log.info("2: read file:")
|
||||||
|
|
||||||
if not dir in sys.path:
|
if dir not in sys.path:
|
||||||
sys.path.append(dir)
|
sys.path.append(dir)
|
||||||
import BlendFileReader
|
import BlendFileReader
|
||||||
|
|
||||||
|
@@ -38,7 +38,7 @@ PROJECT_NAME = Blender
|
|||||||
# could be handy for archiving the generated documentation or if some version
|
# could be handy for archiving the generated documentation or if some version
|
||||||
# control system is used.
|
# control system is used.
|
||||||
|
|
||||||
PROJECT_NUMBER = V3.2
|
PROJECT_NUMBER = V3.3
|
||||||
|
|
||||||
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
||||||
# for a project that appears at the top of each page and should give viewer a
|
# for a project that appears at the top of each page and should give viewer a
|
||||||
|
@@ -11,8 +11,6 @@ where <path-to-blender> is the path to the Blender executable,
|
|||||||
and <output-filename> is where to write the generated man page.
|
and <output-filename> is where to write the generated man page.
|
||||||
'''
|
'''
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
import os
|
import os
|
||||||
import subprocess
|
import subprocess
|
||||||
@@ -103,10 +101,10 @@ blender \- a full-featured 3D application''')
|
|||||||
.PP
|
.PP
|
||||||
.B blender
|
.B blender
|
||||||
is a full-featured 3D application. It supports the entirety of the 3D pipeline - '''
|
is a full-featured 3D application. It supports the entirety of the 3D pipeline - '''
|
||||||
'''modeling, rigging, animation, simulation, rendering, compositing, motion tracking, and video editing.
|
'''modeling, rigging, animation, simulation, rendering, compositing, motion tracking, and video editing.
|
||||||
|
|
||||||
Use Blender to create 3D images and animations, films and commercials, content for games, '''
|
Use Blender to create 3D images and animations, films and commercials, content for games, '''
|
||||||
r'''architectural and industrial visualizations, and scientific visualizations.
|
r'''architectural and industrial visualizations, and scientific visualizations.
|
||||||
|
|
||||||
https://www.blender.org''')
|
https://www.blender.org''')
|
||||||
|
|
||||||
|
@@ -11,6 +11,7 @@ import queue
|
|||||||
|
|
||||||
execution_queue = queue.Queue()
|
execution_queue = queue.Queue()
|
||||||
|
|
||||||
|
|
||||||
# This function can safely be called in another thread.
|
# This function can safely be called in another thread.
|
||||||
# The function will be executed when the timer runs the next time.
|
# The function will be executed when the timer runs the next time.
|
||||||
def run_in_main_thread(function):
|
def run_in_main_thread(function):
|
||||||
|
@@ -9,7 +9,7 @@ operator in the different part of the user interface.
|
|||||||
The context overrides are passed as a dictionary, with keys matching the context
|
The context overrides are passed as a dictionary, with keys matching the context
|
||||||
member names in bpy.context.
|
member names in bpy.context.
|
||||||
For example to override ``bpy.context.active_object``,
|
For example to override ``bpy.context.active_object``,
|
||||||
you would pass ``{'active_object': object}``.
|
you would pass ``{'active_object': object}`` to :class:`bpy.types.Context.temp_override`.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@@ -17,8 +17,10 @@ you would pass ``{'active_object': object}``.
|
|||||||
(otherwise, you'll have to find and gather all needed data yourself).
|
(otherwise, you'll have to find and gather all needed data yourself).
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# remove all objects in scene rather than the selected ones
|
# Remove all objects in scene rather than the selected ones.
|
||||||
import bpy
|
import bpy
|
||||||
override = bpy.context.copy()
|
from bpy import context
|
||||||
override['selected_objects'] = list(bpy.context.scene.objects)
|
override = context.copy()
|
||||||
bpy.ops.object.delete(override)
|
override["selected_objects"] = list(context.scene.objects)
|
||||||
|
with context.temp_override(**override):
|
||||||
|
bpy.ops.object.delete()
|
||||||
|
@@ -1,17 +1,16 @@
|
|||||||
"""
|
"""
|
||||||
It is also possible to run an operator in a particular part of the user
|
It is also possible to run an operator in a particular part of the user
|
||||||
interface. For this we need to pass the window, screen, area and sometimes
|
interface. For this we need to pass the window, area and sometimes a region.
|
||||||
a region.
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# maximize 3d view in all windows
|
# Maximize 3d view in all windows.
|
||||||
import bpy
|
import bpy
|
||||||
|
from bpy import context
|
||||||
|
|
||||||
for window in bpy.context.window_manager.windows:
|
for window in context.window_manager.windows:
|
||||||
screen = window.screen
|
screen = window.screen
|
||||||
|
|
||||||
for area in screen.areas:
|
for area in screen.areas:
|
||||||
if area.type == 'VIEW_3D':
|
if area.type == 'VIEW_3D':
|
||||||
override = {'window': window, 'screen': screen, 'area': area}
|
with context.temp_override(window=window, area=area):
|
||||||
bpy.ops.screen.screen_full_area(override)
|
bpy.ops.screen.screen_full_area()
|
||||||
break
|
break
|
||||||
|
@@ -33,6 +33,11 @@ There are 3 optional positional arguments (documented in detail below).
|
|||||||
bpy.ops.test.operator(override_context, execution_context, undo)
|
bpy.ops.test.operator(override_context, execution_context, undo)
|
||||||
|
|
||||||
- override_context - ``dict`` type.
|
- override_context - ``dict`` type.
|
||||||
|
|
||||||
|
.. deprecated:: 3.2
|
||||||
|
|
||||||
|
:class:`bpy.types.Context.temp_override` should be used instead of this argument.
|
||||||
|
|
||||||
- execution_context - ``str`` (enum).
|
- execution_context - ``str`` (enum).
|
||||||
- undo - ``bool`` type.
|
- undo - ``bool`` type.
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ the middle of updating the armature without having to update dependencies
|
|||||||
after each change, by manually carrying updated matrices in a recursive walk.
|
after each change, by manually carrying updated matrices in a recursive walk.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
def set_pose_matrices(obj, matrix_map):
|
def set_pose_matrices(obj, matrix_map):
|
||||||
"Assign pose space matrices of all bones at once, ignoring constraints."
|
"Assign pose space matrices of all bones at once, ignoring constraints."
|
||||||
|
|
||||||
@@ -11,7 +12,7 @@ def set_pose_matrices(obj, matrix_map):
|
|||||||
if pbone.name in matrix_map:
|
if pbone.name in matrix_map:
|
||||||
matrix = matrix_map[pbone.name]
|
matrix = matrix_map[pbone.name]
|
||||||
|
|
||||||
## Instead of:
|
# # Instead of:
|
||||||
# pbone.matrix = matrix
|
# pbone.matrix = matrix
|
||||||
# bpy.context.view_layer.update()
|
# bpy.context.view_layer.update()
|
||||||
|
|
||||||
|
19
doc/python_api/examples/bpy.types.Context.temp_override.1.py
Normal file
19
doc/python_api/examples/bpy.types.Context.temp_override.1.py
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
"""
|
||||||
|
Overriding the context can be used to temporarily activate another ``window`` / ``area`` & ``region``,
|
||||||
|
as well as other members such as the ``active_object`` or ``bone``.
|
||||||
|
|
||||||
|
Notes:
|
||||||
|
|
||||||
|
- When overriding window, area and regions: the arguments must be consistent,
|
||||||
|
so any region argument that's passed in must be contained by the current area or the area passed in.
|
||||||
|
The same goes for the area needing to be contained in the current window.
|
||||||
|
|
||||||
|
- Temporary context overrides may be nested, when this is done, members will be added to the existing overrides.
|
||||||
|
|
||||||
|
- Context members are restored outside the scope of the context-manager.
|
||||||
|
The only exception to this is when the data is no longer available.
|
||||||
|
|
||||||
|
In the event windowing data was removed (for example), the state of the context is left as-is.
|
||||||
|
While this isn't likely to happen, explicit window operation such as closing windows or loading a new file
|
||||||
|
remove the windowing data that was set before the temporary context was created.
|
||||||
|
"""
|
15
doc/python_api/examples/bpy.types.Context.temp_override.2.py
Normal file
15
doc/python_api/examples/bpy.types.Context.temp_override.2.py
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
"""
|
||||||
|
Overriding the context can be useful to set the context after loading files
|
||||||
|
(which would otherwise by None). For example:
|
||||||
|
"""
|
||||||
|
|
||||||
|
import bpy
|
||||||
|
from bpy import context
|
||||||
|
|
||||||
|
# Reload the current file and select all.
|
||||||
|
bpy.ops.wm.open_mainfile(filepath=bpy.data.filepath)
|
||||||
|
window = context.window_manager.windows[0]
|
||||||
|
with context.temp_override(window=window):
|
||||||
|
bpy.ops.mesh.primitive_uv_sphere_add()
|
||||||
|
# The context override is needed so it's possible to set edit-mode.
|
||||||
|
bpy.ops.object.mode_set(mode='EDIT')
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user