Compare commits
565 Commits
temp-volum
...
render25
Author | SHA1 | Date | |
---|---|---|---|
bd2967f01a | |||
e454acd6a1 | |||
8e1f643c68 | |||
8e71132ff9 | |||
3057cea204 | |||
64eb8fca45 | |||
d32242d719 | |||
f430f23a90 | |||
c4f6161925 | |||
71ec3e5a15 | |||
ab22e9a9f9 | |||
06857809d7 | |||
7c7d4c972d | |||
54b4ccf0d1 | |||
70379bde73 | |||
afdf0eaba9 | |||
19bd44e8f1 | |||
fdd0719da0 | |||
d8add082d3 | |||
4f9a400d51 | |||
71484596fa | |||
76c7678037 | |||
bcee576dff | |||
ddef3fb142 | |||
9a12369b00 | |||
5d08ba9981 | |||
26fa02ac60 | |||
3077a5e5f4 | |||
da42be6bb0 | |||
ea6600c35f | |||
5cd2ee1e71 | |||
4835623158 | |||
a2232a3a3c | |||
0d0d957334 | |||
67974d22f8 | |||
3708652c95 | |||
cd15aca0a4 | |||
b2834b213d | |||
18672244b3 | |||
25bd015086 | |||
eda9ea5aa1 | |||
12acd69769 | |||
435e26cdbf | |||
a108d1e751 | |||
016954d020 | |||
b6b5dd3719 | |||
994f201ce6 | |||
bb8b17109f | |||
ead82f7b44 | |||
22b3297f2c | |||
16bb9fa6bf | |||
0c9f444ad5 | |||
b8c6b190aa | |||
c7dcae1592 | |||
fd0cb17cb5 | |||
7686dc2990 | |||
b112e8f7cf | |||
f5be8c6713 | |||
6b982199b0 | |||
d8581c2f78 | |||
b9edd036ac | |||
7bea067a9a | |||
babad75b3a | |||
11f2aa6e1f | |||
8c34c34654 | |||
917a62517a | |||
becb7e24dc | |||
4e6d1fcdb4 | |||
b3058e0470 | |||
9b548ab8ce | |||
1132052f79 | |||
5975ba7f21 | |||
695d59731d | |||
68b7a5c19e | |||
464c58b04c | |||
117c9a9d95 | |||
623211ac1d | |||
a8736649aa | |||
e993ac302b | |||
ca8f1b43dd | |||
3cd3b385c9 | |||
e577910cae | |||
4bcfa2adce | |||
8d7159a673 | |||
673e422f47 | |||
784aadc3f2 | |||
9b53c0cbaa | |||
477012bf0c | |||
ba33a76d07 | |||
59ef683191 | |||
2b762b4db3 | |||
fed02c2546 | |||
c60bf84257 | |||
451cf34694 | |||
4e948478a5 | |||
20985c3962 | |||
5059a10aa3 | |||
b361f0d284 | |||
d39863ef35 | |||
30403b83c5 | |||
eaf7baec6e | |||
7876398475 | |||
b7d2c344d2 | |||
50867ebaaa | |||
65b6cf1e79 | |||
6460458c9d | |||
c445d72719 | |||
3ce583f5b9 | |||
af00fa1b57 | |||
4492d49312 | |||
cc8aee0c9c | |||
22be1e225c | |||
fd56c4e2d6 | |||
864258184a | |||
437366cab8 | |||
a2f9de98b4 | |||
7217ce7c17 | |||
d7e2aef3b5 | |||
8fbf1f3459 | |||
6977b4c4f8 | |||
b9490265d6 | |||
995d227003 | |||
91b9dcecd0 | |||
a3b3552803 | |||
c29aca9a63 | |||
35516d3411 | |||
ed9c96a613 | |||
6bfc653fb7 | |||
ceab656ecf | |||
59460799a9 | |||
1e981721fb | |||
ba22b72426 | |||
df1dcf1e68 | |||
228521d6ae | |||
b49e061e56 | |||
e50f5a5f5e | |||
cdb9dc8093 | |||
d9042bdb8e | |||
26c48de3d2 | |||
8806001702 | |||
da8993f355 | |||
9ec099a11e | |||
7434aee374 | |||
5accb729a2 | |||
4bfab50cca | |||
7188740090 | |||
7c65b7f559 | |||
8df382dba2 | |||
77d6845810 | |||
0c95c15f88 | |||
9415d0ecb6 | |||
f1505cf854 | |||
6a650bea1b | |||
1937f3047c | |||
b52a6fca12 | |||
de895fcb1f | |||
ca9c265b39 | |||
d7f6b146dd | |||
a86c5a0d7e | |||
d974016885 | |||
61cba1e54f | |||
8855de055d | |||
3bc4028150 | |||
7d547c0f07 | |||
11b2550c2b | |||
81f3fc3564 | |||
6a6f3661da | |||
97607e0459 | |||
c37fcb42c4 | |||
edf8a96cbe | |||
a8cede7905 | |||
220bb230e7 | |||
f88f711a8d | |||
2c4bf966fc | |||
bc76229439 | |||
974cc93f3d | |||
88dbbdd3b5 | |||
415d25afcf | |||
4a2c29321b | |||
5226fe6355 | |||
c73e9d5645 | |||
57e6a32e6e | |||
948657e38f | |||
24e9008c76 | |||
a88c56ab8f | |||
32f7edee88 | |||
c840d24ec0 | |||
48f984dd8d | |||
584d11030b | |||
d7545049d0 | |||
7cb69daebe | |||
282f5be597 | |||
7d64081964 | |||
e9d42140fb | |||
d2180b16bc | |||
8a6008c819 | |||
1ae4d3d8db | |||
f723b4f986 | |||
856ef1b9aa | |||
eed57b40f2 | |||
b31051fe0d | |||
fa58a65259 | |||
6c2eed3d77 | |||
1c643060e8 | |||
d895b5b382 | |||
6b10225917 | |||
45d046a0b3 | |||
587e3e6378 | |||
6c4d7f41b3 | |||
939c56365e | |||
41ca7d4dbf | |||
b0ceb8cc2d | |||
55ee2057b2 | |||
8d986c58b8 | |||
ee5dfb889f | |||
80b9777bf3 | |||
60b45c46a8 | |||
6b415e46cb | |||
90fb5143ad | |||
c88d353e10 | |||
6aea33dded | |||
639b3552c3 | |||
0707619ab7 | |||
6b0a8c1f6f | |||
a251f83828 | |||
2d29e4d97c | |||
06e7dfb62c | |||
3d03ac9cde | |||
e1d1fa5fe5 | |||
67b3a47ffa | |||
150e845ba5 | |||
9c61e95c1c | |||
9630be706f | |||
47252b3781 | |||
66bf58c394 | |||
1315d82a45 | |||
c3b1ebf607 | |||
6ac9845a4d | |||
74b06f0785 | |||
a2c5fa7916 | |||
76e7b950b1 | |||
ce4d3e7e59 | |||
846aacd7f8 | |||
953bbd33b9 | |||
818807b3f0 | |||
2bc0d59a69 | |||
4a4ec8eb09 | |||
51370216f8 | |||
14c494070e | |||
3b4a088b92 | |||
d692f1c6bf | |||
66b6dcea45 | |||
fd166e53f0 | |||
b9fd67b7f6 | |||
![]() |
f9b9866b7f | ||
![]() |
8dcd8f0645 | ||
b5f262ca66 | |||
2f497caee3 | |||
2780809160 | |||
26325875fd | |||
c9e25acabd | |||
ec19b94634 | |||
eb8044d51d | |||
12f21a9671 | |||
a260e48fc0 | |||
33a7f6de51 | |||
c7b7a407ba | |||
314f0940d0 | |||
736827d3d9 | |||
b42336b6d8 | |||
c155cb7831 | |||
297c9776dd | |||
a4a8455bb5 | |||
1586cbdf84 | |||
063d7ab7dd | |||
20cbb966f0 | |||
83a7ba4ffc | |||
4983c00359 | |||
198d2899e0 | |||
0794c11ac2 | |||
46b2417adc | |||
758f63f500 | |||
c3bf2391e4 | |||
fb98ce62e1 | |||
8a963b1221 | |||
7141e212f6 | |||
705305d6ee | |||
b02e6fe918 | |||
6a70d75393 | |||
49d1960c17 | |||
c7f91cd854 | |||
4978d5a07a | |||
c15fc55f50 | |||
139b831a5a | |||
62b8685949 | |||
7d5b147664 | |||
92d5ecd6a3 | |||
bdef6b0905 | |||
526f5b80c3 | |||
dbcd83bab1 | |||
ccee38af38 | |||
44a2a7f78b | |||
c8d3bac3ed | |||
15598d2de3 | |||
d9510d3ddd | |||
046b3a5692 | |||
8597ca0063 | |||
451e169915 | |||
717f487ee4 | |||
dcabcedb88 | |||
78dc0063b9 | |||
ce32a7eb38 | |||
71b6055bc4 | |||
bbd70fc38a | |||
7037441e9e | |||
1f0812fe75 | |||
44906cd715 | |||
64a0da7367 | |||
470b86ecdb | |||
d1b6a820b1 | |||
8824dd6d18 | |||
6092b20cd8 | |||
f3fbcf99d3 | |||
59c99171a0 | |||
86f41b42e8 | |||
e0bb23506c | |||
f7b6f52f7c | |||
a19a3bb2ad | |||
ba2235c5f2 | |||
f6e70b94ab | |||
04016efc98 | |||
16d98223ec | |||
c2bfbaa603 | |||
c18a1a0388 | |||
be89f0892b | |||
5ebf98c74e | |||
2f0ca673d5 | |||
848ec6479a | |||
2f32696b60 | |||
31b8444778 | |||
8883671b87 | |||
6f7486ee6b | |||
2736665558 | |||
a951f7ee4c | |||
21a56148f7 | |||
fb1592311e | |||
310137b550 | |||
5e1c383581 | |||
dfe04f1b84 | |||
2b1b1b08a0 | |||
84f1df2042 | |||
c7e7df3f58 | |||
8f9c37727b | |||
f07d389630 | |||
76f8d5f6f0 | |||
19f2d03558 | |||
1c6e9f61f5 | |||
4c78027f2c | |||
6e5ba8aef6 | |||
cc2ad1d9a1 | |||
a8ce4600cd | |||
44fa93f36a | |||
3b7d386e6f | |||
09eaa531ad | |||
997d8e0686 | |||
bf6700849e | |||
a1fdc4614c | |||
2ec1951087 | |||
7320156a53 | |||
1a1465916a | |||
7f9b293f3f | |||
81a61f713b | |||
24e4a07865 | |||
829076d791 | |||
bd814d06fd | |||
2135d519c5 | |||
aa00f31dc9 | |||
8b3679faf8 | |||
c1c669f972 | |||
ede49637d0 | |||
7ead765d93 | |||
712b485957 | |||
fdefd2cb89 | |||
cb3b3924dd | |||
868ad31fe7 | |||
5efd782a4b | |||
034777fbc5 | |||
28eb29ae6a | |||
b771c6e2da | |||
4c7d5d4805 | |||
6b0b52150e | |||
8971917e43 | |||
6a92939ae2 | |||
10f8a1024f | |||
aa03d6a882 | |||
c740757d46 | |||
1415861365 | |||
6341313df0 | |||
5ac1c4f624 | |||
608bc71e37 | |||
a3b99b4898 | |||
fea78d93f5 | |||
c773d3d5e9 | |||
2c35d33f6e | |||
8ac8bb06b3 | |||
c90109a219 | |||
ac2b7e91f6 | |||
6096c77f5e | |||
4dc2e94ec3 | |||
8de1939e5c | |||
a9b5caf731 | |||
13d827d344 | |||
7b7c07e0ae | |||
cd5345686b | |||
37fb6d5f22 | |||
d91d8b5f12 | |||
4277f3f424 | |||
b37b60c8e1 | |||
4ba6d1d33e | |||
5bcf171bed | |||
ee6623418b | |||
3decb02c98 | |||
70ba5f0114 | |||
3e3437deae | |||
73b8067d17 | |||
ed288596c5 | |||
8af7d689fa | |||
8f54bc2a25 | |||
568ca2c61f | |||
dd1ff2745c | |||
8fd53acd20 | |||
6df5b63ac8 | |||
c2852409c0 | |||
500d71f94b | |||
d53f701f8b | |||
c6f2bebae5 | |||
f5601b86fb | |||
d3c53977ba | |||
908e50a866 | |||
0eb412a728 | |||
291a62f2b0 | |||
eebc144df3 | |||
cb8c105169 | |||
803e7bfd36 | |||
76e118fa03 | |||
f7c6ecc867 | |||
6ca49f7a15 | |||
e37c267718 | |||
ccd5b8e8d4 | |||
c60d558115 | |||
a34a9a775f | |||
9c88a5a062 | |||
3e6716f0df | |||
749ede87f2 | |||
3db178aab1 | |||
ae7a22a5f3 | |||
d60b34486d | |||
f89a5381a4 | |||
53aa5b4daf | |||
6a8e79920c | |||
123d295e86 | |||
0c28227746 | |||
6ebccc4a40 | |||
6b4737c1ea | |||
bee7113e3b | |||
9362b89de6 | |||
d6874e4022 | |||
254d59ae05 | |||
982a7f5b19 | |||
4963994fe5 | |||
25b4eb7832 | |||
5a1f14805a | |||
44be201585 | |||
c919b3ea64 | |||
7006440d41 | |||
fe6168838e | |||
581a18307d | |||
7120dff251 | |||
a314f52a6c | |||
23b4120107 | |||
ddab33906e | |||
da050b61c8 | |||
61b00d0cb5 | |||
ac5cf2ca4c | |||
136e58b2e9 | |||
2a3c82f85c | |||
2cf520c861 | |||
76ca1fdf5a | |||
ab6bfdef1b | |||
232312f9b3 | |||
6f93156e14 | |||
f9fb3aee90 | |||
46d86471bd | |||
13d5fc988c | |||
f9dd86f090 | |||
ff354ce9fa | |||
ce84e82983 | |||
efc45e7961 | |||
b864110eed | |||
1fa78eb265 | |||
735c6731df | |||
be2c534119 | |||
836b590c8a | |||
f7a4fb46cd | |||
4cbec7f5e0 | |||
ae340993b8 | |||
4948ae3f90 | |||
adc922f3c4 | |||
684000caff | |||
b6c0cd7688 | |||
0cb79296d1 | |||
407b5d7e37 | |||
625e62bffe | |||
1d8d450078 | |||
4b0ff16387 | |||
b6a762fa99 | |||
aa2cde38a2 | |||
10509d4022 | |||
5479f23559 | |||
455822f295 | |||
9fa3117841 | |||
f24d1c27fe | |||
a725c0dcef | |||
a5aed840f4 | |||
b38ad1ea71 | |||
0934694a2b | |||
7635acf71e | |||
59be099e87 | |||
4708eadbdd | |||
82f11c0c85 | |||
ddbcdd13ee | |||
8777e9add3 | |||
0f4f0557c5 | |||
bf74b10a53 | |||
109c502d44 | |||
769a1fc8de | |||
4f579b8be7 | |||
6c0ea32d92 | |||
069698f4d8 | |||
2538d92a31 | |||
f9de69cfbd | |||
35464b55ce | |||
a65758f261 | |||
c023733331 | |||
f081872ab0 | |||
34f32f16e3 | |||
bf062301c0 | |||
d1de9ea043 | |||
48e7f4f92f | |||
a500d3fb92 | |||
9e3b526771 | |||
bca8e744a3 | |||
898909e425 | |||
be12dc312a | |||
bbee3ceb94 | |||
062410f657 | |||
18fb90a1eb | |||
503f0c85c5 | |||
610fc5653d | |||
75d9256ef7 | |||
1c39a14d05 | |||
c558625db6 | |||
9a3282cd39 | |||
2eb2b8c2ff | |||
b510128ec7 |
233
CMakeLists.txt
233
CMakeLists.txt
@@ -66,9 +66,10 @@ GET_BLENDER_VERSION()
|
|||||||
|
|
||||||
# Blender internal features
|
# Blender internal features
|
||||||
OPTION(WITH_INTERNATIONAL "Enable I18N (International fonts and text)" ON)
|
OPTION(WITH_INTERNATIONAL "Enable I18N (International fonts and text)" ON)
|
||||||
|
OPTION(WITH_LCMS "Enable color correction with lcms" OFF)
|
||||||
OPTION(WITH_PYTHON "Enable Embedded Python API" ON)
|
OPTION(WITH_PYTHON "Enable Embedded Python API" ON)
|
||||||
OPTION(WITH_BUILDINFO "Include extra build details" ON)
|
OPTION(WITH_BUILDINFO "Include extra build details" ON)
|
||||||
OPTION(WITH_IK_ITASC "Enable ITASC IK solver" ON)
|
OPTION(WITH_ELBEEM "Enable Elbeem (Fluid Simulation)" ON)
|
||||||
OPTION(WITH_FFTW3 "Enable FFTW3 support (Used for smoke and audio effects)" OFF)
|
OPTION(WITH_FFTW3 "Enable FFTW3 support (Used for smoke and audio effects)" OFF)
|
||||||
OPTION(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
|
OPTION(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
|
||||||
OPTION(WITH_GAMEENGINE "Enable Game Engine" ON)
|
OPTION(WITH_GAMEENGINE "Enable Game Engine" ON)
|
||||||
@@ -80,18 +81,11 @@ ELSE()
|
|||||||
OPTION(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" OFF)
|
OPTION(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" OFF)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
# Modifiers
|
|
||||||
OPTION(WITH_MOD_FLUID "Enable Elbeem Modifier (Fluid Simulation)" ON)
|
|
||||||
OPTION(WITH_MOD_DECIMATE "Enable Decimate Modifier" ON)
|
|
||||||
OPTION(WITH_MOD_BOOLEAN "Enable Boolean Modifier" ON)
|
|
||||||
|
|
||||||
# Image format support
|
# Image format support
|
||||||
OPTION(WITH_IMAGE_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ON)
|
OPTION(WITH_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ON)
|
||||||
OPTION(WITH_IMAGE_OPENJPEG "Enable OpenJpeg Support (http://www.openjpeg.org/)" OFF)
|
OPTION(WITH_OPENJPEG "Enable OpenJpeg Support (http://www.openjpeg.org/)" OFF)
|
||||||
OPTION(WITH_IMAGE_TIFF "Enable LibTIFF Support" ON)
|
OPTION(WITH_TIFF "Enable LibTIFF Support" ON)
|
||||||
OPTION(WITH_IMAGE_DDS "Enable DDS Image Support" ON)
|
OPTION(WITH_DDS "Enable DDS Support" ON)
|
||||||
OPTION(WITH_IMAGE_CINEON "Enable CINEON and DPX Image Support" ON)
|
|
||||||
OPTION(WITH_IMAGE_HDR "Enable HDR Image Support" ON)
|
|
||||||
|
|
||||||
# Audio format support
|
# Audio format support
|
||||||
OPTION(WITH_FFMPEG "Enable FFMPeg Support (http://ffmpeg.mplayerhq.hu/)" OFF)
|
OPTION(WITH_FFMPEG "Enable FFMPeg Support (http://ffmpeg.mplayerhq.hu/)" OFF)
|
||||||
@@ -121,7 +115,6 @@ OPTION(WITH_LZMA "Enable best LZMA compression, (used for pointcache)"
|
|||||||
OPTION(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
|
OPTION(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
|
||||||
OPTION(WITH_CXX_GUARDEDALLOC "Enable GuardedAlloc for C++ memory allocation tracking" OFF)
|
OPTION(WITH_CXX_GUARDEDALLOC "Enable GuardedAlloc for C++ memory allocation tracking" OFF)
|
||||||
OPTION(WITH_INSTALL "Install accompanying scripts and language files needed to run blender" ON)
|
OPTION(WITH_INSTALL "Install accompanying scripts and language files needed to run blender" ON)
|
||||||
OPTION(WITH_PYTHON_INSTALL "Copy system python into the blender install folder" ON)
|
|
||||||
|
|
||||||
IF(APPLE)
|
IF(APPLE)
|
||||||
OPTION(WITH_COCOA "Use Cocoa framework instead of deprecated Carbon" ON)
|
OPTION(WITH_COCOA "Use Cocoa framework instead of deprecated Carbon" ON)
|
||||||
@@ -129,17 +122,14 @@ IF(APPLE)
|
|||||||
OPTION(WITH_LIBS10.5 "Use 10.5 libs (needed for 64bit builds)" OFF)
|
OPTION(WITH_LIBS10.5 "Use 10.5 libs (needed for 64bit builds)" OFF)
|
||||||
ENDIF(APPLE)
|
ENDIF(APPLE)
|
||||||
|
|
||||||
# only for developers who want to make this functional
|
IF(NOT WITH_BULLET AND WITH_GAMEENGINE)
|
||||||
# OPTION(WITH_LCMS "Enable color correction with lcms" OFF)
|
MESSAGE("WARNING: WITH_GAMEENGINE needs WITH_BULLET")
|
||||||
|
ENDIF(NOT WITH_BULLET AND WITH_GAMEENGINE)
|
||||||
|
|
||||||
IF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
|
IF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
|
||||||
MESSAGE(FATAL_ERROR "WITH_PLAYER needs WITH_GAMEENGINE")
|
MESSAGE("WARNING: WITH_PLAYER needs WITH_GAMEENGINE")
|
||||||
ENDIF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
|
ENDIF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
|
||||||
|
|
||||||
IF(NOT WITH_INSTALL AND WITH_PYTHON_INSTALL)
|
|
||||||
MESSAGE("WARNING: WITH_PYTHON_INSTALL needs WITH_INSTALL")
|
|
||||||
ENDIF(NOT WITH_INSTALL AND WITH_PYTHON_INSTALL)
|
|
||||||
|
|
||||||
TEST_SSE_SUPPORT()
|
TEST_SSE_SUPPORT()
|
||||||
|
|
||||||
# disabled for now, not supported
|
# disabled for now, not supported
|
||||||
@@ -151,7 +141,7 @@ TEST_SSE_SUPPORT()
|
|||||||
# On Macs:
|
# On Macs:
|
||||||
# cmake -D PYTHON_INC=/System/Library/Frameworks/Python.framework/Versions/3.1/include/python3.1 -D PYTHON_LIBPATH=/System/Library/Frameworks/Python.framework/Versions/3.1/lib/python3.1/config -G Xcode ../blender
|
# cmake -D PYTHON_INC=/System/Library/Frameworks/Python.framework/Versions/3.1/include/python3.1 -D PYTHON_LIBPATH=/System/Library/Frameworks/Python.framework/Versions/3.1/lib/python3.1/config -G Xcode ../blender
|
||||||
#
|
#
|
||||||
# When changing any of this remember to update the notes in doc/build_systems/cmake.txt
|
# When changing any of this remember to update the notes in doc/blender-cmake.txt
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
#Platform specifics
|
#Platform specifics
|
||||||
@@ -225,7 +215,7 @@ IF(UNIX AND NOT APPLE)
|
|||||||
ENDIF(NOT SDL_FOUND)
|
ENDIF(NOT SDL_FOUND)
|
||||||
ENDIF(WITH_SDL)
|
ENDIF(WITH_SDL)
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
SET(OPENEXR /usr CACHE FILEPATH "OPENEXR Directory")
|
SET(OPENEXR /usr CACHE FILEPATH "OPENEXR Directory")
|
||||||
FIND_PATH(OPENEXR_INC
|
FIND_PATH(OPENEXR_INC
|
||||||
ImfXdr.h
|
ImfXdr.h
|
||||||
@@ -240,16 +230,16 @@ IF(UNIX AND NOT APPLE)
|
|||||||
SET(OPENEXR_LIB Half IlmImf Iex Imath)
|
SET(OPENEXR_LIB Half IlmImf Iex Imath)
|
||||||
|
|
||||||
IF(NOT OPENEXR_INC)
|
IF(NOT OPENEXR_INC)
|
||||||
SET(WITH_IMAGE_OPENEXR OFF)
|
SET(WITH_OPENEXR OFF)
|
||||||
ENDIF(NOT OPENEXR_INC)
|
ENDIF(NOT OPENEXR_INC)
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
ENDIF(WITH_OPENEXR)
|
||||||
|
|
||||||
IF(WITH_IMAGE_TIFF)
|
IF(WITH_TIFF)
|
||||||
FIND_PACKAGE(TIFF)
|
FIND_PACKAGE(TIFF)
|
||||||
IF(NOT TIFF_FOUND)
|
IF(NOT TIFF_FOUND)
|
||||||
SET(WITH_IMAGE_TIFF OFF)
|
SET(WITH_TIFF OFF)
|
||||||
ENDIF(NOT TIFF_FOUND)
|
ENDIF(NOT TIFF_FOUND)
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
|
|
||||||
FIND_PACKAGE(JPEG REQUIRED)
|
FIND_PACKAGE(JPEG REQUIRED)
|
||||||
|
|
||||||
@@ -297,14 +287,13 @@ IF(UNIX AND NOT APPLE)
|
|||||||
SET(EXPAT_LIB expat)
|
SET(EXPAT_LIB expat)
|
||||||
ENDIF (WITH_OPENCOLLADA)
|
ENDIF (WITH_OPENCOLLADA)
|
||||||
|
|
||||||
FIND_PACKAGE(X11 REQUIRED)
|
|
||||||
|
|
||||||
# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
|
# Could use ${X11_Xinput_LIB} ${X11_X11_LIB} too
|
||||||
SET(LLIBS "-lutil -lc -lm -lpthread -lstdc++ ${X11_X11_LIB} ${X11_Xinput_LIB}")
|
SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11")
|
||||||
|
|
||||||
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
# BSD's dont use libdl.so
|
# BSD's dont use libdl.so
|
||||||
LIST(APPEND LLIBS -ldl)
|
SET(LLIBS "${LLIBS} -ldl")
|
||||||
|
|
||||||
# binreloc is linux only
|
# binreloc is linux only
|
||||||
SET(BINRELOC ${CMAKE_SOURCE_DIR}/extern/binreloc)
|
SET(BINRELOC ${CMAKE_SOURCE_DIR}/extern/binreloc)
|
||||||
@@ -312,17 +301,23 @@ IF(UNIX AND NOT APPLE)
|
|||||||
ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||||
|
|
||||||
IF(WITH_OPENMP)
|
IF(WITH_OPENMP)
|
||||||
LIST(APPEND LLIBS -lgomp)
|
SET(LLIBS "${LLIBS} -lgomp")
|
||||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
|
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
|
||||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
|
||||||
ENDIF(WITH_OPENMP)
|
ENDIF(WITH_OPENMP)
|
||||||
|
|
||||||
SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
|
|
||||||
|
SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing -Wno-char-subscripts")
|
||||||
|
|
||||||
|
IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
|
SET(PLATFORM_CFLAGS " -msse -msse2 ${PLATFORM_CFLAGS}")
|
||||||
|
ADD_DEFINITIONS(-D__SSE__)
|
||||||
|
ADD_DEFINITIONS(-D__MMX__)
|
||||||
|
ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
|
|
||||||
SET(PLATFORM_LINKFLAGS "-pthread")
|
SET(PLATFORM_LINKFLAGS "-pthread")
|
||||||
|
|
||||||
# Better warnings
|
# Better warnings
|
||||||
# note: -Wunused-parameter is added below for all GCC compilers
|
|
||||||
SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wdeclaration-after-statement -Wno-unknown-pragmas")
|
SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wdeclaration-after-statement -Wno-unknown-pragmas")
|
||||||
SET(CXX_WARNINGS "-Wall -Wno-invalid-offsetof -Wno-sign-compare")
|
SET(CXX_WARNINGS "-Wall -Wno-invalid-offsetof -Wno-sign-compare")
|
||||||
|
|
||||||
@@ -334,12 +329,12 @@ IF(WIN32)
|
|||||||
|
|
||||||
# this file is included anyway when building under Windows with cl.exe
|
# this file is included anyway when building under Windows with cl.exe
|
||||||
# INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
|
# INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
|
||||||
|
|
||||||
SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/windows)
|
SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/windows)
|
||||||
|
|
||||||
# Setup 64bit and 64bit windows systems
|
# Setup 64bit and 64bit windows systems
|
||||||
IF(CMAKE_CL_64)
|
IF(CMAKE_CL_64)
|
||||||
MESSAGE("64 bit compiler detected.")
|
message("64 bit compiler detected.")
|
||||||
SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/win64)
|
SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/win64)
|
||||||
ENDIF(CMAKE_CL_64)
|
ENDIF(CMAKE_CL_64)
|
||||||
|
|
||||||
@@ -367,6 +362,15 @@ IF(WIN32)
|
|||||||
|
|
||||||
SET(WINTAB_INC ${LIBDIR}/wintab/include)
|
SET(WINTAB_INC ${LIBDIR}/wintab/include)
|
||||||
|
|
||||||
|
IF(WITH_PYTHON)
|
||||||
|
SET(PYTHON ${LIBDIR}/python)
|
||||||
|
SET(PYTHON_VERSION 3.1)
|
||||||
|
SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}")
|
||||||
|
# SET(PYTHON_BINARY python) # not used yet
|
||||||
|
SET(PYTHON_LIB python31)
|
||||||
|
SET(PYTHON_LIBPATH ${PYTHON}/lib)
|
||||||
|
ENDIF(WITH_PYTHON)
|
||||||
|
|
||||||
IF(WITH_OPENAL)
|
IF(WITH_OPENAL)
|
||||||
SET(OPENAL ${LIBDIR}/openal)
|
SET(OPENAL ${LIBDIR}/openal)
|
||||||
SET(OPENAL_INCLUDE_DIR ${OPENAL}/include)
|
SET(OPENAL_INCLUDE_DIR ${OPENAL}/include)
|
||||||
@@ -396,7 +400,8 @@ IF(WIN32)
|
|||||||
ENDIF(WITH_QUICKTIME)
|
ENDIF(WITH_QUICKTIME)
|
||||||
|
|
||||||
IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
ADD_DEFINITIONS(-D__SSE__ -D__MMX__)
|
ADD_DEFINITIONS(-D__SSE__)
|
||||||
|
ADD_DEFINITIONS(-D__MMX__)
|
||||||
ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
|
|
||||||
IF(MSVC)
|
IF(MSVC)
|
||||||
@@ -406,22 +411,14 @@ IF(WIN32)
|
|||||||
SET(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
|
SET(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
|
||||||
ENDIF(CMAKE_CL_64)
|
ENDIF(CMAKE_CL_64)
|
||||||
|
|
||||||
SET(CMAKE_CXX_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /we4013 /wd4800 /wd4244 /wd4305 /wd4065 /wd4267" CACHE STRING "MSVC MT C++ flags " FORCE)
|
SET(CMAKE_CXX_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305" CACHE STRING "MSVC MT C++ flags " FORCE)
|
||||||
SET(CMAKE_C_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /we4013 /wd4800 /wd4244 /wd4305 /wd4065 /wd4267" CACHE STRING "MSVC MT C++ flags " FORCE)
|
SET(CMAKE_C_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305" CACHE STRING "MSVC MT C++ flags " FORCE)
|
||||||
|
|
||||||
IF(CMAKE_CL_64)
|
SET(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
|
||||||
ELSE(CMAKE_CL_64)
|
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
|
|
||||||
ENDIF(CMAKE_CL_64)
|
|
||||||
SET(CMAKE_CXX_FLAGS_RELEASE "/O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_CXX_FLAGS_RELEASE "/O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "/O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_CXX_FLAGS_MINSIZEREL "/O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
IF(CMAKE_CL_64)
|
SET(CMAKE_C_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_C_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
|
||||||
ELSE(CMAKE_CL_64)
|
|
||||||
SET(CMAKE_C_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
|
|
||||||
ENDIF(CMAKE_CL_64)
|
|
||||||
SET(CMAKE_C_FLAGS_RELEASE "/O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_C_FLAGS_RELEASE "/O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_C_FLAGS_MINSIZEREL "/O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_C_FLAGS_MINSIZEREL "/O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
|
||||||
@@ -480,16 +477,14 @@ IF(WIN32)
|
|||||||
SET(OPENCOLLADA_INC ${OPENCOLLADA}/include)
|
SET(OPENCOLLADA_INC ${OPENCOLLADA}/include)
|
||||||
SET(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
|
SET(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib)
|
||||||
SET(OPENCOLLADA_LIB OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils OpenCOLLADAStreamWriter MathMLSolver GeneratedSaxParser xml2 buffer ftoa)
|
SET(OPENCOLLADA_LIB OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils OpenCOLLADAStreamWriter MathMLSolver GeneratedSaxParser xml2 buffer ftoa)
|
||||||
|
#pcre is bundled with openCollada
|
||||||
|
#SET(PCRE ${LIBDIR}/pcre)
|
||||||
|
#SET(PCRE_LIBPATH ${PCRE}/lib)
|
||||||
SET(PCRE_LIB pcre)
|
SET(PCRE_LIB pcre)
|
||||||
ENDIF(WITH_OPENCOLLADA)
|
ENDIF(WITH_OPENCOLLADA)
|
||||||
|
|
||||||
IF(WITH_LCMS)
|
# TODO: IF(WITH_LCMS)
|
||||||
SET(LCMS ${LIBDIR}/lcms)
|
|
||||||
SET(LCMS_INCLUDE_DIR ${LCMS}/include)
|
|
||||||
SET(LCMS_LIBPATH ${LCMS}/lib)
|
|
||||||
SET(LCMS_LIB lcms)
|
|
||||||
ENDIF(WITH_LCMS)
|
|
||||||
|
|
||||||
IF(WITH_FFMPEG)
|
IF(WITH_FFMPEG)
|
||||||
SET(FFMPEG ${LIBDIR}/ffmpeg)
|
SET(FFMPEG ${LIBDIR}/ffmpeg)
|
||||||
SET(FFMPEG_INC ${FFMPEG}/include ${FFMPEG}/include/msvc)
|
SET(FFMPEG_INC ${FFMPEG}/include ${FFMPEG}/include/msvc)
|
||||||
@@ -497,7 +492,7 @@ IF(WIN32)
|
|||||||
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
||||||
ENDIF(WITH_FFMPEG)
|
ENDIF(WITH_FFMPEG)
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
SET(OPENEXR ${LIBDIR}/openexr)
|
SET(OPENEXR ${LIBDIR}/openexr)
|
||||||
SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/IlmImf ${OPENEXR}/include/Iex ${OPENEXR}/include/Imath)
|
SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/IlmImf ${OPENEXR}/include/Iex ${OPENEXR}/include/Imath)
|
||||||
SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
|
SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
|
||||||
@@ -509,14 +504,14 @@ IF(WIN32)
|
|||||||
IF (MSVC90)
|
IF (MSVC90)
|
||||||
SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2008)
|
SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2008)
|
||||||
ENDIF(MSVC90)
|
ENDIF(MSVC90)
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
ENDIF(WITH_OPENEXR)
|
||||||
|
|
||||||
IF(WITH_IMAGE_TIFF)
|
IF(WITH_TIFF)
|
||||||
SET(TIFF ${LIBDIR}/tiff)
|
SET(TIFF ${LIBDIR}/tiff)
|
||||||
SET(TIFF_LIBRARY libtiff)
|
SET(TIFF_LIBRARY libtiff)
|
||||||
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
||||||
SET(TIFF_LIBPATH ${TIFF}/lib)
|
SET(TIFF_LIBPATH ${TIFF}/lib)
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
|
|
||||||
IF(WITH_JACK)
|
IF(WITH_JACK)
|
||||||
SET(JACK ${LIBDIR}/jack)
|
SET(JACK ${LIBDIR}/jack)
|
||||||
@@ -525,37 +520,32 @@ IF(WIN32)
|
|||||||
SET(JACK_LIBPATH ${JACK}/lib)
|
SET(JACK_LIBPATH ${JACK}/lib)
|
||||||
ENDIF(WITH_JACK)
|
ENDIF(WITH_JACK)
|
||||||
|
|
||||||
IF(WITH_PYTHON)
|
|
||||||
SET(PYTHON ${LIBDIR}/python)
|
|
||||||
SET(PYTHON_VERSION 3.1)
|
|
||||||
SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}")
|
|
||||||
# SET(PYTHON_BINARY python) # not used yet
|
|
||||||
SET(PYTHON_LIB python31)
|
|
||||||
SET(PYTHON_LIBPATH ${PYTHON}/lib)
|
|
||||||
ENDIF(WITH_PYTHON)
|
|
||||||
|
|
||||||
# MSVC only, Mingw doesnt need
|
# MSVC only, Mingw doesnt need
|
||||||
IF(CMAKE_CL_64)
|
IF(CMAKE_CL_64)
|
||||||
SET(PLATFORM_LINKFLAGS "/MACHINE:X64 /NODEFAULTLIB:libc.lib;MSVCRT.lib ")
|
SET(PLATFORM_LINKFLAGS "/MACHINE:X64 /NODEFAULTLIB:libc.lib;MSVCRT.lib ")
|
||||||
ELSE(CMAKE_CL_64)
|
ELSE(CMAKE_CL_64)
|
||||||
SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib ")
|
SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib ")
|
||||||
ENDIF(CMAKE_CL_64)
|
ENDIF(CMAKE_CL_64)
|
||||||
|
|
||||||
SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib;libc.lib ")
|
SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib;libc.lib ")
|
||||||
|
|
||||||
ELSE(MSVC) # MINGW
|
ELSE(MSVC) # MINGW
|
||||||
SET(LLIBS "-lshell32 -lshfolder -lgdi32 -lmsvcrt -lwinmm -lmingw32 -lm -lws2_32 -lz -lstdc++ -lole32 -luuid")
|
SET(LLIBS "-lshell32 -lshfolder -lgdi32 -lmsvcrt -lwinmm -lmingw32 -lm -lws2_32 -lz -lstdc++ -lole32 -luuid")
|
||||||
SET(PLATFORM_CFLAGS "-pipe -funsigned-char -fno-strict-aliasing")
|
|
||||||
|
|
||||||
# Better warnings
|
SET(CMAKE_CXX_FLAGS "-pipe -funsigned-char -fno-strict-aliasing" CACHE STRING "Mingw C++ flags ")
|
||||||
SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wdeclaration-after-statement -Wno-unknown-pragmas")
|
SET(CMAKE_C_FLAGS "-pipe -funsigned-char -fno-strict-aliasing" CACHE STRING "Mingw C flags ")
|
||||||
SET(CXX_WARNINGS "-Wall -Wno-invalid-offsetof -Wno-sign-compare")
|
|
||||||
|
|
||||||
|
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "Mingw debug C++ flags ")
|
||||||
|
SET(CMAKE_CXX_FLAGS_RELEASE " -O2" CACHE STRING "Mingw release C++ flags ")
|
||||||
|
SET(CMAKE_CXX_FLAGS_MINSIZEREL " -Os" CACHE STRING "Mingw minsize release C++ flags ")
|
||||||
|
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "Mingw release, debug C++ flags ")
|
||||||
|
|
||||||
|
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g" CACHE STRING "Mingw debug C flags ")
|
||||||
|
SET(CMAKE_C_FLAGS_RELEASE "-O2" CACHE STRING "Mingw release C flags ")
|
||||||
|
SET(CMAKE_C_FLAGS_MINSIZEREL "-Os" CACHE STRING "Mingw minsize release C flags ")
|
||||||
|
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "Mingw release, debug C++ flags ")
|
||||||
ADD_DEFINITIONS(-DFREE_WINDOWS)
|
ADD_DEFINITIONS(-DFREE_WINDOWS)
|
||||||
|
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG")
|
|
||||||
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG")
|
|
||||||
|
|
||||||
IF(WITH_OPENMP)
|
IF(WITH_OPENMP)
|
||||||
SET(LLIBS "${LLIBS} -lgomp")
|
SET(LLIBS "${LLIBS} -lgomp")
|
||||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
|
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
|
||||||
@@ -599,6 +589,9 @@ IF(WIN32)
|
|||||||
SET(OPENCOLLADA_INC ${OPENCOLLADA}/include)
|
SET(OPENCOLLADA_INC ${OPENCOLLADA}/include)
|
||||||
SET(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib ${OPENCOLLADA}/lib)
|
SET(OPENCOLLADA_LIBPATH ${OPENCOLLADA}/lib ${OPENCOLLADA}/lib)
|
||||||
SET(OPENCOLLADA_LIB OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser UTF MathMLSolver expat pcre buffer ftoa)
|
SET(OPENCOLLADA_LIB OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser UTF MathMLSolver expat pcre buffer ftoa)
|
||||||
|
#pcre is bundled with openCollada
|
||||||
|
#SET(PCRE ${LIBDIR}/pcre)
|
||||||
|
#SET(PCRE_LIBPATH ${PCRE}/lib)
|
||||||
SET(PCRE_LIB pcre)
|
SET(PCRE_LIB pcre)
|
||||||
ENDIF(WITH_OPENCOLLADA)
|
ENDIF(WITH_OPENCOLLADA)
|
||||||
|
|
||||||
@@ -609,22 +602,19 @@ IF(WIN32)
|
|||||||
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
|
||||||
ENDIF(WITH_FFMPEG)
|
ENDIF(WITH_FFMPEG)
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
SET(OPENEXR ${LIBDIR}/gcc/openexr)
|
SET(OPENEXR ${LIBDIR}/gcc/openexr)
|
||||||
SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/OpenEXR)
|
SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/OpenEXR)
|
||||||
SET(OPENEXR_LIB Half IlmImf Imath IlmThread)
|
SET(OPENEXR_LIB Half IlmImf Imath IlmThread)
|
||||||
SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
||||||
|
ENDIF(WITH_OPENEXR)
|
||||||
|
|
||||||
# TODO, gives linking errors, force off
|
IF(WITH_TIFF)
|
||||||
SET(WITH_IMAGE_OPENEXR OFF)
|
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
|
||||||
|
|
||||||
IF(WITH_IMAGE_TIFF)
|
|
||||||
SET(TIFF ${LIBDIR}/gcc/tiff)
|
SET(TIFF ${LIBDIR}/gcc/tiff)
|
||||||
SET(TIFF_LIBRARY tiff)
|
SET(TIFF_LIBRARY tiff)
|
||||||
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
||||||
SET(TIFF_LIBPATH ${TIFF}/lib)
|
SET(TIFF_LIBPATH ${TIFF}/lib)
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
|
|
||||||
IF(WITH_JACK)
|
IF(WITH_JACK)
|
||||||
SET(JACK ${LIBDIR}/jack)
|
SET(JACK ${LIBDIR}/jack)
|
||||||
@@ -636,14 +626,11 @@ IF(WIN32)
|
|||||||
SET(WITH_JACK OFF)
|
SET(WITH_JACK OFF)
|
||||||
ENDIF(WITH_JACK)
|
ENDIF(WITH_JACK)
|
||||||
|
|
||||||
IF(WITH_PYTHON)
|
IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
SET(PYTHON ${LIBDIR}/python)
|
SET(PLATFORM_CFLAGS " -msse -msse2 ${PLATFORM_CFLAGS}")
|
||||||
SET(PYTHON_VERSION 3.1)
|
ADD_DEFINITIONS(-D__SSE__)
|
||||||
SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}")
|
ADD_DEFINITIONS(-D__MMX__)
|
||||||
# SET(PYTHON_BINARY python) # not used yet
|
ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
SET(PYTHON_LIB python31mw)
|
|
||||||
SET(PYTHON_LIBPATH ${PYTHON}/lib)
|
|
||||||
ENDIF(WITH_PYTHON)
|
|
||||||
|
|
||||||
ENDIF(MSVC)
|
ENDIF(MSVC)
|
||||||
|
|
||||||
@@ -735,12 +722,12 @@ IF(APPLE)
|
|||||||
SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
|
SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
|
||||||
SET(FREETYPE_LIBRARY freetype)
|
SET(FREETYPE_LIBRARY freetype)
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
SET(OPENEXR ${LIBDIR}/openexr)
|
SET(OPENEXR ${LIBDIR}/openexr)
|
||||||
SET(OPENEXR_INC ${OPENEXR}/include/OpenEXR ${OPENEXR}/include)
|
SET(OPENEXR_INC ${OPENEXR}/include/OpenEXR ${OPENEXR}/include)
|
||||||
SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
|
SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
|
||||||
SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
ENDIF(WITH_OPENEXR)
|
||||||
|
|
||||||
IF(WITH_LCMS)
|
IF(WITH_LCMS)
|
||||||
SET(LCMS ${LIBDIR}/lcms)
|
SET(LCMS ${LIBDIR}/lcms)
|
||||||
@@ -818,12 +805,18 @@ IF(APPLE)
|
|||||||
SET(JPEG_INC "${JPEG}/include")
|
SET(JPEG_INC "${JPEG}/include")
|
||||||
SET(JPEG_LIBPATH ${JPEG}/lib)
|
SET(JPEG_LIBPATH ${JPEG}/lib)
|
||||||
|
|
||||||
IF(WITH_IMAGE_TIFF)
|
IF(WITH_TIFF)
|
||||||
SET(TIFF ${LIBDIR}/tiff)
|
SET(TIFF ${LIBDIR}/tiff)
|
||||||
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
SET(TIFF_INCLUDE_DIR ${TIFF}/include)
|
||||||
SET(TIFF_LIBRARY tiff)
|
SET(TIFF_LIBRARY tiff)
|
||||||
SET(TIFF_LIBPATH ${TIFF}/lib)
|
SET(TIFF_LIBPATH ${TIFF}/lib)
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
|
|
||||||
|
IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
|
SET(PLATFORM_CFLAGS " -msse -msse2 ${PLATFORM_CFLAGS}")
|
||||||
|
ADD_DEFINITIONS(-D__SSE__)
|
||||||
|
ADD_DEFINITIONS(-D__MMX__)
|
||||||
|
ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
|
||||||
|
|
||||||
SET(EXETYPE MACOSX_BUNDLE)
|
SET(EXETYPE MACOSX_BUNDLE)
|
||||||
|
|
||||||
@@ -868,30 +861,14 @@ IF(WITH_BUILDINFO)
|
|||||||
ENDIF(BUILD_REV_RETURN)
|
ENDIF(BUILD_REV_RETURN)
|
||||||
ENDIF(WIN32)
|
ENDIF(WIN32)
|
||||||
ENDIF(WITH_BUILDINFO)
|
ENDIF(WITH_BUILDINFO)
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Common.
|
# Common.
|
||||||
|
IF(WITH_OPENJPEG)
|
||||||
IF(WITH_RAYOPTIMIZATION)
|
|
||||||
IF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
IF(SUPPORT_SSE_BUILD)
|
|
||||||
SET(PLATFORM_CFLAGS " -msse ${PLATFORM_CFLAGS}")
|
|
||||||
ADD_DEFINITIONS(-D__SSE__ -D__MMX__)
|
|
||||||
ENDIF(SUPPORT_SSE_BUILD)
|
|
||||||
IF(SUPPORT_SSE2_BUILD)
|
|
||||||
SET(PLATFORM_CFLAGS " -msse2 ${PLATFORM_CFLAGS}")
|
|
||||||
ADD_DEFINITIONS(-D__SSE2__)
|
|
||||||
IF(NOT SUPPORT_SSE_BUILD) # dont double up
|
|
||||||
ADD_DEFINITIONS(-D__MMX__)
|
|
||||||
ENDIF(NOT SUPPORT_SSE_BUILD)
|
|
||||||
ENDIF(SUPPORT_SSE2_BUILD)
|
|
||||||
ENDIF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
ENDIF(WITH_RAYOPTIMIZATION)
|
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENJPEG)
|
|
||||||
set(OPENJPEG ${CMAKE_SOURCE_DIR}/extern/libopenjpeg)
|
set(OPENJPEG ${CMAKE_SOURCE_DIR}/extern/libopenjpeg)
|
||||||
set(OPENJPEG_INC ${OPENJPEG})
|
set(OPENJPEG_INC ${OPENJPEG})
|
||||||
set(OPENJPEG_LIb extern_openjpeg)
|
set(OPENJPEG_LIb extern_libopenjpeg)
|
||||||
ENDIF(WITH_IMAGE_OPENJPEG)
|
ENDIF(WITH_OPENJPEG)
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Blender WebPlugin
|
# Blender WebPlugin
|
||||||
@@ -913,26 +890,6 @@ INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
|
|||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Extra compile flags
|
# Extra compile flags
|
||||||
|
|
||||||
IF((NOT WIN32) AND (NOT MSVC))
|
|
||||||
# used for internal debug checks
|
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG")
|
|
||||||
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG")
|
|
||||||
|
|
||||||
# assert() checks for this.
|
|
||||||
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DNDEBUG")
|
|
||||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -DNDEBUG")
|
|
||||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DNDEBUG")
|
|
||||||
|
|
||||||
SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DNDEBUG")
|
|
||||||
SET(CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} -DNDEBUG")
|
|
||||||
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -DNDEBUG")
|
|
||||||
ENDIF((NOT WIN32) AND (NOT MSVC))
|
|
||||||
|
|
||||||
IF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
SET(C_WARNINGS "${C_WARNINGS} -Wunused-parameter -Werror=declaration-after-statement -Werror=implicit-function-declaration -Werror=return-type")
|
|
||||||
ENDIF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
|
|
||||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS} ${C_WARNINGS}")
|
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS} ${C_WARNINGS}")
|
||||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS} ${CXX_WARNINGS}")
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS} ${CXX_WARNINGS}")
|
||||||
|
|
||||||
@@ -944,9 +901,9 @@ ENDIF(WITH_CXX_GUARDEDALLOC)
|
|||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Libraries
|
# Libraries
|
||||||
FILE(WRITE ${CMAKE_BINARY_DIR}/cmake_blender_libs.txt "")
|
FILE(WRITE ${CMAKE_BINARY_DIR}/cmake_blender_libs.txt "")
|
||||||
ADD_SUBDIRECTORY(source)
|
|
||||||
ADD_SUBDIRECTORY(intern)
|
ADD_SUBDIRECTORY(intern)
|
||||||
ADD_SUBDIRECTORY(extern)
|
ADD_SUBDIRECTORY(extern)
|
||||||
|
ADD_SUBDIRECTORY(source)
|
||||||
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
|
2
COPYING
2
COPYING
@@ -2,7 +2,7 @@ Blender uses the GNU General Public License, which describes the rights
|
|||||||
to distribute or change the code.
|
to distribute or change the code.
|
||||||
|
|
||||||
Please read this file for the full license.
|
Please read this file for the full license.
|
||||||
doc/license/GPL-license.txt
|
doc/GPL-license.txt
|
||||||
|
|
||||||
Apart from the GNU GPL, Blender is not available under other licenses.
|
Apart from the GNU GPL, Blender is not available under other licenses.
|
||||||
|
|
||||||
|
2
Makefile
2
Makefile
@@ -45,7 +45,7 @@ MAKEFLAGS=-I$(NANBLENDERHOME)/build_files/make --no-print-directory
|
|||||||
|
|
||||||
SOURCEDIR =
|
SOURCEDIR =
|
||||||
ifeq ($(FREE_WINDOWS),true)
|
ifeq ($(FREE_WINDOWS),true)
|
||||||
DIRS ?= $(NANBLENDERHOME)/build_files/make/dlltool extern intern source po
|
DIRS ?= dlltool extern intern source po
|
||||||
else
|
else
|
||||||
DIRS ?= extern intern source po
|
DIRS ?= extern intern source po
|
||||||
endif
|
endif
|
||||||
|
681
SConstruct
681
SConstruct
@@ -33,9 +33,9 @@ import platform as pltfrm
|
|||||||
|
|
||||||
# Need a better way to do this. Automagical maybe is not the best thing, maybe it is.
|
# Need a better way to do this. Automagical maybe is not the best thing, maybe it is.
|
||||||
if pltfrm.architecture()[0] == '64bit':
|
if pltfrm.architecture()[0] == '64bit':
|
||||||
bitness = 64
|
bitness = 64
|
||||||
else:
|
else:
|
||||||
bitness = 32
|
bitness = 32
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
@@ -79,15 +79,15 @@ B.binarykind = ['blender' , 'blenderplayer']
|
|||||||
# XX cheating for BF_FANCY, we check for BF_FANCY before args are validated
|
# XX cheating for BF_FANCY, we check for BF_FANCY before args are validated
|
||||||
use_color = ARGUMENTS.get('BF_FANCY', '1')
|
use_color = ARGUMENTS.get('BF_FANCY', '1')
|
||||||
if platform=='win32':
|
if platform=='win32':
|
||||||
use_color = None
|
use_color = None
|
||||||
|
|
||||||
if not use_color=='1':
|
if not use_color=='1':
|
||||||
B.bc.disable()
|
B.bc.disable()
|
||||||
|
|
||||||
#on defaut white Os X terminal, some colors are totally unlegible
|
#on defaut white Os X terminal, some colors are totally unlegible
|
||||||
if platform=='darwin':
|
if platform=='darwin':
|
||||||
B.bc.OKGREEN = '\033[34m'
|
B.bc.OKGREEN = '\033[34m'
|
||||||
B.bc.WARNING = '\033[36m'
|
B.bc.WARNING = '\033[36m'
|
||||||
|
|
||||||
# arguments
|
# arguments
|
||||||
print B.bc.HEADER+'Command-line arguments'+B.bc.ENDC
|
print B.bc.HEADER+'Command-line arguments'+B.bc.ENDC
|
||||||
@@ -110,259 +110,264 @@ quickie = B.arguments.get('BF_QUICK', None)
|
|||||||
quickdebug = B.arguments.get('BF_QUICKDEBUG', None)
|
quickdebug = B.arguments.get('BF_QUICKDEBUG', None)
|
||||||
|
|
||||||
if quickdebug:
|
if quickdebug:
|
||||||
B.quickdebug=string.split(quickdebug, ',')
|
B.quickdebug=string.split(quickdebug, ',')
|
||||||
else:
|
else:
|
||||||
B.quickdebug=[]
|
B.quickdebug=[]
|
||||||
|
|
||||||
if quickie:
|
if quickie:
|
||||||
B.quickie=string.split(quickie,',')
|
B.quickie=string.split(quickie,',')
|
||||||
else:
|
else:
|
||||||
B.quickie=[]
|
B.quickie=[]
|
||||||
|
|
||||||
toolset = B.arguments.get('BF_TOOLSET', None)
|
toolset = B.arguments.get('BF_TOOLSET', None)
|
||||||
if toolset:
|
if toolset:
|
||||||
print "Using " + toolset
|
print "Using " + toolset
|
||||||
if toolset=='mstoolkit':
|
if toolset=='mstoolkit':
|
||||||
env = BlenderEnvironment(ENV = os.environ)
|
env = BlenderEnvironment(ENV = os.environ)
|
||||||
env.Tool('mstoolkit', [toolpath])
|
env.Tool('mstoolkit', [toolpath])
|
||||||
else:
|
else:
|
||||||
env = BlenderEnvironment(tools=[toolset], ENV = os.environ)
|
env = BlenderEnvironment(tools=[toolset], ENV = os.environ)
|
||||||
# xxx commented out, as was supressing warnings under mingw..
|
# xxx commented out, as was supressing warnings under mingw..
|
||||||
#if env:
|
#if env:
|
||||||
# btools.SetupSpawn(env)
|
# btools.SetupSpawn(env)
|
||||||
else:
|
else:
|
||||||
if bitness==64 and platform=='win32':
|
if bitness==64 and platform=='win32':
|
||||||
env = BlenderEnvironment(ENV = os.environ, MSVS_ARCH='amd64')
|
env = BlenderEnvironment(ENV = os.environ, MSVS_ARCH='amd64')
|
||||||
else:
|
else:
|
||||||
env = BlenderEnvironment(ENV = os.environ)
|
env = BlenderEnvironment(ENV = os.environ)
|
||||||
|
|
||||||
if not env:
|
if not env:
|
||||||
print "Could not create a build environment"
|
print "Could not create a build environment"
|
||||||
Exit()
|
Exit()
|
||||||
|
|
||||||
|
|
||||||
cc = B.arguments.get('CC', None)
|
cc = B.arguments.get('CC', None)
|
||||||
cxx = B.arguments.get('CXX', None)
|
cxx = B.arguments.get('CXX', None)
|
||||||
if cc:
|
if cc:
|
||||||
env['CC'] = cc
|
env['CC'] = cc
|
||||||
if cxx:
|
if cxx:
|
||||||
env['CXX'] = cxx
|
env['CXX'] = cxx
|
||||||
|
|
||||||
if env['CC'] in ['cl', 'cl.exe'] and sys.platform=='win32':
|
if env['CC'] in ['cl', 'cl.exe'] and sys.platform=='win32':
|
||||||
if bitness == 64:
|
if bitness == 64:
|
||||||
platform = 'win64-vc'
|
platform = 'win64-vc'
|
||||||
else:
|
else:
|
||||||
platform = 'win32-vc'
|
platform = 'win32-vc'
|
||||||
elif env['CC'] in ['gcc'] and sys.platform=='win32':
|
elif env['CC'] in ['gcc'] and sys.platform=='win32':
|
||||||
platform = 'win32-mingw'
|
platform = 'win32-mingw'
|
||||||
|
|
||||||
env.SConscriptChdir(0)
|
env.SConscriptChdir(0)
|
||||||
|
|
||||||
crossbuild = B.arguments.get('BF_CROSS', None)
|
crossbuild = B.arguments.get('BF_CROSS', None)
|
||||||
if crossbuild and platform not in ('win32-vc', 'win64-vc'):
|
if crossbuild and platform not in ('win32-vc', 'win64-vc'):
|
||||||
platform = 'linuxcross'
|
platform = 'linuxcross'
|
||||||
|
|
||||||
env['OURPLATFORM'] = platform
|
env['OURPLATFORM'] = platform
|
||||||
|
|
||||||
configfile = os.path.join("build_files", "scons", "config", platform + "-config.py")
|
configfile = os.path.join("build_files", "scons", "config", platform + "-config.py")
|
||||||
|
|
||||||
if os.path.exists(configfile):
|
if os.path.exists(configfile):
|
||||||
print B.bc.OKGREEN + "Using config file: " + B.bc.ENDC + configfile
|
print B.bc.OKGREEN + "Using config file: " + B.bc.ENDC + configfile
|
||||||
else:
|
else:
|
||||||
print B.bc.FAIL + configfile + " doesn't exist" + B.bc.ENDC
|
print B.bc.FAIL + configfile + " doesn't exist" + B.bc.ENDC
|
||||||
|
|
||||||
if crossbuild and env['PLATFORM'] != 'win32':
|
if crossbuild and env['PLATFORM'] != 'win32':
|
||||||
print B.bc.HEADER+"Preparing for crossbuild"+B.bc.ENDC
|
print B.bc.HEADER+"Preparing for crossbuild"+B.bc.ENDC
|
||||||
env.Tool('crossmingw', [toolpath])
|
env.Tool('crossmingw', [toolpath])
|
||||||
# todo: determine proper libs/includes etc.
|
# todo: determine proper libs/includes etc.
|
||||||
# Needed for gui programs, console programs should do without it
|
# Needed for gui programs, console programs should do without it
|
||||||
|
|
||||||
# Now we don't need this option to have console window
|
# Now we don't need this option to have console window
|
||||||
# env.Append(LINKFLAGS=['-mwindows'])
|
# env.Append(LINKFLAGS=['-mwindows'])
|
||||||
|
|
||||||
userconfig = B.arguments.get('BF_CONFIG', 'user-config.py')
|
userconfig = B.arguments.get('BF_CONFIG', 'user-config.py')
|
||||||
# first read platform config. B.arguments will override
|
# first read platform config. B.arguments will override
|
||||||
optfiles = [configfile]
|
optfiles = [configfile]
|
||||||
if os.path.exists(userconfig):
|
if os.path.exists(userconfig):
|
||||||
print B.bc.OKGREEN + "Using user-config file: " + B.bc.ENDC + userconfig
|
print B.bc.OKGREEN + "Using user-config file: " + B.bc.ENDC + userconfig
|
||||||
optfiles += [userconfig]
|
optfiles += [userconfig]
|
||||||
else:
|
else:
|
||||||
print B.bc.WARNING + userconfig + " not found, no user overrides" + B.bc.ENDC
|
print B.bc.WARNING + userconfig + " not found, no user overrides" + B.bc.ENDC
|
||||||
|
|
||||||
opts = btools.read_opts(env, optfiles, B.arguments)
|
opts = btools.read_opts(env, optfiles, B.arguments)
|
||||||
opts.Update(env)
|
opts.Update(env)
|
||||||
|
|
||||||
if not env['BF_FANCY']:
|
if not env['BF_FANCY']:
|
||||||
B.bc.disable()
|
B.bc.disable()
|
||||||
|
|
||||||
|
|
||||||
# remove install dir so old and new files are not mixed.
|
# remove install dir so old and new files are not mixed.
|
||||||
# NOTE: only do the scripts directory for now, otherwise is too disruptive for developers
|
# NOTE: only do the scripts directory for now, otherwise is too disruptive for developers
|
||||||
# TODO: perhaps we need an option (off by default) to not do this altogether...
|
# TODO: perhaps we need an option (off by default) to not do this altogether...
|
||||||
if not env['WITHOUT_BF_INSTALL'] and not env['WITHOUT_BF_OVERWRITE_INSTALL']:
|
if not env['WITHOUT_BF_INSTALL'] and not env['WITHOUT_BF_OVERWRITE_INSTALL']:
|
||||||
scriptsDir = os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts')
|
scriptsDir = os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts')
|
||||||
if os.path.isdir(scriptsDir):
|
if os.path.isdir(scriptsDir):
|
||||||
print B.bc.OKGREEN + "Clearing installation directory%s: %s" % (B.bc.ENDC, os.path.abspath(scriptsDir))
|
print B.bc.OKGREEN + "Clearing installation directory%s: %s" % (B.bc.ENDC, os.path.abspath(scriptsDir))
|
||||||
shutil.rmtree(scriptsDir)
|
shutil.rmtree(scriptsDir)
|
||||||
|
|
||||||
|
|
||||||
SetOption('num_jobs', int(env['BF_NUMJOBS']))
|
SetOption('num_jobs', int(env['BF_NUMJOBS']))
|
||||||
print B.bc.OKGREEN + "Build with parallel jobs%s: %s" % (B.bc.ENDC, GetOption('num_jobs'))
|
print B.bc.OKGREEN + "Build with parallel jobs%s: %s" % (B.bc.ENDC, GetOption('num_jobs'))
|
||||||
print B.bc.OKGREEN + "Build with debug symbols%s: %s" % (B.bc.ENDC, env['BF_DEBUG'])
|
print B.bc.OKGREEN + "Build with debug symbols%s: %s" % (B.bc.ENDC, env['BF_DEBUG'])
|
||||||
|
|
||||||
if 'blenderlite' in B.targets:
|
# BLENDERPATH is a unix only option to enable typical style paths this is
|
||||||
target_env_defs = {}
|
# spesifically a data-dir, which is used a lot but cant replace BF_INSTALLDIR
|
||||||
target_env_defs['WITH_BF_GAMEENGINE'] = False
|
# because the blender binary is installed in $BF_INSTALLDIR/bin/blender
|
||||||
target_env_defs['WITH_BF_OPENAL'] = False
|
|
||||||
target_env_defs['WITH_BF_OPENEXR'] = False
|
|
||||||
target_env_defs['WITH_BF_OPENMP'] = False
|
|
||||||
target_env_defs['WITH_BF_ICONV'] = False
|
|
||||||
target_env_defs['WITH_BF_INTERNATIONAL'] = False
|
|
||||||
target_env_defs['WITH_BF_OPENJPEG'] = False
|
|
||||||
target_env_defs['WITH_BF_FFMPEG'] = False
|
|
||||||
target_env_defs['WITH_BF_QUICKTIME'] = False
|
|
||||||
target_env_defs['WITH_BF_REDCODE'] = False
|
|
||||||
target_env_defs['WITH_BF_DDS'] = False
|
|
||||||
target_env_defs['WITH_BF_CINEON'] = False
|
|
||||||
target_env_defs['WITH_BF_HDR'] = False
|
|
||||||
target_env_defs['WITH_BF_ZLIB'] = False
|
|
||||||
target_env_defs['WITH_BF_SDL'] = False
|
|
||||||
target_env_defs['WITH_BF_JPEG'] = False
|
|
||||||
target_env_defs['WITH_BF_PNG'] = False
|
|
||||||
target_env_defs['WITH_BF_BULLET'] = False
|
|
||||||
target_env_defs['WITH_BF_BINRELOC'] = False
|
|
||||||
target_env_defs['BF_BUILDINFO'] = False
|
|
||||||
target_env_defs['BF_NO_ELBEEM'] = True
|
|
||||||
target_env_defs['WITH_BF_PYTHON'] = False
|
|
||||||
|
|
||||||
# Merge blenderlite, let command line to override
|
|
||||||
for k,v in target_env_defs.iteritems():
|
|
||||||
if k not in B.arguments:
|
|
||||||
env[k] = v
|
|
||||||
|
|
||||||
|
if env['WITH_BF_FHS']:
|
||||||
|
BLENDERPATH = os.path.join(env['BF_INSTALLDIR'], 'share', 'blender', env['BF_VERSION'])
|
||||||
|
else:
|
||||||
|
BLENDERPATH = env['BF_INSTALLDIR']
|
||||||
|
|
||||||
if env['WITH_BF_OPENMP'] == 1:
|
if env['WITH_BF_OPENMP'] == 1:
|
||||||
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
||||||
env['CCFLAGS'].append('/openmp')
|
env['CCFLAGS'].append('/openmp')
|
||||||
env['CPPFLAGS'].append('/openmp')
|
env['CPPFLAGS'].append('/openmp')
|
||||||
env['CXXFLAGS'].append('/openmp')
|
env['CXXFLAGS'].append('/openmp')
|
||||||
else:
|
else:
|
||||||
if env['CC'].endswith('icc'): # to be able to handle CC=/opt/bla/icc case
|
if env['CC'].endswith('icc'): # to be able to handle CC=/opt/bla/icc case
|
||||||
env.Append(LINKFLAGS=['-openmp', '-static-intel'])
|
env.Append(LINKFLAGS=['-openmp', '-static-intel'])
|
||||||
env['CCFLAGS'].append('-openmp')
|
env['CCFLAGS'].append('-openmp')
|
||||||
env['CPPFLAGS'].append('-openmp')
|
env['CPPFLAGS'].append('-openmp')
|
||||||
env['CXXFLAGS'].append('-openmp')
|
env['CXXFLAGS'].append('-openmp')
|
||||||
else:
|
else:
|
||||||
env.Append(CCFLAGS=['-fopenmp'])
|
env.Append(CCFLAGS=['-fopenmp'])
|
||||||
env.Append(CPPFLAGS=['-fopenmp'])
|
env.Append(CPPFLAGS=['-fopenmp'])
|
||||||
env.Append(CXXFLAGS=['-fopenmp'])
|
env.Append(CXXFLAGS=['-fopenmp'])
|
||||||
|
|
||||||
if env['WITH_GHOST_COCOA'] == True:
|
if env['WITH_GHOST_COCOA'] == True:
|
||||||
env.Append(CFLAGS=['-DGHOST_COCOA'])
|
env.Append(CFLAGS=['-DGHOST_COCOA'])
|
||||||
env.Append(CXXFLAGS=['-DGHOST_COCOA'])
|
env.Append(CXXFLAGS=['-DGHOST_COCOA'])
|
||||||
env.Append(CPPFLAGS=['-DGHOST_COCOA'])
|
env.Append(CPPFLAGS=['-DGHOST_COCOA'])
|
||||||
|
|
||||||
if env['USE_QTKIT'] == True:
|
if env['USE_QTKIT'] == True:
|
||||||
env.Append(CFLAGS=['-DUSE_QTKIT'])
|
env.Append(CFLAGS=['-DUSE_QTKIT'])
|
||||||
env.Append(CXXFLAGS=['-DUSE_QTKIT'])
|
env.Append(CXXFLAGS=['-DUSE_QTKIT'])
|
||||||
env.Append(CPPFLAGS=['-DUSE_QTKIT'])
|
env.Append(CPPFLAGS=['-DUSE_QTKIT'])
|
||||||
|
|
||||||
#check for additional debug libnames
|
#check for additional debug libnames
|
||||||
|
|
||||||
if env.has_key('BF_DEBUG_LIBS'):
|
if env.has_key('BF_DEBUG_LIBS'):
|
||||||
B.quickdebug += env['BF_DEBUG_LIBS']
|
B.quickdebug += env['BF_DEBUG_LIBS']
|
||||||
|
|
||||||
printdebug = B.arguments.get('BF_LISTDEBUG', 0)
|
printdebug = B.arguments.get('BF_LISTDEBUG', 0)
|
||||||
|
|
||||||
if len(B.quickdebug) > 0 and printdebug != 0:
|
if len(B.quickdebug) > 0 and printdebug != 0:
|
||||||
print B.bc.OKGREEN + "Buildings these libs with debug symbols:" + B.bc.ENDC
|
print B.bc.OKGREEN + "Buildings these libs with debug symbols:" + B.bc.ENDC
|
||||||
for l in B.quickdebug:
|
for l in B.quickdebug:
|
||||||
print "\t" + l
|
print "\t" + l
|
||||||
|
|
||||||
# remove stdc++ from LLIBS if we are building a statc linked CXXFLAGS
|
# remove stdc++ from LLIBS if we are building a statc linked CXXFLAGS
|
||||||
if env['WITH_BF_STATICCXX']:
|
if env['WITH_BF_STATICCXX']:
|
||||||
if 'stdc++' in env['LLIBS']:
|
if 'stdc++' in env['LLIBS']:
|
||||||
env['LLIBS'].remove('stdc++')
|
env['LLIBS'].remove('stdc++')
|
||||||
else:
|
else:
|
||||||
print '\tcould not remove stdc++ library from LLIBS, WITH_BF_STATICCXX may not work for your platform'
|
print '\tcould not remove stdc++ library from LLIBS, WITH_BF_STATICCXX may not work for your platform'
|
||||||
|
|
||||||
# check target for blenderplayer. Set WITH_BF_PLAYER if found on cmdline
|
# check target for blenderplayer. Set WITH_BF_PLAYER if found on cmdline
|
||||||
if 'blenderplayer' in B.targets:
|
if 'blenderplayer' in B.targets:
|
||||||
env['WITH_BF_PLAYER'] = True
|
env['WITH_BF_PLAYER'] = True
|
||||||
|
|
||||||
if 'blendernogame' in B.targets:
|
if 'blendernogame' in B.targets:
|
||||||
env['WITH_BF_GAMEENGINE'] = False
|
env['WITH_BF_GAMEENGINE'] = False
|
||||||
|
|
||||||
|
if 'blenderlite' in B.targets:
|
||||||
|
target_env_defs = {}
|
||||||
|
target_env_defs['WITH_BF_GAMEENGINE'] = False
|
||||||
|
target_env_defs['WITH_BF_OPENAL'] = False
|
||||||
|
target_env_defs['WITH_BF_OPENEXR'] = False
|
||||||
|
target_env_defs['WITH_BF_OPENMP'] = False
|
||||||
|
target_env_defs['WITH_BF_ICONV'] = False
|
||||||
|
target_env_defs['WITH_BF_INTERNATIONAL'] = False
|
||||||
|
target_env_defs['WITH_BF_OPENJPEG'] = False
|
||||||
|
target_env_defs['WITH_BF_FFMPEG'] = False
|
||||||
|
target_env_defs['WITH_BF_QUICKTIME'] = False
|
||||||
|
target_env_defs['WITH_BF_REDCODE'] = False
|
||||||
|
target_env_defs['WITH_BF_DDS'] = False
|
||||||
|
target_env_defs['WITH_BF_ZLIB'] = False
|
||||||
|
target_env_defs['WITH_BF_SDL'] = False
|
||||||
|
target_env_defs['WITH_BF_JPEG'] = False
|
||||||
|
target_env_defs['WITH_BF_PNG'] = False
|
||||||
|
target_env_defs['WITH_BF_BULLET'] = False
|
||||||
|
target_env_defs['WITH_BF_BINRELOC'] = False
|
||||||
|
target_env_defs['BF_BUILDINFO'] = False
|
||||||
|
target_env_defs['BF_NO_ELBEEM'] = True
|
||||||
|
target_env_defs['WITH_BF_PYTHON'] = False
|
||||||
|
|
||||||
|
# Merge blenderlite, let command line to override
|
||||||
|
for k,v in target_env_defs.iteritems():
|
||||||
|
if k not in B.arguments:
|
||||||
|
env[k] = v
|
||||||
|
|
||||||
# disable elbeem (fluidsim) compilation?
|
# disable elbeem (fluidsim) compilation?
|
||||||
if env['BF_NO_ELBEEM'] == 1:
|
if env['BF_NO_ELBEEM'] == 1:
|
||||||
env['CPPFLAGS'].append('-DDISABLE_ELBEEM')
|
env['CPPFLAGS'].append('-DDISABLE_ELBEEM')
|
||||||
env['CXXFLAGS'].append('-DDISABLE_ELBEEM')
|
env['CXXFLAGS'].append('-DDISABLE_ELBEEM')
|
||||||
env['CCFLAGS'].append('-DDISABLE_ELBEEM')
|
env['CCFLAGS'].append('-DDISABLE_ELBEEM')
|
||||||
|
|
||||||
if env['WITH_BF_SDL'] == False and env['OURPLATFORM'] in ('win32-vc', 'win32-ming', 'win64-vc'):
|
if env['WITH_BF_SDL'] == False and env['OURPLATFORM'] in ('win32-vc', 'win32-ming', 'win64-vc'):
|
||||||
env['PLATFORM_LINKFLAGS'].remove('/ENTRY:mainCRTStartup')
|
env['PLATFORM_LINKFLAGS'].remove('/ENTRY:mainCRTStartup')
|
||||||
env['PLATFORM_LINKFLAGS'].append('/ENTRY:main')
|
env['PLATFORM_LINKFLAGS'].append('/ENTRY:main')
|
||||||
|
|
||||||
# lastly we check for root_build_dir ( we should not do before, otherwise we might do wrong builddir
|
# lastly we check for root_build_dir ( we should not do before, otherwise we might do wrong builddir
|
||||||
B.root_build_dir = env['BF_BUILDDIR']
|
B.root_build_dir = env['BF_BUILDDIR']
|
||||||
B.doc_build_dir = os.path.join(env['BF_INSTALLDIR'], 'doc')
|
B.doc_build_dir = os.path.join(BLENDERPATH, 'doc')
|
||||||
if not B.root_build_dir[-1]==os.sep:
|
if not B.root_build_dir[-1]==os.sep:
|
||||||
B.root_build_dir += os.sep
|
B.root_build_dir += os.sep
|
||||||
if not B.doc_build_dir[-1]==os.sep:
|
if not B.doc_build_dir[-1]==os.sep:
|
||||||
B.doc_build_dir += os.sep
|
B.doc_build_dir += os.sep
|
||||||
|
|
||||||
# We do a shortcut for clean when no quicklist is given: just delete
|
# We do a shortcut for clean when no quicklist is given: just delete
|
||||||
# builddir without reading in SConscripts
|
# builddir without reading in SConscripts
|
||||||
do_clean = None
|
do_clean = None
|
||||||
if 'clean' in B.targets:
|
if 'clean' in B.targets:
|
||||||
do_clean = True
|
do_clean = True
|
||||||
|
|
||||||
if not quickie and do_clean:
|
if not quickie and do_clean:
|
||||||
if os.path.exists(B.doc_build_dir):
|
if os.path.exists(B.doc_build_dir):
|
||||||
print B.bc.HEADER+'Cleaning doc dir...'+B.bc.ENDC
|
print B.bc.HEADER+'Cleaning doc dir...'+B.bc.ENDC
|
||||||
dirs = os.listdir(B.doc_build_dir)
|
dirs = os.listdir(B.doc_build_dir)
|
||||||
for entry in dirs:
|
for entry in dirs:
|
||||||
if os.path.isdir(B.doc_build_dir + entry) == 1:
|
if os.path.isdir(B.doc_build_dir + entry) == 1:
|
||||||
print "clean dir %s"%(B.doc_build_dir+entry)
|
print "clean dir %s"%(B.doc_build_dir+entry)
|
||||||
shutil.rmtree(B.doc_build_dir+entry)
|
shutil.rmtree(B.doc_build_dir+entry)
|
||||||
else: # remove file
|
else: # remove file
|
||||||
print "remove file %s"%(B.doc_build_dir+entry)
|
print "remove file %s"%(B.doc_build_dir+entry)
|
||||||
os.remove(B.root_build_dir+entry)
|
os.remove(B.root_build_dir+entry)
|
||||||
if os.path.exists(B.root_build_dir):
|
if os.path.exists(B.root_build_dir):
|
||||||
print B.bc.HEADER+'Cleaning build dir...'+B.bc.ENDC
|
print B.bc.HEADER+'Cleaning build dir...'+B.bc.ENDC
|
||||||
dirs = os.listdir(B.root_build_dir)
|
dirs = os.listdir(B.root_build_dir)
|
||||||
for entry in dirs:
|
for entry in dirs:
|
||||||
if os.path.isdir(B.root_build_dir + entry) == 1:
|
if os.path.isdir(B.root_build_dir + entry) == 1:
|
||||||
print "clean dir %s"%(B.root_build_dir+entry)
|
print "clean dir %s"%(B.root_build_dir+entry)
|
||||||
shutil.rmtree(B.root_build_dir+entry)
|
shutil.rmtree(B.root_build_dir+entry)
|
||||||
else: # remove file
|
else: # remove file
|
||||||
print "remove file %s"%(B.root_build_dir+entry)
|
print "remove file %s"%(B.root_build_dir+entry)
|
||||||
os.remove(B.root_build_dir+entry)
|
os.remove(B.root_build_dir+entry)
|
||||||
for confile in ['extern/ffmpeg/config.mak', 'extern/x264/config.mak',
|
for confile in ['extern/ffmpeg/config.mak', 'extern/x264/config.mak',
|
||||||
'extern/xvidcore/build/generic/platform.inc', 'extern/ffmpeg/include']:
|
'extern/xvidcore/build/generic/platform.inc', 'extern/ffmpeg/include']:
|
||||||
if os.path.exists(confile):
|
if os.path.exists(confile):
|
||||||
print "clean file %s"%confile
|
print "clean file %s"%confile
|
||||||
if os.path.isdir(confile):
|
if os.path.isdir(confile):
|
||||||
for root, dirs, files in os.walk(confile):
|
for root, dirs, files in os.walk(confile):
|
||||||
for name in files:
|
for name in files:
|
||||||
os.remove(os.path.join(root, name))
|
os.remove(os.path.join(root, name))
|
||||||
else:
|
else:
|
||||||
os.remove(confile)
|
os.remove(confile)
|
||||||
print B.bc.OKGREEN+'...done'+B.bc.ENDC
|
print B.bc.OKGREEN+'...done'+B.bc.ENDC
|
||||||
else:
|
else:
|
||||||
print B.bc.HEADER+'Already Clean, nothing to do.'+B.bc.ENDC
|
print B.bc.HEADER+'Already Clean, nothing to do.'+B.bc.ENDC
|
||||||
Exit()
|
Exit()
|
||||||
|
|
||||||
if not os.path.isdir ( B.root_build_dir):
|
if not os.path.isdir ( B.root_build_dir):
|
||||||
os.makedirs ( B.root_build_dir )
|
os.makedirs ( B.root_build_dir )
|
||||||
os.makedirs ( B.root_build_dir + 'source' )
|
os.makedirs ( B.root_build_dir + 'source' )
|
||||||
os.makedirs ( B.root_build_dir + 'intern' )
|
os.makedirs ( B.root_build_dir + 'intern' )
|
||||||
os.makedirs ( B.root_build_dir + 'extern' )
|
os.makedirs ( B.root_build_dir + 'extern' )
|
||||||
os.makedirs ( B.root_build_dir + 'lib' )
|
os.makedirs ( B.root_build_dir + 'lib' )
|
||||||
os.makedirs ( B.root_build_dir + 'bin' )
|
os.makedirs ( B.root_build_dir + 'bin' )
|
||||||
# # Docs not working with epy anymore
|
if not os.path.isdir(B.doc_build_dir) and env['WITH_BF_DOCS']:
|
||||||
# if not os.path.isdir(B.doc_build_dir) and env['WITH_BF_DOCS']:
|
os.makedirs ( B.doc_build_dir )
|
||||||
# os.makedirs ( B.doc_build_dir )
|
|
||||||
|
|
||||||
Help(opts.GenerateHelpText(env))
|
Help(opts.GenerateHelpText(env))
|
||||||
|
|
||||||
@@ -370,10 +375,10 @@ Help(opts.GenerateHelpText(env))
|
|||||||
# commands, do 'scons BF_QUIET=0'
|
# commands, do 'scons BF_QUIET=0'
|
||||||
bf_quietoutput = B.arguments.get('BF_QUIET', '1')
|
bf_quietoutput = B.arguments.get('BF_QUIET', '1')
|
||||||
if env['BF_QUIET']:
|
if env['BF_QUIET']:
|
||||||
B.set_quiet_output(env)
|
B.set_quiet_output(env)
|
||||||
else:
|
else:
|
||||||
if toolset=='msvc':
|
if toolset=='msvc':
|
||||||
B.msvc_hack(env)
|
B.msvc_hack(env)
|
||||||
|
|
||||||
print B.bc.HEADER+'Building in: ' + B.bc.ENDC + os.path.abspath(B.root_build_dir)
|
print B.bc.HEADER+'Building in: ' + B.bc.ENDC + os.path.abspath(B.root_build_dir)
|
||||||
env.SConsignFile(B.root_build_dir+'scons-signatures')
|
env.SConsignFile(B.root_build_dir+'scons-signatures')
|
||||||
@@ -395,23 +400,23 @@ SConscript(B.root_build_dir+'/source/SConscript')
|
|||||||
# libraries to give as objects to linking phase
|
# libraries to give as objects to linking phase
|
||||||
mainlist = []
|
mainlist = []
|
||||||
for tp in B.possible_types:
|
for tp in B.possible_types:
|
||||||
if not tp == 'player':
|
if not tp == 'player':
|
||||||
mainlist += B.create_blender_liblist(env, tp)
|
mainlist += B.create_blender_liblist(env, tp)
|
||||||
|
|
||||||
if B.arguments.get('BF_PRIORITYLIST', '0')=='1':
|
if B.arguments.get('BF_PRIORITYLIST', '0')=='1':
|
||||||
B.propose_priorities()
|
B.propose_priorities()
|
||||||
|
|
||||||
dobj = B.buildinfo(env, "dynamic") + B.resources
|
dobj = B.buildinfo(env, "dynamic") + B.resources
|
||||||
thestatlibs, thelibincs = B.setup_staticlibs(env)
|
thestatlibs, thelibincs = B.setup_staticlibs(env)
|
||||||
thesyslibs = B.setup_syslibs(env)
|
thesyslibs = B.setup_syslibs(env)
|
||||||
|
|
||||||
if 'blender' in B.targets or not env['WITH_BF_NOBLENDER']:
|
if 'blender' in B.targets or not env['WITH_BF_NOBLENDER']:
|
||||||
env.BlenderProg(B.root_build_dir, "blender", mainlist + thestatlibs + dobj, thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blender')
|
env.BlenderProg(B.root_build_dir, "blender", dobj + mainlist + thestatlibs, [], thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blender')
|
||||||
if env['WITH_BF_PLAYER']:
|
if env['WITH_BF_PLAYER']:
|
||||||
playerlist = B.create_blender_liblist(env, 'player')
|
playerlist = B.create_blender_liblist(env, 'player')
|
||||||
playerlist += B.create_blender_liblist(env, 'intern')
|
playerlist += B.create_blender_liblist(env, 'intern')
|
||||||
playerlist += B.create_blender_liblist(env, 'extern')
|
playerlist += B.create_blender_liblist(env, 'extern')
|
||||||
env.BlenderProg(B.root_build_dir, "blenderplayer", playerlist, thestatlibs + dobj + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blenderplayer')
|
env.BlenderProg(B.root_build_dir, "blenderplayer", dobj + playerlist, [], thestatlibs + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blenderplayer')
|
||||||
|
|
||||||
##### Now define some targets
|
##### Now define some targets
|
||||||
|
|
||||||
@@ -421,19 +426,20 @@ if env['WITH_BF_PLAYER']:
|
|||||||
#-- binaries
|
#-- binaries
|
||||||
blenderinstall = []
|
blenderinstall = []
|
||||||
if env['OURPLATFORM']=='darwin':
|
if env['OURPLATFORM']=='darwin':
|
||||||
for prg in B.program_list:
|
for prg in B.program_list:
|
||||||
bundle = '%s.app' % prg[0]
|
bundle = '%s.app' % prg[0]
|
||||||
bundledir = os.path.dirname(bundle)
|
bundledir = os.path.dirname(bundle)
|
||||||
for dp, dn, df in os.walk(bundle):
|
for dp, dn, df in os.walk(bundle):
|
||||||
if '.svn' in dn:
|
if '.svn' in dn:
|
||||||
dn.remove('.svn')
|
dn.remove('.svn')
|
||||||
if '_svn' in dn:
|
dir=env['BF_INSTALLDIR']+dp[len(bundledir):]
|
||||||
dn.remove('_svn')
|
source=[dp+os.sep+f for f in df]
|
||||||
dir=env['BF_INSTALLDIR']+dp[len(bundledir):]
|
blenderinstall.append(env.Install(dir=dir,source=source))
|
||||||
source=[dp+os.sep+f for f in df]
|
|
||||||
blenderinstall.append(env.Install(dir=dir,source=source))
|
|
||||||
else:
|
else:
|
||||||
blenderinstall = env.Install(dir=env['BF_INSTALLDIR'], source=B.program_list)
|
if env['WITH_BF_FHS']: dir= os.path.join(env['BF_INSTALLDIR'], 'bin')
|
||||||
|
else: dir= env['BF_INSTALLDIR']
|
||||||
|
|
||||||
|
blenderinstall = env.Install(dir=dir, source=B.program_list)
|
||||||
|
|
||||||
#-- local path = config files in install dir: installdir\VERSION
|
#-- local path = config files in install dir: installdir\VERSION
|
||||||
#- dont do config and scripts for darwin, it is already in the bundle
|
#- dont do config and scripts for darwin, it is already in the bundle
|
||||||
@@ -444,197 +450,188 @@ dottargetlist = []
|
|||||||
scriptinstall = []
|
scriptinstall = []
|
||||||
|
|
||||||
if env['OURPLATFORM']!='darwin':
|
if env['OURPLATFORM']!='darwin':
|
||||||
for dp, dn, df in os.walk('bin/.blender'):
|
for dp, dn, df in os.walk('bin/.blender'):
|
||||||
if '.svn' in dn:
|
if '.svn' in dn:
|
||||||
dn.remove('.svn')
|
dn.remove('.svn')
|
||||||
if '_svn' in dn:
|
|
||||||
dn.remove('_svn')
|
for f in df:
|
||||||
|
if not env['WITH_BF_INTERNATIONAL']:
|
||||||
for f in df:
|
if 'locale' in dp:
|
||||||
if not env['WITH_BF_INTERNATIONAL']:
|
continue
|
||||||
if 'locale' in dp:
|
if f == '.Blanguages':
|
||||||
continue
|
continue
|
||||||
if f == '.Blanguages':
|
if not env['WITH_BF_FREETYPE']:
|
||||||
continue
|
if f.endswith('.ttf'):
|
||||||
if not env['WITH_BF_FREETYPE']:
|
continue
|
||||||
if f.endswith('.ttf'):
|
|
||||||
continue
|
if 'locale' in dp:
|
||||||
|
datafileslist.append(os.path.join(dp,f))
|
||||||
if 'locale' in dp:
|
if env['WITH_BF_FHS']: dir= os.path.join(*([BLENDERPATH] + ['datafiles'] + dp.split(os.sep)[2:])) # skip bin/.blender
|
||||||
datafileslist.append(os.path.join(dp,f))
|
else: dir= os.path.join(*([BLENDERPATH] + [VERSION] + ['datafiles'] + dp.split(os.sep)[1:])) # skip bin
|
||||||
dir= os.path.join(*([env['BF_INSTALLDIR']] + [VERSION] + ['datafiles'] + dp.split(os.sep)[1:])) # skip bin
|
datafilestargetlist.append(dir + os.sep + f)
|
||||||
datafilestargetlist.append(dir + os.sep + f)
|
|
||||||
|
|
||||||
else:
|
else:
|
||||||
dotblendlist.append(os.path.join(dp, f))
|
dotblendlist.append(os.path.join(dp, f))
|
||||||
dir= os.path.join(*([env['BF_INSTALLDIR']] + [VERSION] + ['config'] + dp.split(os.sep)[1:])) # skip bin
|
if env['WITH_BF_FHS']: dir= os.path.join(*([BLENDERPATH] + ['config'] + dp.split(os.sep)[2:])) # skip bin/.blender
|
||||||
dottargetlist.append(dir + os.sep + f)
|
else: dir= os.path.join(*([BLENDERPATH] + [VERSION] + ['config'] + dp.split(os.sep)[1:])) # skip bin
|
||||||
|
|
||||||
dotblenderinstall = []
|
dottargetlist.append(dir + os.sep + f)
|
||||||
for targetdir,srcfile in zip(dottargetlist, dotblendlist):
|
|
||||||
td, tf = os.path.split(targetdir)
|
dotblenderinstall = []
|
||||||
dotblenderinstall.append(env.Install(dir=td, source=srcfile))
|
for targetdir,srcfile in zip(dottargetlist, dotblendlist):
|
||||||
for targetdir,srcfile in zip(datafilestargetlist, datafileslist):
|
td, tf = os.path.split(targetdir)
|
||||||
td, tf = os.path.split(targetdir)
|
dotblenderinstall.append(env.Install(dir=td, source=srcfile))
|
||||||
dotblenderinstall.append(env.Install(dir=td, source=srcfile))
|
for targetdir,srcfile in zip(datafilestargetlist, datafileslist):
|
||||||
|
td, tf = os.path.split(targetdir)
|
||||||
if env['WITH_BF_PYTHON']:
|
dotblenderinstall.append(env.Install(dir=td, source=srcfile))
|
||||||
#-- local/VERSION/scripts
|
|
||||||
scriptpaths=['release/scripts']
|
if env['WITH_BF_PYTHON']:
|
||||||
for scriptpath in scriptpaths:
|
#-- local/VERSION/scripts
|
||||||
for dp, dn, df in os.walk(scriptpath):
|
scriptpaths=['release/scripts']
|
||||||
if '.svn' in dn:
|
for scriptpath in scriptpaths:
|
||||||
dn.remove('.svn')
|
for dp, dn, df in os.walk(scriptpath):
|
||||||
if '_svn' in dn:
|
if '.svn' in dn:
|
||||||
dn.remove('_svn')
|
dn.remove('.svn')
|
||||||
|
|
||||||
dir = os.path.join(env['BF_INSTALLDIR'], VERSION)
|
if env['WITH_BF_FHS']: dir = BLENDERPATH
|
||||||
dir += os.sep + os.path.basename(scriptpath) + dp[len(scriptpath):]
|
else: dir = os.path.join(env['BF_INSTALLDIR'], VERSION)
|
||||||
|
dir += os.sep + os.path.basename(scriptpath) + dp[len(scriptpath):]
|
||||||
source=[os.path.join(dp, f) for f in df if f[-3:]!='pyc']
|
|
||||||
# To ensure empty dirs are created too
|
source=[os.path.join(dp, f) for f in df if f[-3:]!='pyc']
|
||||||
if len(source)==0:
|
scriptinstall.append(env.Install(dir=dir,source=source))
|
||||||
env.Execute(Mkdir(dir))
|
|
||||||
scriptinstall.append(env.Install(dir=dir,source=source))
|
|
||||||
|
|
||||||
#-- icons
|
#-- icons
|
||||||
if env['OURPLATFORM']=='linux2':
|
if env['OURPLATFORM']=='linux2':
|
||||||
iconlist = []
|
iconlist = []
|
||||||
icontargetlist = []
|
icontargetlist = []
|
||||||
|
|
||||||
for tp, tn, tf in os.walk('release/freedesktop/icons'):
|
for tp, tn, tf in os.walk('release/freedesktop/icons'):
|
||||||
if '.svn' in tn:
|
if '.svn' in tn:
|
||||||
tn.remove('.svn')
|
tn.remove('.svn')
|
||||||
if '_svn' in tn:
|
for f in tf:
|
||||||
tn.remove('_svn')
|
iconlist.append(os.path.join(tp, f))
|
||||||
for f in tf:
|
icontargetlist.append( os.path.join(*([BLENDERPATH] + tp.split(os.sep)[2:] + [f])) )
|
||||||
iconlist.append(os.path.join(tp, f))
|
|
||||||
icontargetlist.append( os.path.join(*([env['BF_INSTALLDIR']] + tp.split(os.sep)[2:] + [f])) )
|
|
||||||
|
|
||||||
iconinstall = []
|
iconinstall = []
|
||||||
for targetdir,srcfile in zip(icontargetlist, iconlist):
|
for targetdir,srcfile in zip(icontargetlist, iconlist):
|
||||||
td, tf = os.path.split(targetdir)
|
td, tf = os.path.split(targetdir)
|
||||||
iconinstall.append(env.Install(dir=td, source=srcfile))
|
iconinstall.append(env.Install(dir=td, source=srcfile))
|
||||||
|
|
||||||
# dlls for linuxcross
|
# dlls for linuxcross
|
||||||
# TODO - add more libs, for now this lets blenderlite run
|
# TODO - add more libs, for now this lets blenderlite run
|
||||||
if env['OURPLATFORM']=='linuxcross':
|
if env['OURPLATFORM']=='linuxcross':
|
||||||
dir=env['BF_INSTALLDIR']
|
dir=env['BF_INSTALLDIR']
|
||||||
source = []
|
source = []
|
||||||
|
|
||||||
if env['WITH_BF_OPENMP']:
|
if env['WITH_BF_OPENMP']:
|
||||||
source += ['../lib/windows/pthreads/lib/pthreadGC2.dll']
|
source += ['../lib/windows/pthreads/lib/pthreadGC2.dll']
|
||||||
|
|
||||||
scriptinstall.append(env.Install(dir=dir, source=source))
|
scriptinstall.append(env.Install(dir=dir, source=source))
|
||||||
|
|
||||||
#-- plugins
|
#-- plugins
|
||||||
pluglist = []
|
pluglist = []
|
||||||
plugtargetlist = []
|
plugtargetlist = []
|
||||||
for tp, tn, tf in os.walk('release/plugins'):
|
for tp, tn, tf in os.walk('release/plugins'):
|
||||||
if '.svn' in tn:
|
if '.svn' in tn:
|
||||||
tn.remove('.svn')
|
tn.remove('.svn')
|
||||||
if '_svn' in tn:
|
df = tp[8:] # remove 'release/'
|
||||||
tn.remove('_svn')
|
for f in tf:
|
||||||
df = tp[8:] # remove 'release/'
|
pluglist.append(os.path.join(tp, f))
|
||||||
for f in tf:
|
plugtargetlist.append( os.path.join(BLENDERPATH, df, f) )
|
||||||
pluglist.append(os.path.join(tp, f))
|
|
||||||
plugtargetlist.append( os.path.join(env['BF_INSTALLDIR'], VERSION, df, f) )
|
|
||||||
|
|
||||||
|
|
||||||
# header files for plugins
|
# header files for plugins
|
||||||
pluglist.append('source/blender/blenpluginapi/documentation.h')
|
pluglist.append('source/blender/blenpluginapi/documentation.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'documentation.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'documentation.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/externdef.h')
|
pluglist.append('source/blender/blenpluginapi/externdef.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'externdef.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'externdef.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/floatpatch.h')
|
pluglist.append('source/blender/blenpluginapi/floatpatch.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'floatpatch.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'floatpatch.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/iff.h')
|
pluglist.append('source/blender/blenpluginapi/iff.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'iff.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'iff.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/plugin.h')
|
pluglist.append('source/blender/blenpluginapi/plugin.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'plugin.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'plugin.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/util.h')
|
pluglist.append('source/blender/blenpluginapi/util.h')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'util.h'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'util.h'))
|
||||||
pluglist.append('source/blender/blenpluginapi/plugin.DEF')
|
pluglist.append('source/blender/blenpluginapi/plugin.DEF')
|
||||||
plugtargetlist.append(os.path.join(env['BF_INSTALLDIR'], VERSION, 'plugins', 'include', 'plugin.def'))
|
plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'plugin.def'))
|
||||||
|
|
||||||
plugininstall = []
|
plugininstall = []
|
||||||
for targetdir,srcfile in zip(plugtargetlist, pluglist):
|
for targetdir,srcfile in zip(plugtargetlist, pluglist):
|
||||||
td, tf = os.path.split(targetdir)
|
td, tf = os.path.split(targetdir)
|
||||||
plugininstall.append(env.Install(dir=td, source=srcfile))
|
plugininstall.append(env.Install(dir=td, source=srcfile))
|
||||||
|
|
||||||
textlist = []
|
textlist = []
|
||||||
texttargetlist = []
|
texttargetlist = []
|
||||||
for tp, tn, tf in os.walk('release/text'):
|
for tp, tn, tf in os.walk('release/text'):
|
||||||
if '.svn' in tn:
|
if '.svn' in tn:
|
||||||
tn.remove('.svn')
|
tn.remove('.svn')
|
||||||
if '_svn' in tn:
|
for f in tf:
|
||||||
tn.remove('_svn')
|
textlist.append(tp+os.sep+f)
|
||||||
for f in tf:
|
|
||||||
textlist.append(tp+os.sep+f)
|
|
||||||
|
|
||||||
textinstall = env.Install(dir=env['BF_INSTALLDIR'], source=textlist)
|
textinstall = env.Install(dir=BLENDERPATH, source=textlist)
|
||||||
|
|
||||||
if env['OURPLATFORM']=='darwin':
|
if env['OURPLATFORM']=='darwin':
|
||||||
allinstall = [blenderinstall, plugininstall, textinstall]
|
allinstall = [blenderinstall, plugininstall, textinstall]
|
||||||
elif env['OURPLATFORM']=='linux2':
|
elif env['OURPLATFORM']=='linux2':
|
||||||
allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall, iconinstall]
|
allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall, iconinstall]
|
||||||
else:
|
else:
|
||||||
allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall]
|
allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall]
|
||||||
|
|
||||||
if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'win64-vc', 'linuxcross'):
|
if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'win64-vc', 'linuxcross'):
|
||||||
dllsources = []
|
dllsources = []
|
||||||
|
|
||||||
if not env['OURPLATFORM'] in ('win32-mingw', 'win64-vc', 'linuxcross'):
|
if not env['OURPLATFORM'] in ('win32-mingw', 'win64-vc', 'linuxcross'):
|
||||||
# For MinGW and linuxcross static linking will be used
|
# For MinGW and linuxcross static linking will be used
|
||||||
dllsources += ['${LCGDIR}/gettext/lib/gnu_gettext.dll']
|
dllsources += ['${LCGDIR}/gettext/lib/gnu_gettext.dll']
|
||||||
|
|
||||||
#currently win64-vc doesn't appear to have libpng.dll
|
#currently win64-vc doesn't appear to have libpng.dll
|
||||||
if env['OURPLATFORM'] != 'win64-vc':
|
if env['OURPLATFORM'] != 'win64-vc':
|
||||||
dllsources += ['${BF_PNG_LIBPATH}/libpng.dll']
|
dllsources += ['${BF_PNG_LIBPATH}/libpng.dll']
|
||||||
|
|
||||||
dllsources += ['${BF_ZLIB_LIBPATH}/zlib.dll']
|
dllsources += ['${BF_ZLIB_LIBPATH}/zlib.dll']
|
||||||
# Used when linking to libtiff was dynamic
|
# Used when linking to libtiff was dynamic
|
||||||
# keep it here until compilation on all platform would be ok
|
# keep it here until compilation on all platform would be ok
|
||||||
# dllsources += ['${BF_TIFF_LIBPATH}/${BF_TIFF_LIB}.dll']
|
# dllsources += ['${BF_TIFF_LIBPATH}/${BF_TIFF_LIB}.dll']
|
||||||
|
|
||||||
if env['OURPLATFORM'] != 'linuxcross':
|
if env['OURPLATFORM'] != 'linuxcross':
|
||||||
# pthreads library is already added
|
# pthreads library is already added
|
||||||
dllsources += ['${BF_PTHREADS_LIBPATH}/${BF_PTHREADS_LIB}.dll']
|
dllsources += ['${BF_PTHREADS_LIBPATH}/${BF_PTHREADS_LIB}.dll']
|
||||||
|
|
||||||
if env['WITH_BF_SDL']:
|
if env['WITH_BF_SDL']:
|
||||||
if env['OURPLATFORM'] == 'win64-vc':
|
if env['OURPLATFORM'] == 'win64-vc':
|
||||||
pass # we link statically already to SDL on win64
|
pass # we link statically already to SDL on win64
|
||||||
else:
|
else:
|
||||||
dllsources.append('${BF_SDL_LIBPATH}/SDL.dll')
|
dllsources.append('${BF_SDL_LIBPATH}/SDL.dll')
|
||||||
|
|
||||||
if env['WITH_BF_PYTHON']:
|
if env['WITH_BF_PYTHON']:
|
||||||
if env['BF_DEBUG']:
|
if env['BF_DEBUG']:
|
||||||
dllsources.append('${BF_PYTHON_LIBPATH}/${BF_PYTHON_DLL}_d.dll')
|
dllsources.append('${BF_PYTHON_LIBPATH}/${BF_PYTHON_DLL}_d.dll')
|
||||||
else:
|
else:
|
||||||
dllsources.append('${BF_PYTHON_LIBPATH}/${BF_PYTHON_DLL}.dll')
|
dllsources.append('${BF_PYTHON_LIBPATH}/${BF_PYTHON_DLL}.dll')
|
||||||
|
|
||||||
if env['WITH_BF_ICONV']:
|
if env['WITH_BF_ICONV']:
|
||||||
if env['OURPLATFORM'] == 'win64-vc':
|
if env['OURPLATFORM'] == 'win64-vc':
|
||||||
pass # we link statically to iconv on win64
|
pass # we link statically to iconv on win64
|
||||||
elif not env['OURPLATFORM'] in ('win32-mingw', 'linuxcross'):
|
elif not env['OURPLATFORM'] in ('win32-mingw', 'linuxcross'):
|
||||||
#gettext for MinGW and cross-compilation is compiled staticly
|
#gettext for MinGW and cross-compilation is compiled staticly
|
||||||
dllsources += ['${BF_ICONV_LIBPATH}/iconv.dll']
|
dllsources += ['${BF_ICONV_LIBPATH}/iconv.dll']
|
||||||
|
|
||||||
if env['WITH_BF_OPENAL']:
|
if env['WITH_BF_OPENAL']:
|
||||||
dllsources.append('${LCGDIR}/openal/lib/OpenAL32.dll')
|
dllsources.append('${LCGDIR}/openal/lib/OpenAL32.dll')
|
||||||
dllsources.append('${LCGDIR}/openal/lib/wrap_oal.dll')
|
dllsources.append('${LCGDIR}/openal/lib/wrap_oal.dll')
|
||||||
|
|
||||||
if env['WITH_BF_SNDFILE']:
|
if env['WITH_BF_SNDFILE']:
|
||||||
dllsources.append('${LCGDIR}/sndfile/lib/libsndfile-1.dll')
|
dllsources.append('${LCGDIR}/sndfile/lib/libsndfile-1.dll')
|
||||||
|
|
||||||
if env['WITH_BF_FFMPEG']:
|
if env['WITH_BF_FFMPEG']:
|
||||||
dllsources += ['${BF_FFMPEG_LIBPATH}/avcodec-52.dll',
|
dllsources += ['${BF_FFMPEG_LIBPATH}/avcodec-52.dll',
|
||||||
'${BF_FFMPEG_LIBPATH}/avformat-52.dll',
|
'${BF_FFMPEG_LIBPATH}/avformat-52.dll',
|
||||||
'${BF_FFMPEG_LIBPATH}/avdevice-52.dll',
|
'${BF_FFMPEG_LIBPATH}/avdevice-52.dll',
|
||||||
'${BF_FFMPEG_LIBPATH}/avutil-50.dll',
|
'${BF_FFMPEG_LIBPATH}/avutil-50.dll',
|
||||||
'${BF_FFMPEG_LIBPATH}/swscale-0.dll']
|
'${BF_FFMPEG_LIBPATH}/swscale-0.dll']
|
||||||
windlls = env.Install(dir=env['BF_INSTALLDIR'], source = dllsources)
|
windlls = env.Install(dir=env['BF_INSTALLDIR'], source = dllsources)
|
||||||
allinstall += windlls
|
allinstall += windlls
|
||||||
|
|
||||||
installtarget = env.Alias('install', allinstall)
|
installtarget = env.Alias('install', allinstall)
|
||||||
bininstalltarget = env.Alias('install-bin', blenderinstall)
|
bininstalltarget = env.Alias('install-bin', blenderinstall)
|
||||||
@@ -644,24 +641,38 @@ nsiscmd = env.Command('nsisinstaller', None, nsisaction)
|
|||||||
nsisalias = env.Alias('nsis', nsiscmd)
|
nsisalias = env.Alias('nsis', nsiscmd)
|
||||||
|
|
||||||
if 'blender' in B.targets:
|
if 'blender' in B.targets:
|
||||||
blenderexe= env.Alias('blender', B.program_list)
|
blenderexe= env.Alias('blender', B.program_list)
|
||||||
Depends(blenderexe,installtarget)
|
Depends(blenderexe,installtarget)
|
||||||
|
|
||||||
if env['WITH_BF_PLAYER']:
|
if env['WITH_BF_PLAYER']:
|
||||||
blenderplayer = env.Alias('blenderplayer', B.program_list)
|
blenderplayer = env.Alias('blenderplayer', B.program_list)
|
||||||
Depends(blenderplayer,installtarget)
|
Depends(blenderplayer,installtarget)
|
||||||
|
|
||||||
if not env['WITH_BF_GAMEENGINE']:
|
if not env['WITH_BF_GAMEENGINE']:
|
||||||
blendernogame = env.Alias('blendernogame', B.program_list)
|
blendernogame = env.Alias('blendernogame', B.program_list)
|
||||||
Depends(blendernogame,installtarget)
|
Depends(blendernogame,installtarget)
|
||||||
|
|
||||||
if 'blenderlite' in B.targets:
|
if 'blenderlite' in B.targets:
|
||||||
blenderlite = env.Alias('blenderlite', B.program_list)
|
blenderlite = env.Alias('blenderlite', B.program_list)
|
||||||
Depends(blenderlite,installtarget)
|
Depends(blenderlite,installtarget)
|
||||||
|
|
||||||
Depends(nsiscmd, allinstall)
|
Depends(nsiscmd, allinstall)
|
||||||
|
|
||||||
Default(B.program_list)
|
Default(B.program_list)
|
||||||
|
|
||||||
if not env['WITHOUT_BF_INSTALL']:
|
if not env['WITHOUT_BF_INSTALL']:
|
||||||
Default(installtarget)
|
Default(installtarget)
|
||||||
|
|
||||||
|
#------------ EPYDOC
|
||||||
|
if env['WITH_BF_DOCS']:
|
||||||
|
try:
|
||||||
|
import epydoc
|
||||||
|
except ImportError:
|
||||||
|
epydoc = None
|
||||||
|
|
||||||
|
if epydoc:
|
||||||
|
SConscript('source/gameengine/PyDoc/SConscript')
|
||||||
|
else:
|
||||||
|
print "No epydoc install detected, Python API and Gameengine API Docs will not be generated "
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,118 +0,0 @@
|
|||||||
#! /usr/bin/env python
|
|
||||||
|
|
||||||
# ##### BEGIN GPL LICENSE BLOCK #####
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software Foundation,
|
|
||||||
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
#
|
|
||||||
# ##### END GPL LICENSE BLOCK #####
|
|
||||||
|
|
||||||
# <pep8 compliant>
|
|
||||||
|
|
||||||
|
|
||||||
def print_help(targets):
|
|
||||||
print("CMake quicky wrapper, no valid targets given.")
|
|
||||||
print(" * targets can contain a subset of the full target name.")
|
|
||||||
print(" * arguments with a '-' prefix are passed onto make.")
|
|
||||||
print(" * this must run from the cmake build dir")
|
|
||||||
print(" * alias this with a short command for speedy access, in bash:")
|
|
||||||
print(" alias mk='../blender/build_files/cmake/example_scripts/make_quicky.py'")
|
|
||||||
print("")
|
|
||||||
print(" eg: make_quicky.py -j3 extern python")
|
|
||||||
print(" ...will execute")
|
|
||||||
print(" make -j3 extern_binreloc extern_glew bf_python bf_python_ext blender/fast")
|
|
||||||
print("")
|
|
||||||
print("Target List:")
|
|
||||||
for t in targets:
|
|
||||||
print(" %s" % t)
|
|
||||||
print("...exiting")
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
targets = set()
|
|
||||||
|
|
||||||
# collect targets
|
|
||||||
file = open("Makefile", "r")
|
|
||||||
for line in file:
|
|
||||||
line = line.rstrip()
|
|
||||||
if not line or line[0] in ". \t@$#":
|
|
||||||
continue
|
|
||||||
|
|
||||||
line = line.split("#", 1)[0]
|
|
||||||
if ":" not in line:
|
|
||||||
continue
|
|
||||||
|
|
||||||
line = line.split(":", 1)[0]
|
|
||||||
|
|
||||||
if "/" in line: # cmake terget options, dont need these
|
|
||||||
continue
|
|
||||||
|
|
||||||
targets.add(line)
|
|
||||||
file.close()
|
|
||||||
|
|
||||||
# remove cmake targets
|
|
||||||
bad = set([
|
|
||||||
"help",
|
|
||||||
"clean",
|
|
||||||
"all",
|
|
||||||
"preinstall",
|
|
||||||
"install",
|
|
||||||
"default_target",
|
|
||||||
"edit_cache",
|
|
||||||
"cmake_force",
|
|
||||||
"rebuild_cache",
|
|
||||||
"depend",
|
|
||||||
"cmake_check_build_system",
|
|
||||||
])
|
|
||||||
|
|
||||||
targets -= set(bad)
|
|
||||||
|
|
||||||
# parse args
|
|
||||||
targets = list(targets)
|
|
||||||
targets.sort()
|
|
||||||
|
|
||||||
import sys
|
|
||||||
if len(sys.argv) == 1:
|
|
||||||
print_help(targets)
|
|
||||||
return
|
|
||||||
|
|
||||||
targets_new = []
|
|
||||||
args = []
|
|
||||||
for arg in sys.argv[1:]:
|
|
||||||
if arg[0] in "/-":
|
|
||||||
args.append(arg)
|
|
||||||
else:
|
|
||||||
found = False
|
|
||||||
for t in targets:
|
|
||||||
if arg in t and t not in targets_new:
|
|
||||||
targets_new.append(t)
|
|
||||||
found = True
|
|
||||||
|
|
||||||
if not found:
|
|
||||||
print("Error '%s' not found in...")
|
|
||||||
for t in targets:
|
|
||||||
print(" %s" % t)
|
|
||||||
print("...aborting.")
|
|
||||||
return
|
|
||||||
|
|
||||||
# execute
|
|
||||||
cmd = "make %s %s blender/fast" % (" ".join(args), " ".join(targets_new))
|
|
||||||
print("cmake building with targets: %s" % " ".join(targets_new))
|
|
||||||
print("executing: %s" % cmd)
|
|
||||||
|
|
||||||
import os
|
|
||||||
os.system(cmd)
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
@@ -1,45 +1,30 @@
|
|||||||
|
MACRO(BLENDERLIB_NOLIST
|
||||||
|
name
|
||||||
|
sources
|
||||||
|
includes)
|
||||||
|
|
||||||
IF(MSVC)
|
# Gather all headers
|
||||||
# only MSVC uses SOURCE_GROUP
|
FILE(GLOB_RECURSE INC_ALL *.h)
|
||||||
MACRO(BLENDERLIB_NOLIST
|
|
||||||
name
|
INCLUDE_DIRECTORIES(${includes})
|
||||||
sources
|
ADD_LIBRARY(${name} ${INC_ALL} ${sources})
|
||||||
includes)
|
|
||||||
|
|
||||||
MESSAGE(STATUS "Configuring library ${name}")
|
# Group by location on disk
|
||||||
|
SOURCE_GROUP(Files FILES CMakeLists.txt)
|
||||||
|
SET(ALL_FILES ${sources} ${INC_ALL})
|
||||||
|
FOREACH(SRC ${ALL_FILES})
|
||||||
|
STRING(REGEX REPLACE ${CMAKE_CURRENT_SOURCE_DIR} "Files" REL_DIR "${SRC}")
|
||||||
|
STRING(REGEX REPLACE "[\\\\/][^\\\\/]*$" "" REL_DIR "${REL_DIR}")
|
||||||
|
STRING(REGEX REPLACE "^[\\\\/]" "" REL_DIR "${REL_DIR}")
|
||||||
|
IF(REL_DIR)
|
||||||
|
SOURCE_GROUP(${REL_DIR} FILES ${SRC})
|
||||||
|
ELSE(REL_DIR)
|
||||||
|
SOURCE_GROUP(Files FILES ${SRC})
|
||||||
|
ENDIF(REL_DIR)
|
||||||
|
ENDFOREACH(SRC)
|
||||||
|
|
||||||
# Gather all headers
|
MESSAGE(STATUS "Configuring library ${name}")
|
||||||
FILE(GLOB_RECURSE INC_ALL *.h)
|
ENDMACRO(BLENDERLIB_NOLIST)
|
||||||
|
|
||||||
INCLUDE_DIRECTORIES(${includes})
|
|
||||||
ADD_LIBRARY(${name} ${INC_ALL} ${sources})
|
|
||||||
|
|
||||||
# Group by location on disk
|
|
||||||
SOURCE_GROUP(Files FILES CMakeLists.txt)
|
|
||||||
SET(ALL_FILES ${sources} ${INC_ALL})
|
|
||||||
FOREACH(SRC ${ALL_FILES})
|
|
||||||
STRING(REGEX REPLACE ${CMAKE_CURRENT_SOURCE_DIR} "Files" REL_DIR "${SRC}")
|
|
||||||
STRING(REGEX REPLACE "[\\\\/][^\\\\/]*$" "" REL_DIR "${REL_DIR}")
|
|
||||||
STRING(REGEX REPLACE "^[\\\\/]" "" REL_DIR "${REL_DIR}")
|
|
||||||
IF(REL_DIR)
|
|
||||||
SOURCE_GROUP(${REL_DIR} FILES ${SRC})
|
|
||||||
ELSE(REL_DIR)
|
|
||||||
SOURCE_GROUP(Files FILES ${SRC})
|
|
||||||
ENDIF(REL_DIR)
|
|
||||||
ENDFOREACH(SRC)
|
|
||||||
ENDMACRO(BLENDERLIB_NOLIST)
|
|
||||||
ELSE(MSVC)
|
|
||||||
|
|
||||||
MACRO(BLENDERLIB_NOLIST
|
|
||||||
name
|
|
||||||
sources
|
|
||||||
includes)
|
|
||||||
|
|
||||||
MESSAGE(STATUS "Configuring library ${name}")
|
|
||||||
INCLUDE_DIRECTORIES(${includes})
|
|
||||||
ADD_LIBRARY(${name} ${sources})
|
|
||||||
ENDMACRO(BLENDERLIB_NOLIST)
|
|
||||||
ENDIF(MSVC)
|
|
||||||
|
|
||||||
MACRO(BLENDERLIB
|
MACRO(BLENDERLIB
|
||||||
name
|
name
|
||||||
@@ -73,12 +58,12 @@ MACRO(SETUP_LIBDIRS)
|
|||||||
IF(WITH_FFMPEG)
|
IF(WITH_FFMPEG)
|
||||||
LINK_DIRECTORIES(${FFMPEG_LIBPATH})
|
LINK_DIRECTORIES(${FFMPEG_LIBPATH})
|
||||||
ENDIF(WITH_FFMPEG)
|
ENDIF(WITH_FFMPEG)
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
LINK_DIRECTORIES(${OPENEXR_LIBPATH})
|
LINK_DIRECTORIES(${OPENEXR_LIBPATH})
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
ENDIF(WITH_OPENEXR)
|
||||||
IF(WITH_IMAGE_TIFF)
|
IF(WITH_TIFF)
|
||||||
LINK_DIRECTORIES(${TIFF_LIBPATH})
|
LINK_DIRECTORIES(${TIFF_LIBPATH})
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
IF(WITH_LCMS)
|
IF(WITH_LCMS)
|
||||||
LINK_DIRECTORIES(${LCMS_LIBPATH})
|
LINK_DIRECTORIES(${LCMS_LIBPATH})
|
||||||
ENDIF(WITH_LCMS)
|
ENDIF(WITH_LCMS)
|
||||||
@@ -155,10 +140,10 @@ MACRO(SETUP_LIBLINKS
|
|||||||
IF(WITH_QUICKTIME)
|
IF(WITH_QUICKTIME)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${QUICKTIME_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${QUICKTIME_LIB})
|
||||||
ENDIF(WITH_QUICKTIME)
|
ENDIF(WITH_QUICKTIME)
|
||||||
IF(WITH_IMAGE_TIFF)
|
IF(WITH_TIFF)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${TIFF_LIBRARY})
|
TARGET_LINK_LIBRARIES(${target} ${TIFF_LIBRARY})
|
||||||
ENDIF(WITH_IMAGE_TIFF)
|
ENDIF(WITH_TIFF)
|
||||||
IF(WITH_IMAGE_OPENEXR)
|
IF(WITH_OPENEXR)
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
FOREACH(loop_var ${OPENEXR_LIB})
|
FOREACH(loop_var ${OPENEXR_LIB})
|
||||||
TARGET_LINK_LIBRARIES(${target} debug ${loop_var}_d)
|
TARGET_LINK_LIBRARIES(${target} debug ${loop_var}_d)
|
||||||
@@ -167,7 +152,7 @@ MACRO(SETUP_LIBLINKS
|
|||||||
ELSE(WIN32)
|
ELSE(WIN32)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${OPENEXR_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${OPENEXR_LIB})
|
||||||
ENDIF(WIN32)
|
ENDIF(WIN32)
|
||||||
ENDIF(WITH_IMAGE_OPENEXR)
|
ENDIF(WITH_OPENEXR)
|
||||||
IF(WITH_LCMS)
|
IF(WITH_LCMS)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${LCMS_LIBRARY})
|
TARGET_LINK_LIBRARIES(${target} ${LCMS_LIBRARY})
|
||||||
ENDIF(WITH_LCMS)
|
ENDIF(WITH_LCMS)
|
||||||
@@ -187,93 +172,32 @@ MACRO(SETUP_LIBLINKS
|
|||||||
TARGET_LINK_LIBRARIES(${target} optimized ${EXPAT_LIB})
|
TARGET_LINK_LIBRARIES(${target} optimized ${EXPAT_LIB})
|
||||||
ENDIF(EXPAT_LIB)
|
ENDIF(EXPAT_LIB)
|
||||||
ELSE(WIN32)
|
ELSE(WIN32)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${OPENCOLLADA_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${OPENCOLLADA_LIB})
|
||||||
TARGET_LINK_LIBRARIES(${target} ${PCRE_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${PCRE_LIB})
|
||||||
TARGET_LINK_LIBRARIES(${target} ${EXPAT_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${EXPAT_LIB})
|
||||||
ENDIF(WIN32)
|
ENDIF(WIN32)
|
||||||
ENDIF(WITH_OPENCOLLADA)
|
ENDIF(WITH_OPENCOLLADA)
|
||||||
IF(WITH_LCMS)
|
|
||||||
IF(WIN32)
|
|
||||||
TARGET_LINK_LIBRARIES(${target} debug ${LCMS_LIB}_d)
|
|
||||||
TARGET_LINK_LIBRARIES(${target} optimized ${LCMS_LIB})
|
|
||||||
ENDIF(WIN32)
|
|
||||||
ENDIF(WITH_LCMS)
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
TARGET_LINK_LIBRARIES(${target} ${PTHREADS_LIB})
|
TARGET_LINK_LIBRARIES(${target} ${PTHREADS_LIB})
|
||||||
ENDIF(WIN32)
|
ENDIF(WIN32)
|
||||||
ENDMACRO(SETUP_LIBLINKS)
|
ENDMACRO(SETUP_LIBLINKS)
|
||||||
|
|
||||||
MACRO(TEST_SSE_SUPPORT)
|
MACRO(TEST_SSE_SUPPORT)
|
||||||
INCLUDE(CheckCSourceRuns)
|
INCLUDE(CheckCXXSourceCompiles)
|
||||||
|
|
||||||
MESSAGE(STATUS "Detecting SSE support")
|
MESSAGE(STATUS "Detecting SSE support")
|
||||||
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
|
IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
|
||||||
SET(CMAKE_REQUIRED_FLAGS "-msse -msse2")
|
SET(CMAKE_REQUIRED_FLAGS "-msse -msse2")
|
||||||
ELSEIF(MSVC)
|
ELSEIF(MSVC)
|
||||||
SET(CMAKE_REQUIRED_FLAGS "/arch:SSE2") # TODO, SSE 1 ?
|
SET(CMAKE_REQUIRED_FLAGS "/arch:SSE2")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
CHECK_C_SOURCE_RUNS("
|
CHECK_CXX_SOURCE_COMPILES("
|
||||||
#include <xmmintrin.h>
|
#include <xmmintrin.h>
|
||||||
int main() { __m128 v = _mm_setzero_ps(); return 0; }"
|
int main() { __m128 v = _mm_setzero_ps(); return 0; }"
|
||||||
SUPPORT_SSE_BUILD)
|
SUPPORT_SSE_BUILD)
|
||||||
|
|
||||||
CHECK_C_SOURCE_RUNS("
|
|
||||||
#include <emmintrin.h>
|
|
||||||
int main() { __m128d v = _mm_setzero_pd(); return 0; }"
|
|
||||||
SUPPORT_SSE2_BUILD)
|
|
||||||
MESSAGE(STATUS "Detecting SSE support")
|
|
||||||
|
|
||||||
IF(SUPPORT_SSE_BUILD)
|
|
||||||
MESSAGE(STATUS " ...SSE support found.")
|
|
||||||
ELSE(SUPPORT_SSE_BUILD)
|
|
||||||
MESSAGE(STATUS " ...SSE support missing.")
|
|
||||||
ENDIF(SUPPORT_SSE_BUILD)
|
|
||||||
|
|
||||||
IF(SUPPORT_SSE2_BUILD)
|
|
||||||
MESSAGE(STATUS " ...SSE2 support found.")
|
|
||||||
ELSE(SUPPORT_SSE2_BUILD)
|
|
||||||
MESSAGE(STATUS " ...SSE2 support missing.")
|
|
||||||
ENDIF(SUPPORT_SSE2_BUILD)
|
|
||||||
|
|
||||||
ENDMACRO(TEST_SSE_SUPPORT)
|
ENDMACRO(TEST_SSE_SUPPORT)
|
||||||
|
|
||||||
# when we have warnings as errors applied globally this
|
|
||||||
# needs to be removed for some external libs which we dont maintain.
|
|
||||||
|
|
||||||
# utility macro
|
|
||||||
MACRO(_REMOVE_STRICT_FLAGS
|
|
||||||
flag)
|
|
||||||
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_MINSIZEREL ${CMAKE_C_FLAGS_MINSIZEREL})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_C_FLAGS_RELWITHDEBINFO ${CMAKE_C_FLAGS_RELWITHDEBINFO})
|
|
||||||
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_MINSIZEREL ${CMAKE_CXX_FLAGS_MINSIZEREL})
|
|
||||||
STRING(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS_RELWITHDEBINFO ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
|
|
||||||
|
|
||||||
ENDMACRO(_REMOVE_STRICT_FLAGS)
|
|
||||||
|
|
||||||
MACRO(REMOVE_STRICT_FLAGS)
|
|
||||||
|
|
||||||
IF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
_REMOVE_STRICT_FLAGS("-Wunused-parameter")
|
|
||||||
_REMOVE_STRICT_FLAGS("-Werror=[^ ]+")
|
|
||||||
_REMOVE_STRICT_FLAGS("-Werror")
|
|
||||||
ENDIF(CMAKE_COMPILER_IS_GNUCC)
|
|
||||||
|
|
||||||
IF(MSVC)
|
|
||||||
# TODO
|
|
||||||
ENDIF(MSVC)
|
|
||||||
|
|
||||||
ENDMACRO(REMOVE_STRICT_FLAGS)
|
|
||||||
|
|
||||||
|
|
||||||
MACRO(GET_BLENDER_VERSION)
|
MACRO(GET_BLENDER_VERSION)
|
||||||
FILE(READ ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender.h CONTENT)
|
FILE(READ ${CMAKE_SOURCE_DIR}/source/blender/blenkernel/BKE_blender.h CONTENT)
|
||||||
STRING(REGEX REPLACE "\n" ";" CONTENT "${CONTENT}")
|
STRING(REGEX REPLACE "\n" ";" CONTENT "${CONTENT}")
|
||||||
|
@@ -89,6 +89,7 @@ ifeq ($(OS),darwin)
|
|||||||
CCFLAGS += -pipe -fPIC -funsigned-char
|
CCFLAGS += -pipe -fPIC -funsigned-char
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
CFLAGS += -arch $(MACOSX_ARCHITECTURE) #-isysroot $(MACOSX_SDK) -mmacosx-version-min=$(MACOSX_MIN_VERS)
|
CFLAGS += -arch $(MACOSX_ARCHITECTURE) #-isysroot $(MACOSX_SDK) -mmacosx-version-min=$(MACOSX_MIN_VERS)
|
||||||
CCFLAGS += -arch $(MACOSX_ARCHITECTURE) #-isysroot $(MACOSX_SDK) -mmacosx-version-min=$(MACOSX_MIN_VERS)
|
CCFLAGS += -arch $(MACOSX_ARCHITECTURE) #-isysroot $(MACOSX_SDK) -mmacosx-version-min=$(MACOSX_MIN_VERS)
|
||||||
|
|
||||||
@@ -176,9 +177,6 @@ ifeq ($(OS),linux)
|
|||||||
REL_CFLAGS += -O2
|
REL_CFLAGS += -O2
|
||||||
REL_CCFLAGS += -O2
|
REL_CCFLAGS += -O2
|
||||||
NAN_DEPEND = true
|
NAN_DEPEND = true
|
||||||
ifeq ($(WITH_BF_RAYOPTIMIZATION), true)
|
|
||||||
CCFLAGS += -msse
|
|
||||||
endif
|
|
||||||
ifeq ($(CPU),alpha)
|
ifeq ($(CPU),alpha)
|
||||||
CFLAGS += -mieee
|
CFLAGS += -mieee
|
||||||
endif
|
endif
|
||||||
|
@@ -159,17 +159,6 @@ ifndef CONFIG_GUESS
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
export WITH_TIFF ?= true
|
export WITH_TIFF ?= true
|
||||||
|
|
||||||
#enable raytracing optimization (currently only for i386 and x86_64)
|
|
||||||
ifeq ($(CPU),powerpc)
|
|
||||||
export WITH_BF_RAYOPTIMIZATION ?= false
|
|
||||||
else
|
|
||||||
export WITH_BF_RAYOPTIMIZATION ?= true
|
|
||||||
endif
|
|
||||||
|
|
||||||
export WITH_LCMS ?= false
|
|
||||||
export WITH_CINEON ?= true
|
|
||||||
export WITH_HDR ?= true
|
|
||||||
|
|
||||||
# Compare recreated .mo files with committed ones
|
# Compare recreated .mo files with committed ones
|
||||||
export BF_VERIFY_MO_FILES ?= true
|
export BF_VERIFY_MO_FILES ?= true
|
||||||
@@ -633,11 +622,6 @@ ifndef CONFIG_GUESS
|
|||||||
# default tiff libs
|
# default tiff libs
|
||||||
export NAN_TIFF_LIBS ?= $(NAN_TIFF)/lib/libtiff.a
|
export NAN_TIFF_LIBS ?= $(NAN_TIFF)/lib/libtiff.a
|
||||||
|
|
||||||
# default path to lcms, may be overidden in platform sections above or in user-def.mk
|
|
||||||
export BF_LCMS ?= $(LCGDIR)/lcms
|
|
||||||
export BF_LCMS_INC ?= $(BF_LCMS)/include
|
|
||||||
export BF_LCMS_LIBS ?= $(BF_LCMS)/lib/liblcms.a
|
|
||||||
|
|
||||||
endif # CONFIG_GUESS
|
endif # CONFIG_GUESS
|
||||||
|
|
||||||
# Don't want to build the gameengine?
|
# Don't want to build the gameengine?
|
||||||
|
@@ -195,8 +195,4 @@ ifeq ($(WITH_TIFF),true)
|
|||||||
LLIBS += $(NAN_TIFF_LIBS)
|
LLIBS += $(NAN_TIFF_LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(WITH_LCMS),true)
|
|
||||||
LLIBS += $(BF_LCMS_LIBS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
LLIBS += $(NAN_PYTHON_LIB)
|
LLIBS += $(NAN_PYTHON_LIB)
|
||||||
|
@@ -1,48 +0,0 @@
|
|||||||
# Maintainer: Campbell Barton <ideasman42 at gmail dot com>
|
|
||||||
|
|
||||||
# custom blender vars
|
|
||||||
blender_srcdir=$srcdir/../../../..
|
|
||||||
blender_version=$(grep BLENDER_VERSION $blender_srcdir/source/blender/blenkernel/BKE_blender.h | tr -dc 0-9)
|
|
||||||
blender_subversion=$(grep BLENDER_SUBVERSION $blender_srcdir/source/blender/blenkernel/BKE_blender.h | tr -dc 0-9)
|
|
||||||
blender_ver_string=$(expr $blender_version / 100).$(expr $blender_version % 100).$blender_subversion
|
|
||||||
|
|
||||||
pkgname=blender-beta
|
|
||||||
pkgver=$blender_ver_string
|
|
||||||
pkgrel=1
|
|
||||||
pkgdesc="A fully integrated 3D graphics creation suite"
|
|
||||||
arch=('i686' 'x86_64')
|
|
||||||
url="www.blender.org"
|
|
||||||
license=('GPL')
|
|
||||||
groups=()
|
|
||||||
depends=('libjpeg' 'libpng' 'openexr' 'python3>=3.1' 'gettext' 'libxi' 'libxmu' 'mesa' 'freetype2' 'openal' 'sdl' 'libsndfile' 'libsamplerate' 'ffmpeg')
|
|
||||||
makedepends=('cmake' 'svn')
|
|
||||||
optdepends=()
|
|
||||||
provides=('blender')
|
|
||||||
conflicts=('blender')
|
|
||||||
replaces=()
|
|
||||||
backup=()
|
|
||||||
options=()
|
|
||||||
install=blender.install
|
|
||||||
# use current svn to make the package.
|
|
||||||
# source=(http://download.blender.org/source/$pkgname-$pkgver.tar.gz)
|
|
||||||
# md5sums=('27edb80c82c25252d43d6a01980d953a') #generate with 'makepkg -g'
|
|
||||||
source=()
|
|
||||||
md5sums=()
|
|
||||||
noextract=()
|
|
||||||
|
|
||||||
build() {
|
|
||||||
mkdir -p $srcdir/build
|
|
||||||
cd $srcdir/build
|
|
||||||
cmake $blender_srcdir \
|
|
||||||
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
|
||||||
-DCMAKE_BUILD_TYPE:STRING=Release \
|
|
||||||
-DWITH_PYTHON_INSTALL:BOOL=OFF \
|
|
||||||
-DWITH_OPENCOLLADA:BOOL=OFF
|
|
||||||
|
|
||||||
make
|
|
||||||
}
|
|
||||||
|
|
||||||
package() {
|
|
||||||
cd $srcdir/build
|
|
||||||
make DESTDIR="$pkgdir" install
|
|
||||||
}
|
|
@@ -1,29 +0,0 @@
|
|||||||
post_install() {
|
|
||||||
cat << EOF
|
|
||||||
|
|
||||||
NOTE
|
|
||||||
----
|
|
||||||
Happy blending!
|
|
||||||
|
|
||||||
EOF
|
|
||||||
echo "update desktop mime database..."
|
|
||||||
update-desktop-database
|
|
||||||
}
|
|
||||||
|
|
||||||
post_upgrade() {
|
|
||||||
post_install $1
|
|
||||||
}
|
|
||||||
|
|
||||||
pre_remove() {
|
|
||||||
/bin/true
|
|
||||||
}
|
|
||||||
|
|
||||||
post_remove() {
|
|
||||||
echo "update desktop mime database..."
|
|
||||||
update-desktop-database
|
|
||||||
}
|
|
||||||
|
|
||||||
op=$1
|
|
||||||
shift
|
|
||||||
|
|
||||||
$op $*
|
|
@@ -190,7 +190,7 @@ BF_PROFILE_FLAGS = ['-pg','-g']
|
|||||||
BF_PROFILE = 'false'
|
BF_PROFILE = 'false'
|
||||||
|
|
||||||
BF_DEBUG = 'false'
|
BF_DEBUG = 'false'
|
||||||
BF_DEBUG_CCFLAGS = ['-g']
|
BF_DEBUG_FLAGS = '-g'
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/aix4'
|
BF_BUILDDIR = '../build/aix4'
|
||||||
BF_INSTALLDIR='../install/aix4'
|
BF_INSTALLDIR='../install/aix4'
|
||||||
|
@@ -340,7 +340,7 @@ BF_PROFILE_LINKFLAGS = ['-pg']
|
|||||||
BF_PROFILE = False
|
BF_PROFILE = False
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
BF_DEBUG_CCFLAGS = ['-g']
|
||||||
|
|
||||||
#############################################################################
|
#############################################################################
|
||||||
################### Output directories ##################
|
################### Output directories ##################
|
||||||
|
@@ -1,213 +0,0 @@
|
|||||||
CC = 'gcc44'
|
|
||||||
CXX = 'g++44'
|
|
||||||
|
|
||||||
LCGDIR = '../lib/freebsd7'
|
|
||||||
LIBDIR = "${LCGDIR}"
|
|
||||||
|
|
||||||
BF_PYTHON = '/usr/local'
|
|
||||||
BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib'
|
|
||||||
BF_PYTHON_VERSION = '3.1'
|
|
||||||
WITH_BF_STATICPYTHON = False
|
|
||||||
BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION}.a'
|
|
||||||
|
|
||||||
WITH_BF_OPENAL = True
|
|
||||||
WITH_BF_STATICOPENAL = False
|
|
||||||
BF_OPENAL = '/usr/local'
|
|
||||||
BF_OPENAL_INC = '${BF_OPENAL}/include'
|
|
||||||
BF_OPENAL_LIB = 'openal'
|
|
||||||
BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a'
|
|
||||||
|
|
||||||
BF_CXX = '/usr/local'
|
|
||||||
WITH_BF_STATICCXX = False
|
|
||||||
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
|
|
||||||
|
|
||||||
BF_LIBSAMPLERATE = '/usr/local'
|
|
||||||
BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
|
|
||||||
BF_LIBSAMPLERATE_LIB = 'samplerate'
|
|
||||||
BF_LIBSAMPLERATE_LIBPATH = '${BF_LIBSAMPLERATE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_JACK = True
|
|
||||||
BF_JACK = '/usr/local'
|
|
||||||
BF_JACK_INC = '${BF_JACK}/include/jack'
|
|
||||||
BF_JACK_LIB = 'jack'
|
|
||||||
BF_JACK_LIBPATH = '${BF_JACK}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SNDFILE = True
|
|
||||||
BF_SNDFILE = '/usr/local'
|
|
||||||
BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
|
|
||||||
BF_SNDFILE_LIB = 'sndfile'
|
|
||||||
BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SDL = True
|
|
||||||
BF_SDL = '/usr/local' #$(shell sdl-config --prefix)
|
|
||||||
BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
|
||||||
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
|
||||||
|
|
||||||
WITH_BF_OPENEXR = True
|
|
||||||
WITH_BF_STATICOPENEXR = False
|
|
||||||
BF_OPENEXR = '/usr/local'
|
|
||||||
# when compiling with your own openexr lib you might need to set...
|
|
||||||
# BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR ${BF_OPENEXR}/include'
|
|
||||||
|
|
||||||
BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR'
|
|
||||||
BF_OPENEXR_LIB = 'Half IlmImf Iex Imath '
|
|
||||||
BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a'
|
|
||||||
# BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib'
|
|
||||||
|
|
||||||
WITH_BF_DDS = True
|
|
||||||
|
|
||||||
WITH_BF_JPEG = True
|
|
||||||
BF_JPEG = '/usr/local'
|
|
||||||
BF_JPEG_INC = '${BF_JPEG}/include'
|
|
||||||
BF_JPEG_LIB = 'jpeg'
|
|
||||||
|
|
||||||
WITH_BF_PNG = True
|
|
||||||
BF_PNG = '/usr/local'
|
|
||||||
BF_PNG_INC = '${BF_PNG}/include'
|
|
||||||
BF_PNG_LIB = 'png'
|
|
||||||
|
|
||||||
WITH_BF_TIFF = True
|
|
||||||
BF_TIFF = '/usr/local'
|
|
||||||
BF_TIFF_INC = '${BF_TIFF}/include'
|
|
||||||
BF_TIFF_LIB = 'tiff'
|
|
||||||
|
|
||||||
WITH_BF_ZLIB = True
|
|
||||||
BF_ZLIB = '/usr'
|
|
||||||
BF_ZLIB_INC = '${BF_ZLIB}/include'
|
|
||||||
BF_ZLIB_LIB = 'z'
|
|
||||||
|
|
||||||
WITH_BF_INTERNATIONAL = True
|
|
||||||
|
|
||||||
BF_GETTEXT = '/usr/local'
|
|
||||||
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
|
|
||||||
BF_GETTEXT_LIB = 'gettextlib'
|
|
||||||
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_GAMEENGINE = False
|
|
||||||
WITH_BF_PLAYER = True
|
|
||||||
|
|
||||||
WITH_BF_BULLET = True
|
|
||||||
BF_BULLET = '#extern/bullet2/src'
|
|
||||||
BF_BULLET_INC = '${BF_BULLET}'
|
|
||||||
BF_BULLET_LIB = 'extern_bullet'
|
|
||||||
|
|
||||||
# enable freetype2 support for text objects
|
|
||||||
BF_FREETYPE = '/usr/local'
|
|
||||||
BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
|
|
||||||
BF_FREETYPE_LIB = 'freetype'
|
|
||||||
|
|
||||||
### XXX Find what this actually wants; it doesn't want libquicktime.
|
|
||||||
WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME
|
|
||||||
BF_QUICKTIME = '/usr/local'
|
|
||||||
BF_QUICKTIME_INC = '${BF_QUICKTIME}/include'
|
|
||||||
|
|
||||||
WITH_BF_ICONV = True
|
|
||||||
BF_ICONV = LIBDIR + "/iconv"
|
|
||||||
BF_ICONV_INC = '${BF_ICONV}/include'
|
|
||||||
BF_ICONV_LIB = 'iconv'
|
|
||||||
BF_ICONV_LIBPATH = '${BF_ICONV}/lib'
|
|
||||||
|
|
||||||
WITH_BF_BINRELOC = True
|
|
||||||
|
|
||||||
# enable ffmpeg support
|
|
||||||
WITH_BF_FFMPEG = True # -DWITH_FFMPEG
|
|
||||||
BF_FFMPEG = '/usr/local'
|
|
||||||
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice'
|
|
||||||
BF_FFMPEG_INC = '${BF_FFMPEG}/include'
|
|
||||||
BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
|
|
||||||
|
|
||||||
# enable ogg, vorbis and theora in ffmpeg
|
|
||||||
WITH_BF_OGG = True # -DWITH_OGG
|
|
||||||
BF_OGG = '/usr/local'
|
|
||||||
BF_OGG_INC = '${BF_OGG}/include'
|
|
||||||
BF_OGG_LIB = 'ogg vorbis vorbisenc theoraenc theoradec'
|
|
||||||
|
|
||||||
WITH_BF_OPENJPEG = True
|
|
||||||
BF_OPENJPEG = '#extern/libopenjpeg'
|
|
||||||
BF_OPENJPEG_LIB = ''
|
|
||||||
BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
|
||||||
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
|
||||||
|
|
||||||
WITH_BF_FFTW3 = True
|
|
||||||
BF_FFTW3 = LIBDIR + '/usr/local'
|
|
||||||
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
|
||||||
BF_FFTW3_LIB = 'fftw3'
|
|
||||||
BF_FFTW3_LIBPATH = '${BF_FFTW3}/lib'
|
|
||||||
|
|
||||||
WITH_BF_REDCODE = True
|
|
||||||
BF_REDCODE = '#extern/libredcode'
|
|
||||||
BF_REDCODE_LIB = ''
|
|
||||||
# BF_REDCODE_INC = '${BF_REDCODE}/include'
|
|
||||||
BF_REDCODE_INC = '${BF_REDCODE}/../' #C files request "libredcode/format.h" which is in "#extern/libredcode/format.h", stupid but compiles for now.
|
|
||||||
BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
|
|
||||||
|
|
||||||
# Mesa Libs should go here if your using them as well....
|
|
||||||
WITH_BF_STATICOPENGL = False
|
|
||||||
BF_OPENGL = '/usr/local'
|
|
||||||
BF_OPENGL_INC = '${BF_OPENGL}/include'
|
|
||||||
BF_OPENGL_LIB = 'GL GLU X11 Xi'
|
|
||||||
BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
|
|
||||||
BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
|
|
||||||
|
|
||||||
WITH_BF_COLLADA = False
|
|
||||||
BF_COLLADA = '#source/blender/collada'
|
|
||||||
BF_COLLADA_INC = '${BF_COLLADA}'
|
|
||||||
BF_COLLADA_LIB = 'bf_collada'
|
|
||||||
BF_OPENCOLLADA = '/usr'
|
|
||||||
BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}'
|
|
||||||
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser UTF MathMLSolver pcre buffer ftoa'
|
|
||||||
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
|
||||||
BF_PCRE = '/usr/local'
|
|
||||||
BF_PCRE_LIB = 'pcre'
|
|
||||||
BF_PCRE_LIBPATH = '${BF_PCRE}/lib'
|
|
||||||
BF_EXPAT = '/usr/local'
|
|
||||||
BF_EXPAT_LIB = 'expat'
|
|
||||||
BF_EXPAT_LIBPATH = '${BF_EXPAT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_OPENMP = True
|
|
||||||
|
|
||||||
#Ray trace optimization
|
|
||||||
WITH_BF_RAYOPTIMIZATION = True
|
|
||||||
BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse','-pthread']
|
|
||||||
|
|
||||||
CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
|
|
||||||
CPPFLAGS = []
|
|
||||||
CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
if WITH_BF_FFMPEG:
|
|
||||||
# libavutil needs UINT64_C()
|
|
||||||
CXXFLAGS += ['-D__STDC_CONSTANT_MACROS', ]
|
|
||||||
REL_CFLAGS = ['-O2']
|
|
||||||
REL_CCFLAGS = ['-O2']
|
|
||||||
##BF_DEPEND = True
|
|
||||||
##
|
|
||||||
##AR = ar
|
|
||||||
##ARFLAGS = ruv
|
|
||||||
##ARFLAGSQUIET = ru
|
|
||||||
##
|
|
||||||
C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement']
|
|
||||||
CC_WARN = ['-Wall']
|
|
||||||
CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
|
|
||||||
|
|
||||||
|
|
||||||
##FIX_STUBS_WARNINGS = -Wno-unused
|
|
||||||
|
|
||||||
LLIBS = ['util', 'c', 'm', 'pthread', 'stdc++']
|
|
||||||
##LOPTS = --dynamic
|
|
||||||
##DYNLDFLAGS = -shared $(LDFLAGS)
|
|
||||||
|
|
||||||
BF_PROFILE = False
|
|
||||||
BF_PROFILE_CCFLAGS = ['-pg','-g']
|
|
||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
|
||||||
|
|
||||||
BF_DEBUG = False
|
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/freebsd7'
|
|
||||||
BF_INSTALLDIR='../install/freebsd7'
|
|
||||||
|
|
||||||
#Link against pthread
|
|
||||||
PLATFORM_LINKFLAGS = ['-pthread']
|
|
@@ -1,213 +0,0 @@
|
|||||||
CC = 'gcc44'
|
|
||||||
CXX = 'g++44'
|
|
||||||
|
|
||||||
LCGDIR = '../lib/freebsd8'
|
|
||||||
LIBDIR = "${LCGDIR}"
|
|
||||||
|
|
||||||
BF_PYTHON = '/usr/local'
|
|
||||||
BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib'
|
|
||||||
BF_PYTHON_VERSION = '3.1'
|
|
||||||
WITH_BF_STATICPYTHON = False
|
|
||||||
BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION}.a'
|
|
||||||
|
|
||||||
WITH_BF_OPENAL = True
|
|
||||||
WITH_BF_STATICOPENAL = False
|
|
||||||
BF_OPENAL = '/usr/local'
|
|
||||||
BF_OPENAL_INC = '${BF_OPENAL}/include'
|
|
||||||
BF_OPENAL_LIB = 'openal'
|
|
||||||
BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a'
|
|
||||||
|
|
||||||
BF_CXX = '/usr/local'
|
|
||||||
WITH_BF_STATICCXX = False
|
|
||||||
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
|
|
||||||
|
|
||||||
BF_LIBSAMPLERATE = '/usr/local'
|
|
||||||
BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
|
|
||||||
BF_LIBSAMPLERATE_LIB = 'samplerate'
|
|
||||||
BF_LIBSAMPLERATE_LIBPATH = '${BF_LIBSAMPLERATE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_JACK = True
|
|
||||||
BF_JACK = '/usr/local'
|
|
||||||
BF_JACK_INC = '${BF_JACK}/include/jack'
|
|
||||||
BF_JACK_LIB = 'jack'
|
|
||||||
BF_JACK_LIBPATH = '${BF_JACK}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SNDFILE = True
|
|
||||||
BF_SNDFILE = '/usr/local'
|
|
||||||
BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
|
|
||||||
BF_SNDFILE_LIB = 'sndfile'
|
|
||||||
BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SDL = True
|
|
||||||
BF_SDL = '/usr/local' #$(shell sdl-config --prefix)
|
|
||||||
BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
|
||||||
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
|
||||||
|
|
||||||
WITH_BF_OPENEXR = True
|
|
||||||
WITH_BF_STATICOPENEXR = False
|
|
||||||
BF_OPENEXR = '/usr/local'
|
|
||||||
# when compiling with your own openexr lib you might need to set...
|
|
||||||
# BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR ${BF_OPENEXR}/include'
|
|
||||||
|
|
||||||
BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR'
|
|
||||||
BF_OPENEXR_LIB = 'Half IlmImf Iex Imath '
|
|
||||||
BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a'
|
|
||||||
# BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib'
|
|
||||||
|
|
||||||
WITH_BF_DDS = True
|
|
||||||
|
|
||||||
WITH_BF_JPEG = True
|
|
||||||
BF_JPEG = '/usr/local'
|
|
||||||
BF_JPEG_INC = '${BF_JPEG}/include'
|
|
||||||
BF_JPEG_LIB = 'jpeg'
|
|
||||||
|
|
||||||
WITH_BF_PNG = True
|
|
||||||
BF_PNG = '/usr/local'
|
|
||||||
BF_PNG_INC = '${BF_PNG}/include'
|
|
||||||
BF_PNG_LIB = 'png'
|
|
||||||
|
|
||||||
WITH_BF_TIFF = True
|
|
||||||
BF_TIFF = '/usr/local'
|
|
||||||
BF_TIFF_INC = '${BF_TIFF}/include'
|
|
||||||
BF_TIFF_LIB = 'tiff'
|
|
||||||
|
|
||||||
WITH_BF_ZLIB = True
|
|
||||||
BF_ZLIB = '/usr'
|
|
||||||
BF_ZLIB_INC = '${BF_ZLIB}/include'
|
|
||||||
BF_ZLIB_LIB = 'z'
|
|
||||||
|
|
||||||
WITH_BF_INTERNATIONAL = True
|
|
||||||
|
|
||||||
BF_GETTEXT = '/usr/local'
|
|
||||||
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
|
|
||||||
BF_GETTEXT_LIB = 'gettextlib'
|
|
||||||
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_GAMEENGINE = False
|
|
||||||
WITH_BF_PLAYER = True
|
|
||||||
|
|
||||||
WITH_BF_BULLET = True
|
|
||||||
BF_BULLET = '#extern/bullet2/src'
|
|
||||||
BF_BULLET_INC = '${BF_BULLET}'
|
|
||||||
BF_BULLET_LIB = 'extern_bullet'
|
|
||||||
|
|
||||||
# enable freetype2 support for text objects
|
|
||||||
BF_FREETYPE = '/usr/local'
|
|
||||||
BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
|
|
||||||
BF_FREETYPE_LIB = 'freetype'
|
|
||||||
|
|
||||||
### XXX Find what this actually wants; it doesn't want libquicktime.
|
|
||||||
WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME
|
|
||||||
BF_QUICKTIME = '/usr/local'
|
|
||||||
BF_QUICKTIME_INC = '${BF_QUICKTIME}/include'
|
|
||||||
|
|
||||||
WITH_BF_ICONV = True
|
|
||||||
BF_ICONV = LIBDIR + "/iconv"
|
|
||||||
BF_ICONV_INC = '${BF_ICONV}/include'
|
|
||||||
BF_ICONV_LIB = 'iconv'
|
|
||||||
BF_ICONV_LIBPATH = '${BF_ICONV}/lib'
|
|
||||||
|
|
||||||
WITH_BF_BINRELOC = True
|
|
||||||
|
|
||||||
# enable ffmpeg support
|
|
||||||
WITH_BF_FFMPEG = True # -DWITH_FFMPEG
|
|
||||||
BF_FFMPEG = '/usr/local'
|
|
||||||
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice'
|
|
||||||
BF_FFMPEG_INC = '${BF_FFMPEG}/include'
|
|
||||||
BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
|
|
||||||
|
|
||||||
# enable ogg, vorbis and theora in ffmpeg
|
|
||||||
WITH_BF_OGG = True # -DWITH_OGG
|
|
||||||
BF_OGG = '/usr/local'
|
|
||||||
BF_OGG_INC = '${BF_OGG}/include'
|
|
||||||
BF_OGG_LIB = 'ogg vorbis vorbisenc theoraenc theoradec'
|
|
||||||
|
|
||||||
WITH_BF_OPENJPEG = True
|
|
||||||
BF_OPENJPEG = '#extern/libopenjpeg'
|
|
||||||
BF_OPENJPEG_LIB = ''
|
|
||||||
BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
|
||||||
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
|
||||||
|
|
||||||
WITH_BF_FFTW3 = True
|
|
||||||
BF_FFTW3 = LIBDIR + '/usr/local'
|
|
||||||
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
|
||||||
BF_FFTW3_LIB = 'fftw3'
|
|
||||||
BF_FFTW3_LIBPATH = '${BF_FFTW3}/lib'
|
|
||||||
|
|
||||||
WITH_BF_REDCODE = True
|
|
||||||
BF_REDCODE = '#extern/libredcode'
|
|
||||||
BF_REDCODE_LIB = ''
|
|
||||||
# BF_REDCODE_INC = '${BF_REDCODE}/include'
|
|
||||||
BF_REDCODE_INC = '${BF_REDCODE}/../' #C files request "libredcode/format.h" which is in "#extern/libredcode/format.h", stupid but compiles for now.
|
|
||||||
BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
|
|
||||||
|
|
||||||
# Mesa Libs should go here if your using them as well....
|
|
||||||
WITH_BF_STATICOPENGL = False
|
|
||||||
BF_OPENGL = '/usr/local'
|
|
||||||
BF_OPENGL_INC = '${BF_OPENGL}/include'
|
|
||||||
BF_OPENGL_LIB = 'GL GLU X11 Xi'
|
|
||||||
BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
|
|
||||||
BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
|
|
||||||
|
|
||||||
WITH_BF_COLLADA = False
|
|
||||||
BF_COLLADA = '#source/blender/collada'
|
|
||||||
BF_COLLADA_INC = '${BF_COLLADA}'
|
|
||||||
BF_COLLADA_LIB = 'bf_collada'
|
|
||||||
BF_OPENCOLLADA = '/usr'
|
|
||||||
BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}'
|
|
||||||
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser UTF MathMLSolver pcre buffer ftoa'
|
|
||||||
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
|
||||||
BF_PCRE = '/usr/local'
|
|
||||||
BF_PCRE_LIB = 'pcre'
|
|
||||||
BF_PCRE_LIBPATH = '${BF_PCRE}/lib'
|
|
||||||
BF_EXPAT = '/usr/local'
|
|
||||||
BF_EXPAT_LIB = 'expat'
|
|
||||||
BF_EXPAT_LIBPATH = '${BF_EXPAT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_OPENMP = True
|
|
||||||
|
|
||||||
#Ray trace optimization
|
|
||||||
WITH_BF_RAYOPTIMIZATION = True
|
|
||||||
BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse','-pthread']
|
|
||||||
|
|
||||||
CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
|
|
||||||
CPPFLAGS = []
|
|
||||||
CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
if WITH_BF_FFMPEG:
|
|
||||||
# libavutil needs UINT64_C()
|
|
||||||
CXXFLAGS += ['-D__STDC_CONSTANT_MACROS', ]
|
|
||||||
REL_CFLAGS = ['-O2']
|
|
||||||
REL_CCFLAGS = ['-O2']
|
|
||||||
##BF_DEPEND = True
|
|
||||||
##
|
|
||||||
##AR = ar
|
|
||||||
##ARFLAGS = ruv
|
|
||||||
##ARFLAGSQUIET = ru
|
|
||||||
##
|
|
||||||
C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement']
|
|
||||||
CC_WARN = ['-Wall']
|
|
||||||
CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
|
|
||||||
|
|
||||||
|
|
||||||
##FIX_STUBS_WARNINGS = -Wno-unused
|
|
||||||
|
|
||||||
LLIBS = ['util', 'c', 'm', 'pthread', 'stdc++']
|
|
||||||
##LOPTS = --dynamic
|
|
||||||
##DYNLDFLAGS = -shared $(LDFLAGS)
|
|
||||||
|
|
||||||
BF_PROFILE = False
|
|
||||||
BF_PROFILE_CCFLAGS = ['-pg','-g']
|
|
||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
|
||||||
|
|
||||||
BF_DEBUG = False
|
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/freebsd8'
|
|
||||||
BF_INSTALLDIR='../install/freebsd8'
|
|
||||||
|
|
||||||
#Link against pthread
|
|
||||||
PLATFORM_LINKFLAGS = ['-pthread']
|
|
@@ -1,213 +0,0 @@
|
|||||||
CC = 'gcc44'
|
|
||||||
CXX = 'g++44'
|
|
||||||
|
|
||||||
LCGDIR = '../lib/freebsd9'
|
|
||||||
LIBDIR = "${LCGDIR}"
|
|
||||||
|
|
||||||
BF_PYTHON = '/usr/local'
|
|
||||||
BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib'
|
|
||||||
BF_PYTHON_VERSION = '3.1'
|
|
||||||
WITH_BF_STATICPYTHON = False
|
|
||||||
BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}'
|
|
||||||
BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION}.a'
|
|
||||||
|
|
||||||
WITH_BF_OPENAL = True
|
|
||||||
WITH_BF_STATICOPENAL = False
|
|
||||||
BF_OPENAL = '/usr/local'
|
|
||||||
BF_OPENAL_INC = '${BF_OPENAL}/include'
|
|
||||||
BF_OPENAL_LIB = 'openal'
|
|
||||||
BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a'
|
|
||||||
|
|
||||||
BF_CXX = '/usr/local'
|
|
||||||
WITH_BF_STATICCXX = False
|
|
||||||
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
|
|
||||||
|
|
||||||
BF_LIBSAMPLERATE = '/usr/local'
|
|
||||||
BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
|
|
||||||
BF_LIBSAMPLERATE_LIB = 'samplerate'
|
|
||||||
BF_LIBSAMPLERATE_LIBPATH = '${BF_LIBSAMPLERATE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_JACK = True
|
|
||||||
BF_JACK = '/usr/local'
|
|
||||||
BF_JACK_INC = '${BF_JACK}/include/jack'
|
|
||||||
BF_JACK_LIB = 'jack'
|
|
||||||
BF_JACK_LIBPATH = '${BF_JACK}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SNDFILE = True
|
|
||||||
BF_SNDFILE = '/usr/local'
|
|
||||||
BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
|
|
||||||
BF_SNDFILE_LIB = 'sndfile'
|
|
||||||
BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
|
|
||||||
|
|
||||||
WITH_BF_SDL = True
|
|
||||||
BF_SDL = '/usr/local' #$(shell sdl-config --prefix)
|
|
||||||
BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
|
||||||
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
|
||||||
|
|
||||||
WITH_BF_OPENEXR = True
|
|
||||||
WITH_BF_STATICOPENEXR = False
|
|
||||||
BF_OPENEXR = '/usr/local'
|
|
||||||
# when compiling with your own openexr lib you might need to set...
|
|
||||||
# BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR ${BF_OPENEXR}/include'
|
|
||||||
|
|
||||||
BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR'
|
|
||||||
BF_OPENEXR_LIB = 'Half IlmImf Iex Imath '
|
|
||||||
BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a'
|
|
||||||
# BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib'
|
|
||||||
|
|
||||||
WITH_BF_DDS = True
|
|
||||||
|
|
||||||
WITH_BF_JPEG = True
|
|
||||||
BF_JPEG = '/usr/local'
|
|
||||||
BF_JPEG_INC = '${BF_JPEG}/include'
|
|
||||||
BF_JPEG_LIB = 'jpeg'
|
|
||||||
|
|
||||||
WITH_BF_PNG = True
|
|
||||||
BF_PNG = '/usr/local'
|
|
||||||
BF_PNG_INC = '${BF_PNG}/include'
|
|
||||||
BF_PNG_LIB = 'png'
|
|
||||||
|
|
||||||
WITH_BF_TIFF = True
|
|
||||||
BF_TIFF = '/usr/local'
|
|
||||||
BF_TIFF_INC = '${BF_TIFF}/include'
|
|
||||||
BF_TIFF_LIB = 'tiff'
|
|
||||||
|
|
||||||
WITH_BF_ZLIB = True
|
|
||||||
BF_ZLIB = '/usr'
|
|
||||||
BF_ZLIB_INC = '${BF_ZLIB}/include'
|
|
||||||
BF_ZLIB_LIB = 'z'
|
|
||||||
|
|
||||||
WITH_BF_INTERNATIONAL = True
|
|
||||||
|
|
||||||
BF_GETTEXT = '/usr/local'
|
|
||||||
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
|
|
||||||
BF_GETTEXT_LIB = 'gettextlib'
|
|
||||||
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_GAMEENGINE = False
|
|
||||||
WITH_BF_PLAYER = True
|
|
||||||
|
|
||||||
WITH_BF_BULLET = True
|
|
||||||
BF_BULLET = '#extern/bullet2/src'
|
|
||||||
BF_BULLET_INC = '${BF_BULLET}'
|
|
||||||
BF_BULLET_LIB = 'extern_bullet'
|
|
||||||
|
|
||||||
# enable freetype2 support for text objects
|
|
||||||
BF_FREETYPE = '/usr/local'
|
|
||||||
BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
|
|
||||||
BF_FREETYPE_LIB = 'freetype'
|
|
||||||
|
|
||||||
### XXX Find what this actually wants; it doesn't want libquicktime.
|
|
||||||
WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME
|
|
||||||
BF_QUICKTIME = '/usr/local'
|
|
||||||
BF_QUICKTIME_INC = '${BF_QUICKTIME}/include'
|
|
||||||
|
|
||||||
WITH_BF_ICONV = True
|
|
||||||
BF_ICONV = LIBDIR + "/iconv"
|
|
||||||
BF_ICONV_INC = '${BF_ICONV}/include'
|
|
||||||
BF_ICONV_LIB = 'iconv'
|
|
||||||
BF_ICONV_LIBPATH = '${BF_ICONV}/lib'
|
|
||||||
|
|
||||||
WITH_BF_BINRELOC = True
|
|
||||||
|
|
||||||
# enable ffmpeg support
|
|
||||||
WITH_BF_FFMPEG = True # -DWITH_FFMPEG
|
|
||||||
BF_FFMPEG = '/usr/local'
|
|
||||||
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice'
|
|
||||||
BF_FFMPEG_INC = '${BF_FFMPEG}/include'
|
|
||||||
BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
|
|
||||||
|
|
||||||
# enable ogg, vorbis and theora in ffmpeg
|
|
||||||
WITH_BF_OGG = True # -DWITH_OGG
|
|
||||||
BF_OGG = '/usr/local'
|
|
||||||
BF_OGG_INC = '${BF_OGG}/include'
|
|
||||||
BF_OGG_LIB = 'ogg vorbis vorbisenc theoraenc theoradec'
|
|
||||||
|
|
||||||
WITH_BF_OPENJPEG = True
|
|
||||||
BF_OPENJPEG = '#extern/libopenjpeg'
|
|
||||||
BF_OPENJPEG_LIB = ''
|
|
||||||
BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
|
||||||
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
|
||||||
|
|
||||||
WITH_BF_FFTW3 = True
|
|
||||||
BF_FFTW3 = LIBDIR + '/usr/local'
|
|
||||||
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
|
||||||
BF_FFTW3_LIB = 'fftw3'
|
|
||||||
BF_FFTW3_LIBPATH = '${BF_FFTW3}/lib'
|
|
||||||
|
|
||||||
WITH_BF_REDCODE = True
|
|
||||||
BF_REDCODE = '#extern/libredcode'
|
|
||||||
BF_REDCODE_LIB = ''
|
|
||||||
# BF_REDCODE_INC = '${BF_REDCODE}/include'
|
|
||||||
BF_REDCODE_INC = '${BF_REDCODE}/../' #C files request "libredcode/format.h" which is in "#extern/libredcode/format.h", stupid but compiles for now.
|
|
||||||
BF_REDCODE_LIBPATH='${BF_REDCODE}/lib'
|
|
||||||
|
|
||||||
# Mesa Libs should go here if your using them as well....
|
|
||||||
WITH_BF_STATICOPENGL = False
|
|
||||||
BF_OPENGL = '/usr/local'
|
|
||||||
BF_OPENGL_INC = '${BF_OPENGL}/include'
|
|
||||||
BF_OPENGL_LIB = 'GL GLU X11 Xi'
|
|
||||||
BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
|
|
||||||
BF_OPENGL_LIB_STATIC = '${BF_OPENGL_LIBPATH}/libGL.a ${BF_OPENGL_LIBPATH}/libGLU.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a ${BF_OPENGL_LIBPATH}/libX11.a ${BF_OPENGL_LIBPATH}/libXi.a ${BF_OPENGL_LIBPATH}/libXext.a ${BF_OPENGL_LIBPATH}/libXxf86vm.a'
|
|
||||||
|
|
||||||
WITH_BF_COLLADA = False
|
|
||||||
BF_COLLADA = '#source/blender/collada'
|
|
||||||
BF_COLLADA_INC = '${BF_COLLADA}'
|
|
||||||
BF_COLLADA_LIB = 'bf_collada'
|
|
||||||
BF_OPENCOLLADA = '/usr'
|
|
||||||
BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}'
|
|
||||||
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser UTF MathMLSolver pcre buffer ftoa'
|
|
||||||
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
|
||||||
BF_PCRE = '/usr/local'
|
|
||||||
BF_PCRE_LIB = 'pcre'
|
|
||||||
BF_PCRE_LIBPATH = '${BF_PCRE}/lib'
|
|
||||||
BF_EXPAT = '/usr/local'
|
|
||||||
BF_EXPAT_LIB = 'expat'
|
|
||||||
BF_EXPAT_LIBPATH = '${BF_EXPAT}/lib'
|
|
||||||
|
|
||||||
WITH_BF_OPENMP = True
|
|
||||||
|
|
||||||
#Ray trace optimization
|
|
||||||
WITH_BF_RAYOPTIMIZATION = True
|
|
||||||
BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse','-pthread']
|
|
||||||
|
|
||||||
CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
|
|
||||||
CPPFLAGS = []
|
|
||||||
CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
|
|
||||||
if WITH_BF_FFMPEG:
|
|
||||||
# libavutil needs UINT64_C()
|
|
||||||
CXXFLAGS += ['-D__STDC_CONSTANT_MACROS', ]
|
|
||||||
REL_CFLAGS = ['-O2']
|
|
||||||
REL_CCFLAGS = ['-O2']
|
|
||||||
##BF_DEPEND = True
|
|
||||||
##
|
|
||||||
##AR = ar
|
|
||||||
##ARFLAGS = ruv
|
|
||||||
##ARFLAGSQUIET = ru
|
|
||||||
##
|
|
||||||
C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement']
|
|
||||||
CC_WARN = ['-Wall']
|
|
||||||
CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
|
|
||||||
|
|
||||||
|
|
||||||
##FIX_STUBS_WARNINGS = -Wno-unused
|
|
||||||
|
|
||||||
LLIBS = ['util', 'c', 'm', 'pthread', 'stdc++']
|
|
||||||
##LOPTS = --dynamic
|
|
||||||
##DYNLDFLAGS = -shared $(LDFLAGS)
|
|
||||||
|
|
||||||
BF_PROFILE = False
|
|
||||||
BF_PROFILE_CCFLAGS = ['-pg','-g']
|
|
||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
|
||||||
|
|
||||||
BF_DEBUG = False
|
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/freebsd9'
|
|
||||||
BF_INSTALLDIR='../install/freebsd9'
|
|
||||||
|
|
||||||
#Link against pthread
|
|
||||||
PLATFORM_LINKFLAGS = ['-pthread']
|
|
@@ -171,9 +171,9 @@ REL_CCFLAGS = ['-O2']
|
|||||||
##ARFLAGS = ruv
|
##ARFLAGS = ruv
|
||||||
##ARFLAGSQUIET = ru
|
##ARFLAGSQUIET = ru
|
||||||
##
|
##
|
||||||
C_WARN = ['-no_prelink', '-ptused']
|
C_WARN = '-no_prelink -ptused'
|
||||||
|
|
||||||
CC_WARN = ['-no_prelink', '-ptused']
|
CC_WARN = '-no_prelink -ptused'
|
||||||
|
|
||||||
##FIX_STUBS_WARNINGS = -Wno-unused
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
@@ -185,7 +185,7 @@ BF_PROFILE_FLAGS = ['-pg','-g']
|
|||||||
BF_PROFILE = 'false'
|
BF_PROFILE = 'false'
|
||||||
|
|
||||||
BF_DEBUG = 'false'
|
BF_DEBUG = 'false'
|
||||||
BF_DEBUG_CCFLAGS = ['-g']
|
BF_DEBUG_FLAGS = '-g'
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/irix6'
|
BF_BUILDDIR = '../build/irix6'
|
||||||
BF_INSTALLDIR='../install/irix6'
|
BF_INSTALLDIR='../install/irix6'
|
||||||
|
@@ -23,11 +23,9 @@ WITH_BF_STATICCXX = False
|
|||||||
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
|
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
|
||||||
|
|
||||||
BF_LIBSAMPLERATE = '/usr'
|
BF_LIBSAMPLERATE = '/usr'
|
||||||
WITH_BF_STATICLIBSAMPLERATE = False
|
|
||||||
BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
|
BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
|
||||||
BF_LIBSAMPLERATE_LIB = 'samplerate'
|
BF_LIBSAMPLERATE_LIB = 'samplerate'
|
||||||
BF_LIBSAMPLERATE_LIBPATH = '${BF_LIBSAMPLERATE}/lib'
|
BF_LIBSAMPLERATE_LIBPATH = '${BF_LIBSAMPLERATE}/lib'
|
||||||
BF_LIBSAMPLERATE_LIB_STATIC = '${BF_LIBSAMPLERATE}/lib/libsamplerate.a'
|
|
||||||
|
|
||||||
WITH_BF_JACK = False
|
WITH_BF_JACK = False
|
||||||
BF_JACK = '/usr'
|
BF_JACK = '/usr'
|
||||||
@@ -36,12 +34,10 @@ BF_JACK_LIB = 'jack'
|
|||||||
BF_JACK_LIBPATH = '${BF_JACK}/lib'
|
BF_JACK_LIBPATH = '${BF_JACK}/lib'
|
||||||
|
|
||||||
WITH_BF_SNDFILE = False
|
WITH_BF_SNDFILE = False
|
||||||
WITH_BF_STATICSNDFILE = False
|
|
||||||
BF_SNDFILE = '/usr'
|
BF_SNDFILE = '/usr'
|
||||||
BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
|
BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
|
||||||
BF_SNDFILE_LIB = 'sndfile'
|
BF_SNDFILE_LIB = 'sndfile'
|
||||||
BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
|
BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
|
||||||
BF_SNDFILE_LIB_STATIC = '${BF_SNDFILE}/lib/libsndfile.a ${BF_OGG}/lib/libvorbis.a ${BF_OGG}/lib/libFLAC.a ${BF_OGG}/lib/libvorbisenc.a ${BF_OGG}/lib/libogg.a'
|
|
||||||
|
|
||||||
WITH_BF_SDL = True
|
WITH_BF_SDL = True
|
||||||
BF_SDL = '/usr' #$(shell sdl-config --prefix)
|
BF_SDL = '/usr' #$(shell sdl-config --prefix)
|
||||||
@@ -88,8 +84,6 @@ BF_GETTEXT = '/usr'
|
|||||||
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
|
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
|
||||||
BF_GETTEXT_LIB = 'gettextlib'
|
BF_GETTEXT_LIB = 'gettextlib'
|
||||||
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
|
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
|
||||||
#WITH_BF_GETTEXT_STATIC = True
|
|
||||||
#BF_GETTEXT_LIB_STATIC = '${BF_GETTEXT}/lib/libgettextlib.a'
|
|
||||||
|
|
||||||
WITH_BF_GAMEENGINE = True
|
WITH_BF_GAMEENGINE = True
|
||||||
WITH_BF_PLAYER = False
|
WITH_BF_PLAYER = False
|
||||||
@@ -103,8 +97,6 @@ BF_BULLET_LIB = 'extern_bullet'
|
|||||||
BF_FREETYPE = '/usr'
|
BF_FREETYPE = '/usr'
|
||||||
BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
|
BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
|
||||||
BF_FREETYPE_LIB = 'freetype'
|
BF_FREETYPE_LIB = 'freetype'
|
||||||
#WITH_BF_FREETYPE_STATIC = True
|
|
||||||
#BF_FREETYPE_LIB_STATIC = '${BF_FREETYPE}/lib/libfreetype.a'
|
|
||||||
|
|
||||||
WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME
|
WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME
|
||||||
BF_QUICKTIME = '/usr/local'
|
BF_QUICKTIME = '/usr/local'
|
||||||
@@ -124,8 +116,6 @@ BF_FFMPEG = '/usr'
|
|||||||
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice'
|
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice'
|
||||||
BF_FFMPEG_INC = '${BF_FFMPEG}/include'
|
BF_FFMPEG_INC = '${BF_FFMPEG}/include'
|
||||||
BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
|
BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
|
||||||
#WITH_BF_STATICFFMPEG = True
|
|
||||||
#BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH/libavcodec.a ${BF_FFMPEG_LIBPATH}/libswscale.a ${BF_FFMPEG_LIBPATH}/libavutil.a ${BF_FFMPEG_LIBPATH}/libavdevice.a'
|
|
||||||
|
|
||||||
# enable ogg, vorbis and theora in ffmpeg
|
# enable ogg, vorbis and theora in ffmpeg
|
||||||
WITH_BF_OGG = False # -DWITH_OGG
|
WITH_BF_OGG = False # -DWITH_OGG
|
||||||
@@ -140,12 +130,10 @@ BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
|||||||
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
||||||
|
|
||||||
WITH_BF_FFTW3 = False
|
WITH_BF_FFTW3 = False
|
||||||
WITH_BF_STATICFFTW3 = False
|
BF_FFTW3 = LIBDIR + '/usr'
|
||||||
BF_FFTW3 = '/usr'
|
|
||||||
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
||||||
BF_FFTW3_LIB = 'fftw3'
|
BF_FFTW3_LIB = 'fftw3'
|
||||||
BF_FFTW3_LIBPATH = '${BF_FFTW3}/lib'
|
BF_FFTW3_LIBPATH = '${BF_FFTW3}/lib'
|
||||||
BF_FFTW3_LIB_STATIC = '${BF_FFTW3_LIBPATH}/libfftw3.a'
|
|
||||||
|
|
||||||
WITH_BF_REDCODE = False
|
WITH_BF_REDCODE = False
|
||||||
BF_REDCODE = '#extern/libredcode'
|
BF_REDCODE = '#extern/libredcode'
|
||||||
@@ -204,7 +192,7 @@ REL_CCFLAGS = ['-O2']
|
|||||||
##ARFLAGS = ruv
|
##ARFLAGS = ruv
|
||||||
##ARFLAGSQUIET = ru
|
##ARFLAGSQUIET = ru
|
||||||
##
|
##
|
||||||
C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement', '-Wunused-parameter', '-Werror=declaration-after-statement', '-Werror=implicit-function-declaration', '-Werror=return-type']
|
C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement']
|
||||||
CC_WARN = ['-Wall']
|
CC_WARN = ['-Wall']
|
||||||
CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
|
CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
|
||||||
|
|
||||||
@@ -220,7 +208,7 @@ BF_PROFILE_CCFLAGS = ['-pg','-g']
|
|||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
BF_PROFILE_LINKFLAGS = ['-pg']
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
BF_DEBUG_CCFLAGS = ['-g']
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/linux2'
|
BF_BUILDDIR = '../build/linux2'
|
||||||
BF_INSTALLDIR='../install/linux2'
|
BF_INSTALLDIR='../install/linux2'
|
||||||
|
@@ -185,7 +185,7 @@ CC_WARN = [ '-Wall' ]
|
|||||||
LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++', '-luuid', '-lole32'] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
|
LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++', '-luuid', '-lole32'] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
BF_DEBUG_CCFLAGS = ['-g']
|
||||||
|
|
||||||
BF_PROFILE = False
|
BF_PROFILE = False
|
||||||
BF_PROFILE_CCFLAGS = ['-pg','-g']
|
BF_PROFILE_CCFLAGS = ['-pg','-g']
|
||||||
|
@@ -147,7 +147,7 @@ BF_PROFILE_CCFLAGS = ['-pg','-g']
|
|||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
BF_PROFILE_LINKFLAGS = ['-pg']
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS = ['-g', '-DDEBUG']
|
BF_DEBUG_CCFLAGS = ['-g']
|
||||||
|
|
||||||
BF_BUILDDIR='../build/openbsd3'
|
BF_BUILDDIR='../build/openbsd3'
|
||||||
BF_INSTALLDIR='../install/openbsd3'
|
BF_INSTALLDIR='../install/openbsd3'
|
||||||
|
@@ -161,7 +161,7 @@ BF_PROFILE_LINKFLAGS = ['-pg']
|
|||||||
BF_PROFILE = False
|
BF_PROFILE = False
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS = ['-DDEBUG']
|
BF_DEBUG_CCFLAGS = []
|
||||||
|
|
||||||
BF_BUILDDIR = '../build/sunos5'
|
BF_BUILDDIR = '../build/sunos5'
|
||||||
BF_INSTALLDIR='../install/sunos5'
|
BF_INSTALLDIR='../install/sunos5'
|
||||||
|
@@ -176,7 +176,7 @@ CC_WARN = [ '-Wall' ]
|
|||||||
LLIBS = ['-lshell32', '-lshfolder', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++','-lole32','-luuid']
|
LLIBS = ['-lshell32', '-lshfolder', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++','-lole32','-luuid']
|
||||||
|
|
||||||
BF_DEBUG = False
|
BF_DEBUG = False
|
||||||
BF_DEBUG_CCFLAGS= ['-g', '-DDEBUG']
|
BF_DEBUG_CCFLAGS= ['-g']
|
||||||
|
|
||||||
BF_PROFILE_CCFLAGS = ['-pg', '-g']
|
BF_PROFILE_CCFLAGS = ['-pg', '-g']
|
||||||
BF_PROFILE_LINKFLAGS = ['-pg']
|
BF_PROFILE_LINKFLAGS = ['-pg']
|
||||||
|
@@ -130,7 +130,7 @@ BF_OPENJPEG_LIB = ''
|
|||||||
BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
BF_OPENJPEG_INC = '${BF_OPENJPEG}'
|
||||||
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib'
|
||||||
|
|
||||||
WITH_BF_FFTW3 = True
|
WITH_BF_FFTW3 = False
|
||||||
BF_FFTW3 = LIBDIR + '/fftw3'
|
BF_FFTW3 = LIBDIR + '/fftw3'
|
||||||
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
BF_FFTW3_INC = '${BF_FFTW3}/include'
|
||||||
BF_FFTW3_LIB = 'libfftw'
|
BF_FFTW3_LIB = 'libfftw'
|
||||||
@@ -149,12 +149,6 @@ BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}/include'
|
|||||||
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser MathMLSolver xml2 pcre buffer ftoa'
|
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser MathMLSolver xml2 pcre buffer ftoa'
|
||||||
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
||||||
|
|
||||||
WITH_BF_LCMS = False
|
|
||||||
BF_LCMS = LIBDIR + '/lcms'
|
|
||||||
BF_LCMS_INC = '${BF_LCMS}/include'
|
|
||||||
BF_LCMS_LIB = 'lcms'
|
|
||||||
BF_LCMS_LIBPATH = '${BF_LCMS}/lib'
|
|
||||||
|
|
||||||
#Ray trace optimization
|
#Ray trace optimization
|
||||||
WITH_BF_RAYOPTIMIZATION = True
|
WITH_BF_RAYOPTIMIZATION = True
|
||||||
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE']
|
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE']
|
||||||
@@ -170,7 +164,7 @@ BF_OPENGL_LIB_STATIC = [ '${BF_OPENGL}/lib/libGL.a', '${BF_OPENGL}/lib/libGLU.a'
|
|||||||
CC = 'cl.exe'
|
CC = 'cl.exe'
|
||||||
CXX = 'cl.exe'
|
CXX = 'cl.exe'
|
||||||
|
|
||||||
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W0', '/Gd', '/wd4018', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267', '/we4013']
|
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
|
||||||
CXXFLAGS = ['/EHsc']
|
CXXFLAGS = ['/EHsc']
|
||||||
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast', '/arch:SSE']
|
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast', '/arch:SSE']
|
||||||
|
|
||||||
@@ -194,6 +188,7 @@ PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:IX86','/INCREMENTAL:NO','/N
|
|||||||
# BF_PROFILE_LINKFLAGS = ['-pg']
|
# BF_PROFILE_LINKFLAGS = ['-pg']
|
||||||
# BF_PROFILE = False
|
# BF_PROFILE = False
|
||||||
|
|
||||||
|
#turn off makebsc by default ( as 64 bit version does ) .. takes ages to build .. for nothing ( well some M$ addicts may disagree )
|
||||||
BF_BSC=False
|
BF_BSC=False
|
||||||
|
|
||||||
BF_BUILDDIR = '..\\build\\win32-vc'
|
BF_BUILDDIR = '..\\build\\win32-vc'
|
||||||
|
@@ -107,6 +107,23 @@ BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
|
|||||||
|
|
||||||
WITH_BF_BINRELOC = False
|
WITH_BF_BINRELOC = False
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = True
|
||||||
|
#BF_NSPR = $(LIBDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LIBDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = True
|
||||||
|
|
||||||
# enable freetype2 support for text objects
|
# enable freetype2 support for text objects
|
||||||
BF_WITH_FREETYPE = True
|
BF_WITH_FREETYPE = True
|
||||||
BF_FREETYPE = LIBDIR + '/freetype'
|
BF_FREETYPE = LIBDIR + '/freetype'
|
||||||
@@ -145,12 +162,6 @@ BF_OPENCOLLADA_INC = '${BF_OPENCOLLADA}/include'
|
|||||||
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser MathMLSolver xml2 pcre buffer ftoa'
|
BF_OPENCOLLADA_LIB = 'OpenCOLLADAStreamWriter OpenCOLLADASaxFrameworkLoader OpenCOLLADAFramework OpenCOLLADABaseUtils GeneratedSaxParser MathMLSolver xml2 pcre buffer ftoa'
|
||||||
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
BF_OPENCOLLADA_LIBPATH = '${BF_OPENCOLLADA}/lib'
|
||||||
|
|
||||||
WITH_BF_LCMS = False
|
|
||||||
BF_LCMS = LIBDIR + '/lcms'
|
|
||||||
BF_LCMS_INC = '${BF_LCMS}/include'
|
|
||||||
BF_LCMS_LIB = 'lcms'
|
|
||||||
BF_LCMS_LIBPATH = '${BF_LCMS}/lib'
|
|
||||||
|
|
||||||
#Ray trace optimization
|
#Ray trace optimization
|
||||||
WITH_BF_RAYOPTIMIZATION = True
|
WITH_BF_RAYOPTIMIZATION = True
|
||||||
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE','/arch:SSE2']
|
BF_RAYOPTIMIZATION_SSE_FLAGS = ['/arch:SSE','/arch:SSE2']
|
||||||
@@ -166,13 +177,13 @@ CC = 'cl.exe'
|
|||||||
CXX = 'cl.exe'
|
CXX = 'cl.exe'
|
||||||
|
|
||||||
CFLAGS = []
|
CFLAGS = []
|
||||||
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W0', '/Gd', '/we4013', '/wd4018', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
|
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
|
||||||
CXXFLAGS = ['/EHsc']
|
CXXFLAGS = ['/EHsc']
|
||||||
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast']
|
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast']
|
||||||
|
|
||||||
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']
|
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']
|
||||||
|
|
||||||
CPPFLAGS = ['-DWIN32', '-D_CONSOLE', '-D_LIB', '-DFTGL_LIBRARY_STATIC', '-D_CRT_SECURE_NO_DEPRECATE']
|
CPPFLAGS = ['-DWIN32','-D_CONSOLE', '-D_LIB', '-DFTGL_LIBRARY_STATIC', '-D_CRT_SECURE_NO_DEPRECATE']
|
||||||
REL_CFLAGS = ['-O2', '-DNDEBUG']
|
REL_CFLAGS = ['-O2', '-DNDEBUG']
|
||||||
REL_CCFLAGS = ['-O2', '-DNDEBUG']
|
REL_CCFLAGS = ['-O2', '-DNDEBUG']
|
||||||
REL_CXXFLAGS = ['-O2', '-DNDEBUG']
|
REL_CXXFLAGS = ['-O2', '-DNDEBUG']
|
||||||
@@ -183,6 +194,11 @@ CXX_WARN = []
|
|||||||
|
|
||||||
LLIBS = ['ws2_32', 'vfw32', 'winmm', 'kernel32', 'user32', 'gdi32', 'comdlg32', 'advapi32', 'shfolder', 'shell32', 'ole32', 'oleaut32', 'uuid']
|
LLIBS = ['ws2_32', 'vfw32', 'winmm', 'kernel32', 'user32', 'gdi32', 'comdlg32', 'advapi32', 'shfolder', 'shell32', 'ole32', 'oleaut32', 'uuid']
|
||||||
|
|
||||||
|
WITH_BF_DOCS=False
|
||||||
|
|
||||||
|
BF_DEBUG=False
|
||||||
|
BF_BSC=False
|
||||||
|
|
||||||
if BF_DEBUG:
|
if BF_DEBUG:
|
||||||
BF_NUMJOBS=1
|
BF_NUMJOBS=1
|
||||||
else:
|
else:
|
||||||
@@ -193,3 +209,10 @@ PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:X64','/INCREMENTAL:NO','/NO
|
|||||||
BF_BUILDDIR = '..\\build\\blender25-win64-vc'
|
BF_BUILDDIR = '..\\build\\blender25-win64-vc'
|
||||||
BF_INSTALLDIR='..\\install\\blender25-win64-vc'
|
BF_INSTALLDIR='..\\install\\blender25-win64-vc'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
######################### MERGE WITH ABOVE ################################
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -15,15 +15,7 @@ import sys
|
|||||||
Variables = SCons.Variables
|
Variables = SCons.Variables
|
||||||
BoolVariable = SCons.Variables.BoolVariable
|
BoolVariable = SCons.Variables.BoolVariable
|
||||||
|
|
||||||
def get_version():
|
VERSION = '2.53' # This is used in creating the local config directories
|
||||||
fname = os.path.join(os.path.dirname(__file__), "..", "..", "..", "source", "blender", "blenkernel", "BKE_blender.h")
|
|
||||||
for l in open(fname, "r"):
|
|
||||||
if "BLENDER_VERSION" in l:
|
|
||||||
ver = int(l.split()[-1])
|
|
||||||
return "%d.%d" % (ver / 100, ver % 100)
|
|
||||||
raise Exception("%s: missing version string" % fname)
|
|
||||||
|
|
||||||
VERSION = get_version() # This is used in creating the local config directories
|
|
||||||
|
|
||||||
def print_arguments(args, bc):
|
def print_arguments(args, bc):
|
||||||
if len(args):
|
if len(args):
|
||||||
@@ -39,29 +31,28 @@ def validate_arguments(args, bc):
|
|||||||
'WITH_BF_PYTHON', 'BF_PYTHON', 'BF_PYTHON_VERSION', 'BF_PYTHON_INC', 'BF_PYTHON_BINARY', 'BF_PYTHON_LIB', 'BF_PYTHON_LIBPATH', 'WITH_BF_STATICPYTHON', 'BF_PYTHON_LIB_STATIC', 'BF_PYTHON_DLL',
|
'WITH_BF_PYTHON', 'BF_PYTHON', 'BF_PYTHON_VERSION', 'BF_PYTHON_INC', 'BF_PYTHON_BINARY', 'BF_PYTHON_LIB', 'BF_PYTHON_LIBPATH', 'WITH_BF_STATICPYTHON', 'BF_PYTHON_LIB_STATIC', 'BF_PYTHON_DLL',
|
||||||
'WITH_BF_OPENAL', 'BF_OPENAL', 'BF_OPENAL_INC', 'BF_OPENAL_LIB', 'BF_OPENAL_LIBPATH', 'WITH_BF_STATICOPENAL', 'BF_OPENAL_LIB_STATIC',
|
'WITH_BF_OPENAL', 'BF_OPENAL', 'BF_OPENAL_INC', 'BF_OPENAL_LIB', 'BF_OPENAL_LIBPATH', 'WITH_BF_STATICOPENAL', 'BF_OPENAL_LIB_STATIC',
|
||||||
'WITH_BF_SDL', 'BF_SDL', 'BF_SDL_INC', 'BF_SDL_LIB', 'BF_SDL_LIBPATH',
|
'WITH_BF_SDL', 'BF_SDL', 'BF_SDL_INC', 'BF_SDL_LIB', 'BF_SDL_LIBPATH',
|
||||||
'BF_LIBSAMPLERATE', 'BF_LIBSAMPLERATE_INC', 'BF_LIBSAMPLERATE_LIB', 'BF_LIBSAMPLERATE_LIBPATH', 'WITH_BF_STATICLIBSAMPLERATE', 'BF_LIBSAMPLERATE_LIB_STATIC',
|
'BF_LIBSAMPLERATE', 'BF_LIBSAMPLERATE_INC', 'BF_LIBSAMPLERATE_LIB', 'BF_LIBSAMPLERATE_LIBPATH',
|
||||||
'WITH_BF_JACK', 'BF_JACK', 'BF_JACK_INC', 'BF_JACK_LIB', 'BF_JACK_LIBPATH',
|
'WITH_BF_JACK', 'BF_JACK', 'BF_JACK_INC', 'BF_JACK_LIB', 'BF_JACK_LIBPATH',
|
||||||
'WITH_BF_SNDFILE', 'BF_SNDFILE', 'BF_SNDFILE_INC', 'BF_SNDFILE_LIB', 'BF_SNDFILE_LIBPATH', 'WITH_BF_STATICSNDFILE', 'BF_SNDFILE_LIB_STATIC',
|
'WITH_BF_SNDFILE', 'BF_SNDFILE', 'BF_SNDFILE_INC', 'BF_SNDFILE_LIB', 'BF_SNDFILE_LIBPATH',
|
||||||
'BF_PTHREADS', 'BF_PTHREADS_INC', 'BF_PTHREADS_LIB', 'BF_PTHREADS_LIBPATH',
|
'BF_PTHREADS', 'BF_PTHREADS_INC', 'BF_PTHREADS_LIB', 'BF_PTHREADS_LIBPATH',
|
||||||
'WITH_BF_OPENEXR', 'BF_OPENEXR', 'BF_OPENEXR_INC', 'BF_OPENEXR_LIB', 'BF_OPENEXR_LIBPATH', 'WITH_BF_STATICOPENEXR', 'BF_OPENEXR_LIB_STATIC',
|
'WITH_BF_OPENEXR', 'BF_OPENEXR', 'BF_OPENEXR_INC', 'BF_OPENEXR_LIB', 'BF_OPENEXR_LIBPATH', 'WITH_BF_STATICOPENEXR', 'BF_OPENEXR_LIB_STATIC',
|
||||||
'WITH_BF_DDS', 'WITH_BF_CINEON', 'WITH_BF_HDR',
|
'WITH_BF_DDS',
|
||||||
'WITH_BF_FFMPEG', 'BF_FFMPEG_LIB','BF_FFMPEG_EXTRA', 'BF_FFMPEG', 'BF_FFMPEG_INC',
|
'WITH_BF_FFMPEG', 'BF_FFMPEG_LIB','BF_FFMPEG_EXTRA', 'BF_FFMPEG', 'BF_FFMPEG_INC',
|
||||||
'WITH_BF_STATICFFMPEG', 'BF_FFMPEG_LIB_STATIC',
|
|
||||||
'WITH_BF_OGG', 'BF_OGG', 'BF_OGG_LIB',
|
'WITH_BF_OGG', 'BF_OGG', 'BF_OGG_LIB',
|
||||||
'WITH_BF_JPEG', 'BF_JPEG', 'BF_JPEG_INC', 'BF_JPEG_LIB', 'BF_JPEG_LIBPATH',
|
'WITH_BF_JPEG', 'BF_JPEG', 'BF_JPEG_INC', 'BF_JPEG_LIB', 'BF_JPEG_LIBPATH',
|
||||||
'WITH_BF_OPENJPEG', 'BF_OPENJPEG', 'BF_OPENJPEG_INC', 'BF_OPENJPEG_LIB', 'BF_OPENJPEG_LIBPATH',
|
'WITH_BF_OPENJPEG', 'BF_OPENJPEG', 'BF_OPENJPEG_INC', 'BF_OPENJPEG_LIB', 'BF_OPENJPEG_LIBPATH',
|
||||||
'WITH_BF_REDCODE', 'BF_REDCODE', 'BF_REDCODE_INC', 'BF_REDCODE_LIB', 'BF_REDCODE_LIBPATH',
|
'WITH_BF_REDCODE', 'BF_REDCODE', 'BF_REDCODE_INC', 'BF_REDCODE_LIB', 'BF_REDCODE_LIBPATH',
|
||||||
'WITH_BF_PNG', 'BF_PNG', 'BF_PNG_INC', 'BF_PNG_LIB', 'BF_PNG_LIBPATH',
|
'WITH_BF_PNG', 'BF_PNG', 'BF_PNG_INC', 'BF_PNG_LIB', 'BF_PNG_LIBPATH',
|
||||||
'WITH_BF_TIFF', 'BF_TIFF', 'BF_TIFF_INC', 'BF_TIFF_LIB', 'BF_TIFF_LIBPATH', 'WITH_BF_STATICTIFF', 'BF_TIFF_LIB_STATIC',
|
'WITH_BF_TIFF', 'BF_TIFF', 'BF_TIFF_INC', 'BF_TIFF_LIB', 'BF_TIFF_LIBPATH',
|
||||||
'WITH_BF_ZLIB', 'BF_ZLIB', 'BF_ZLIB_INC', 'BF_ZLIB_LIB', 'BF_ZLIB_LIBPATH', 'WITH_BF_STATICZLIB', 'BF_ZLIB_LIB_STATIC',
|
'WITH_BF_ZLIB', 'BF_ZLIB', 'BF_ZLIB_INC', 'BF_ZLIB_LIB', 'BF_ZLIB_LIBPATH',
|
||||||
'WITH_BF_INTERNATIONAL',
|
'WITH_BF_INTERNATIONAL',
|
||||||
'BF_GETTEXT', 'BF_GETTEXT_INC', 'BF_GETTEXT_LIB', 'WITH_BF_GETTEXT_STATIC', 'BF_GETTEXT_LIB_STATIC', 'BF_GETTEXT_LIBPATH',
|
'BF_GETTEXT', 'BF_GETTEXT_INC', 'BF_GETTEXT_LIB', 'BF_GETTEXT_LIBPATH',
|
||||||
'WITH_BF_ICONV', 'BF_ICONV', 'BF_ICONV_INC', 'BF_ICONV_LIB', 'BF_ICONV_LIBPATH',
|
'WITH_BF_ICONV', 'BF_ICONV', 'BF_ICONV_INC', 'BF_ICONV_LIB', 'BF_ICONV_LIBPATH',
|
||||||
'WITH_BF_GAMEENGINE', 'WITH_BF_BULLET', 'BF_BULLET', 'BF_BULLET_INC', 'BF_BULLET_LIB',
|
'WITH_BF_GAMEENGINE', 'WITH_BF_BULLET', 'BF_BULLET', 'BF_BULLET_INC', 'BF_BULLET_LIB',
|
||||||
'BF_WINTAB', 'BF_WINTAB_INC',
|
'BF_WINTAB', 'BF_WINTAB_INC',
|
||||||
'WITH_BF_FREETYPE', 'BF_FREETYPE', 'BF_FREETYPE_INC', 'BF_FREETYPE_LIB', 'BF_FREETYPE_LIBPATH', 'BF_FREETYPE_LIB_STATIC', 'WITH_BF_FREETYPE_STATIC',
|
'WITH_BF_FREETYPE', 'BF_FREETYPE', 'BF_FREETYPE_INC', 'BF_FREETYPE_LIB', 'BF_FREETYPE_LIBPATH',
|
||||||
'WITH_BF_QUICKTIME', 'BF_QUICKTIME', 'BF_QUICKTIME_INC', 'BF_QUICKTIME_LIB', 'BF_QUICKTIME_LIBPATH',
|
'WITH_BF_QUICKTIME', 'BF_QUICKTIME', 'BF_QUICKTIME_INC', 'BF_QUICKTIME_LIB', 'BF_QUICKTIME_LIBPATH',
|
||||||
'WITH_BF_FFTW3', 'BF_FFTW3', 'BF_FFTW3_INC', 'BF_FFTW3_LIB', 'BF_FFTW3_LIBPATH', 'WITH_BF_STATICFFTW3', 'BF_FFTW3_LIB_STATIC',
|
'WITH_BF_FFTW3', 'BF_FFTW3', 'BF_FFTW3_INC', 'BF_FFTW3_LIB', 'BF_FFTW3_LIBPATH',
|
||||||
'WITH_BF_STATICOPENGL', 'BF_OPENGL', 'BF_OPENGL_INC', 'BF_OPENGL_LIB', 'BF_OPENGL_LIBPATH', 'BF_OPENGL_LIB_STATIC',
|
'WITH_BF_STATICOPENGL', 'BF_OPENGL', 'BF_OPENGL_INC', 'BF_OPENGL_LIB', 'BF_OPENGL_LIBPATH', 'BF_OPENGL_LIB_STATIC',
|
||||||
'WITH_BF_COLLADA', 'BF_COLLADA', 'BF_COLLADA_INC', 'BF_COLLADA_LIB', 'BF_OPENCOLLADA', 'BF_OPENCOLLADA_INC', 'BF_OPENCOLLADA_LIB', 'BF_OPENCOLLADA_LIBPATH', 'BF_PCRE', 'BF_PCRE_LIB', 'BF_PCRE_LIBPATH', 'BF_EXPAT', 'BF_EXPAT_LIB', 'BF_EXPAT_LIBPATH',
|
'WITH_BF_COLLADA', 'BF_COLLADA', 'BF_COLLADA_INC', 'BF_COLLADA_LIB', 'BF_OPENCOLLADA', 'BF_OPENCOLLADA_INC', 'BF_OPENCOLLADA_LIB', 'BF_OPENCOLLADA_LIBPATH', 'BF_PCRE', 'BF_PCRE_LIB', 'BF_PCRE_LIBPATH', 'BF_EXPAT', 'BF_EXPAT_LIB', 'BF_EXPAT_LIBPATH',
|
||||||
'WITH_BF_PLAYER',
|
'WITH_BF_PLAYER',
|
||||||
@@ -87,12 +78,12 @@ def validate_arguments(args, bc):
|
|||||||
'WITH_BF_DOCS',
|
'WITH_BF_DOCS',
|
||||||
'BF_NUMJOBS',
|
'BF_NUMJOBS',
|
||||||
'BF_MSVS',
|
'BF_MSVS',
|
||||||
|
'WITH_BF_FHS',
|
||||||
'BF_VERSION',
|
'BF_VERSION',
|
||||||
'BF_GHOST_DEBUG',
|
'BF_GHOST_DEBUG',
|
||||||
'WITH_BF_RAYOPTIMIZATION',
|
'WITH_BF_RAYOPTIMIZATION',
|
||||||
'BF_RAYOPTIMIZATION_SSE_FLAGS',
|
'BF_RAYOPTIMIZATION_SSE_FLAGS',
|
||||||
'BF_NO_ELBEEM',
|
'BF_NO_ELBEEM',
|
||||||
'WITH_BF_CXX_GUARDEDALLOC',
|
|
||||||
'BF_VCREDIST' # Windows-only, and useful only when creating installer
|
'BF_VCREDIST' # Windows-only, and useful only when creating installer
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -207,8 +198,6 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_LIBSAMPLERATE_INC', 'libsamplerate aka SRC include path', ''),
|
('BF_LIBSAMPLERATE_INC', 'libsamplerate aka SRC include path', ''),
|
||||||
('BF_LIBSAMPLERATE_LIB', 'libsamplerate aka SRC library', ''),
|
('BF_LIBSAMPLERATE_LIB', 'libsamplerate aka SRC library', ''),
|
||||||
('BF_LIBSAMPLERATE_LIBPATH', 'libsamplerate aka SRC library path', ''),
|
('BF_LIBSAMPLERATE_LIBPATH', 'libsamplerate aka SRC library path', ''),
|
||||||
('BF_LIBSAMPLERATE_LIB_STATIC', 'Path to libsamplerate static library', ''),
|
|
||||||
(BoolVariable('WITH_BF_STATICLIBSAMPLERATE', 'Staticly link to libsamplerate', False)),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_JACK', 'Enable jack support if true', True)),
|
(BoolVariable('WITH_BF_JACK', 'Enable jack support if true', True)),
|
||||||
('BF_JACK', 'jack base path', ''),
|
('BF_JACK', 'jack base path', ''),
|
||||||
@@ -220,9 +209,7 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_SNDFILE', 'sndfile base path', ''),
|
('BF_SNDFILE', 'sndfile base path', ''),
|
||||||
('BF_SNDFILE_INC', 'sndfile include path', ''),
|
('BF_SNDFILE_INC', 'sndfile include path', ''),
|
||||||
('BF_SNDFILE_LIB', 'sndfile library', ''),
|
('BF_SNDFILE_LIB', 'sndfile library', ''),
|
||||||
('BF_SNDFILE_LIB_STATIC', 'Path to sndfile static library', ''),
|
|
||||||
('BF_SNDFILE_LIBPATH', 'sndfile library path', ''),
|
('BF_SNDFILE_LIBPATH', 'sndfile library path', ''),
|
||||||
(BoolVariable('WITH_BF_STATICSNDFILE', 'Staticly link to sndfile', False)),
|
|
||||||
|
|
||||||
('BF_PTHREADS', 'Pthreads base path', ''),
|
('BF_PTHREADS', 'Pthreads base path', ''),
|
||||||
('BF_PTHREADS_INC', 'Pthreads include path', ''),
|
('BF_PTHREADS_INC', 'Pthreads include path', ''),
|
||||||
@@ -237,11 +224,7 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_OPENEXR_LIBPATH', 'OPENEXR library path', ''),
|
('BF_OPENEXR_LIBPATH', 'OPENEXR library path', ''),
|
||||||
('BF_OPENEXR_LIB_STATIC', 'OPENEXR static library', ''),
|
('BF_OPENEXR_LIB_STATIC', 'OPENEXR static library', ''),
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_DDS', 'Support DDS image format if true', True)),
|
(BoolVariable('WITH_BF_DDS', 'Use DDS if true', True)),
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_CINEON', 'Support CINEON and DPX image formats if true', True)),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_HDR', 'Support HDR image formats if true', True)),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_FFMPEG', 'Use FFMPEG if true', False)),
|
(BoolVariable('WITH_BF_FFMPEG', 'Use FFMPEG if true', False)),
|
||||||
('BF_FFMPEG', 'FFMPEG base path', ''),
|
('BF_FFMPEG', 'FFMPEG base path', ''),
|
||||||
@@ -250,8 +233,6 @@ def read_opts(env, cfg, args):
|
|||||||
|
|
||||||
('BF_FFMPEG_INC', 'FFMPEG includes', ''),
|
('BF_FFMPEG_INC', 'FFMPEG includes', ''),
|
||||||
('BF_FFMPEG_LIBPATH', 'FFMPEG library path', ''),
|
('BF_FFMPEG_LIBPATH', 'FFMPEG library path', ''),
|
||||||
(BoolVariable('WITH_BF_STATICFFMPEG', 'Use static FFMPEG if true', False)),
|
|
||||||
('BF_FFMPEG_LIB_STATIC', 'Static FFMPEG libraries', ''),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_OGG', 'Use OGG, THEORA, VORBIS in FFMPEG if true',
|
(BoolVariable('WITH_BF_OGG', 'Use OGG, THEORA, VORBIS in FFMPEG if true',
|
||||||
False)),
|
False)),
|
||||||
@@ -283,12 +264,10 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_PNG_LIBPATH', 'PNG library path', ''),
|
('BF_PNG_LIBPATH', 'PNG library path', ''),
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_TIFF', 'Use TIFF if true', True)),
|
(BoolVariable('WITH_BF_TIFF', 'Use TIFF if true', True)),
|
||||||
(BoolVariable('WITH_BF_STATICTIFF', 'Staticly link to TIFF', False)),
|
|
||||||
('BF_TIFF', 'TIFF base path', ''),
|
('BF_TIFF', 'TIFF base path', ''),
|
||||||
('BF_TIFF_INC', 'TIFF include path', ''),
|
('BF_TIFF_INC', 'TIFF include path', ''),
|
||||||
('BF_TIFF_LIB', 'TIFF library', ''),
|
('BF_TIFF_LIB', 'TIFF library', ''),
|
||||||
('BF_TIFF_LIBPATH', 'TIFF library path', ''),
|
('BF_TIFF_LIBPATH', 'TIFF library path', ''),
|
||||||
('BF_TIFF_LIB_STATIC', 'TIFF static library', ''),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_LCMS', 'Enable color correction with lcms', False)),
|
(BoolVariable('WITH_BF_LCMS', 'Enable color correction with lcms', False)),
|
||||||
('BF_LCMS', 'LCMS base path', ''),
|
('BF_LCMS', 'LCMS base path', ''),
|
||||||
@@ -297,20 +276,16 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_LCMS_LIBPATH', 'LCMS library path', ''),
|
('BF_LCMS_LIBPATH', 'LCMS library path', ''),
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_ZLIB', 'Use ZLib if true', True)),
|
(BoolVariable('WITH_BF_ZLIB', 'Use ZLib if true', True)),
|
||||||
(BoolVariable('WITH_BF_STATICZLIB', 'Staticly link to ZLib', False)),
|
|
||||||
('BF_ZLIB', 'ZLib base path', ''),
|
('BF_ZLIB', 'ZLib base path', ''),
|
||||||
('BF_ZLIB_INC', 'ZLib include path', ''),
|
('BF_ZLIB_INC', 'ZLib include path', ''),
|
||||||
('BF_ZLIB_LIB', 'ZLib library', ''),
|
('BF_ZLIB_LIB', 'ZLib library', ''),
|
||||||
('BF_ZLIB_LIBPATH', 'ZLib library path', ''),
|
('BF_ZLIB_LIBPATH', 'ZLib library path', ''),
|
||||||
('BF_ZLIB_LIB_STATIC', 'ZLib static library', ''),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_INTERNATIONAL', 'Use Gettext if true', True)),
|
(BoolVariable('WITH_BF_INTERNATIONAL', 'Use Gettext if true', True)),
|
||||||
|
|
||||||
('BF_GETTEXT', 'gettext base path', ''),
|
('BF_GETTEXT', 'gettext base path', ''),
|
||||||
('BF_GETTEXT_INC', 'gettext include path', ''),
|
('BF_GETTEXT_INC', 'gettext include path', ''),
|
||||||
('BF_GETTEXT_LIB', 'gettext library', ''),
|
('BF_GETTEXT_LIB', 'gettext library', ''),
|
||||||
(BoolVariable('WITH_BF_GETTEXT_STATIC', 'Use static gettext library if true', False)),
|
|
||||||
('BF_GETTEXT_LIB_STATIC', 'static gettext library', ''),
|
|
||||||
('BF_GETTEXT_LIBPATH', 'gettext library path', ''),
|
('BF_GETTEXT_LIBPATH', 'gettext library path', ''),
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_ICONV', 'Use iconv if true', True)),
|
(BoolVariable('WITH_BF_ICONV', 'Use iconv if true', True)),
|
||||||
@@ -331,14 +306,29 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_CXX', 'c++ base path for libstdc++, only used when static linking', ''),
|
('BF_CXX', 'c++ base path for libstdc++, only used when static linking', ''),
|
||||||
(BoolVariable('WITH_BF_STATICCXX', 'static link to stdc++', False)),
|
(BoolVariable('WITH_BF_STATICCXX', 'static link to stdc++', False)),
|
||||||
('BF_CXX_LIB_STATIC', 'static library path for stdc++', ''),
|
('BF_CXX_LIB_STATIC', 'static library path for stdc++', ''),
|
||||||
|
##
|
||||||
|
##WITH_BF_NSPR = True
|
||||||
|
##BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
##BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
##BF_NSPR_LIB =
|
||||||
|
### Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
##CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
### Location of MOZILLA/Netscape header files...
|
||||||
|
##BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
##BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
##BF_MOZILLA_LIB =
|
||||||
|
### Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
### if this is not set.
|
||||||
|
##
|
||||||
|
### Be paranoid regarding library creation (do not update archives)
|
||||||
|
##BF_PARANOID = True
|
||||||
|
##
|
||||||
|
### enable freetype2 support for text objects
|
||||||
(BoolVariable('WITH_BF_FREETYPE', 'Use FreeType2 if true', True)),
|
(BoolVariable('WITH_BF_FREETYPE', 'Use FreeType2 if true', True)),
|
||||||
('BF_FREETYPE', 'Freetype base path', ''),
|
('BF_FREETYPE', 'Freetype base path', ''),
|
||||||
('BF_FREETYPE_INC', 'Freetype include path', ''),
|
('BF_FREETYPE_INC', 'Freetype include path', ''),
|
||||||
('BF_FREETYPE_LIB', 'Freetype library', ''),
|
('BF_FREETYPE_LIB', 'Freetype library', ''),
|
||||||
('BF_FREETYPE_LIBPATH', 'Freetype library path', ''),
|
('BF_FREETYPE_LIBPATH', 'Freetype library path', ''),
|
||||||
(BoolVariable('WITH_BF_FREETYPE_STATIC', 'Use Static Freetype if true', False)),
|
|
||||||
('BF_FREETYPE_LIB_STATIC', 'Static Freetype library', ''),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_OPENMP', 'Use OpenMP if true', False)),
|
(BoolVariable('WITH_BF_OPENMP', 'Use OpenMP if true', False)),
|
||||||
('BF_OPENMP', 'Base path to OpenMP (used when cross-compiling with older versions of WinGW)', ''),
|
('BF_OPENMP', 'Base path to OpenMP (used when cross-compiling with older versions of WinGW)', ''),
|
||||||
@@ -357,9 +347,7 @@ def read_opts(env, cfg, args):
|
|||||||
('BF_FFTW3', 'FFTW3 base path', ''),
|
('BF_FFTW3', 'FFTW3 base path', ''),
|
||||||
('BF_FFTW3_INC', 'FFTW3 include path', ''),
|
('BF_FFTW3_INC', 'FFTW3 include path', ''),
|
||||||
('BF_FFTW3_LIB', 'FFTW3 library', ''),
|
('BF_FFTW3_LIB', 'FFTW3 library', ''),
|
||||||
('BF_FFTW3_LIB_STATIC', 'FFTW3 static libraries', ''),
|
|
||||||
('BF_FFTW3_LIBPATH', 'FFTW3 library path', ''),
|
('BF_FFTW3_LIBPATH', 'FFTW3 library path', ''),
|
||||||
(BoolVariable('WITH_BF_STATICFFTW3', 'Staticly link to FFTW3', False)),
|
|
||||||
|
|
||||||
(BoolVariable('WITH_BF_STATICOPENGL', 'Use MESA if true', True)),
|
(BoolVariable('WITH_BF_STATICOPENGL', 'Use MESA if true', True)),
|
||||||
('BF_OPENGL', 'OpenGL base path', ''),
|
('BF_OPENGL', 'OpenGL base path', ''),
|
||||||
@@ -387,35 +375,35 @@ def read_opts(env, cfg, args):
|
|||||||
(BoolVariable('WITH_BF_PLAYER', 'Build blenderplayer if true', False)),
|
(BoolVariable('WITH_BF_PLAYER', 'Build blenderplayer if true', False)),
|
||||||
(BoolVariable('WITH_BF_NOBLENDER', 'Do not build blender if true', False)),
|
(BoolVariable('WITH_BF_NOBLENDER', 'Do not build blender if true', False)),
|
||||||
|
|
||||||
('CFLAGS', 'C only flags', []),
|
('CFLAGS', 'C only flags', ''),
|
||||||
('CCFLAGS', 'Generic C and C++ flags', []),
|
('CCFLAGS', 'Generic C and C++ flags', ''),
|
||||||
('CXXFLAGS', 'C++ only flags', []),
|
('CXXFLAGS', 'C++ only flags', ''),
|
||||||
('BGE_CXXFLAGS', 'C++ only flags for BGE', []),
|
('BGE_CXXFLAGS', 'C++ only flags for BGE', ''),
|
||||||
('CPPFLAGS', 'Defines', []),
|
('CPPFLAGS', 'Defines', ''),
|
||||||
('REL_CFLAGS', 'C only release flags', []),
|
('REL_CFLAGS', 'C only release flags', ''),
|
||||||
('REL_CCFLAGS', 'Generic C and C++ release flags', []),
|
('REL_CCFLAGS', 'Generic C and C++ release flags', ''),
|
||||||
('REL_CXXFLAGS', 'C++ only release flags', []),
|
('REL_CXXFLAGS', 'C++ only release flags', ''),
|
||||||
|
|
||||||
('C_WARN', 'C warning flags', []),
|
('C_WARN', 'C warning flags', ''),
|
||||||
('CC_WARN', 'Generic C and C++ warning flags', []),
|
('CC_WARN', 'Generic C and C++ warning flags', ''),
|
||||||
('CXX_WARN', 'C++ only warning flags', []),
|
('CXX_WARN', 'C++ only warning flags', ''),
|
||||||
|
|
||||||
('LLIBS', 'Platform libs', []),
|
('LLIBS', 'Platform libs', ''),
|
||||||
('PLATFORM_LINKFLAGS', 'Platform linkflags', []),
|
('PLATFORM_LINKFLAGS', 'Platform linkflags', ''),
|
||||||
('MACOSX_ARCHITECTURE', 'python_arch.zip select', ''),
|
('MACOSX_ARCHITECTURE', 'python_arch.zip select', ''),
|
||||||
|
|
||||||
(BoolVariable('BF_PROFILE', 'Add profiling information if true', False)),
|
(BoolVariable('BF_PROFILE', 'Add profiling information if true', False)),
|
||||||
('BF_PROFILE_CFLAGS', 'C only profiling flags', []),
|
('BF_PROFILE_CFLAGS', 'C only profiling flags', ''),
|
||||||
('BF_PROFILE_CCFLAGS', 'C and C++ profiling flags', []),
|
('BF_PROFILE_CCFLAGS', 'C and C++ profiling flags', ''),
|
||||||
('BF_PROFILE_CXXFLAGS', 'C++ only profiling flags', []),
|
('BF_PROFILE_CXXFLAGS', 'C++ only profiling flags', ''),
|
||||||
('BF_PROFILE_LINKFLAGS', 'Profile linkflags', []),
|
('BF_PROFILE_LINKFLAGS', 'Profile linkflags', ''),
|
||||||
|
|
||||||
(BoolVariable('BF_DEBUG', 'Add debug flags if true', False)),
|
(BoolVariable('BF_DEBUG', 'Add debug flags if true', False)),
|
||||||
('BF_DEBUG_CFLAGS', 'C only debug flags', []),
|
('BF_DEBUG_CFLAGS', 'C only debug flags', ''),
|
||||||
('BF_DEBUG_CCFLAGS', 'C and C++ debug flags', []),
|
('BF_DEBUG_CCFLAGS', 'C and C++ debug flags', ''),
|
||||||
('BF_DEBUG_CXXFLAGS', 'C++ only debug flags', []),
|
('BF_DEBUG_CXXFLAGS', 'C++ only debug flags', ''),
|
||||||
|
|
||||||
(BoolVariable('BF_BSC', 'Create .bsc files (msvc only)', False)),
|
(BoolVariable('BF_BSC', 'Create .bsc files (msvc only)', True)),
|
||||||
|
|
||||||
('BF_BUILDDIR', 'Build dir', ''),
|
('BF_BUILDDIR', 'Build dir', ''),
|
||||||
('BF_INSTALLDIR', 'Installation dir', ''),
|
('BF_INSTALLDIR', 'Installation dir', ''),
|
||||||
@@ -440,12 +428,13 @@ def read_opts(env, cfg, args):
|
|||||||
|
|
||||||
('BF_X264_CONFIG', 'configuration flags for x264', ''),
|
('BF_X264_CONFIG', 'configuration flags for x264', ''),
|
||||||
('BF_XVIDCORE_CONFIG', 'configuration flags for xvidcore', ''),
|
('BF_XVIDCORE_CONFIG', 'configuration flags for xvidcore', ''),
|
||||||
# (BoolVariable('WITH_BF_DOCS', 'Generate API documentation', False)),
|
(BoolVariable('WITH_BF_DOCS', 'Generate API documentation', False)),
|
||||||
|
|
||||||
('BF_CONFIG', 'SCons python config file used to set default options', 'user_config.py'),
|
('BF_CONFIG', 'SCons python config file used to set default options', 'user_config.py'),
|
||||||
('BF_NUMJOBS', 'Number of build processes to spawn', '1'),
|
('BF_NUMJOBS', 'Number of build processes to spawn', '1'),
|
||||||
('BF_MSVS', 'Generate MSVS project files and solution', False),
|
('BF_MSVS', 'Generate MSVS project files and solution', False),
|
||||||
|
|
||||||
|
(BoolVariable('WITH_BF_FHS', 'Use the Unix "Filesystem Hierarchy Standard" rather then a redistributable directory layout', False)),
|
||||||
('BF_VERSION', 'The root path for Unix (non-apple)', '2.5'),
|
('BF_VERSION', 'The root path for Unix (non-apple)', '2.5'),
|
||||||
|
|
||||||
(BoolVariable('BF_UNIT_TEST', 'Build with unit test support.', False)),
|
(BoolVariable('BF_UNIT_TEST', 'Build with unit test support.', False)),
|
||||||
@@ -454,7 +443,6 @@ def read_opts(env, cfg, args):
|
|||||||
|
|
||||||
(BoolVariable('WITH_BF_RAYOPTIMIZATION', 'Enable raytracer SSE/SIMD optimization.', False)),
|
(BoolVariable('WITH_BF_RAYOPTIMIZATION', 'Enable raytracer SSE/SIMD optimization.', False)),
|
||||||
('BF_RAYOPTIMIZATION_SSE_FLAGS', 'SSE flags', ''),
|
('BF_RAYOPTIMIZATION_SSE_FLAGS', 'SSE flags', ''),
|
||||||
(BoolVariable('WITH_BF_CXX_GUARDEDALLOC', 'Enable GuardedAlloc for C++ memory allocation tracking.', False)),
|
|
||||||
('BF_VCREDIST', 'Full path to vcredist', '')
|
('BF_VCREDIST', 'Full path to vcredist', '')
|
||||||
) # end of opts.AddOptions()
|
) # end of opts.AddOptions()
|
||||||
|
|
||||||
|
@@ -32,4 +32,4 @@ license@blender.org for further information.
|
|||||||
|
|
||||||
Ton Roosendaal
|
Ton Roosendaal
|
||||||
Chairman Blender Foundation.
|
Chairman Blender Foundation.
|
||||||
June 2005
|
June 2005
|
@@ -1390,4 +1390,4 @@ Radoslav Dejanovic
|
|||||||
James H. Cloos, Jr.
|
James H. Cloos, Jr.
|
||||||
Karl Erlandsen (LethalSideParting)
|
Karl Erlandsen (LethalSideParting)
|
||||||
Kari Pulli
|
Kari Pulli
|
||||||
Dave Shemano
|
Dave Shemano
|
@@ -20,7 +20,7 @@ $Id$
|
|||||||
with the patch to get started.
|
with the patch to get started.
|
||||||
|
|
||||||
This document describes the usage of the new SCons scripts. The
|
This document describes the usage of the new SCons scripts. The
|
||||||
inner workings are described in scons-dev.txt.
|
inner workings are described in blender-scons-dev.txt.
|
||||||
|
|
||||||
Building Blender
|
Building Blender
|
||||||
----------------
|
----------------
|
@@ -44,7 +44,7 @@ def man_format(data):
|
|||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
blender_bin = os.path.join(os.path.dirname(__file__), "../../blender")
|
blender_bin = os.path.join(os.path.dirname(__file__), "../blender")
|
||||||
|
|
||||||
blender_help = subprocess.Popen([blender_bin, "--help"], stdout=subprocess.PIPE).communicate()[0].decode()
|
blender_help = subprocess.Popen([blender_bin, "--help"], stdout=subprocess.PIPE).communicate()[0].decode()
|
||||||
|
|
||||||
@@ -91,25 +91,25 @@ while lines:
|
|||||||
l = lines.pop(0)
|
l = lines.pop(0)
|
||||||
if l.startswith("Environment Variables:"):
|
if l.startswith("Environment Variables:"):
|
||||||
fw('.SH "ENVIRONMENT VARIABLES"\n')
|
fw('.SH "ENVIRONMENT VARIABLES"\n')
|
||||||
elif l.endswith(":"): # one line
|
elif l.endswith(":"): # one line
|
||||||
fw('.SS "%s"\n\n' % l)
|
fw('.SS "%s"\n\n' % l)
|
||||||
elif l.startswith("-") or l.startswith("/"): # can be multi line
|
elif l.startswith("-") or l.startswith("/"): # can be multi line
|
||||||
|
|
||||||
fw('.TP\n')
|
fw('.TP\n')
|
||||||
fw('.B %s\n' % man_format(l))
|
fw('.B %s\n' % man_format(l))
|
||||||
|
|
||||||
while lines:
|
while lines:
|
||||||
# line with no
|
# line with no
|
||||||
if lines[0].strip() and len(lines[0].lstrip()) == len(lines[0]): # no white space
|
if lines[0].strip() and len(lines[0].lstrip()) == len(lines[0]): # no white space
|
||||||
break
|
break
|
||||||
|
|
||||||
if not l: # second blank line
|
if not l: # second blank line
|
||||||
fw('.IP\n')
|
fw('.IP\n')
|
||||||
else:
|
else:
|
||||||
fw('.br\n')
|
fw('.br\n')
|
||||||
|
|
||||||
l = lines.pop(0)
|
l = lines.pop(0)
|
||||||
l = l[1:] # remove first whitespace (tab)
|
l = l[1:] # remove first whitespace (tab)
|
||||||
|
|
||||||
fw('%s\n' % man_format(l))
|
fw('%s\n' % man_format(l))
|
||||||
|
|
@@ -1,170 +0,0 @@
|
|||||||
Simple Blender Python Developer's Guide
|
|
||||||
---------------------------------------
|
|
||||||
|
|
||||||
This is an outline for a future guide yet to be written. It is meant for
|
|
||||||
programmers wanting to understand and maybe help with the embedding of Python
|
|
||||||
inside Blender.
|
|
||||||
|
|
||||||
I - Introduction
|
|
||||||
|
|
||||||
We could praise Python here for its many qualities, but it's probably better
|
|
||||||
to just give some links:
|
|
||||||
|
|
||||||
The main site is at www.python.org , with documentation at www.python.org/doc/
|
|
||||||
|
|
||||||
Also worth of mention: it's an interpreted language and is available for
|
|
||||||
many different systems. The download includes the interpreter, many modules
|
|
||||||
(think libs), good documentation and some programs / examples. If you use
|
|
||||||
linux, there's a high chance you already have Python installed, just try
|
|
||||||
"man python".
|
|
||||||
|
|
||||||
The reason for embedding a language environment inside Blender is to give
|
|
||||||
users the ability to access the program's internal data and functionality.
|
|
||||||
This can be used to import / export (from / to other 2d / 3d formats) or
|
|
||||||
change the data (to create new objects procedurally, among many other
|
|
||||||
interesting possibilities). Script writers (Blender Python programmers) can
|
|
||||||
also expand Blender in new ways, adding new features on-the-fly, without having
|
|
||||||
to recompile it. It is usually much easier and faster to write scripts in
|
|
||||||
Python than to code the equivalent in C.
|
|
||||||
|
|
||||||
II - Reference material:
|
|
||||||
|
|
||||||
There are two important texts for us in the documentation that comes
|
|
||||||
with Python ( docs also available online at www.python.org ):
|
|
||||||
|
|
||||||
- Extending and Embedding (tutorial for C/C++ programmers)
|
|
||||||
|
|
||||||
and specially
|
|
||||||
|
|
||||||
- Python/C API.
|
|
||||||
|
|
||||||
You can read the first one to get a feel for how things are done
|
|
||||||
(reference counting is probably the most important part), but the second
|
|
||||||
doc is a must. Specially useful as a fast reference is its Index, at letter
|
|
||||||
P, where all commands are.
|
|
||||||
|
|
||||||
Specially useful commands are Py_BuildValue and the family of parsing
|
|
||||||
functions, PyArg_Parse* (PyArg_Parse(), PyArg_ParseTuple(),
|
|
||||||
PyArg_ParseTupleAndKeywords()). Py_BuildValue is usually the best way to make
|
|
||||||
Python Objects (the 'variables' that the Python Interpreter understands)
|
|
||||||
out of C ones. The PyArg_Parse* functions do the opposite, they parse
|
|
||||||
Python Objects to C variables.
|
|
||||||
|
|
||||||
So, understand PyArg_Parse* functions, Py_BuildValue and reference
|
|
||||||
counting. The first doc has a good discussion about them.
|
|
||||||
|
|
||||||
- C knowledge is also necessary, of course, use your favorite resource.
|
|
||||||
|
|
||||||
- The Blender 2.25 API documentation ( www.blender.org ) is, along with
|
|
||||||
the source, our basic API ref.
|
|
||||||
|
|
||||||
III - Directories
|
|
||||||
|
|
||||||
The previous Blender Python API's are spread in blender/intern/python
|
|
||||||
and the C part of the current one, bpython, is at
|
|
||||||
blender/source/blender/bpython/, specially in intern/. The current
|
|
||||||
solution is a Python wrapper on top of this bpython one, at
|
|
||||||
blender/intern/python/modules/Blender/
|
|
||||||
|
|
||||||
Note: since it's in Python, they needed the freeze Python utility, a
|
|
||||||
process/program that creates stand-alone executables out of Python
|
|
||||||
source files -- that is, it packs together an interpreter, the needed
|
|
||||||
modules and the source of a Python program so that users of this program
|
|
||||||
don't need to have the Python interpreter already installed in their
|
|
||||||
machines to run the program -- Blender, in this case.
|
|
||||||
|
|
||||||
The new implementation is pure C, so we won't need to "freeze" it.
|
|
||||||
|
|
||||||
Another important dir for starters is blender/source/blender/makesdna,
|
|
||||||
where the headers with Blender structs lie.
|
|
||||||
|
|
||||||
IV - Experimental Python
|
|
||||||
|
|
||||||
The new implementation, currently referred to as experimental python -
|
|
||||||
exppython - was started by Michel Selten. He chose to solve the mess in
|
|
||||||
Blender Python by starting over from scratch, in C, but keeping API
|
|
||||||
compatibility with the current 2.25 API used by Blender.
|
|
||||||
|
|
||||||
It is in blender/source/blender/python , more specifically inside
|
|
||||||
api2_2x/
|
|
||||||
|
|
||||||
To make it clear, exppython is the new implementation being worked on. It
|
|
||||||
will possibly become the de-facto implementation in Blender 2.28, the next
|
|
||||||
Blender version. Currently, Blender still comes with the same implementation
|
|
||||||
found in the 2.25 version of the program. So we call that the 2.25
|
|
||||||
implementation, or bpython.
|
|
||||||
|
|
||||||
BPython had plenty of "macro magic", lot's of complicate #define's, etc.,
|
|
||||||
since a lot of the embedding work is quite repetitive. But that makes it
|
|
||||||
much harder for newbies to jump in and learn, so the new files in exppython
|
|
||||||
avoid that.
|
|
||||||
|
|
||||||
This means: Blender, Object, Camera, Lamp, Image, Text, Window modules
|
|
||||||
(the files have the same names, ending obviously with .c and .h)
|
|
||||||
|
|
||||||
To speed things up, some independent parts of bpython are being
|
|
||||||
integrated directly into exppython. That already happened with Draw and
|
|
||||||
BGL, both taken from opy_draw.c in the bpython/intern dir. The same is
|
|
||||||
happening with NMesh (Mesh is written in Python and imports NMesh to
|
|
||||||
extend / change its functionality).
|
|
||||||
|
|
||||||
For a good example of dexterity with macros (cheers to the NaN
|
|
||||||
programmer(s)!), look at BGL.[ch], the OpenGL API wrapper. The defines
|
|
||||||
are in the header.
|
|
||||||
|
|
||||||
Besides keeping compatibility with the 2.25 API, there are already some
|
|
||||||
additions to exppython:
|
|
||||||
|
|
||||||
- some modules have access to more variables than 2.25 had;
|
|
||||||
- there are more method functions and the access is safer;
|
|
||||||
- the file selector (or file browser, if you prefer) is back:
|
|
||||||
It's now in the Window module, along with an image selector, too.
|
|
||||||
- there are totally new modules, unavailable in 2.25:
|
|
||||||
Fellow new developers joining our team are contributing new modules
|
|
||||||
that have been requested by the community for a long time.
|
|
||||||
|
|
||||||
|
|
||||||
V - Coding
|
|
||||||
|
|
||||||
The Camera module is a good reference, since it is like most others, in
|
|
||||||
terms of programming, but is smaller and simple. It's in Camera.c and
|
|
||||||
Camera.h . To have it working, it was also necessary to include a line to
|
|
||||||
the end of Blender.c (registering it as a Blender submodule) and another to
|
|
||||||
modules.h (declaring its init and CreateObject method)
|
|
||||||
|
|
||||||
Currently, one of our conventions is to prepend M_ to module functions,
|
|
||||||
doc strings, etc. and C_ to the new types we had to create for Python,
|
|
||||||
like C_Camera, C_Lamp, etc.
|
|
||||||
|
|
||||||
If you look at Camera.[ch], you'll find code for creating the Camera
|
|
||||||
module and the Camera "type", with all its methods and access policies.
|
|
||||||
It's really a new type defined in Python, like PyInt or PyFloat,
|
|
||||||
PyString, etc. In practice, it's a "thin" (because it doesn't make
|
|
||||||
copies of the variables) wrapper for the Blender Camera Data Object.
|
|
||||||
|
|
||||||
A note about Blender: objects in Blender share a common base, the
|
|
||||||
Object, whose attributes are things like the matrix, the location, the
|
|
||||||
rotation, the size, etc. A Camera is actually an Object of type Camera
|
|
||||||
(which means that its "data" field points to a Camera Data obj) and a
|
|
||||||
Camera Data object, which is the specific camera part of the object
|
|
||||||
(attributes like lens, clip start, etc.). Same for other objects, like
|
|
||||||
Lamp, Mesh, etc.
|
|
||||||
|
|
||||||
That's why C_Camera is a wrapper for the Blender Camera **Data**
|
|
||||||
object. The full wrapper is Object("Camera") linked with
|
|
||||||
Camera("camera_name").
|
|
||||||
|
|
||||||
How to write a new module for a simple object? Use Camera.[ch] as
|
|
||||||
templates, check the specifics of your object in the makesdna dir
|
|
||||||
(for example, the camera one is DNA_camera_types.h) and make the
|
|
||||||
necessary changes.
|
|
||||||
|
|
||||||
If you want to help exppython and in the process possibly learn more about
|
|
||||||
embedding, the Python/C API and Blender internals, there's this mailing list:
|
|
||||||
|
|
||||||
Bf-python mailing list
|
|
||||||
Bf-python@blender.org
|
|
||||||
http://www.blender.org/mailman/listinfo/bf-python
|
|
||||||
|
|
||||||
There you can ask what hasn't been done yet, get help, make suggestions for
|
|
||||||
new features we should consider, send bug reports, etc.
|
|
@@ -1,201 +0,0 @@
|
|||||||
{%- block doctype -%}
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
||||||
{%- endblock %}
|
|
||||||
{%- set script_files = script_files + [pathto("_static/jquery.sidebar.js", 1)] %}
|
|
||||||
{%- set reldelim1 = reldelim1 is not defined and ' »' or reldelim1 %}
|
|
||||||
{%- set reldelim2 = reldelim2 is not defined and ' •' or reldelim2 %}
|
|
||||||
|
|
||||||
{%- macro relbar() %}
|
|
||||||
<div class="subnav boxheader">
|
|
||||||
<ul class="noprint"><li><a href="http://www.blender.org/development/coding-guides/">Coding Guides</a></li><li>•</li><li><a href="http://www.blender.org/development/report-a-bug/">Report a Bug</a></li><li>•</li><li><a href="http://www.blender.org/development/submit-a-patch/">Submit a Patch</a></li><li>•</li><li><a href="http://www.blender.org/development/release-logs/">Release Logs</a></li><li>•</li><li><a href="http://www.blender.org/development/current-projects/">Current Projects</a></li><li>•</li><li><a href="http://www.blender.org/development/architecture/">Architecture</a></li><li>•</li><li><a href="http://www.blender.org/development/building-blender/">Building Blender</a></li><li>•</li><li class="subnav-active"><a href="http://www.blender.org/documentation/250PythonDoc/contents.html">PyAPI</a></li><li>•</li><li><a href="http://wiki.blender.org/index.php/Main_Page">Wiki</a></li></ul>
|
|
||||||
</div>
|
|
||||||
<div class="related subnav">
|
|
||||||
<h3>{{ _('Navigation') }}</h3>
|
|
||||||
<ul>
|
|
||||||
{%- for rellink in rellinks %}
|
|
||||||
<li class="right">
|
|
||||||
<a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags }}"
|
|
||||||
{{ accesskey(rellink[2]) }}>{{ rellink[3] }}</a>
|
|
||||||
{%- if not loop.first %}{{ reldelim2 }}{% endif %}</li>
|
|
||||||
{%- endfor %}
|
|
||||||
{%- block rootrellink %}
|
|
||||||
<li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li>
|
|
||||||
{%- endblock %}
|
|
||||||
{%- for parent in parents %}
|
|
||||||
<li><a href="{{ parent.link|e }}" {% if loop.last %}{{ accesskey("U") }}{% endif %}>{{ parent.title }}</a>{{ reldelim1 }}</li>
|
|
||||||
{%- endfor %}
|
|
||||||
{%- block relbaritems %} {% endblock %}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
{%- endmacro %}
|
|
||||||
|
|
||||||
{%- macro sidebar() %}
|
|
||||||
{%- if not embedded %}{% if not theme_nosidebar|tobool %}
|
|
||||||
<div class="sphinxsidebar">
|
|
||||||
<div class="sphinxsidebarwrapper">
|
|
||||||
{%- block sidebarlogo %}
|
|
||||||
{%- if logo %}
|
|
||||||
<p class="logo"><a href="{{ pathto(master_doc) }}">
|
|
||||||
<img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/>
|
|
||||||
</a></p>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
{%- block sidebartoc %}
|
|
||||||
{%- if display_toc %}
|
|
||||||
<h3><a href="{{ pathto(master_doc) }}">{{ _('Table Of Contents') }}</a></h3>
|
|
||||||
{{ toc }}
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
{%- block sidebarrel %}
|
|
||||||
{%- if prev %}
|
|
||||||
<h4>{{ _('Previous topic') }}</h4>
|
|
||||||
<p class="topless"><a href="{{ prev.link|e }}"
|
|
||||||
title="{{ _('previous chapter') }}">{{ prev.title }}</a></p>
|
|
||||||
{%- endif %}
|
|
||||||
{%- if next %}
|
|
||||||
<h4>{{ _('Next topic') }}</h4>
|
|
||||||
<p class="topless"><a href="{{ next.link|e }}"
|
|
||||||
title="{{ _('next chapter') }}">{{ next.title }}</a></p>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
{%- block sidebarsourcelink %}
|
|
||||||
{%- if show_source and has_source and sourcename %}
|
|
||||||
<h3>{{ _('This Page') }}</h3>
|
|
||||||
<ul class="this-page-menu">
|
|
||||||
<li><a href="{{ pathto('_sources/' + sourcename, true)|e }}"
|
|
||||||
rel="nofollow">{{ _('Show Source') }}</a></li>
|
|
||||||
</ul>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
{%- if customsidebar %}
|
|
||||||
{% include customsidebar %}
|
|
||||||
{%- endif %}
|
|
||||||
{%- block sidebarsearch %}
|
|
||||||
{%- if pagename != "search" %}
|
|
||||||
<div id="searchbox" style="display: none">
|
|
||||||
<h3>{{ _('Quick search') }}</h3>
|
|
||||||
<form class="search" action="{{ pathto('search') }}" method="get">
|
|
||||||
<input type="text" name="q" size="18" />
|
|
||||||
<input type="submit" value="{{ _('Go') }}" />
|
|
||||||
<input type="hidden" name="check_keywords" value="yes" />
|
|
||||||
<input type="hidden" name="area" value="default" />
|
|
||||||
</form>
|
|
||||||
<p class="searchtip">
|
|
||||||
{{ _('Enter search terms or a module, class or function name.') }}
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<script type="text/javascript">$('#searchbox').show(0);</script>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{%- endif %}{% endif %}
|
|
||||||
{%- endmacro %}
|
|
||||||
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
||||||
{{ metatags }}
|
|
||||||
{%- if not embedded and docstitle %}
|
|
||||||
{%- set titlesuffix = " — "|safe + docstitle|e %}
|
|
||||||
{%- else %}
|
|
||||||
{%- set titlesuffix = "" %}
|
|
||||||
{%- endif %}
|
|
||||||
<title>{{ title|striptags }}{{ titlesuffix }}</title>
|
|
||||||
<link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" />
|
|
||||||
<link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" />
|
|
||||||
{%- if not embedded %}
|
|
||||||
<script type="text/javascript">
|
|
||||||
var DOCUMENTATION_OPTIONS = {
|
|
||||||
URL_ROOT: '{{ pathto("", 1) }}',
|
|
||||||
VERSION: '{{ release|e }}',
|
|
||||||
COLLAPSE_MODINDEX: false,
|
|
||||||
FILE_SUFFIX: '{{ file_suffix }}',
|
|
||||||
HAS_SOURCE: {{ has_source|lower }}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
{%- for scriptfile in script_files %}
|
|
||||||
<script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script>
|
|
||||||
{%- endfor %}
|
|
||||||
{%- if use_opensearch %}
|
|
||||||
<link rel="search" type="application/opensearchdescription+xml"
|
|
||||||
title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
|
|
||||||
href="{{ pathto('_static/opensearch.xml', 1) }}"/>
|
|
||||||
{%- endif %}
|
|
||||||
{%- if favicon %}
|
|
||||||
<link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endif %}
|
|
||||||
{%- block linktags %}
|
|
||||||
{%- if hasdoc('about') %}
|
|
||||||
<link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- if hasdoc('genindex') %}
|
|
||||||
<link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- if hasdoc('search') %}
|
|
||||||
<link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- if hasdoc('copyright') %}
|
|
||||||
<link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" />
|
|
||||||
{%- endif %}
|
|
||||||
<link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" />
|
|
||||||
{%- if parents %}
|
|
||||||
<link rel="up" title="{{ parents[-1].title|striptags }}" href="{{ parents[-1].link|e }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- if next %}
|
|
||||||
<link rel="next" title="{{ next.title|striptags }}" href="{{ next.link|e }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- if prev %}
|
|
||||||
<link rel="prev" title="{{ prev.title|striptags }}" href="{{ prev.link|e }}" />
|
|
||||||
{%- endif %}
|
|
||||||
{%- endblock %}
|
|
||||||
{%- block extrahead %} {% endblock %}
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
{%- block header %}
|
|
||||||
<div class="noprint" id="navcontainer"><a href="http://www.blender.org/"><img width="140" height="50" title="blender.org home page" alt="blender.org home page" src="http://www.blender.org/fileadmin/site/_gfx/nav-home.png"></a><a href="http://www.blender.org/features-gallery/"><img width="140" height="50" title="Features & Gallery" alt="Features & Gallery" src="http://www.blender.org/fileadmin/site/_gfx/nav-features.png"></a><a href="http://www.blender.org/download/get-blender/"><img width="140" height="50" title="Download" alt="Download" src="http://www.blender.org/fileadmin/site/_gfx/nav-download.png"></a><a href="http://www.blender.org/education-help/"><img width="140" height="50" title="Tutorials & Help" alt="Tutorials & Help" src="http://www.blender.org/fileadmin/site/_gfx/nav-help.png"></a><a href="http://www.blender.org/community/user-community/"><img width="140" height="50" title="Community" alt="Community" src="http://www.blender.org/fileadmin/site/_gfx/nav-community.png"></a><a href="http://www.blender.org/development/"><img width="140" height="50" title="Development" alt="Development" src="http://www.blender.org/fileadmin/site/_gfx/nav-development-on.png"></a><a href="http://www.blender.org/e-shop/"><img width="140" height="50" title="e-Shop" alt="e-Shop" src="http://www.blender.org/fileadmin/site/_gfx/nav-eshop.png"></a></div>
|
|
||||||
{% endblock %}
|
|
||||||
|
|
||||||
<div class="document">
|
|
||||||
<div id="pageheader"></div>
|
|
||||||
{%- block relbar1 %}{{ relbar() }}{% endblock %}
|
|
||||||
|
|
||||||
{%- block sidebar1 %} {# possible location for sidebar #} {% endblock %}
|
|
||||||
|
|
||||||
{%- block document %}
|
|
||||||
<div class="documentwrapper">
|
|
||||||
{%- if not embedded %}{% if not theme_nosidebar|tobool %}
|
|
||||||
<div class="bodywrapper">
|
|
||||||
{%- endif %}{% endif %}
|
|
||||||
<div class="body">
|
|
||||||
{% block body %} {% endblock %}
|
|
||||||
</div>
|
|
||||||
{%- if not embedded %}{% if not theme_nosidebar|tobool %}
|
|
||||||
</div>
|
|
||||||
{%- endif %}{% endif %}
|
|
||||||
</div>
|
|
||||||
{%- endblock %}
|
|
||||||
|
|
||||||
{%- block sidebar2 %}{{ sidebar() }}{% endblock %}
|
|
||||||
<div class="clearer"></div>
|
|
||||||
|
|
||||||
{%- block footer %}
|
|
||||||
<div class="footer">
|
|
||||||
{%- if hasdoc('copyright') %}
|
|
||||||
{% trans path=pathto('copyright'), copyright=copyright|e %}© <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
|
|
||||||
{%- else %}
|
|
||||||
{% trans copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %}
|
|
||||||
{%- endif %}
|
|
||||||
{%- if last_updated %}
|
|
||||||
{% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
|
|
||||||
{%- endif %}
|
|
||||||
{%- if show_sphinx %}
|
|
||||||
{% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}
|
|
||||||
{%- endif %}
|
|
||||||
</div><b class="round"><b id="r1"></b><b id="r2"></b><b id="r3"></b><b id="r4"></b></b>
|
|
||||||
{%- endblock %}
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@@ -1,4 +0,0 @@
|
|||||||
{% extends "layout.html" %}
|
|
||||||
{% block body %}
|
|
||||||
{{ body }}
|
|
||||||
{% endblock %}
|
|
Binary file not shown.
Before Width: | Height: | Size: 54 KiB |
@@ -1,654 +0,0 @@
|
|||||||
/**
|
|
||||||
* Sphinx stylesheet -- default theme
|
|
||||||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import url("basic.css");
|
|
||||||
|
|
||||||
/* -- page layout ----------------------------------------------------------- */
|
|
||||||
|
|
||||||
#navcontainer {
|
|
||||||
height: 50px;
|
|
||||||
margin: 0 auto;
|
|
||||||
position: relative;
|
|
||||||
width: 980px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#navcontainer img {
|
|
||||||
width: 140px;
|
|
||||||
height: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#pageheader {
|
|
||||||
background-image:url("bg.png");
|
|
||||||
height:80px;
|
|
||||||
position:relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
font-family: {{ theme_bodyfont }};
|
|
||||||
font-size: 12px;
|
|
||||||
line-height: 145%;
|
|
||||||
background-color: {{ theme_footerbgcolor }};
|
|
||||||
color: {{ theme_textcolor }};
|
|
||||||
min-width: 980px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.document {
|
|
||||||
margin:20px auto 0;
|
|
||||||
position:relative;
|
|
||||||
text-align:left;
|
|
||||||
width:980px;
|
|
||||||
/* background-color: {{ theme_sidebarbgcolor }};*/
|
|
||||||
}
|
|
||||||
|
|
||||||
div.documentwrapper {
|
|
||||||
float: left;
|
|
||||||
width: 100%;
|
|
||||||
background-color: {{ theme_bgcolor }};
|
|
||||||
border-color: {{ theme_bordercolor }};
|
|
||||||
border-style:solid;
|
|
||||||
border-width:0 1px;
|
|
||||||
margin:0 auto;
|
|
||||||
min-height:30em;
|
|
||||||
padding:35px;
|
|
||||||
/* position:relative;*/
|
|
||||||
text-align:left;
|
|
||||||
width:908px;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
div.bodywrapper {
|
|
||||||
margin: 0 0 0 230px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.body {
|
|
||||||
background-color: {{ theme_bgcolor }};
|
|
||||||
color: {{ theme_textcolor }};
|
|
||||||
padding: 0;
|
|
||||||
width: 640px;
|
|
||||||
}
|
|
||||||
|
|
||||||
{%- if theme_rightsidebar|tobool %}
|
|
||||||
div.bodywrapper {
|
|
||||||
margin: 0 230px 0 0;
|
|
||||||
}
|
|
||||||
{%- endif %}
|
|
||||||
|
|
||||||
div.footer {
|
|
||||||
background: #292929;
|
|
||||||
border-left: 1px solid #363636;
|
|
||||||
border-right: 1px solid #363636;
|
|
||||||
color: #ffffff;
|
|
||||||
/* width: 100%;*/
|
|
||||||
margin: 0 auto;
|
|
||||||
padding: 20px 20px 15px 35px;
|
|
||||||
text-align: center;
|
|
||||||
font-size: 75%;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer+.round b {
|
|
||||||
display: block;
|
|
||||||
background: #292929;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer+.round #r1 {
|
|
||||||
border-left: 1px solid #363636;
|
|
||||||
border-right: 1px solid #363636;
|
|
||||||
height: 2px;
|
|
||||||
margin: 0 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer+.round #r2 {
|
|
||||||
border-left: 1px solid #363636;
|
|
||||||
border-right: 1px solid #363636;
|
|
||||||
height: 1px;
|
|
||||||
margin: 0 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer+.round #r3 {
|
|
||||||
border-left: 1px solid #363636;
|
|
||||||
border-right: 1px solid #363636;
|
|
||||||
height: 1px;
|
|
||||||
margin: 0 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer+.round #r4 {
|
|
||||||
border-bottom: 1px solid #363636;
|
|
||||||
height: 0px;
|
|
||||||
margin: 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.footer a {
|
|
||||||
color: {{ theme_footertextcolor }};
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.boxheader {
|
|
||||||
background-color:#3E4D5E;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subnav {
|
|
||||||
height:auto !important;
|
|
||||||
min-height:15px;
|
|
||||||
padding:9px 0px 9px 37px;
|
|
||||||
position:relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.related {
|
|
||||||
width:auto;
|
|
||||||
font-size:100%;
|
|
||||||
font-weight:400;
|
|
||||||
background-color: {{ theme_relbarbgcolor }};
|
|
||||||
line-height: 145%;
|
|
||||||
color: {{ theme_relbartextcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.related li {
|
|
||||||
font-size:0.9em;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.related li.right {
|
|
||||||
margin: 0;
|
|
||||||
word-spacing: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.subnav li {
|
|
||||||
display:inline;
|
|
||||||
list-style-type:none;
|
|
||||||
margin:0;
|
|
||||||
padding:0 7px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.subnav ul {
|
|
||||||
display:inline;
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subnav a {
|
|
||||||
font-weight: bold;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subnav li.subnav-active a {
|
|
||||||
color:#F39410;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.related a {
|
|
||||||
color: {{ theme_relbarlinkcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.related a:active {
|
|
||||||
color: {{ theme_relbaractlinkcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar {
|
|
||||||
width: 280px;
|
|
||||||
font-size: 100%;
|
|
||||||
{%- if theme_stickysidebar|tobool %}
|
|
||||||
/* top: 30px;*/
|
|
||||||
margin: 0;
|
|
||||||
position: absolute;
|
|
||||||
overflow: auto;
|
|
||||||
height: 100%;
|
|
||||||
{%- endif %}
|
|
||||||
{%- if theme_rightsidebar|tobool %}
|
|
||||||
float: right;
|
|
||||||
{%- if theme_stickysidebar|tobool %}
|
|
||||||
right: 0;
|
|
||||||
{%- endif %}
|
|
||||||
{%- endif %}
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebarwrapper {
|
|
||||||
width: inherit;
|
|
||||||
padding: 0;
|
|
||||||
position: absolute;
|
|
||||||
margin-top: 35px;
|
|
||||||
font-size: 8pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebarwrapper.fixed {
|
|
||||||
position:fixed;
|
|
||||||
top:10px;
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
{%- if theme_stickysidebar|tobool %}
|
|
||||||
/* this is nice, but it it leads to hidden headings when jumping
|
|
||||||
to an anchor */
|
|
||||||
/*
|
|
||||||
div.related {
|
|
||||||
position: fixed;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.documentwrapper {
|
|
||||||
margin-top: 30px;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
{%- endif %}
|
|
||||||
|
|
||||||
div.sphinxsidebar h3 {
|
|
||||||
font-family: {{ theme_headfont }};
|
|
||||||
color: {{ theme_sidebartextcolor }};
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: bold;
|
|
||||||
background: #3E4D5E url("rnd.png") no-repeat top left;
|
|
||||||
height: 16px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 10px 5px 10px 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar h3 a {
|
|
||||||
color: {{ theme_sidebartextcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar h4 {
|
|
||||||
font-family: {{ theme_headfont }};
|
|
||||||
color: {{ theme_sidebartextcolor }};
|
|
||||||
background: #3E4D5E url("rnd.png") no-repeat top left;
|
|
||||||
height: 16px;
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: bold;
|
|
||||||
margin: 0;
|
|
||||||
padding: 10px 5px 10px 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar form {
|
|
||||||
margin: 0;
|
|
||||||
padding: 10px;
|
|
||||||
background-color: #292929;
|
|
||||||
{%- if theme_rightsidebar|tobool %}
|
|
||||||
border-right: 1px solid {{ theme_bordercolor }};
|
|
||||||
{%- endif %}
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar p {
|
|
||||||
background-color: #292929;
|
|
||||||
padding: 5px 10px 10px 10px;
|
|
||||||
color: {{ theme_sidebartextcolor }};
|
|
||||||
{%- if theme_rightsidebar|tobool %}
|
|
||||||
border-right: 1px solid {{ theme_bordercolor }};
|
|
||||||
{%- endif %}
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar p.topless {
|
|
||||||
margin-bottom: 25px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar ul {
|
|
||||||
background-color: #292929;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
color: {{ theme_sidebartextcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar > div > ul {
|
|
||||||
margin-bottom: 25px;
|
|
||||||
padding:10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar a {
|
|
||||||
color: {{ theme_sidebarlinkcolor }};
|
|
||||||
}
|
|
||||||
|
|
||||||
div.sphinxsidebar input {
|
|
||||||
border: 1px solid {{ theme_sidebarlinkcolor }};
|
|
||||||
font-family: sans-serif;
|
|
||||||
font-size: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* -- body styles ----------------------------------------------------------- */
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: {{ theme_linkcolor }};
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*div.body h1,*/
|
|
||||||
div.body h2,
|
|
||||||
div.body h3,
|
|
||||||
div.body h4,
|
|
||||||
div.body h5,
|
|
||||||
div.body h6 {
|
|
||||||
font-family: {{ theme_headfont }};
|
|
||||||
background-color: {{ theme_headbgcolor }};
|
|
||||||
font-weight: bold;
|
|
||||||
color: {{ theme_headtextcolor }};
|
|
||||||
/* border-bottom: 1px solid #ccc;*/
|
|
||||||
margin: 20px -20px 10px -20px;
|
|
||||||
padding: 3px 0 3px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.body h1 { margin-top: 0; font-size: 200%;
|
|
||||||
color:#FFFAE0;
|
|
||||||
font-family:"Helvetica","Arial",sans-serif;
|
|
||||||
font-size:34px;
|
|
||||||
font-weight:normal;
|
|
||||||
left:32px;
|
|
||||||
line-height:26px;
|
|
||||||
margin-top:0;
|
|
||||||
position:absolute;
|
|
||||||
top:36px;
|
|
||||||
}
|
|
||||||
div.body h2 { font-size: 160%; }
|
|
||||||
div.body h3 { font-size: 140%; }
|
|
||||||
div.body h4 { font-size: 120%; }
|
|
||||||
div.body h5 { font-size: 110%; }
|
|
||||||
div.body h6 { font-size: 100%; }
|
|
||||||
|
|
||||||
a.headerlink {
|
|
||||||
color: {{ theme_headlinkcolor }};
|
|
||||||
font-size: 0.8em;
|
|
||||||
padding: 0 4px 0 4px;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1:hover > a.headerlink {
|
|
||||||
display:none;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.headerlink:hover {
|
|
||||||
background-color: {{ theme_headlinkcolor }};
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.body p, div.body dd, div.body li {
|
|
||||||
text-align: justify;
|
|
||||||
line-height: 130%;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.note, div.seealso, div.topic, div.warning {
|
|
||||||
color:white;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.admonition p.admonition-title + p {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.note {
|
|
||||||
background-color: #555;
|
|
||||||
border: 1px solid #ddd;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.seealso {
|
|
||||||
background-color: #525241;
|
|
||||||
border: 1px solid #ff6;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.topic {
|
|
||||||
background-color: #eee;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.warning {
|
|
||||||
background-color: #B64444;
|
|
||||||
border: 1px solid #990606;
|
|
||||||
}
|
|
||||||
|
|
||||||
p.admonition-title {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
p.admonition-title:after {
|
|
||||||
content: ":";
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition {
|
|
||||||
border:medium none;
|
|
||||||
margin:0;
|
|
||||||
padding:2px 5px 2px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.class > dd > div.warning p.admonition-title,
|
|
||||||
dl.class > dd > div.note p.admonition-title {
|
|
||||||
display:none;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.class > dd > div.admonition.warning p,
|
|
||||||
dl.class > dd > div.admonition.note p {
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.class > dd > div.admonition.warning,
|
|
||||||
dl.class > dd > div.admonition.note {
|
|
||||||
margin-bottom:12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition.note p.admonition-title, dl div.admonition.warning p.admonition-title {
|
|
||||||
color:inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition.warning p {
|
|
||||||
font-weight:bold;
|
|
||||||
line-height:150%;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition.warning p * {
|
|
||||||
font-weight:normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition p.admonition-title {
|
|
||||||
color:#555555;
|
|
||||||
display:block;
|
|
||||||
float:left;
|
|
||||||
margin:0;
|
|
||||||
padding-right:12px;
|
|
||||||
text-align:right;
|
|
||||||
width:90px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition p.admonition-title+p, dl div.admonition p {
|
|
||||||
display:block;
|
|
||||||
margin:0 0 0 102px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.note {
|
|
||||||
background:none;
|
|
||||||
color:#E8E481;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.warning {
|
|
||||||
background:none;
|
|
||||||
color:#FC3030;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.seealso {
|
|
||||||
background:none;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.admonition.seealso p+p {
|
|
||||||
color:#222;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl div.seealso a {
|
|
||||||
margin-left:-1.3ex;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.admonition.warning pre {
|
|
||||||
background: #0F0704;
|
|
||||||
color: #fc3030;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.admonition pre {
|
|
||||||
margin: 6px 0;
|
|
||||||
overflow: visible;
|
|
||||||
white-space: pre-wrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
pre {
|
|
||||||
padding: 10px;
|
|
||||||
background-color: #000;
|
|
||||||
color: #fff;
|
|
||||||
line-height: normal;
|
|
||||||
border: 0 solid white;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dt, dl.method>dt {
|
|
||||||
text-indent:-118px;
|
|
||||||
padding-left: 118px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dt em, dl.method>dt em {
|
|
||||||
color: #97b9cf;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd em, dl.method>dd em {
|
|
||||||
color: #97b9cf;
|
|
||||||
font-weight:bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function table.field-list tr:first-child td.field-body, dl.method table.field-list tr:first-child td.field-body {
|
|
||||||
color: #728c96;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dt em:before, dl.method>dt em:before {
|
|
||||||
content: " ";
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>p,dl.method>dd>p,dl.attribute>dd>p,
|
|
||||||
dl[class]>dd>ol,dl[class]>dd>ul {
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.data>dt {
|
|
||||||
color:#08C659;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.data>dd>p {
|
|
||||||
color:#069643;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.class>dt {
|
|
||||||
color: #82a3c7;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.class>dd>p,dl.class>dd>ol,dl.class>dd>ul {
|
|
||||||
color: #637b96;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dt,dl.method>dt,dl.attribute>dt {
|
|
||||||
color: #fcb100;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>p,dl.method>dd>p,dl.attribute>dd>p,
|
|
||||||
dl.function>dd>p+ol,dl.method>dd>p+ol,dl.attribute>dd>p+ol,
|
|
||||||
dl.function>dd>p+ul,dl.method>dd>p+ul,dl.attribute>dd>p+ul {
|
|
||||||
color: #cb8f00;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>p, dl.method>dd>p, dl.attribute>dd>p {
|
|
||||||
margin: 0 0 3px 102px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>p:first-child:before, dl.method>dd>p:first-child:before, dl.attribute>dd>p:first-child:before {
|
|
||||||
content:"Description:";
|
|
||||||
color:#555;
|
|
||||||
font-weight:bold;
|
|
||||||
font-style:normal;
|
|
||||||
width:90px;
|
|
||||||
display:inline-block;
|
|
||||||
margin-left:-102px;
|
|
||||||
text-align:right;
|
|
||||||
padding-right:12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dt:target, .highlight {
|
|
||||||
color: #444;
|
|
||||||
background: #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.highlight {
|
|
||||||
background: #E2C788;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 .highlight {
|
|
||||||
color:inherit;
|
|
||||||
background:inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl {
|
|
||||||
margin-bottom: 25px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dd {
|
|
||||||
margin: 3px 0 10px 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.field-body tt.literal {
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
tt {
|
|
||||||
background-color: #444;
|
|
||||||
padding: 0 1px 0 1px;
|
|
||||||
font-size: 0.95em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.warning tt {
|
|
||||||
background: #cc6262;
|
|
||||||
}
|
|
||||||
|
|
||||||
.note tt {
|
|
||||||
background: #444;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl .warning tt {
|
|
||||||
background:#0F0704;
|
|
||||||
display:block;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl .note tt {
|
|
||||||
background:#2C2A1B;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.indextable tr.cap {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
col.field-name {
|
|
||||||
width:90px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dd table {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.field-list th {
|
|
||||||
color:#555;
|
|
||||||
padding:0;
|
|
||||||
text-align:right;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.field-list td.field-body {
|
|
||||||
color:#999999;
|
|
||||||
padding-left:12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.field-list td.field-body ul.first {
|
|
||||||
padding-left:0;
|
|
||||||
list-style:none;
|
|
||||||
margin-left:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>ol, dl.method>dd>ol, dl.attribute>dd>ol,
|
|
||||||
dl.function>dd>ul, dl.method>dd>ul, dl.attribute>dd>ul,
|
|
||||||
dl.function>dd>div[class|="highlight"], dl.method>dd>div[class|="highlight"],
|
|
||||||
dl.attribute>dd>div[class|="highlight"] {
|
|
||||||
margin-left:102px;
|
|
||||||
}
|
|
||||||
|
|
||||||
dl.function>dd>ol, dl.method>dd>ol, dl.attribute>dd>ol,
|
|
||||||
dl.function>dd>ul, dl.method>dd>ul, dl.attribute>dd>ul,
|
|
||||||
dl.class>dd>ol, dl.class>dd>ul {
|
|
||||||
padding-left:20px;
|
|
||||||
}
|
|
Binary file not shown.
Before Width: | Height: | Size: 1.1 KiB |
@@ -1,26 +0,0 @@
|
|||||||
$(document).ready(function () {
|
|
||||||
var top = $('.sphinxsidebarwrapper').offset().top - parseFloat($('.sphinxsidebarwrapper').css ('marginTop').replace(/auto/, 0));
|
|
||||||
var colheight = parseFloat($('.sphinxsidebarwrapper').css('height').replace(/auto/, 0));
|
|
||||||
|
|
||||||
|
|
||||||
$(window).scroll(function (event) {
|
|
||||||
// what the y position of the scroll is
|
|
||||||
var y = $(this).scrollTop();
|
|
||||||
|
|
||||||
// whether that's below the form
|
|
||||||
if (y >= top) {
|
|
||||||
//colheight is checked and according to its vaule the scrolling
|
|
||||||
//is triggered or not
|
|
||||||
if (colheight <= window.innerHeight) {
|
|
||||||
// if so, ad the fixed class
|
|
||||||
$('.sphinxsidebarwrapper').addClass('fixed');
|
|
||||||
} else {
|
|
||||||
// otherwise remove it
|
|
||||||
$('.sphinxsidebarwrapper').removeClass('fixed');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// otherwise remove it
|
|
||||||
$('.sphinxsidebarwrapper').removeClass('fixed');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
@@ -1,61 +0,0 @@
|
|||||||
.hll { background-color: #ffffcc }
|
|
||||||
.c { color: #7f7f7f; font-style: italic } /* Comment */
|
|
||||||
.err { border: 1px solid #FF0000 } /* Error */
|
|
||||||
.k { color: #0088ff; font-weight: bold } /* Keyword */
|
|
||||||
.o { color: #993399 } /* Operator */
|
|
||||||
.cm { color: #7f7f7f; font-style: italic } /* Comment.Multiline */
|
|
||||||
.cp { color: #007020 } /* Comment.Preproc */
|
|
||||||
.c1 { color: #408090; font-style: italic } /* Comment.Single */
|
|
||||||
.cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */
|
|
||||||
.gd { color: #A00000 } /* Generic.Deleted */
|
|
||||||
.ge { font-style: italic } /* Generic.Emph */
|
|
||||||
.gr { color: #FF0000 } /* Generic.Error */
|
|
||||||
.gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
|
||||||
.gi { color: #00A000 } /* Generic.Inserted */
|
|
||||||
.go { color: #303030 } /* Generic.Output */
|
|
||||||
.gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
|
|
||||||
.gs { font-weight: bold } /* Generic.Strong */
|
|
||||||
.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
|
||||||
.gt { color: #0040D0 } /* Generic.Traceback */
|
|
||||||
.kc { color: #007020; font-weight: bold } /* Keyword.Constant */
|
|
||||||
.kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
|
|
||||||
.kn { color: #FFFF32; font-weight: bold } /* Keyword.Namespace */
|
|
||||||
.kp { color: #007020 } /* Keyword.Pseudo */
|
|
||||||
.kr { color: #FFFF32; font-weight: bold } /* Keyword.Reserved */
|
|
||||||
.kt { color: #902000 } /* Keyword.Type */
|
|
||||||
.m { color: #00BAFF } /* Literal.Number */
|
|
||||||
.s { color: #B7C274 } /* Literal.String */
|
|
||||||
.na { color: #4070a0 } /* Name.Attribute */
|
|
||||||
.nb { color: #007020 } /* Name.Builtin */
|
|
||||||
.nc { color: #0e84b5; font-weight: bold } /* Name.Class */
|
|
||||||
.no { color: #60add5 } /* Name.Constant */
|
|
||||||
.nd { color: #555555; font-weight: bold } /* Name.Decorator */
|
|
||||||
.ni { color: #d55537; font-weight: bold } /* Name.Entity */
|
|
||||||
.ne { color: #007020 } /* Name.Exception */
|
|
||||||
.nf { color: #06287e } /* Name.Function */
|
|
||||||
.nl { color: #002070; font-weight: bold } /* Name.Label */
|
|
||||||
.nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
|
|
||||||
.nt { color: #062873; font-weight: bold } /* Name.Tag */
|
|
||||||
.nv { color: #bb60d5 } /* Name.Variable */
|
|
||||||
.ow { color: #007020; font-weight: bold } /* Operator.Word */
|
|
||||||
.w { color: #bbbbbb } /* Text.Whitespace */
|
|
||||||
.mf { color: #00BAFF } /* Literal.Number.Float */
|
|
||||||
.mh { color: #00BAFF } /* Literal.Number.Hex */
|
|
||||||
.mi { color: #00BAFF } /* Literal.Number.Integer */
|
|
||||||
.mo { color: #00BAFF } /* Literal.Number.Oct */
|
|
||||||
.sb { color: #B7C274 } /* Literal.String.Backtick */
|
|
||||||
.sc { color: #B7C274 } /* Literal.String.Char */
|
|
||||||
.sd { color: #B7C274; font-style: italic } /* Literal.String.Doc */
|
|
||||||
.s2 { color: #B7C274 } /* Literal.String.Double */
|
|
||||||
.se { color: #B7C274; font-weight: bold } /* Literal.String.Escape */
|
|
||||||
.sh { color: #B7C274 } /* Literal.String.Heredoc */
|
|
||||||
.si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
|
|
||||||
.sx { color: #c65d09 } /* Literal.String.Other */
|
|
||||||
.sr { color: #235388 } /* Literal.String.Regex */
|
|
||||||
.s1 { color: #4070a0 } /* Literal.String.Single */
|
|
||||||
.ss { color: #517918 } /* Literal.String.Symbol */
|
|
||||||
.bp { color: #007020 } /* Name.Builtin.Pseudo */
|
|
||||||
.vc { color: #bb60d5 } /* Name.Variable.Class */
|
|
||||||
.vg { color: #bb60d5 } /* Name.Variable.Global */
|
|
||||||
.vi { color: #bb60d5 } /* Name.Variable.Instance */
|
|
||||||
.il { color: #00BAFF } /* Literal.Number.Integer.Long */
|
|
Binary file not shown.
Before Width: | Height: | Size: 173 B |
Binary file not shown.
Before Width: | Height: | Size: 190 B |
Binary file not shown.
Before Width: | Height: | Size: 188 B |
@@ -1,30 +0,0 @@
|
|||||||
[theme]
|
|
||||||
inherit = basic
|
|
||||||
stylesheet = default.css
|
|
||||||
pygments_style = sphinx
|
|
||||||
|
|
||||||
[options]
|
|
||||||
rightsidebar = true
|
|
||||||
stickysidebar = true
|
|
||||||
|
|
||||||
footerbgcolor = #000000
|
|
||||||
footertextcolor = #ffffff
|
|
||||||
sidebarbgcolor = #1c4e63
|
|
||||||
sidebartextcolor = #ffffff
|
|
||||||
sidebarlinkcolor = #97b9cf
|
|
||||||
relbarbgcolor = #2C3845
|
|
||||||
relbartextcolor = #D3E0E9
|
|
||||||
relbarlinkcolor = #D3E0E9
|
|
||||||
relbaractlinkcolor = #f39410
|
|
||||||
bgcolor = #232323
|
|
||||||
bordercolor = #363636
|
|
||||||
textcolor = #ffffff
|
|
||||||
headbgcolor = #232323
|
|
||||||
headtextcolor = #ffffff
|
|
||||||
headlinkcolor = #97b9cf
|
|
||||||
linkcolor = #97b9cf
|
|
||||||
codebgcolor = #eeffcc
|
|
||||||
codetextcolor = #333333
|
|
||||||
|
|
||||||
bodyfont = "Lucida Grande","Lucida Sans Unicode","Lucida Sans","Lucida",Verdana,sans-serif
|
|
||||||
headfont = "Lucida Grande","Lucida Sans Unicode","Lucida Sans","Lucida",Verdana,sans-serif
|
|
@@ -1,250 +0,0 @@
|
|||||||
|
|
||||||
Game Engine bge.events module
|
|
||||||
=============================
|
|
||||||
|
|
||||||
*****
|
|
||||||
Intro
|
|
||||||
*****
|
|
||||||
|
|
||||||
This module holds key constants for the SCA_KeyboardSensor.
|
|
||||||
|
|
||||||
.. module:: bge.events
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
# Set a connected keyboard sensor to accept F1
|
|
||||||
import bge
|
|
||||||
|
|
||||||
co = bge.logic.getCurrentController()
|
|
||||||
# 'Keyboard' is a keyboard sensor
|
|
||||||
sensor = co.sensors["Keyboard"]
|
|
||||||
sensor.key = bge.events.F1KEY
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
# Do the all keys thing
|
|
||||||
import bge
|
|
||||||
|
|
||||||
co = bge.logic.getCurrentController()
|
|
||||||
# 'Keyboard' is a keyboard sensor
|
|
||||||
sensor = co.sensors["Keyboard"]
|
|
||||||
|
|
||||||
for key,status in sensor.events:
|
|
||||||
# key[0] == bge.events.keycode, key[1] = status
|
|
||||||
if status == bge.logic.KX_INPUT_JUST_ACTIVATED:
|
|
||||||
if key == bge.events.WKEY:
|
|
||||||
# Activate Forward!
|
|
||||||
if key == bge.events.SKEY:
|
|
||||||
# Activate Backward!
|
|
||||||
if key == bge.events.AKEY:
|
|
||||||
# Activate Left!
|
|
||||||
if key == bge.events.DKEY:
|
|
||||||
# Activate Right!
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
# The all keys thing without a keyboard sensor (but you will
|
|
||||||
# need an always sensor with pulse mode on)
|
|
||||||
import bge
|
|
||||||
|
|
||||||
# Just shortening names here
|
|
||||||
keyboard = bge.logic.keyboard
|
|
||||||
JUST_ACTIVATED = bge.logic.KX_INPUT_JUST_ACTIVATED
|
|
||||||
|
|
||||||
if keyboard.events[bge.events.WKEY] == JUST_ACTIVATED:
|
|
||||||
print("Activate Forward!")
|
|
||||||
if keyboard.events[bge.events.SKEY] == JUST_ACTIVATED:
|
|
||||||
print("Activate Backward!")
|
|
||||||
if keyboard.events[bge.events.AKEY] == JUST_ACTIVATED:
|
|
||||||
print("Activate Left!")
|
|
||||||
if keyboard.events[bge.events.DKEY] == JUST_ACTIVATED:
|
|
||||||
print("Activate Right!")
|
|
||||||
|
|
||||||
|
|
||||||
*********
|
|
||||||
Functions
|
|
||||||
*********
|
|
||||||
|
|
||||||
.. function:: EventToString(event)
|
|
||||||
|
|
||||||
Return the string name of a key event. Will raise a ValueError error if its invalid.
|
|
||||||
|
|
||||||
:arg event: key event from bge.keys or the keyboard sensor.
|
|
||||||
:type event: int
|
|
||||||
:rtype: string
|
|
||||||
|
|
||||||
.. function:: EventToCharacter(event, shift)
|
|
||||||
|
|
||||||
Return the string name of a key event. Returns an empty string if the event cant be represented as a character.
|
|
||||||
|
|
||||||
:type event: int
|
|
||||||
:arg event: key event from :mod:`bge.keys` or the keyboard sensor.
|
|
||||||
:type shift: bool
|
|
||||||
:arg shift: set to true if shift is held.
|
|
||||||
:rtype: string
|
|
||||||
|
|
||||||
****************
|
|
||||||
Keys (Constants)
|
|
||||||
****************
|
|
||||||
|
|
||||||
.. _mouse-keys:
|
|
||||||
|
|
||||||
==========
|
|
||||||
Mouse Keys
|
|
||||||
==========
|
|
||||||
|
|
||||||
.. data:: LEFTMOUSE
|
|
||||||
.. data:: MIDDLEMOUSE
|
|
||||||
.. data:: RIGHTMOUSE
|
|
||||||
.. data:: WHEELUPMOUSE
|
|
||||||
.. data:: WHEELDOWNMOUSE
|
|
||||||
.. data:: MOUSEX
|
|
||||||
.. data:: MOUSEY
|
|
||||||
|
|
||||||
.. _keyboard-keys:
|
|
||||||
|
|
||||||
=============
|
|
||||||
Keyboard Keys
|
|
||||||
=============
|
|
||||||
|
|
||||||
-------------
|
|
||||||
Alphabet keys
|
|
||||||
-------------
|
|
||||||
|
|
||||||
.. data:: AKEY
|
|
||||||
.. data:: BKEY
|
|
||||||
.. data:: CKEY
|
|
||||||
.. data:: DKEY
|
|
||||||
.. data:: EKEY
|
|
||||||
.. data:: FKEY
|
|
||||||
.. data:: GKEY
|
|
||||||
.. data:: HKEY
|
|
||||||
.. data:: IKEY
|
|
||||||
.. data:: JKEY
|
|
||||||
.. data:: KKEY
|
|
||||||
.. data:: LKEY
|
|
||||||
.. data:: MKEY
|
|
||||||
.. data:: NKEY
|
|
||||||
.. data:: OKEY
|
|
||||||
.. data:: PKEY
|
|
||||||
.. data:: QKEY
|
|
||||||
.. data:: RKEY
|
|
||||||
.. data:: SKEY
|
|
||||||
.. data:: TKEY
|
|
||||||
.. data:: UKEY
|
|
||||||
.. data:: VKEY
|
|
||||||
.. data:: WKEY
|
|
||||||
.. data:: XKEY
|
|
||||||
.. data:: YKEY
|
|
||||||
.. data:: ZKEY
|
|
||||||
|
|
||||||
-----------
|
|
||||||
Number keys
|
|
||||||
-----------
|
|
||||||
|
|
||||||
.. data:: ZEROKEY
|
|
||||||
.. data:: ONEKEY
|
|
||||||
.. data:: TWOKEY
|
|
||||||
.. data:: THREEKEY
|
|
||||||
.. data:: FOURKEY
|
|
||||||
.. data:: FIVEKEY
|
|
||||||
.. data:: SIXKEY
|
|
||||||
.. data:: SEVENKEY
|
|
||||||
.. data:: EIGHTKEY
|
|
||||||
.. data:: NINEKEY
|
|
||||||
|
|
||||||
--------------
|
|
||||||
Modifiers Keys
|
|
||||||
--------------
|
|
||||||
|
|
||||||
.. data:: CAPSLOCKKEY
|
|
||||||
.. data:: LEFTCTRLKEY
|
|
||||||
.. data:: LEFTALTKEY
|
|
||||||
.. data:: RIGHTALTKEY
|
|
||||||
.. data:: RIGHTCTRLKEY
|
|
||||||
.. data:: RIGHTSHIFTKEY
|
|
||||||
.. data:: LEFTSHIFTKEY
|
|
||||||
|
|
||||||
----------
|
|
||||||
Arrow Keys
|
|
||||||
----------
|
|
||||||
|
|
||||||
.. data:: LEFTARROWKEY
|
|
||||||
.. data:: DOWNARROWKEY
|
|
||||||
.. data:: RIGHTARROWKEY
|
|
||||||
.. data:: UPARROWKEY
|
|
||||||
|
|
||||||
--------------
|
|
||||||
Numberpad Keys
|
|
||||||
--------------
|
|
||||||
|
|
||||||
.. data:: PAD0
|
|
||||||
.. data:: PAD1
|
|
||||||
.. data:: PAD2
|
|
||||||
.. data:: PAD3
|
|
||||||
.. data:: PAD4
|
|
||||||
.. data:: PAD5
|
|
||||||
.. data:: PAD6
|
|
||||||
.. data:: PAD7
|
|
||||||
.. data:: PAD8
|
|
||||||
.. data:: PAD9
|
|
||||||
.. data:: PADPERIOD
|
|
||||||
.. data:: PADSLASHKEY
|
|
||||||
.. data:: PADASTERKEY
|
|
||||||
.. data:: PADMINUS
|
|
||||||
.. data:: PADENTER
|
|
||||||
.. data:: PADPLUSKEY
|
|
||||||
|
|
||||||
-------------
|
|
||||||
Function Keys
|
|
||||||
-------------
|
|
||||||
|
|
||||||
.. data:: F1KEY
|
|
||||||
.. data:: F2KEY
|
|
||||||
.. data:: F3KEY
|
|
||||||
.. data:: F4KEY
|
|
||||||
.. data:: F5KEY
|
|
||||||
.. data:: F6KEY
|
|
||||||
.. data:: F7KEY
|
|
||||||
.. data:: F8KEY
|
|
||||||
.. data:: F9KEY
|
|
||||||
.. data:: F10KEY
|
|
||||||
.. data:: F11KEY
|
|
||||||
.. data:: F12KEY
|
|
||||||
.. data:: F13KEY
|
|
||||||
.. data:: F14KEY
|
|
||||||
.. data:: F15KEY
|
|
||||||
.. data:: F16KEY
|
|
||||||
.. data:: F17KEY
|
|
||||||
.. data:: F18KEY
|
|
||||||
.. data:: F19KEY
|
|
||||||
|
|
||||||
----------
|
|
||||||
Other Keys
|
|
||||||
----------
|
|
||||||
|
|
||||||
.. data:: ACCENTGRAVEKEY
|
|
||||||
.. data:: BACKSLASHKEY
|
|
||||||
.. data:: BACKSPACEKEY
|
|
||||||
.. data:: COMMAKEY
|
|
||||||
.. data:: DELKEY
|
|
||||||
.. data:: ENDKEY
|
|
||||||
.. data:: EQUALKEY
|
|
||||||
.. data:: ESCKEY
|
|
||||||
.. data:: HOMEKEY
|
|
||||||
.. data:: INSERTKEY
|
|
||||||
.. data:: LEFTBRACKETKEY
|
|
||||||
.. data:: LINEFEEDKEY
|
|
||||||
.. data:: MINUSKEY
|
|
||||||
.. data:: PAGEDOWNKEY
|
|
||||||
.. data:: PAGEUPKEY
|
|
||||||
.. data:: PAUSEKEY
|
|
||||||
.. data:: PERIODKEY
|
|
||||||
.. data:: QUOTEKEY
|
|
||||||
.. data:: RIGHTBRACKETKEY
|
|
||||||
.. data:: RETKEY (Deprecated: use bge.events.ENTERKEY)
|
|
||||||
.. data:: ENTERKEY
|
|
||||||
.. data:: SEMICOLONKEY
|
|
||||||
.. data:: SLASHKEY
|
|
||||||
.. data:: SPACEKEY
|
|
||||||
.. data:: TABKEY
|
|
@@ -1,36 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# run from the blender source dir
|
|
||||||
# bash source/blender/python/doc/sphinx_doc_gen.sh
|
|
||||||
# ssh upload means you need an account on the server
|
|
||||||
|
|
||||||
BLENDER="./blender.bin"
|
|
||||||
SSH_HOST="ideasman42@emo.blender.org"
|
|
||||||
SSH_UPLOAD="/data/www/vhosts/www.blender.org/documentation" # blender_python_api_VERSION, added after
|
|
||||||
|
|
||||||
# sed string from hell, 'Blender 2.53 (sub 1) Build' --> '2_53_1'
|
|
||||||
# "_".join(str(v) for v in bpy.app.version)
|
|
||||||
# custom blender vars
|
|
||||||
blender_srcdir=$(dirname $0)/../../
|
|
||||||
blender_version=$(grep BLENDER_VERSION $blender_srcdir/source/blender/blenkernel/BKE_blender.h | tr -dc 0-9)
|
|
||||||
blender_subversion=$(grep BLENDER_SUBVERSION $blender_srcdir/source/blender/blenkernel/BKE_blender.h | tr -dc 0-9)
|
|
||||||
BLENDER_VERSION=$(expr $blender_version / 100)_$(expr $blender_version % 100)_$blender_subversion
|
|
||||||
|
|
||||||
SSH_UPLOAD_FULL=$SSH_UPLOAD/"blender_python_api_"$BLENDER_VERSION
|
|
||||||
|
|
||||||
SPHINXBASE=doc/python_api/
|
|
||||||
|
|
||||||
# dont delete existing docs, now partial updates are used for quick builds.
|
|
||||||
$BLENDER --background --python $SPHINXBASE/sphinx_doc_gen.py
|
|
||||||
|
|
||||||
# html
|
|
||||||
sphinx-build $SPHINXBASE/sphinx-in $SPHINXBASE/sphinx-out
|
|
||||||
cp $SPHINXBASE/sphinx-out/contents.html $SPHINXBASE/sphinx-out/index.html
|
|
||||||
ssh ideasman42@emo.blender.org 'rm -rf '$SSH_UPLOAD_FULL'/*'
|
|
||||||
rsync --progress -avze "ssh -p 22" $SPHINXBASE/sphinx-out/* $SSH_HOST:$SSH_UPLOAD_FULL/
|
|
||||||
|
|
||||||
# pdf
|
|
||||||
sphinx-build -b latex $SPHINXBASE/sphinx-in $SPHINXBASE/sphinx-out
|
|
||||||
cd $SPHINXBASE/sphinx-out
|
|
||||||
make
|
|
||||||
cd -
|
|
||||||
rsync --progress -avze "ssh -p 22" $SPHINXBASE/sphinx-out/contents.pdf $SSH_HOST:$SSH_UPLOAD_FULL/blender_python_reference_$BLENDER_VERSION.pdf
|
|
7
extern/CMakeLists.txt
vendored
7
extern/CMakeLists.txt
vendored
@@ -24,9 +24,6 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
# Otherwise we get warnings here that we cant fix in external projects
|
|
||||||
REMOVE_STRICT_FLAGS()
|
|
||||||
|
|
||||||
IF(WITH_BULLET)
|
IF(WITH_BULLET)
|
||||||
ADD_SUBDIRECTORY(bullet2)
|
ADD_SUBDIRECTORY(bullet2)
|
||||||
ENDIF(WITH_BULLET)
|
ENDIF(WITH_BULLET)
|
||||||
@@ -37,9 +34,9 @@ ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
|||||||
|
|
||||||
ADD_SUBDIRECTORY(glew)
|
ADD_SUBDIRECTORY(glew)
|
||||||
|
|
||||||
IF(WITH_IMAGE_OPENJPEG)
|
IF(WITH_OPENJPEG)
|
||||||
ADD_SUBDIRECTORY(libopenjpeg)
|
ADD_SUBDIRECTORY(libopenjpeg)
|
||||||
ENDIF(WITH_IMAGE_OPENJPEG)
|
ENDIF(WITH_OPENJPEG)
|
||||||
|
|
||||||
IF(WITH_LZO)
|
IF(WITH_LZO)
|
||||||
ADD_SUBDIRECTORY(lzo)
|
ADD_SUBDIRECTORY(lzo)
|
||||||
|
4
extern/SConscript
vendored
4
extern/SConscript
vendored
@@ -17,7 +17,7 @@ if env['OURPLATFORM'] == 'linux2':
|
|||||||
SConscript(['binreloc/SConscript']);
|
SConscript(['binreloc/SConscript']);
|
||||||
|
|
||||||
if env['WITH_BF_LZO']:
|
if env['WITH_BF_LZO']:
|
||||||
SConscript(['lzo/SConscript'])
|
SConscript(['lzo/SConscript'])
|
||||||
|
|
||||||
if env['WITH_BF_LZMA']:
|
if env['WITH_BF_LZMA']:
|
||||||
SConscript(['lzma/SConscript'])
|
SConscript(['lzma/SConscript'])
|
||||||
|
12
extern/binreloc/CMakeLists.txt
vendored
12
extern/binreloc/CMakeLists.txt
vendored
@@ -18,15 +18,9 @@
|
|||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
|
|
||||||
SET(SRC
|
SET(INC ./include )
|
||||||
binreloc.c
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(INC
|
|
||||||
./include
|
|
||||||
)
|
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DENABLE_BINRELOC)
|
ADD_DEFINITIONS(-DENABLE_BINRELOC)
|
||||||
|
FILE(GLOB SRC *.c)
|
||||||
|
|
||||||
BLENDERLIB(extern_binreloc "${SRC}" "${INC}")
|
BLENDERLIB(extern_binreloc "${SRC}" "${INC}")
|
||||||
|
#, libtype=['core','player'], priority = [25,15] )
|
||||||
|
131
extern/bullet2/CMakeLists.txt
vendored
131
extern/bullet2/CMakeLists.txt
vendored
@@ -24,125 +24,20 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC . src)
|
||||||
.
|
|
||||||
src
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(SRC
|
FILE(GLOB SRC
|
||||||
src/BulletCollision/BroadphaseCollision/btAxisSweep3.cpp
|
src/LinearMath/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.cpp
|
src/BulletCollision/BroadphaseCollision/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.cpp
|
src/BulletCollision/CollisionShapes/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvt.cpp
|
src/BulletCollision/NarrowPhaseCollision/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDbvtBroadphase.cpp
|
src/BulletCollision/Gimpact/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btDispatcher.cpp
|
src/BulletCollision/CollisionDispatch/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp
|
src/BulletDynamics/ConstraintSolver/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.cpp
|
src/BulletDynamics/Vehicle/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btQuantizedBvh.cpp
|
src/BulletDynamics/Dynamics/*.cpp
|
||||||
src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.cpp
|
src/BulletSoftBody/*.cpp
|
||||||
src/BulletCollision/CollisionDispatch/SphereTriangleDetector.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btActivatingCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btBoxBoxDetector.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionObject.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btGhostObject.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btManifoldResult.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/CollisionDispatch/btUnionFind.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btBoxShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btCapsuleShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btCollisionShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btCompoundShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConcaveShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConeShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConvexHullShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConvexPointCloudShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConvexShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btCylinderShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btEmptyShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btShapeHull.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btSphereShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btStaticPlaneShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTetrahedronShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleBuffer.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleCallback.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleIndexVertexMaterialArray.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMesh.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btTriangleMeshShape.cpp
|
|
||||||
src/BulletCollision/CollisionShapes/btUniformScalingShape.cpp
|
|
||||||
src/BulletCollision/Gimpact/btContactProcessing.cpp
|
|
||||||
src/BulletCollision/Gimpact/btGImpactBvh.cpp
|
|
||||||
src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.cpp
|
|
||||||
src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp
|
|
||||||
src/BulletCollision/Gimpact/btGImpactShape.cpp
|
|
||||||
src/BulletCollision/Gimpact/btGenericPoolAllocator.cpp
|
|
||||||
src/BulletCollision/Gimpact/btTriangleShapeEx.cpp
|
|
||||||
src/BulletCollision/Gimpact/gim_box_set.cpp
|
|
||||||
src/BulletCollision/Gimpact/gim_contact.cpp
|
|
||||||
src/BulletCollision/Gimpact/gim_memory.cpp
|
|
||||||
src/BulletCollision/Gimpact/gim_tri_collision.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btConvexCast.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpa.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.cpp
|
|
||||||
src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btSliderConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.cpp
|
|
||||||
src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp
|
|
||||||
src/BulletDynamics/Dynamics/Bullet-C-API.cpp
|
|
||||||
src/BulletDynamics/Dynamics/btContinuousDynamicsWorld.cpp
|
|
||||||
src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp
|
|
||||||
src/BulletDynamics/Dynamics/btRigidBody.cpp
|
|
||||||
src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.cpp
|
|
||||||
src/BulletDynamics/Vehicle/btRaycastVehicle.cpp
|
|
||||||
src/BulletDynamics/Vehicle/btWheelInfo.cpp
|
|
||||||
src/BulletSoftBody/btSoftBody.cpp
|
|
||||||
src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp
|
|
||||||
src/BulletSoftBody/btSoftBodyHelpers.cpp
|
|
||||||
src/BulletSoftBody/btSoftBodyRigidBodyCollisionConfiguration.cpp
|
|
||||||
src/BulletSoftBody/btSoftRigidCollisionAlgorithm.cpp
|
|
||||||
src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp
|
|
||||||
src/BulletSoftBody/btSoftSoftCollisionAlgorithm.cpp
|
|
||||||
src/LinearMath/btAlignedAllocator.cpp
|
|
||||||
src/LinearMath/btConvexHull.cpp
|
|
||||||
src/LinearMath/btGeometryUtil.cpp
|
|
||||||
src/LinearMath/btQuickprof.cpp
|
|
||||||
)
|
)
|
||||||
|
|
||||||
BLENDERLIB(extern_bullet "${SRC}" "${INC}")
|
BLENDERLIB(extern_bullet "${SRC}" "${INC}")
|
||||||
|
|
||||||
|
1239
extern/bullet2/make/msvc_7_0/Bullet_vc7.vcproj
vendored
Normal file
1239
extern/bullet2/make/msvc_7_0/Bullet_vc7.vcproj
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1525
extern/bullet2/make/msvc_9_0/Bullet.vcproj
vendored
Normal file
1525
extern/bullet2/make/msvc_9_0/Bullet.vcproj
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -24,13 +24,12 @@ btConvexHullShape ::btConvexHullShape (const btScalar* points,int numPoints,int
|
|||||||
m_shapeType = CONVEX_HULL_SHAPE_PROXYTYPE;
|
m_shapeType = CONVEX_HULL_SHAPE_PROXYTYPE;
|
||||||
m_unscaledPoints.resize(numPoints);
|
m_unscaledPoints.resize(numPoints);
|
||||||
|
|
||||||
unsigned char* pointsAddress = (unsigned char*)points;
|
unsigned char* pointsBaseAddress = (unsigned char*)points;
|
||||||
|
|
||||||
for (int i=0;i<numPoints;i++)
|
for (int i=0;i<numPoints;i++)
|
||||||
{
|
{
|
||||||
btScalar* point = (btScalar*)pointsAddress;
|
btVector3* point = (btVector3*)(pointsBaseAddress + i*stride);
|
||||||
m_unscaledPoints[i] = btVector3(point[0], point[1], point[2]);
|
m_unscaledPoints[i] = point[0];
|
||||||
pointsAddress += stride;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
recalcLocalAabb();
|
recalcLocalAabb();
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
/***************************************************************************************************
|
/***************************************************************************************************
|
||||||
**
|
**
|
||||||
|
7
extern/glew/CMakeLists.txt
vendored
7
extern/glew/CMakeLists.txt
vendored
@@ -24,12 +24,10 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC include src)
|
||||||
./include
|
|
||||||
)
|
|
||||||
|
|
||||||
IF(UNIX)
|
IF(UNIX)
|
||||||
LIST(APPEND INC ${X11_X11_INCLUDE_PATH})
|
SET(INC ${INC} ${X11_X11_INCLUDE_PATH})
|
||||||
ENDIF(UNIX)
|
ENDIF(UNIX)
|
||||||
|
|
||||||
SET(SRC
|
SET(SRC
|
||||||
@@ -39,3 +37,4 @@ SET(SRC
|
|||||||
ADD_DEFINITIONS(-DGLEW_STATIC)
|
ADD_DEFINITIONS(-DGLEW_STATIC)
|
||||||
|
|
||||||
BLENDERLIB(extern_glew "${SRC}" "${INC}")
|
BLENDERLIB(extern_glew "${SRC}" "${INC}")
|
||||||
|
|
||||||
|
146
extern/glew/make/msvc_7_0/glew_vc7.vcproj
vendored
Normal file
146
extern/glew/make/msvc_7_0/glew_vc7.vcproj
vendored
Normal file
@@ -0,0 +1,146 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="7.10"
|
||||||
|
Name="glew"
|
||||||
|
ProjectGUID="{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}"
|
||||||
|
Keyword="Win32Proj">
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"/>
|
||||||
|
</Platforms>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_7\extern\glew\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_7\extern\glew\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
CharacterSet="2">
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories="..\..\include"
|
||||||
|
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
|
||||||
|
MinimalRebuild="FALSE"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="1"
|
||||||
|
UsePrecompiledHeader="2"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_7\extern\glew\debug\glew.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_7\extern\glew\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_7\extern\glew\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_7\extern\glew\debug\"
|
||||||
|
WarningLevel="2"
|
||||||
|
Detect64BitPortabilityProblems="FALSE"
|
||||||
|
DebugInformationFormat="3"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_7\libs\extern\debug\glew.lib"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
Description="Copying GLEW files library (debug target) to lib tree."
|
||||||
|
CommandLine="ECHO Copying header files
|
||||||
|
IF NOT EXIST ..\..\..\..\..\build\msvc_7\extern\glew\include\GL MKDIR ..\..\..\..\..\build\msvc_7\extern\glew\include\GL
|
||||||
|
XCOPY /Y ..\..\include\GL\*.h ..\..\..\..\..\build\msvc_7\extern\glew\include\GL
|
||||||
|
ECHO Done
|
||||||
|
"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedWrapperGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_7\extern\glew"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_7\extern\glew"
|
||||||
|
ConfigurationType="4"
|
||||||
|
CharacterSet="2">
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories="..\..\include"
|
||||||
|
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
|
||||||
|
StringPooling="TRUE"
|
||||||
|
RuntimeLibrary="0"
|
||||||
|
EnableFunctionLevelLinking="TRUE"
|
||||||
|
UsePrecompiledHeader="2"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_7\extern\glew\glew.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_7\extern\glew\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_7\extern\glew\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_7\extern\glew\"
|
||||||
|
WarningLevel="2"
|
||||||
|
Detect64BitPortabilityProblems="FALSE"
|
||||||
|
DebugInformationFormat="0"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_7\libs\extern\glew.lib"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
Description="Copying GLEW files library to lib tree."
|
||||||
|
CommandLine="ECHO Copying header files
|
||||||
|
IF NOT EXIST ..\..\..\..\..\build\msvc_7\extern\glew\include\GL MKDIR ..\..\..\..\..\build\msvc_7\extern\glew\include\GL
|
||||||
|
XCOPY /Y ..\..\include\GL\*.h ..\..\..\..\..\build\msvc_7\extern\glew\include\GL
|
||||||
|
ECHO Done
|
||||||
|
"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedWrapperGeneratorTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||||
|
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\src\glew.c">
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||||
|
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\glew.h">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\glxew.h">
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\wglew.h">
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
197
extern/glew/make/msvc_9_0/glew.vcproj
vendored
Normal file
197
extern/glew/make/msvc_9_0/glew.vcproj
vendored
Normal file
@@ -0,0 +1,197 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="9,00"
|
||||||
|
Name="EXT_glew"
|
||||||
|
ProjectGUID="{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}"
|
||||||
|
RootNamespace="glew"
|
||||||
|
Keyword="Win32Proj"
|
||||||
|
TargetFrameworkVersion="131072"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\glew\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\glew\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories="..\..\include"
|
||||||
|
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;GLEW_STATIC"
|
||||||
|
MinimalRebuild="false"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="1"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\glew\debug\glew.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\glew\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\glew\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\glew\debug\"
|
||||||
|
WarningLevel="2"
|
||||||
|
Detect64BitPortabilityProblems="false"
|
||||||
|
DebugInformationFormat="3"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\debug\glew.lib"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
Description="Copying GLEW files library (debug target) to lib tree."
|
||||||
|
CommandLine="ECHO Copying header files
IF NOT EXIST ..\..\..\..\..\build\msvc_9\extern\glew\include\GL MKDIR ..\..\..\..\..\build\msvc_9\extern\glew\include\GL
XCOPY /Y ..\..\include\GL\*.h ..\..\..\..\..\build\msvc_9\extern\glew\include\GL
ECHO Done
"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\glew"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\glew"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories="..\..\include"
|
||||||
|
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GLEW_STATIC"
|
||||||
|
StringPooling="true"
|
||||||
|
RuntimeLibrary="0"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\glew\glew.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\glew\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\glew\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\glew\"
|
||||||
|
WarningLevel="2"
|
||||||
|
Detect64BitPortabilityProblems="false"
|
||||||
|
DebugInformationFormat="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\glew.lib"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
Description="Copying GLEW files library to lib tree."
|
||||||
|
CommandLine="ECHO Copying header files
IF NOT EXIST ..\..\..\..\..\build\msvc_9\extern\glew\include\GL MKDIR ..\..\..\..\..\build\msvc_9\extern\glew\include\GL
XCOPY /Y ..\..\include\GL\*.h ..\..\..\..\..\build\msvc_9\extern\glew\include\GL
ECHO Done
"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||||
|
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\src\glew.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||||
|
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\glew.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\glxew.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\GL\wglew.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
30
extern/libopenjpeg/CMakeLists.txt
vendored
30
extern/libopenjpeg/CMakeLists.txt
vendored
@@ -24,29 +24,9 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC . src)
|
||||||
.
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(SRC
|
FILE(GLOB SRC *.c except t1_generate_luts.c)
|
||||||
bio.c
|
ADD_DEFINITIONS(-DWITH_OPENJPEG)
|
||||||
cio.c
|
BLENDERLIB(extern_libopenjpeg "${SRC}" "${INC}")
|
||||||
dwt.c
|
#, libtype=['international','player'], priority=[5, 210])
|
||||||
event.c
|
|
||||||
image.c
|
|
||||||
j2k.c
|
|
||||||
j2k_lib.c
|
|
||||||
jp2.c
|
|
||||||
jpt.c
|
|
||||||
mct.c
|
|
||||||
mqc.c
|
|
||||||
openjpeg.c
|
|
||||||
pi.c
|
|
||||||
raw.c
|
|
||||||
t1.c
|
|
||||||
t2.c
|
|
||||||
tcd.c
|
|
||||||
tgt.c
|
|
||||||
)
|
|
||||||
|
|
||||||
BLENDERLIB(extern_openjpeg "${SRC}" "${INC}")
|
|
||||||
|
10
extern/libopenjpeg/SConscript
vendored
10
extern/libopenjpeg/SConscript
vendored
@@ -11,15 +11,15 @@ flags = []
|
|||||||
defs = []
|
defs = []
|
||||||
|
|
||||||
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
||||||
flags = []
|
flags = []
|
||||||
defs.append('OPJ_STATIC')
|
defs.append('OPJ_STATIC')
|
||||||
else:
|
else:
|
||||||
flags = ['-Wall', '-O3', '-ffast-math', '-std=c99']
|
flags = ['-Wall', '-O3', '-ffast-math', '-std=c99']
|
||||||
|
|
||||||
oj_env = env.Clone()
|
oj_env = env.Clone()
|
||||||
if not env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
if not env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
|
||||||
oj_env.Replace(CCFLAGS = '')
|
oj_env.Replace(CCFLAGS = '')
|
||||||
oj_env.Replace(BF_DEBUG_FLAGS = '')
|
oj_env.Replace(BF_DEBUG_FLAGS = '')
|
||||||
|
|
||||||
oj_env.BlenderLib ( libname='extern_openjpeg',
|
oj_env.BlenderLib ( libname='extern_openjpeg',
|
||||||
sources=sources, includes=Split(incs),
|
sources=sources, includes=Split(incs),
|
||||||
|
4
extern/libopenjpeg/event.c
vendored
4
extern/libopenjpeg/event.c
vendored
@@ -29,7 +29,7 @@
|
|||||||
/* ==========================================================
|
/* ==========================================================
|
||||||
Utility functions
|
Utility functions
|
||||||
==========================================================*/
|
==========================================================*/
|
||||||
#if 0
|
|
||||||
#if !defined(_MSC_VER) && !defined(__MINGW32__)
|
#if !defined(_MSC_VER) && !defined(__MINGW32__)
|
||||||
static char*
|
static char*
|
||||||
i2a(unsigned i, char *a, unsigned r) {
|
i2a(unsigned i, char *a, unsigned r) {
|
||||||
@@ -58,7 +58,7 @@ _itoa(int i, char *a, int r) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif /* !WIN32 */
|
#endif /* !WIN32 */
|
||||||
#endif /* unused - campbell */
|
|
||||||
/* ----------------------------------------------------------------------- */
|
/* ----------------------------------------------------------------------- */
|
||||||
|
|
||||||
opj_event_mgr_t* OPJ_CALLCONV opj_set_event_mgr(opj_common_ptr cinfo, opj_event_mgr_t *event_mgr, void *context) {
|
opj_event_mgr_t* OPJ_CALLCONV opj_set_event_mgr(opj_common_ptr cinfo, opj_event_mgr_t *event_mgr, void *context) {
|
||||||
|
17
extern/lzma/CMakeLists.txt
vendored
17
extern/lzma/CMakeLists.txt
vendored
@@ -24,16 +24,11 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC . )
|
||||||
.
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(SRC
|
FILE(GLOB SRC ./*.c)
|
||||||
Alloc.c
|
|
||||||
LzFind.c
|
|
||||||
LzmaDec.c
|
|
||||||
LzmaEnc.c
|
|
||||||
LzmaLib.c
|
|
||||||
)
|
|
||||||
|
|
||||||
BLENDERLIB(extern_lzma "${SRC}" "${INC}")
|
|
||||||
|
|
||||||
|
BLENDERLIB(bf_lzma "${SRC}" "${INC}")
|
||||||
|
#, libtype='blender', priority = 0 )
|
||||||
|
2
extern/lzma/SConscript
vendored
2
extern/lzma/SConscript
vendored
@@ -6,4 +6,4 @@ sources = env.Glob('./*.c')
|
|||||||
defs = ''
|
defs = ''
|
||||||
incs = ' . '
|
incs = ' . '
|
||||||
|
|
||||||
env.BlenderLib ('extern_lzma', sources, Split(incs), Split(defs), libtype=['intern'], priority=[40] )
|
env.BlenderLib ('bf_lzma', sources, Split(incs), Split(defs), libtype=['intern'], priority=[40] )
|
||||||
|
385
extern/lzma/make/msvc_9_0/lzma.vcproj
vendored
Normal file
385
extern/lzma/make/msvc_9_0/lzma.vcproj
vendored
Normal file
@@ -0,0 +1,385 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="9,00"
|
||||||
|
Name="EXT_lzma"
|
||||||
|
ProjectGUID="{79D0B232-208C-F208-DA71-79B4AC088602}"
|
||||||
|
RootNamespace="lzma"
|
||||||
|
TargetFrameworkVersion="131072"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="_DEBUG;_LIB;WIN32"
|
||||||
|
ExceptionHandling="1"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="1"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzma\debug\lzma.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzma\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzma\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzma\debug\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="4"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\debug\lzma.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzma"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzma"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="NDEBUG;_LIB;WIN32"
|
||||||
|
StringPooling="true"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
RuntimeLibrary="0"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzma\lzma.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzma\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzma\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzma\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="1"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\lzma.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="_DEBUG;_LIB;WIN32"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="3"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug\lzma.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\debug\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="4"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\mtdll\debug\lzma.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="NDEBUG;_LIB;WIN32"
|
||||||
|
StringPooling="true"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
RuntimeLibrary="2"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\lzma.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzma\mtdll\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="1"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\mtdll\lzma.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\Alloc.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzFind.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaDec.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaEnc.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaLib.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\Alloc.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzFind.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzHash.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaDec.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaEnc.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\LzmaLib.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\Types.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
13
extern/lzo/CMakeLists.txt
vendored
13
extern/lzo/CMakeLists.txt
vendored
@@ -24,12 +24,11 @@
|
|||||||
#
|
#
|
||||||
# ***** END GPL LICENSE BLOCK *****
|
# ***** END GPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC include)
|
||||||
include
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(SRC
|
FILE(GLOB SRC minilzo/*.c)
|
||||||
minilzo/minilzo.c
|
|
||||||
)
|
|
||||||
|
|
||||||
BLENDERLIB(extern_minilzo "${SRC}" "${INC}")
|
|
||||||
|
|
||||||
|
BLENDERLIB(bf_minilzo "${SRC}" "${INC}")
|
||||||
|
#, libtype='blender', priority = 0 )
|
||||||
|
2
extern/lzo/SConscript
vendored
2
extern/lzo/SConscript
vendored
@@ -6,4 +6,4 @@ sources = env.Glob('minilzo/*.c')
|
|||||||
defs = ''
|
defs = ''
|
||||||
incs = ' include '
|
incs = ' include '
|
||||||
|
|
||||||
env.BlenderLib ('extern_minilzo', sources, Split(incs), Split(defs), libtype=['intern'], priority=[40] )
|
env.BlenderLib ('bf_minilzo', sources, Split(incs), Split(defs), libtype=['intern'], priority=[40] )
|
||||||
|
353
extern/lzo/make/msvc_9_0/lzo.vcproj
vendored
Normal file
353
extern/lzo/make/msvc_9_0/lzo.vcproj
vendored
Normal file
@@ -0,0 +1,353 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="9,00"
|
||||||
|
Name="EXT_lzo"
|
||||||
|
ProjectGUID="{8BFA4082-773B-D100-BC24-659083BA023F}"
|
||||||
|
RootNamespace="lzo"
|
||||||
|
TargetFrameworkVersion="131072"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="_DEBUG;_LIB;WIN32"
|
||||||
|
ExceptionHandling="1"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="1"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzo\debug\lzo.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzo\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzo\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzo\debug\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="4"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\debug\lzo.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzo"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzo"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="NDEBUG;_LIB;WIN32"
|
||||||
|
StringPooling="true"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
RuntimeLibrary="0"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzo\lzo.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzo\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzo\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzo\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="1"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\lzo.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="0"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="_DEBUG;_LIB;WIN32"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
BasicRuntimeChecks="3"
|
||||||
|
RuntimeLibrary="3"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug\lzo.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\debug\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="4"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="_DEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\mtdll\debug\lzo.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll"
|
||||||
|
IntermediateDirectory="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll"
|
||||||
|
ConfigurationType="4"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories=""
|
||||||
|
PreprocessorDefinitions="NDEBUG;_LIB;WIN32"
|
||||||
|
StringPooling="true"
|
||||||
|
ExceptionHandling="0"
|
||||||
|
RuntimeLibrary="2"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
UsePrecompiledHeader="0"
|
||||||
|
PrecompiledHeaderFile="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\lzo.pch"
|
||||||
|
AssemblerListingLocation="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\"
|
||||||
|
ObjectFile="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\"
|
||||||
|
ProgramDataBaseFileName="..\..\..\..\..\build\msvc_9\extern\lzo\mtdll\"
|
||||||
|
WarningLevel="3"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
DebugInformationFormat="1"
|
||||||
|
CompileAs="0"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLibrarianTool"
|
||||||
|
OutputFile="..\..\..\..\..\build\msvc_9\libs\extern\mtdll\lzo.lib"
|
||||||
|
SuppressStartupBanner="true"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
<Filter
|
||||||
|
Name="Source Files"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\minilzo\minilzo.c"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
<Filter
|
||||||
|
Name="Header Files"
|
||||||
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\minilzo\lzoconf.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\minilzo\lzodefs.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\minilzo\minilzo.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
|
</Filter>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
85
extern/make/msvc_7_0/build_install_all.vcproj
vendored
Normal file
85
extern/make/msvc_7_0/build_install_all.vcproj
vendored
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="7.10"
|
||||||
|
Name="build_install_all"
|
||||||
|
ProjectGUID="{9C71A793-C177-4CAB-8EC5-923D500B39F8}"
|
||||||
|
RootNamespace="build_install_all"
|
||||||
|
Keyword="ManagedCProj">
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"/>
|
||||||
|
</Platforms>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_7\extern\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_7\extern\debug"
|
||||||
|
ConfigurationType="10"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="TRUE">
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_7\extern"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_7\extern"
|
||||||
|
ConfigurationType="10"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="TRUE">
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_7\extern\mtdll"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_7\extern\mtdll"
|
||||||
|
ConfigurationType="10"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="TRUE">
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_7\extern\mtdll\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_7\extern\mtdll\debug"
|
||||||
|
ConfigurationType="10"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="TRUE">
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
245
extern/make/msvc_7_0/extern.sln
vendored
Normal file
245
extern/make/msvc_7_0/extern.sln
vendored
Normal file
@@ -0,0 +1,245 @@
|
|||||||
|
Microsoft Visual Studio Solution File, Format Version 8.00
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build_install_all", "build_install_all.vcproj", "{9C71A793-C177-4CAB-8EC5-923D500B39F8}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8} = {F9850C15-FF0A-429E-9D47-89FB433C9BD8}
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD} = {D696C86B-0B53-4471-A50D-5B983A6FA4AD}
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "solid", "..\..\solid\make\msvc_7_0\solid.vcproj", "{D696C86B-0B53-4471-A50D-5B983A6FA4AD}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B} = {6461F05D-4698-47AB-A8E8-1CA2ACC9948B}
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A} = {BAC615B0-F1AF-418B-8D23-A10FD8870D6A}
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4} = {0112CAD5-3584-412A-A2E5-1315A00437B4}
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373} = {B83C6BED-11EC-46C8-AFFA-121EEDE94373}
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B} = {524264F4-DF21-4B79-847F-E7CA643ECD0B}
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "qhull", "..\..\qhull\make\msvc_7_0\qhull.vcproj", "{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "convex", "..\..\solid\make\msvc_7_0\convex\convex.vcproj", "{524264F4-DF21-4B79-847F-E7CA643ECD0B}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "complex", "..\..\solid\make\msvc_7_0\complex\complex.vcproj", "{B83C6BED-11EC-46C8-AFFA-121EEDE94373}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "broad", "..\..\solid\make\msvc_7_0\broad\broad.vcproj", "{0112CAD5-3584-412A-A2E5-1315A00437B4}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ftgl_static_lib", "..\..\bFTGL\make\msvc_7_0\ftgl_static_lib.vcproj", "{F9850C15-FF0A-429E-9D47-89FB433C9BD8}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "verse", "..\..\verse\make\msvc_7_0\libverse.vcproj", "{F9850C15-FF0A-429E-9D47-89FB433C9BD8}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "verse_server", "..\..\verse\make\msvc_7_0\verse.vcproj", "{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8} = {F9850C15-FF0A-429E-9D47-89FB433C9BD8}
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bullet2", "..\..\bullet2\make\msvc_7_0\Bullet_vc7.vcproj", "{FFD3C64A-30E2-4BC7-BC8F-51818C320400}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glew", "..\..\glew\make\msvc_7_0\glew_vc7.vcproj", "{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfiguration) = preSolution
|
||||||
|
3D Plugin Debug = 3D Plugin Debug
|
||||||
|
3D Plugin Release = 3D Plugin Release
|
||||||
|
Blender Debug = Blender Debug
|
||||||
|
Blender Release = Blender Release
|
||||||
|
BlenderPlayer Debug = BlenderPlayer Debug
|
||||||
|
BlenderPlayer Release = BlenderPlayer Release
|
||||||
|
Debug = Debug
|
||||||
|
Release = Release
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectDependencies) = postSolution
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfiguration) = postSolution
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{9C71A793-C177-4CAB-8EC5-923D500B39F8}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{D696C86B-0B53-4471-A50D-5B983A6FA4AD}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.BlenderPlayer Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.BlenderPlayer Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.BlenderPlayer Release.ActiveCfg = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.BlenderPlayer Release.Build.0 = Blender Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{6461F05D-4698-47AB-A8E8-1CA2ACC9948B}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{524264F4-DF21-4B79-847F-E7CA643ECD0B}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.BlenderPlayer Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.BlenderPlayer Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.BlenderPlayer Release.ActiveCfg = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.BlenderPlayer Release.Build.0 = Blender Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{B83C6BED-11EC-46C8-AFFA-121EEDE94373}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.BlenderPlayer Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.BlenderPlayer Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.BlenderPlayer Release.ActiveCfg = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.BlenderPlayer Release.Build.0 = Blender Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{0112CAD5-3584-412A-A2E5-1315A00437B4}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{F9850C15-FF0A-429E-9D47-89FB433C9BD8}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.BlenderPlayer Debug.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.BlenderPlayer Release.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Debug.ActiveCfg = BlenderPlayer Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Debug.Build.0 = BlenderPlayer Debug|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Release.ActiveCfg = BlenderPlayer Release|Win32
|
||||||
|
{FC752464-F413-4D4F-842D-A5D3AA0E6A3D}.Release.Build.0 = BlenderPlayer Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.3D Plugin Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.3D Plugin Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.3D Plugin Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.3D Plugin Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Debug.ActiveCfg = 3D Plugin Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Debug.Build.0 = 3D Plugin Debug|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Release.ActiveCfg = 3D Plugin Release|Win32
|
||||||
|
{FFD3C64A-30E2-4BC7-BC8F-51818C320400}.Release.Build.0 = 3D Plugin Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.3D Plugin Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.3D Plugin Debug.Build.0 = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.3D Plugin Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.3D Plugin Release.Build.0 = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Blender Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Blender Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Blender Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Blender Release.Build.0 = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.BlenderPlayer Debug.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.BlenderPlayer Debug.Build.0 = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.BlenderPlayer Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.BlenderPlayer Release.Build.0 = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Debug.ActiveCfg = Blender Debug|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Debug.Build.0 = Blender Debug|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Release.ActiveCfg = Blender Release|Win32
|
||||||
|
{BAC615B0-F1AF-418B-8D23-A10FD8870D6A}.Release.Build.0 = Blender Release|Win32
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityAddIns) = postSolution
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
114
extern/make/msvc_9_0/build_install_all.vcproj
vendored
Normal file
114
extern/make/msvc_9_0/build_install_all.vcproj
vendored
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
<?xml version="1.0" encoding="Windows-1252"?>
|
||||||
|
<VisualStudioProject
|
||||||
|
ProjectType="Visual C++"
|
||||||
|
Version="9,00"
|
||||||
|
Name="EXT_build_install_all"
|
||||||
|
ProjectGUID="{9C71A793-C177-4CAB-8EC5-923D500B39F8}"
|
||||||
|
RootNamespace="build_install_all"
|
||||||
|
Keyword="ManagedCProj"
|
||||||
|
TargetFrameworkVersion="131072"
|
||||||
|
>
|
||||||
|
<Platforms>
|
||||||
|
<Platform
|
||||||
|
Name="Win32"
|
||||||
|
/>
|
||||||
|
</Platforms>
|
||||||
|
<ToolFiles>
|
||||||
|
</ToolFiles>
|
||||||
|
<Configurations>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_9\extern\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_9\extern\debug"
|
||||||
|
ConfigurationType="10"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="0"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Blender Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_9\extern"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_9\extern"
|
||||||
|
ConfigurationType="10"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="4"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Release|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_9\extern\mtdll"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_9\extern\mtdll"
|
||||||
|
ConfigurationType="10"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="4"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="3D Plugin Debug|Win32"
|
||||||
|
OutputDirectory="..\..\..\..\build\msvc_9\extern\mtdll\debug"
|
||||||
|
IntermediateDirectory="..\..\..\..\build\msvc_9\extern\mtdll\debug"
|
||||||
|
ConfigurationType="10"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
|
||||||
|
CharacterSet="2"
|
||||||
|
ManagedExtensions="4"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
</Configurations>
|
||||||
|
<References>
|
||||||
|
</References>
|
||||||
|
<Files>
|
||||||
|
</Files>
|
||||||
|
<Globals>
|
||||||
|
</Globals>
|
||||||
|
</VisualStudioProject>
|
@@ -29,25 +29,17 @@ ADD_SUBDIRECTORY(string)
|
|||||||
ADD_SUBDIRECTORY(ghost)
|
ADD_SUBDIRECTORY(ghost)
|
||||||
ADD_SUBDIRECTORY(guardedalloc)
|
ADD_SUBDIRECTORY(guardedalloc)
|
||||||
ADD_SUBDIRECTORY(moto)
|
ADD_SUBDIRECTORY(moto)
|
||||||
|
ADD_SUBDIRECTORY(container)
|
||||||
ADD_SUBDIRECTORY(memutil)
|
ADD_SUBDIRECTORY(memutil)
|
||||||
|
ADD_SUBDIRECTORY(decimation)
|
||||||
ADD_SUBDIRECTORY(iksolver)
|
ADD_SUBDIRECTORY(iksolver)
|
||||||
|
ADD_SUBDIRECTORY(itasc)
|
||||||
|
ADD_SUBDIRECTORY(boolop)
|
||||||
ADD_SUBDIRECTORY(opennl)
|
ADD_SUBDIRECTORY(opennl)
|
||||||
ADD_SUBDIRECTORY(smoke)
|
ADD_SUBDIRECTORY(smoke)
|
||||||
|
|
||||||
IF(WITH_MOD_FLUID)
|
IF(WITH_ELBEEM)
|
||||||
ADD_SUBDIRECTORY(elbeem)
|
ADD_SUBDIRECTORY(elbeem)
|
||||||
ENDIF(WITH_MOD_FLUID)
|
ENDIF(WITH_ELBEEM)
|
||||||
|
|
||||||
IF(WITH_MOD_DECIMATE)
|
ADD_SUBDIRECTORY(bsp)
|
||||||
ADD_SUBDIRECTORY(container)
|
|
||||||
ADD_SUBDIRECTORY(decimation)
|
|
||||||
ENDIF(WITH_MOD_DECIMATE)
|
|
||||||
|
|
||||||
IF(WITH_MOD_BOOLEAN)
|
|
||||||
ADD_SUBDIRECTORY(boolop)
|
|
||||||
ADD_SUBDIRECTORY(bsp)
|
|
||||||
ENDIF(WITH_MOD_BOOLEAN)
|
|
||||||
|
|
||||||
IF(WITH_IK_ITASC)
|
|
||||||
ADD_SUBDIRECTORY(itasc)
|
|
||||||
ENDIF(WITH_IK_ITASC)
|
|
||||||
|
@@ -20,168 +20,46 @@
|
|||||||
#
|
#
|
||||||
# ***** END LGPL LICENSE BLOCK *****
|
# ***** END LGPL LICENSE BLOCK *****
|
||||||
|
|
||||||
SET(INC
|
SET(INC . intern FX SRC ${PTHREADS_INC} ${LIBSAMPLERATE_INC})
|
||||||
.
|
|
||||||
intern
|
|
||||||
FX SRC
|
|
||||||
${PTHREADS_INC}
|
|
||||||
${LIBSAMPLERATE_INC}
|
|
||||||
)
|
|
||||||
|
|
||||||
SET(SRC
|
FILE(GLOB SRC intern/*.cpp intern/*.h FX/*.cpp SRC/*.cpp)
|
||||||
FX/AUD_AccumulatorFactory.cpp
|
|
||||||
FX/AUD_BaseIIRFilterReader.cpp
|
|
||||||
FX/AUD_ButterworthFactory.cpp
|
|
||||||
FX/AUD_CallbackIIRFilterReader.cpp
|
|
||||||
FX/AUD_DelayFactory.cpp
|
|
||||||
FX/AUD_DelayReader.cpp
|
|
||||||
FX/AUD_DoubleFactory.cpp
|
|
||||||
FX/AUD_DoubleReader.cpp
|
|
||||||
FX/AUD_EffectFactory.cpp
|
|
||||||
FX/AUD_EffectReader.cpp
|
|
||||||
FX/AUD_EnvelopeFactory.cpp
|
|
||||||
FX/AUD_FaderFactory.cpp
|
|
||||||
FX/AUD_FaderReader.cpp
|
|
||||||
FX/AUD_HighpassFactory.cpp
|
|
||||||
FX/AUD_IIRFilterFactory.cpp
|
|
||||||
FX/AUD_IIRFilterReader.cpp
|
|
||||||
FX/AUD_LimiterFactory.cpp
|
|
||||||
FX/AUD_LimiterReader.cpp
|
|
||||||
FX/AUD_LoopFactory.cpp
|
|
||||||
FX/AUD_LoopReader.cpp
|
|
||||||
FX/AUD_LowpassFactory.cpp
|
|
||||||
FX/AUD_PingPongFactory.cpp
|
|
||||||
FX/AUD_PitchFactory.cpp
|
|
||||||
FX/AUD_PitchReader.cpp
|
|
||||||
FX/AUD_RectifyFactory.cpp
|
|
||||||
FX/AUD_ReverseFactory.cpp
|
|
||||||
FX/AUD_ReverseReader.cpp
|
|
||||||
FX/AUD_SquareFactory.cpp
|
|
||||||
FX/AUD_SumFactory.cpp
|
|
||||||
FX/AUD_SuperposeFactory.cpp
|
|
||||||
FX/AUD_SuperposeReader.cpp
|
|
||||||
FX/AUD_VolumeFactory.cpp
|
|
||||||
SRC/AUD_SRCResampleFactory.cpp
|
|
||||||
SRC/AUD_SRCResampleReader.cpp
|
|
||||||
intern/AUD_3DMath.h
|
|
||||||
intern/AUD_Buffer.cpp
|
|
||||||
intern/AUD_Buffer.h
|
|
||||||
intern/AUD_BufferReader.cpp
|
|
||||||
intern/AUD_BufferReader.h
|
|
||||||
intern/AUD_C-API.cpp
|
|
||||||
intern/AUD_C-API.h
|
|
||||||
intern/AUD_ChannelMapperFactory.cpp
|
|
||||||
intern/AUD_ChannelMapperFactory.h
|
|
||||||
intern/AUD_ChannelMapperReader.cpp
|
|
||||||
intern/AUD_ChannelMapperReader.h
|
|
||||||
intern/AUD_ConverterFactory.cpp
|
|
||||||
intern/AUD_ConverterFactory.h
|
|
||||||
intern/AUD_ConverterFunctions.cpp
|
|
||||||
intern/AUD_ConverterFunctions.h
|
|
||||||
intern/AUD_ConverterReader.cpp
|
|
||||||
intern/AUD_ConverterReader.h
|
|
||||||
intern/AUD_DefaultMixer.cpp
|
|
||||||
intern/AUD_DefaultMixer.h
|
|
||||||
intern/AUD_FileFactory.cpp
|
|
||||||
intern/AUD_FileFactory.h
|
|
||||||
intern/AUD_I3DDevice.h
|
|
||||||
intern/AUD_IDevice.h
|
|
||||||
intern/AUD_IFactory.h
|
|
||||||
intern/AUD_IReader.h
|
|
||||||
intern/AUD_LinearResampleFactory.cpp
|
|
||||||
intern/AUD_LinearResampleFactory.h
|
|
||||||
intern/AUD_LinearResampleReader.cpp
|
|
||||||
intern/AUD_LinearResampleReader.h
|
|
||||||
intern/AUD_Mixer.cpp
|
|
||||||
intern/AUD_Mixer.h
|
|
||||||
intern/AUD_MixerFactory.cpp
|
|
||||||
intern/AUD_MixerFactory.h
|
|
||||||
intern/AUD_NULLDevice.cpp
|
|
||||||
intern/AUD_NULLDevice.h
|
|
||||||
intern/AUD_PyInit.h
|
|
||||||
intern/AUD_ReadDevice.cpp
|
|
||||||
intern/AUD_ReadDevice.h
|
|
||||||
intern/AUD_Reference.h
|
|
||||||
intern/AUD_ResampleFactory.h
|
|
||||||
intern/AUD_SequencerFactory.cpp
|
|
||||||
intern/AUD_SequencerFactory.h
|
|
||||||
intern/AUD_SequencerReader.cpp
|
|
||||||
intern/AUD_SequencerReader.h
|
|
||||||
intern/AUD_SilenceFactory.cpp
|
|
||||||
intern/AUD_SilenceFactory.h
|
|
||||||
intern/AUD_SilenceReader.cpp
|
|
||||||
intern/AUD_SilenceReader.h
|
|
||||||
intern/AUD_SinusFactory.cpp
|
|
||||||
intern/AUD_SinusFactory.h
|
|
||||||
intern/AUD_SinusReader.cpp
|
|
||||||
intern/AUD_SinusReader.h
|
|
||||||
intern/AUD_SoftwareDevice.cpp
|
|
||||||
intern/AUD_SoftwareDevice.h
|
|
||||||
intern/AUD_Space.h
|
|
||||||
intern/AUD_StreamBufferFactory.cpp
|
|
||||||
intern/AUD_StreamBufferFactory.h
|
|
||||||
)
|
|
||||||
|
|
||||||
IF(WITH_FFMPEG)
|
IF(WITH_FFMPEG)
|
||||||
|
SET(INC ${INC} ffmpeg ${FFMPEG_INC})
|
||||||
|
FILE(GLOB FFMPEGSRC ffmpeg/*.cpp)
|
||||||
ADD_DEFINITIONS(-DWITH_FFMPEG)
|
ADD_DEFINITIONS(-DWITH_FFMPEG)
|
||||||
LIST(APPEND INC ffmpeg ${FFMPEG_INC})
|
|
||||||
SET(FFMPEGSRC
|
|
||||||
ffmpeg/AUD_FFMPEGFactory.cpp
|
|
||||||
ffmpeg/AUD_FFMPEGReader.cpp
|
|
||||||
)
|
|
||||||
ENDIF(WITH_FFMPEG)
|
ENDIF(WITH_FFMPEG)
|
||||||
|
|
||||||
IF(WITH_SDL)
|
IF(WITH_SDL)
|
||||||
|
SET(INC ${INC} SDL ${SDL_INCLUDE_DIR})
|
||||||
|
FILE(GLOB SDLSRC SDL/*.cpp)
|
||||||
ADD_DEFINITIONS(-DWITH_SDL)
|
ADD_DEFINITIONS(-DWITH_SDL)
|
||||||
LIST(APPEND INC SDL ${SDL_INCLUDE_DIR})
|
|
||||||
SET(SDLSRC
|
|
||||||
SDL/AUD_SDLDevice.cpp
|
|
||||||
)
|
|
||||||
ENDIF(WITH_SDL)
|
ENDIF(WITH_SDL)
|
||||||
|
|
||||||
IF(WITH_OPENAL)
|
IF(WITH_OPENAL)
|
||||||
|
SET(INC ${INC} OpenAL ${OPENAL_INCLUDE_DIR})
|
||||||
|
FILE(GLOB OPENALSRC OpenAL/*.cpp)
|
||||||
ADD_DEFINITIONS(-DWITH_OPENAL)
|
ADD_DEFINITIONS(-DWITH_OPENAL)
|
||||||
LIST(APPEND INC OpenAL ${OPENAL_INCLUDE_DIR})
|
|
||||||
SET(OPENALSRC
|
|
||||||
OpenAL/AUD_OpenALDevice.cpp
|
|
||||||
)
|
|
||||||
ENDIF(WITH_OPENAL)
|
ENDIF(WITH_OPENAL)
|
||||||
|
|
||||||
IF(WITH_JACK)
|
IF(WITH_JACK)
|
||||||
|
SET(INC ${INC} jack ${JACK_INC})
|
||||||
|
FILE(GLOB JACKSRC jack/*.cpp)
|
||||||
ADD_DEFINITIONS(-DWITH_JACK)
|
ADD_DEFINITIONS(-DWITH_JACK)
|
||||||
LIST(APPEND INC jack ${JACK_INC})
|
|
||||||
SET(JACKSRC
|
|
||||||
jack/AUD_JackDevice.cpp
|
|
||||||
)
|
|
||||||
ENDIF(WITH_JACK)
|
ENDIF(WITH_JACK)
|
||||||
|
|
||||||
IF(WITH_SNDFILE)
|
IF(WITH_SNDFILE)
|
||||||
|
SET(INC ${INC} sndfile ${SNDFILE_INC})
|
||||||
|
FILE(GLOB SNDFILESRC sndfile/*.cpp)
|
||||||
ADD_DEFINITIONS(-DWITH_SNDFILE)
|
ADD_DEFINITIONS(-DWITH_SNDFILE)
|
||||||
LIST(APPEND INC sndfile ${SNDFILE_INC})
|
|
||||||
SET(SNDFILESRC
|
|
||||||
sndfile/AUD_SndFileFactory.cpp
|
|
||||||
sndfile/AUD_SndFileReader.cpp
|
|
||||||
)
|
|
||||||
ENDIF(WITH_SNDFILE)
|
ENDIF(WITH_SNDFILE)
|
||||||
|
|
||||||
#IF(WITH_FFTW3)
|
IF(WITH_FFTW3)
|
||||||
# ADD_DEFINITIONS(-DWITH_FFTW3)
|
SET(INC ${INC} fftw ${FFTW3_INC})
|
||||||
# LIST(APPEND INC fftw ${FFTW3_INC})
|
FILE(GLOB FFTW3SRC fftw/*.cpp)
|
||||||
# SET(FFTW3SRC
|
ADD_DEFINITIONS(-DWITH_FFTW3)
|
||||||
# fftw/AUD_BandPassFactory.cpp
|
ENDIF(WITH_FFTW3)
|
||||||
# fftw/AUD_BandPassReader.cpp
|
|
||||||
# )
|
|
||||||
#ENDIF(WITH_FFTW3)
|
|
||||||
|
|
||||||
IF(WITH_PYTHON)
|
SET(SRC ${SRC} ${FFMPEGSRC} ${SNDFILESRC} ${FFTW3SRC} ${SDLSRC} ${OPENALSRC} ${JACKSRC})
|
||||||
LIST(APPEND INC Python ${PYTHON_INC})
|
|
||||||
SET(PYTHONSRC
|
|
||||||
Python/AUD_PyAPI.cpp
|
|
||||||
)
|
|
||||||
ELSE(WITH_PYTHON)
|
|
||||||
ADD_DEFINITIONS(-DDISABLE_PYTHON)
|
|
||||||
ENDIF(WITH_PYTHON)
|
|
||||||
|
|
||||||
SET(SRC ${SRC} ${FFMPEGSRC} ${SNDFILESRC} ${FFTW3SRC} ${SDLSRC} ${OPENALSRC} ${JACKSRC} ${PYTHONSRC})
|
BLENDERLIB(bf_audaspace "${SRC}" "${INC}")
|
||||||
|
|
||||||
BLENDERLIB(bf_intern_audaspace "${SRC}" "${INC}")
|
|
||||||
|
@@ -24,37 +24,26 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "AUD_AccumulatorFactory.h"
|
#include "AUD_AccumulatorFactory.h"
|
||||||
#include "AUD_CallbackIIRFilterReader.h"
|
#include "AUD_AccumulatorReader.h"
|
||||||
|
|
||||||
sample_t accumulatorFilterAdditive(AUD_CallbackIIRFilterReader* reader, void* useless)
|
|
||||||
{
|
|
||||||
float in = reader->x(0);
|
|
||||||
float lastin = reader->x(-1);
|
|
||||||
float out = reader->y(-1) + in - lastin;
|
|
||||||
if(in > lastin)
|
|
||||||
out += in - lastin;
|
|
||||||
return out;
|
|
||||||
}
|
|
||||||
|
|
||||||
sample_t accumulatorFilter(AUD_CallbackIIRFilterReader* reader, void* useless)
|
|
||||||
{
|
|
||||||
float in = reader->x(0);
|
|
||||||
float lastin = reader->x(-1);
|
|
||||||
float out = reader->y(-1);
|
|
||||||
if(in > lastin)
|
|
||||||
out += in - lastin;
|
|
||||||
return out;
|
|
||||||
}
|
|
||||||
|
|
||||||
AUD_AccumulatorFactory::AUD_AccumulatorFactory(AUD_IFactory* factory,
|
AUD_AccumulatorFactory::AUD_AccumulatorFactory(AUD_IFactory* factory,
|
||||||
bool additive) :
|
bool additive) :
|
||||||
AUD_EffectFactory(factory),
|
AUD_EffectFactory(factory),
|
||||||
m_additive(additive)
|
m_additive(additive) {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
AUD_IReader* AUD_AccumulatorFactory::createReader() const
|
AUD_AccumulatorFactory::AUD_AccumulatorFactory(bool additive) :
|
||||||
|
AUD_EffectFactory(0),
|
||||||
|
m_additive(additive) {}
|
||||||
|
|
||||||
|
AUD_IReader* AUD_AccumulatorFactory::createReader()
|
||||||
{
|
{
|
||||||
return new AUD_CallbackIIRFilterReader(getReader(), 2, 2,
|
AUD_IReader* reader = getReader();
|
||||||
m_additive ? accumulatorFilterAdditive : accumulatorFilter);
|
|
||||||
|
if(reader != 0)
|
||||||
|
{
|
||||||
|
reader = new AUD_AccumulatorReader(reader, m_additive);
|
||||||
|
AUD_NEW("reader")
|
||||||
|
}
|
||||||
|
|
||||||
|
return reader;
|
||||||
}
|
}
|
||||||
|
@@ -37,11 +37,7 @@ private:
|
|||||||
/**
|
/**
|
||||||
* Whether the accumulator is additive.
|
* Whether the accumulator is additive.
|
||||||
*/
|
*/
|
||||||
const bool m_additive;
|
bool m_additive;
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_AccumulatorFactory(const AUD_AccumulatorFactory&);
|
|
||||||
AUD_AccumulatorFactory& operator=(const AUD_AccumulatorFactory&);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
@@ -51,7 +47,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
AUD_AccumulatorFactory(AUD_IFactory* factory, bool additive = false);
|
AUD_AccumulatorFactory(AUD_IFactory* factory, bool additive = false);
|
||||||
|
|
||||||
virtual AUD_IReader* createReader() const;
|
/**
|
||||||
|
* Creates a new accumulator factory.
|
||||||
|
* \param additive Whether the accumulator is additive.
|
||||||
|
*/
|
||||||
|
AUD_AccumulatorFactory(bool additive = false);
|
||||||
|
|
||||||
|
virtual AUD_IReader* createReader();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //AUD_ACCUMULATORFACTORY
|
#endif //AUD_ACCUMULATORFACTORY
|
||||||
|
99
intern/audaspace/FX/AUD_AccumulatorReader.cpp
Normal file
99
intern/audaspace/FX/AUD_AccumulatorReader.cpp
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
/*
|
||||||
|
* $Id$
|
||||||
|
*
|
||||||
|
* ***** BEGIN LGPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* Copyright 2009 Jörg Hermann Müller
|
||||||
|
*
|
||||||
|
* This file is part of AudaSpace.
|
||||||
|
*
|
||||||
|
* AudaSpace is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Lesser General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* AudaSpace is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public License
|
||||||
|
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
* ***** END LGPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "AUD_AccumulatorReader.h"
|
||||||
|
#include "AUD_Buffer.h"
|
||||||
|
|
||||||
|
#include <cstring>
|
||||||
|
|
||||||
|
#define CC specs.channels + channel
|
||||||
|
|
||||||
|
AUD_AccumulatorReader::AUD_AccumulatorReader(AUD_IReader* reader,
|
||||||
|
bool additive) :
|
||||||
|
AUD_EffectReader(reader),
|
||||||
|
m_additive(additive)
|
||||||
|
{
|
||||||
|
AUD_Specs specs = reader->getSpecs();
|
||||||
|
int samplesize = AUD_SAMPLE_SIZE(specs);
|
||||||
|
|
||||||
|
m_buffer = new AUD_Buffer(); AUD_NEW("buffer")
|
||||||
|
|
||||||
|
m_sums = new AUD_Buffer(samplesize); AUD_NEW("buffer")
|
||||||
|
memset(m_sums->getBuffer(), 0, samplesize);
|
||||||
|
|
||||||
|
m_prevs = new AUD_Buffer(samplesize); AUD_NEW("buffer")
|
||||||
|
memset(m_prevs->getBuffer(), 0, samplesize);
|
||||||
|
}
|
||||||
|
|
||||||
|
AUD_AccumulatorReader::~AUD_AccumulatorReader()
|
||||||
|
{
|
||||||
|
delete m_buffer; AUD_DELETE("buffer")
|
||||||
|
delete m_sums; AUD_DELETE("buffer")
|
||||||
|
delete m_prevs; AUD_DELETE("buffer")
|
||||||
|
}
|
||||||
|
|
||||||
|
void AUD_AccumulatorReader::read(int & length, sample_t* & buffer)
|
||||||
|
{
|
||||||
|
sample_t* buf;
|
||||||
|
sample_t* sums;
|
||||||
|
sample_t* prevs;
|
||||||
|
sums = m_sums->getBuffer();
|
||||||
|
prevs = m_prevs->getBuffer();
|
||||||
|
|
||||||
|
AUD_Specs specs = m_reader->getSpecs();
|
||||||
|
|
||||||
|
m_reader->read(length, buf);
|
||||||
|
if(m_buffer->getSize() < length * AUD_SAMPLE_SIZE(specs))
|
||||||
|
m_buffer->resize(length * AUD_SAMPLE_SIZE(specs));
|
||||||
|
|
||||||
|
buffer = m_buffer->getBuffer();
|
||||||
|
|
||||||
|
if(m_additive)
|
||||||
|
{
|
||||||
|
for(int channel = 0; channel < specs.channels; channel++)
|
||||||
|
{
|
||||||
|
for(int i = 0; i < length; i++)
|
||||||
|
{
|
||||||
|
if(buf[i * CC] > prevs[channel])
|
||||||
|
sums[channel] += buf[i * CC] - prevs[channel];
|
||||||
|
buffer[i * CC] = sums[channel] + buf[i * CC];
|
||||||
|
prevs[channel] = buf[i * CC];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
for(int channel = 0; channel < specs.channels; channel++)
|
||||||
|
{
|
||||||
|
for(int i = 0; i < length * specs.channels; i++)
|
||||||
|
{
|
||||||
|
if(buf[i * CC] > prevs[channel])
|
||||||
|
sums[channel] += buf[i * CC] - prevs[channel];
|
||||||
|
buffer[i * CC] = sums[channel];
|
||||||
|
prevs[channel] = buf[i * CC];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -23,44 +23,53 @@
|
|||||||
* ***** END LGPL LICENSE BLOCK *****
|
* ***** END LGPL LICENSE BLOCK *****
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef AUD_IIRFILTERFACTORY
|
#ifndef AUD_ACCUMULATORREADER
|
||||||
#define AUD_IIRFILTERFACTORY
|
#define AUD_ACCUMULATORREADER
|
||||||
|
|
||||||
#include "AUD_EffectFactory.h"
|
#include "AUD_EffectReader.h"
|
||||||
|
class AUD_Buffer;
|
||||||
#include <vector>
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This factory creates a IIR filter reader.
|
* This class represents an accumulator.
|
||||||
*/
|
*/
|
||||||
class AUD_IIRFilterFactory : public AUD_EffectFactory
|
class AUD_AccumulatorReader : public AUD_EffectReader
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
/**
|
/**
|
||||||
* Output filter coefficients.
|
* The playback buffer.
|
||||||
*/
|
*/
|
||||||
std::vector<float> m_a;
|
AUD_Buffer *m_buffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Input filter coefficients.
|
* The sums of the specific channels.
|
||||||
*/
|
*/
|
||||||
std::vector<float> m_b;
|
AUD_Buffer *m_sums;
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
/**
|
||||||
AUD_IIRFilterFactory(const AUD_IIRFilterFactory&);
|
* The previous results of the specific channels.
|
||||||
AUD_IIRFilterFactory& operator=(const AUD_IIRFilterFactory&);
|
*/
|
||||||
|
AUD_Buffer *m_prevs;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether the accumulator is additive.
|
||||||
|
*/
|
||||||
|
bool m_additive;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* Creates a new IIR filter factory.
|
* Creates a new accumulator reader.
|
||||||
* \param factory The input factory.
|
* \param reader The reader to read from.
|
||||||
* \param b The input filter coefficients.
|
* \param additive Whether the accumulator is additive.
|
||||||
* \param a The output filter coefficients.
|
* \exception AUD_Exception Thrown if the reader specified is NULL.
|
||||||
*/
|
*/
|
||||||
AUD_IIRFilterFactory(AUD_IFactory* factory, std::vector<float> b,
|
AUD_AccumulatorReader(AUD_IReader* reader, bool additive);
|
||||||
std::vector<float> a);
|
|
||||||
|
|
||||||
virtual AUD_IReader* createReader() const;
|
/**
|
||||||
|
* Destroys the reader.
|
||||||
|
*/
|
||||||
|
virtual ~AUD_AccumulatorReader();
|
||||||
|
|
||||||
|
virtual void read(int & length, sample_t* & buffer);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //AUD_IIRFILTERFACTORY
|
#endif //AUD_ACCUMULATORREADER
|
@@ -1,76 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* ***** BEGIN LGPL LICENSE BLOCK *****
|
|
||||||
*
|
|
||||||
* Copyright 2009 Jörg Hermann Müller
|
|
||||||
*
|
|
||||||
* This file is part of AudaSpace.
|
|
||||||
*
|
|
||||||
* AudaSpace is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* AudaSpace is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
|
||||||
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* ***** END LGPL LICENSE BLOCK *****
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "AUD_BaseIIRFilterReader.h"
|
|
||||||
|
|
||||||
#include <cstring>
|
|
||||||
|
|
||||||
#define CC m_channels + m_channel
|
|
||||||
|
|
||||||
AUD_BaseIIRFilterReader::AUD_BaseIIRFilterReader(AUD_IReader* reader, int in,
|
|
||||||
int out) :
|
|
||||||
AUD_EffectReader(reader),
|
|
||||||
m_channels(reader->getSpecs().channels),
|
|
||||||
m_xlen(in), m_ylen(out),
|
|
||||||
m_xpos(0), m_ypos(0), m_channel(0)
|
|
||||||
{
|
|
||||||
m_x = new sample_t[in * m_channels];
|
|
||||||
m_y = new sample_t[out * m_channels];
|
|
||||||
|
|
||||||
memset(m_x, 0, sizeof(sample_t) * in * m_channels);
|
|
||||||
memset(m_y, 0, sizeof(sample_t) * out * m_channels);
|
|
||||||
}
|
|
||||||
|
|
||||||
AUD_BaseIIRFilterReader::~AUD_BaseIIRFilterReader()
|
|
||||||
{
|
|
||||||
delete[] m_x;
|
|
||||||
delete[] m_y;
|
|
||||||
}
|
|
||||||
|
|
||||||
void AUD_BaseIIRFilterReader::read(int & length, sample_t* & buffer)
|
|
||||||
{
|
|
||||||
sample_t* buf;
|
|
||||||
|
|
||||||
int samplesize = AUD_SAMPLE_SIZE(m_reader->getSpecs());
|
|
||||||
|
|
||||||
m_reader->read(length, buf);
|
|
||||||
|
|
||||||
if(m_buffer.getSize() < length * samplesize)
|
|
||||||
m_buffer.resize(length * samplesize);
|
|
||||||
|
|
||||||
buffer = m_buffer.getBuffer();
|
|
||||||
|
|
||||||
for(m_channel = 0; m_channel < m_channels; m_channel++)
|
|
||||||
{
|
|
||||||
for(int i = 0; i < length; i++)
|
|
||||||
{
|
|
||||||
m_x[m_xpos * CC] = buf[i * CC];
|
|
||||||
m_y[m_ypos * CC] = buffer[i * CC] = filter();
|
|
||||||
|
|
||||||
m_xpos = (m_xpos + 1) % m_xlen;
|
|
||||||
m_ypos = (m_ypos + 1) % m_ylen;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,114 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* ***** BEGIN LGPL LICENSE BLOCK *****
|
|
||||||
*
|
|
||||||
* Copyright 2009 Jörg Hermann Müller
|
|
||||||
*
|
|
||||||
* This file is part of AudaSpace.
|
|
||||||
*
|
|
||||||
* AudaSpace is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* AudaSpace is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
|
||||||
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* ***** END LGPL LICENSE BLOCK *****
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef AUD_BASEIIRFILTERREADER
|
|
||||||
#define AUD_BASEIIRFILTERREADER
|
|
||||||
|
|
||||||
#include "AUD_EffectReader.h"
|
|
||||||
#include "AUD_Buffer.h"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This class is a base class for infinite impulse response filters.
|
|
||||||
*/
|
|
||||||
class AUD_BaseIIRFilterReader : public AUD_EffectReader
|
|
||||||
{
|
|
||||||
private:
|
|
||||||
/**
|
|
||||||
* Channel count.
|
|
||||||
*/
|
|
||||||
const int m_channels;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Length of input samples needed.
|
|
||||||
*/
|
|
||||||
const int m_xlen;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Length of output samples needed.
|
|
||||||
*/
|
|
||||||
const int m_ylen;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The playback buffer.
|
|
||||||
*/
|
|
||||||
AUD_Buffer m_buffer;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The last in samples array.
|
|
||||||
*/
|
|
||||||
sample_t* m_x;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The last out samples array.
|
|
||||||
*/
|
|
||||||
sample_t* m_y;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Position of the current input sample in the input array.
|
|
||||||
*/
|
|
||||||
int m_xpos;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Position of the current output sample in the output array.
|
|
||||||
*/
|
|
||||||
int m_ypos;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Current channel.
|
|
||||||
*/
|
|
||||||
int m_channel;
|
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_BaseIIRFilterReader(const AUD_BaseIIRFilterReader&);
|
|
||||||
AUD_BaseIIRFilterReader& operator=(const AUD_BaseIIRFilterReader&);
|
|
||||||
|
|
||||||
protected:
|
|
||||||
/**
|
|
||||||
* Creates a new base IIR filter reader.
|
|
||||||
* \param reader The reader to read from.
|
|
||||||
* \param in The count of past input samples needed.
|
|
||||||
* \param out The count of past output samples needed.
|
|
||||||
*/
|
|
||||||
AUD_BaseIIRFilterReader(AUD_IReader* reader, int in, int out);
|
|
||||||
|
|
||||||
public:
|
|
||||||
inline sample_t x(int pos)
|
|
||||||
{
|
|
||||||
return m_x[(m_xpos + pos + m_xlen) % m_xlen * m_channels + m_channel];
|
|
||||||
}
|
|
||||||
|
|
||||||
inline sample_t y(int pos)
|
|
||||||
{
|
|
||||||
return m_y[(m_ypos + pos + m_ylen) % m_ylen * m_channels + m_channel];
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual ~AUD_BaseIIRFilterReader();
|
|
||||||
|
|
||||||
virtual void read(int & length, sample_t* & buffer);
|
|
||||||
|
|
||||||
virtual sample_t filter()=0;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif //AUD_BASEIIRFILTERREADER
|
|
@@ -24,49 +24,26 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "AUD_ButterworthFactory.h"
|
#include "AUD_ButterworthFactory.h"
|
||||||
#include "AUD_IIRFilterReader.h"
|
#include "AUD_ButterworthReader.h"
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
|
|
||||||
#ifndef M_PI
|
|
||||||
#define M_PI 3.14159265358979323846
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define BWPB41 0.76536686473
|
|
||||||
#define BWPB42 1.84775906502
|
|
||||||
|
|
||||||
AUD_ButterworthFactory::AUD_ButterworthFactory(AUD_IFactory* factory,
|
AUD_ButterworthFactory::AUD_ButterworthFactory(AUD_IFactory* factory,
|
||||||
float frequency) :
|
float frequency) :
|
||||||
AUD_EffectFactory(factory),
|
AUD_EffectFactory(factory),
|
||||||
m_frequency(frequency)
|
m_frequency(frequency) {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
AUD_IReader* AUD_ButterworthFactory::createReader() const
|
AUD_ButterworthFactory::AUD_ButterworthFactory(float frequency) :
|
||||||
|
AUD_EffectFactory(0),
|
||||||
|
m_frequency(frequency) {}
|
||||||
|
|
||||||
|
AUD_IReader* AUD_ButterworthFactory::createReader()
|
||||||
{
|
{
|
||||||
AUD_IReader* reader = getReader();
|
AUD_IReader* reader = getReader();
|
||||||
|
|
||||||
// calculate coefficients
|
if(reader != 0)
|
||||||
float omega = 2 * tan(m_frequency * M_PI / reader->getSpecs().rate);
|
{
|
||||||
float o2 = omega * omega;
|
reader = new AUD_ButterworthReader(reader, m_frequency);
|
||||||
float o4 = o2 * o2;
|
AUD_NEW("reader")
|
||||||
float x1 = o2 + 2 * BWPB41 * omega + 4;
|
}
|
||||||
float x2 = o2 + 2 * BWPB42 * omega + 4;
|
|
||||||
float y1 = o2 - 2 * BWPB41 * omega + 4;
|
|
||||||
float y2 = o2 - 2 * BWPB42 * omega + 4;
|
|
||||||
float o228 = 2 * o2 - 8;
|
|
||||||
float norm = x1 * x2;
|
|
||||||
std::vector<float> a, b;
|
|
||||||
a.push_back(1);
|
|
||||||
a.push_back((x1 + x2) * o228 / norm);
|
|
||||||
a.push_back((x1 * y2 + x2 * y1 + o228 * o228) / norm);
|
|
||||||
a.push_back((y1 + y2) * o228 / norm);
|
|
||||||
a.push_back(y1 * y2 / norm);
|
|
||||||
b.push_back(o4 / norm);
|
|
||||||
b.push_back(4 * o4 / norm);
|
|
||||||
b.push_back(6 * o4 / norm);
|
|
||||||
b.push_back(b[1]);
|
|
||||||
b.push_back(b[0]);
|
|
||||||
|
|
||||||
return new AUD_IIRFilterReader(reader, b, a);
|
return reader;
|
||||||
}
|
}
|
||||||
|
@@ -37,11 +37,7 @@ private:
|
|||||||
/**
|
/**
|
||||||
* The attack value in seconds.
|
* The attack value in seconds.
|
||||||
*/
|
*/
|
||||||
const float m_frequency;
|
float m_frequency;
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_ButterworthFactory(const AUD_ButterworthFactory&);
|
|
||||||
AUD_ButterworthFactory& operator=(const AUD_ButterworthFactory&);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
@@ -51,7 +47,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
AUD_ButterworthFactory(AUD_IFactory* factory, float frequency);
|
AUD_ButterworthFactory(AUD_IFactory* factory, float frequency);
|
||||||
|
|
||||||
virtual AUD_IReader* createReader() const;
|
/**
|
||||||
|
* Creates a new butterworth factory.
|
||||||
|
* \param frequency The cutoff frequency.
|
||||||
|
*/
|
||||||
|
AUD_ButterworthFactory(float frequency);
|
||||||
|
|
||||||
|
virtual AUD_IReader* createReader();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //AUD_BUTTERWORTHFACTORY
|
#endif //AUD_BUTTERWORTHFACTORY
|
||||||
|
124
intern/audaspace/FX/AUD_ButterworthReader.cpp
Normal file
124
intern/audaspace/FX/AUD_ButterworthReader.cpp
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
/*
|
||||||
|
* $Id$
|
||||||
|
*
|
||||||
|
* ***** BEGIN LGPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* Copyright 2009 Jörg Hermann Müller
|
||||||
|
*
|
||||||
|
* This file is part of AudaSpace.
|
||||||
|
*
|
||||||
|
* AudaSpace is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Lesser General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* AudaSpace is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public License
|
||||||
|
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
* ***** END LGPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "AUD_ButterworthReader.h"
|
||||||
|
#include "AUD_Buffer.h"
|
||||||
|
|
||||||
|
#include <cstring>
|
||||||
|
#include <cmath>
|
||||||
|
|
||||||
|
#ifndef M_PI
|
||||||
|
#define M_PI 3.14159265358979323846
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define BWPB41 0.76536686473
|
||||||
|
#define BWPB42 1.84775906502
|
||||||
|
#define CC channels + channel
|
||||||
|
|
||||||
|
AUD_ButterworthReader::AUD_ButterworthReader(AUD_IReader* reader,
|
||||||
|
float frequency) :
|
||||||
|
AUD_EffectReader(reader)
|
||||||
|
{
|
||||||
|
AUD_Specs specs = reader->getSpecs();
|
||||||
|
int samplesize = AUD_SAMPLE_SIZE(specs);
|
||||||
|
|
||||||
|
m_buffer = new AUD_Buffer(); AUD_NEW("buffer")
|
||||||
|
|
||||||
|
m_outvalues = new AUD_Buffer(samplesize * 5); AUD_NEW("buffer")
|
||||||
|
memset(m_outvalues->getBuffer(), 0, samplesize * 5);
|
||||||
|
|
||||||
|
m_invalues = new AUD_Buffer(samplesize * 5); AUD_NEW("buffer")
|
||||||
|
memset(m_invalues->getBuffer(), 0, samplesize * 5);
|
||||||
|
|
||||||
|
m_position = 0;
|
||||||
|
|
||||||
|
// calculate coefficients
|
||||||
|
float omega = 2 * tan(frequency * M_PI / specs.rate);
|
||||||
|
float o2 = omega * omega;
|
||||||
|
float o4 = o2 * o2;
|
||||||
|
float x1 = o2 + 2 * BWPB41 * omega + 4;
|
||||||
|
float x2 = o2 + 2 * BWPB42 * omega + 4;
|
||||||
|
float y1 = o2 - 2 * BWPB41 * omega + 4;
|
||||||
|
float y2 = o2 - 2 * BWPB42 * omega + 4;
|
||||||
|
float o228 = 2 * o2 - 8;
|
||||||
|
float norm = x1 * x2;
|
||||||
|
m_coeff[0][0] = 0;
|
||||||
|
m_coeff[0][1] = (x1 + x2) * o228 / norm;
|
||||||
|
m_coeff[0][2] = (x1 * y2 + x2 * y1 + o228 * o228) / norm;
|
||||||
|
m_coeff[0][3] = (y1 + y2) * o228 / norm;
|
||||||
|
m_coeff[0][4] = y1 * y2 / norm;
|
||||||
|
m_coeff[1][4] = m_coeff[1][0] = o4 / norm;
|
||||||
|
m_coeff[1][3] = m_coeff[1][1] = 4 * o4 / norm;
|
||||||
|
m_coeff[1][2] = 6 * o4 / norm;
|
||||||
|
}
|
||||||
|
|
||||||
|
AUD_ButterworthReader::~AUD_ButterworthReader()
|
||||||
|
{
|
||||||
|
delete m_buffer; AUD_DELETE("buffer")
|
||||||
|
|
||||||
|
delete m_outvalues; AUD_DELETE("buffer")
|
||||||
|
delete m_invalues; AUD_DELETE("buffer");
|
||||||
|
}
|
||||||
|
|
||||||
|
void AUD_ButterworthReader::read(int & length, sample_t* & buffer)
|
||||||
|
{
|
||||||
|
sample_t* buf;
|
||||||
|
sample_t* outvalues;
|
||||||
|
sample_t* invalues;
|
||||||
|
|
||||||
|
outvalues = m_outvalues->getBuffer();
|
||||||
|
invalues = m_invalues->getBuffer();
|
||||||
|
|
||||||
|
AUD_Specs specs = m_reader->getSpecs();
|
||||||
|
|
||||||
|
m_reader->read(length, buf);
|
||||||
|
|
||||||
|
if(m_buffer->getSize() < length * AUD_SAMPLE_SIZE(specs))
|
||||||
|
m_buffer->resize(length * AUD_SAMPLE_SIZE(specs));
|
||||||
|
|
||||||
|
buffer = m_buffer->getBuffer();
|
||||||
|
int channels = specs.channels;
|
||||||
|
|
||||||
|
for(int channel = 0; channel < channels; channel++)
|
||||||
|
{
|
||||||
|
for(int i = 0; i < length; i++)
|
||||||
|
{
|
||||||
|
invalues[m_position * CC] = buf[i * CC];
|
||||||
|
outvalues[m_position * CC] = 0;
|
||||||
|
|
||||||
|
for(int j = 0; j < 4; j++)
|
||||||
|
{
|
||||||
|
outvalues[m_position * CC] += m_coeff[1][j] *
|
||||||
|
invalues[((m_position + j) % 5) * CC] -
|
||||||
|
m_coeff[0][j] *
|
||||||
|
outvalues[((m_position + j) % 5) * CC];
|
||||||
|
}
|
||||||
|
|
||||||
|
buffer[i * CC] = outvalues[m_position * CC];
|
||||||
|
|
||||||
|
m_position = (m_position + 4) % 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
83
intern/audaspace/FX/AUD_ButterworthReader.h
Normal file
83
intern/audaspace/FX/AUD_ButterworthReader.h
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
/*
|
||||||
|
* $Id$
|
||||||
|
*
|
||||||
|
* ***** BEGIN LGPL LICENSE BLOCK *****
|
||||||
|
*
|
||||||
|
* Copyright 2009 Jörg Hermann Müller
|
||||||
|
*
|
||||||
|
* This file is part of AudaSpace.
|
||||||
|
*
|
||||||
|
* AudaSpace is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU Lesser General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* AudaSpace is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public License
|
||||||
|
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
* ***** END LGPL LICENSE BLOCK *****
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef AUD_BUTTERWORTHREADER
|
||||||
|
#define AUD_BUTTERWORTHREADER
|
||||||
|
|
||||||
|
#include "AUD_EffectReader.h"
|
||||||
|
class AUD_Buffer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class represents a butterworth filter.
|
||||||
|
*/
|
||||||
|
class AUD_ButterworthReader : public AUD_EffectReader
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
/**
|
||||||
|
* The playback buffer.
|
||||||
|
*/
|
||||||
|
AUD_Buffer *m_buffer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The last out values buffer.
|
||||||
|
*/
|
||||||
|
AUD_Buffer *m_outvalues;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The last in values buffer.
|
||||||
|
*/
|
||||||
|
AUD_Buffer *m_invalues;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The position for buffer cycling.
|
||||||
|
*/
|
||||||
|
int m_position;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter coefficients.
|
||||||
|
*/
|
||||||
|
float m_coeff[2][5];
|
||||||
|
|
||||||
|
public:
|
||||||
|
/**
|
||||||
|
* Creates a new butterworth reader.
|
||||||
|
* \param reader The reader to read from.
|
||||||
|
* \param attack The attack value in seconds.
|
||||||
|
* \param release The release value in seconds.
|
||||||
|
* \param threshold The threshold value.
|
||||||
|
* \param arthreshold The attack/release threshold value.
|
||||||
|
* \exception AUD_Exception Thrown if the reader specified is NULL.
|
||||||
|
*/
|
||||||
|
AUD_ButterworthReader(AUD_IReader* reader, float frequency);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Destroys the reader.
|
||||||
|
*/
|
||||||
|
virtual ~AUD_ButterworthReader();
|
||||||
|
|
||||||
|
virtual void read(int & length, sample_t* & buffer);
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif //AUD_BUTTERWORTHREADER
|
@@ -1,83 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* ***** BEGIN LGPL LICENSE BLOCK *****
|
|
||||||
*
|
|
||||||
* Copyright 2009 Jörg Hermann Müller
|
|
||||||
*
|
|
||||||
* This file is part of AudaSpace.
|
|
||||||
*
|
|
||||||
* AudaSpace is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* AudaSpace is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
|
||||||
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* ***** END LGPL LICENSE BLOCK *****
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef AUD_CALLBACKIIRFILTERREADER
|
|
||||||
#define AUD_CALLBACKIIRFILTERREADER
|
|
||||||
|
|
||||||
#include "AUD_BaseIIRFilterReader.h"
|
|
||||||
#include "AUD_Buffer.h"
|
|
||||||
|
|
||||||
class AUD_CallbackIIRFilterReader;
|
|
||||||
|
|
||||||
typedef sample_t (*doFilterIIR)(AUD_CallbackIIRFilterReader*, void*);
|
|
||||||
typedef void (*endFilterIIR)(void*);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This class provides an interface for infinite impulse response filters via a
|
|
||||||
* callback filter function.
|
|
||||||
*/
|
|
||||||
class AUD_CallbackIIRFilterReader : public AUD_BaseIIRFilterReader
|
|
||||||
{
|
|
||||||
private:
|
|
||||||
/**
|
|
||||||
* Filter function.
|
|
||||||
*/
|
|
||||||
const doFilterIIR m_filter;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* End filter function.
|
|
||||||
*/
|
|
||||||
const endFilterIIR m_endFilter;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Data pointer.
|
|
||||||
*/
|
|
||||||
void* m_data;
|
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_CallbackIIRFilterReader(const AUD_CallbackIIRFilterReader&);
|
|
||||||
AUD_CallbackIIRFilterReader& operator=(const AUD_CallbackIIRFilterReader&);
|
|
||||||
|
|
||||||
public:
|
|
||||||
/**
|
|
||||||
* Creates a new callback IIR filter reader.
|
|
||||||
* \param reader The reader to read from.
|
|
||||||
* \param in The count of past input samples needed.
|
|
||||||
* \param out The count of past output samples needed.
|
|
||||||
* \param doFilter The filter callback.
|
|
||||||
* \param endFilter The finishing callback.
|
|
||||||
* \param data Data pointer for the callbacks.
|
|
||||||
*/
|
|
||||||
AUD_CallbackIIRFilterReader(AUD_IReader* reader, int in, int out,
|
|
||||||
doFilterIIR doFilter,
|
|
||||||
endFilterIIR endFilter = 0,
|
|
||||||
void* data = 0);
|
|
||||||
|
|
||||||
virtual ~AUD_CallbackIIRFilterReader();
|
|
||||||
|
|
||||||
virtual sample_t filter();
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif //AUD_CALLBACKIIRFILTERREADER
|
|
@@ -29,16 +29,30 @@
|
|||||||
|
|
||||||
AUD_DelayFactory::AUD_DelayFactory(AUD_IFactory* factory, float delay) :
|
AUD_DelayFactory::AUD_DelayFactory(AUD_IFactory* factory, float delay) :
|
||||||
AUD_EffectFactory(factory),
|
AUD_EffectFactory(factory),
|
||||||
m_delay(delay)
|
m_delay(delay) {}
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
float AUD_DelayFactory::getDelay() const
|
AUD_DelayFactory::AUD_DelayFactory(float delay) :
|
||||||
|
AUD_EffectFactory(0),
|
||||||
|
m_delay(delay) {}
|
||||||
|
|
||||||
|
float AUD_DelayFactory::getDelay()
|
||||||
{
|
{
|
||||||
return m_delay;
|
return m_delay;
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_IReader* AUD_DelayFactory::createReader() const
|
void AUD_DelayFactory::setDelay(float delay)
|
||||||
{
|
{
|
||||||
return new AUD_DelayReader(getReader(), m_delay);
|
m_delay = delay;
|
||||||
|
}
|
||||||
|
|
||||||
|
AUD_IReader* AUD_DelayFactory::createReader()
|
||||||
|
{
|
||||||
|
AUD_IReader* reader = getReader();
|
||||||
|
|
||||||
|
if(reader != 0)
|
||||||
|
{
|
||||||
|
reader = new AUD_DelayReader(reader, m_delay); AUD_NEW("reader")
|
||||||
|
}
|
||||||
|
|
||||||
|
return reader;
|
||||||
}
|
}
|
||||||
|
@@ -37,11 +37,7 @@ private:
|
|||||||
/**
|
/**
|
||||||
* The delay in samples.
|
* The delay in samples.
|
||||||
*/
|
*/
|
||||||
const float m_delay;
|
float m_delay;
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_DelayFactory(const AUD_DelayFactory&);
|
|
||||||
AUD_DelayFactory& operator=(const AUD_DelayFactory&);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
@@ -49,14 +45,26 @@ public:
|
|||||||
* \param factory The input factory.
|
* \param factory The input factory.
|
||||||
* \param delay The desired delay in seconds.
|
* \param delay The desired delay in seconds.
|
||||||
*/
|
*/
|
||||||
AUD_DelayFactory(AUD_IFactory* factory, float delay = 0);
|
AUD_DelayFactory(AUD_IFactory* factory = 0, float delay = 0);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a new delay factory.
|
||||||
|
* \param delay The desired delay in seconds.
|
||||||
|
*/
|
||||||
|
AUD_DelayFactory(float delay);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the delay in seconds.
|
* Returns the delay in seconds.
|
||||||
*/
|
*/
|
||||||
float getDelay() const;
|
float getDelay();
|
||||||
|
|
||||||
virtual AUD_IReader* createReader() const;
|
/**
|
||||||
|
* Sets the delay.
|
||||||
|
* \param delay The new delay value in seconds.
|
||||||
|
*/
|
||||||
|
void setDelay(float delay);
|
||||||
|
|
||||||
|
virtual AUD_IReader* createReader();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //AUD_DELAYFACTORY
|
#endif //AUD_DELAYFACTORY
|
||||||
|
@@ -24,19 +24,28 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "AUD_DelayReader.h"
|
#include "AUD_DelayReader.h"
|
||||||
|
#include "AUD_Buffer.h"
|
||||||
|
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
AUD_DelayReader::AUD_DelayReader(AUD_IReader* reader, float delay) :
|
AUD_DelayReader::AUD_DelayReader(AUD_IReader* reader, float delay) :
|
||||||
AUD_EffectReader(reader),
|
AUD_EffectReader(reader)
|
||||||
m_delay(int(delay * reader->getSpecs().rate)),
|
|
||||||
m_remdelay(int(delay * reader->getSpecs().rate)),
|
|
||||||
m_empty(true)
|
|
||||||
{
|
{
|
||||||
|
m_delay = (int)(delay * reader->getSpecs().rate);
|
||||||
|
m_remdelay = m_delay;
|
||||||
|
m_buffer = new AUD_Buffer(); AUD_NEW("buffer")
|
||||||
|
}
|
||||||
|
|
||||||
|
AUD_DelayReader::~AUD_DelayReader()
|
||||||
|
{
|
||||||
|
delete m_buffer; AUD_DELETE("buffer")
|
||||||
}
|
}
|
||||||
|
|
||||||
void AUD_DelayReader::seek(int position)
|
void AUD_DelayReader::seek(int position)
|
||||||
{
|
{
|
||||||
|
if(position < 0)
|
||||||
|
return;
|
||||||
|
|
||||||
if(position < m_delay)
|
if(position < m_delay)
|
||||||
{
|
{
|
||||||
m_remdelay = m_delay - position;
|
m_remdelay = m_delay - position;
|
||||||
@@ -49,18 +58,18 @@ void AUD_DelayReader::seek(int position)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_DelayReader::getLength() const
|
int AUD_DelayReader::getLength()
|
||||||
{
|
{
|
||||||
int len = m_reader->getLength();
|
int len = m_reader->getLength();
|
||||||
if(len < 0)
|
if(len < 0)
|
||||||
return len;
|
return len;
|
||||||
return len + m_delay;
|
return len+m_delay;
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_DelayReader::getPosition() const
|
int AUD_DelayReader::getPosition()
|
||||||
{
|
{
|
||||||
if(m_remdelay > 0)
|
if(m_remdelay > 0)
|
||||||
return m_delay - m_remdelay;
|
return m_delay-m_remdelay;
|
||||||
return m_reader->getPosition() + m_delay;
|
return m_reader->getPosition() + m_delay;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -71,41 +80,26 @@ void AUD_DelayReader::read(int & length, sample_t* & buffer)
|
|||||||
AUD_Specs specs = m_reader->getSpecs();
|
AUD_Specs specs = m_reader->getSpecs();
|
||||||
int samplesize = AUD_SAMPLE_SIZE(specs);
|
int samplesize = AUD_SAMPLE_SIZE(specs);
|
||||||
|
|
||||||
if(m_buffer.getSize() < length * samplesize)
|
if(m_buffer->getSize() < length * samplesize)
|
||||||
{
|
m_buffer->resize(length * samplesize);
|
||||||
m_buffer.resize(length * samplesize);
|
|
||||||
m_empty = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
buffer = m_buffer.getBuffer();
|
|
||||||
|
|
||||||
if(length > m_remdelay)
|
if(length > m_remdelay)
|
||||||
{
|
{
|
||||||
if(!m_empty)
|
memset(m_buffer->getBuffer(), 0, m_remdelay * samplesize);
|
||||||
memset(buffer, 0, m_remdelay * samplesize);
|
|
||||||
|
|
||||||
int len = length - m_remdelay;
|
int len = length - m_remdelay;
|
||||||
sample_t* buf;
|
m_reader->read(len, buffer);
|
||||||
m_reader->read(len, buf);
|
memcpy(m_buffer->getBuffer() + m_remdelay * specs.channels,
|
||||||
|
buffer, len * samplesize);
|
||||||
memcpy(buffer + m_remdelay * specs.channels,
|
|
||||||
buf, len * samplesize);
|
|
||||||
|
|
||||||
if(len < length-m_remdelay)
|
if(len < length-m_remdelay)
|
||||||
length = m_remdelay + len;
|
length = m_remdelay + len;
|
||||||
|
|
||||||
m_remdelay = 0;
|
m_remdelay = 0;
|
||||||
m_empty = false;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(!m_empty)
|
memset(m_buffer->getBuffer(), 0, length * samplesize);
|
||||||
{
|
|
||||||
memset(buffer, 0, length * samplesize);
|
|
||||||
m_empty = true;
|
|
||||||
}
|
|
||||||
m_remdelay -= length;
|
m_remdelay -= length;
|
||||||
}
|
}
|
||||||
|
buffer = m_buffer->getBuffer();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
m_reader->read(length, buffer);
|
m_reader->read(length, buffer);
|
||||||
|
@@ -27,7 +27,7 @@
|
|||||||
#define AUD_DELAYREADER
|
#define AUD_DELAYREADER
|
||||||
|
|
||||||
#include "AUD_EffectReader.h"
|
#include "AUD_EffectReader.h"
|
||||||
#include "AUD_Buffer.h"
|
class AUD_Buffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class reads another reader and changes it's delay.
|
* This class reads another reader and changes it's delay.
|
||||||
@@ -38,38 +38,35 @@ private:
|
|||||||
/**
|
/**
|
||||||
* The playback buffer.
|
* The playback buffer.
|
||||||
*/
|
*/
|
||||||
AUD_Buffer m_buffer;
|
AUD_Buffer *m_buffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The delay level.
|
* The delay level.
|
||||||
*/
|
*/
|
||||||
const int m_delay;
|
int m_delay;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The remaining delay for playback.
|
* The remaining delay for playback.
|
||||||
*/
|
*/
|
||||||
int m_remdelay;
|
int m_remdelay;
|
||||||
|
|
||||||
/**
|
|
||||||
* Whether the buffer is currently filled with zeros.
|
|
||||||
*/
|
|
||||||
bool m_empty;
|
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_DelayReader(const AUD_DelayReader&);
|
|
||||||
AUD_DelayReader& operator=(const AUD_DelayReader&);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* Creates a new delay reader.
|
* Creates a new delay reader.
|
||||||
* \param reader The reader to read from.
|
* \param reader The reader to read from.
|
||||||
* \param delay The delay in seconds.
|
* \param delay The delay in seconds.
|
||||||
|
* \exception AUD_Exception Thrown if the reader specified is NULL.
|
||||||
*/
|
*/
|
||||||
AUD_DelayReader(AUD_IReader* reader, float delay);
|
AUD_DelayReader(AUD_IReader* reader, float delay);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Destroys the reader.
|
||||||
|
*/
|
||||||
|
virtual ~AUD_DelayReader();
|
||||||
|
|
||||||
virtual void seek(int position);
|
virtual void seek(int position);
|
||||||
virtual int getLength() const;
|
virtual int getLength();
|
||||||
virtual int getPosition() const;
|
virtual int getPosition();
|
||||||
virtual void read(int & length, sample_t* & buffer);
|
virtual void read(int & length, sample_t* & buffer);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -1,50 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* ***** BEGIN LGPL LICENSE BLOCK *****
|
|
||||||
*
|
|
||||||
* Copyright 2009 Jörg Hermann Müller
|
|
||||||
*
|
|
||||||
* This file is part of AudaSpace.
|
|
||||||
*
|
|
||||||
* AudaSpace is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* AudaSpace is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU Lesser General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
|
||||||
* along with AudaSpace. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
* ***** END LGPL LICENSE BLOCK *****
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "AUD_DoubleFactory.h"
|
|
||||||
#include "AUD_DoubleReader.h"
|
|
||||||
|
|
||||||
AUD_DoubleFactory::AUD_DoubleFactory(AUD_IFactory* factory1, AUD_IFactory* factory2) :
|
|
||||||
m_factory1(factory1), m_factory2(factory2)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
AUD_IReader* AUD_DoubleFactory::createReader() const
|
|
||||||
{
|
|
||||||
AUD_IReader* reader1 = m_factory1->createReader();
|
|
||||||
AUD_IReader* reader2;
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
reader2 = m_factory2->createReader();
|
|
||||||
}
|
|
||||||
catch(AUD_Exception&)
|
|
||||||
{
|
|
||||||
delete reader1;
|
|
||||||
throw;
|
|
||||||
}
|
|
||||||
|
|
||||||
return new AUD_DoubleReader(reader1, reader2);
|
|
||||||
}
|
|
@@ -24,51 +24,80 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "AUD_DoubleReader.h"
|
#include "AUD_DoubleReader.h"
|
||||||
|
#include "AUD_Buffer.h"
|
||||||
|
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
static const char* specs_error = "AUD_DoubleReader: Both readers have to have "
|
|
||||||
"the same specs.";
|
|
||||||
|
|
||||||
AUD_DoubleReader::AUD_DoubleReader(AUD_IReader* reader1,
|
AUD_DoubleReader::AUD_DoubleReader(AUD_IReader* reader1,
|
||||||
AUD_IReader* reader2) :
|
AUD_IReader* reader2) :
|
||||||
m_reader1(reader1), m_reader2(reader2), m_finished1(false)
|
m_reader1(reader1), m_reader2(reader2)
|
||||||
{
|
{
|
||||||
AUD_Specs s1, s2;
|
try
|
||||||
s1 = reader1->getSpecs();
|
|
||||||
s2 = reader2->getSpecs();
|
|
||||||
if(memcmp(&s1, &s2, sizeof(AUD_Specs)) != 0)
|
|
||||||
{
|
{
|
||||||
delete reader1;
|
if(!reader1)
|
||||||
delete reader2;
|
AUD_THROW(AUD_ERROR_READER);
|
||||||
AUD_THROW(AUD_ERROR_SPECS, specs_error);
|
|
||||||
|
if(!reader2)
|
||||||
|
AUD_THROW(AUD_ERROR_READER);
|
||||||
|
|
||||||
|
AUD_Specs s1, s2;
|
||||||
|
s1 = reader1->getSpecs();
|
||||||
|
s2 = reader2->getSpecs();
|
||||||
|
if(memcmp(&s1, &s2, sizeof(AUD_Specs)) != 0)
|
||||||
|
AUD_THROW(AUD_ERROR_READER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
catch(AUD_Exception)
|
||||||
|
{
|
||||||
|
if(reader1)
|
||||||
|
{
|
||||||
|
delete reader1; AUD_DELETE("reader")
|
||||||
|
}
|
||||||
|
if(reader2)
|
||||||
|
{
|
||||||
|
delete reader2; AUD_DELETE("reader")
|
||||||
|
}
|
||||||
|
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_buffer = new AUD_Buffer(); AUD_NEW("buffer")
|
||||||
|
m_finished1 = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_DoubleReader::~AUD_DoubleReader()
|
AUD_DoubleReader::~AUD_DoubleReader()
|
||||||
{
|
{
|
||||||
delete m_reader1;
|
delete m_reader1; AUD_DELETE("reader")
|
||||||
delete m_reader2;
|
delete m_reader2; AUD_DELETE("reader")
|
||||||
|
delete m_buffer; AUD_DELETE("buffer")
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AUD_DoubleReader::isSeekable() const
|
bool AUD_DoubleReader::isSeekable()
|
||||||
{
|
{
|
||||||
return m_reader1->isSeekable() && m_reader2->isSeekable();
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AUD_DoubleReader::seek(int position)
|
void AUD_DoubleReader::seek(int position)
|
||||||
{
|
{
|
||||||
m_reader1->seek(position);
|
int length1 = m_reader1->getLength();
|
||||||
|
|
||||||
int pos1 = m_reader1->getPosition();
|
if(position < 0)
|
||||||
|
position = 0;
|
||||||
|
|
||||||
if((m_finished1 = (pos1 < position)))
|
if(position < length1)
|
||||||
m_reader2->seek(position - pos1);
|
{
|
||||||
else
|
m_reader1->seek(position);
|
||||||
m_reader2->seek(0);
|
m_reader2->seek(0);
|
||||||
|
m_finished1 = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_reader2->seek(position-length1);
|
||||||
|
m_finished1 = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_DoubleReader::getLength() const
|
int AUD_DoubleReader::getLength()
|
||||||
{
|
{
|
||||||
int len1 = m_reader1->getLength();
|
int len1 = m_reader1->getLength();
|
||||||
int len2 = m_reader2->getLength();
|
int len2 = m_reader2->getLength();
|
||||||
@@ -77,45 +106,49 @@ int AUD_DoubleReader::getLength() const
|
|||||||
return len1 + len2;
|
return len1 + len2;
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_DoubleReader::getPosition() const
|
int AUD_DoubleReader::getPosition()
|
||||||
{
|
{
|
||||||
return m_reader1->getPosition() + m_reader2->getPosition();
|
return m_reader1->getPosition() + m_reader2->getPosition();
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_Specs AUD_DoubleReader::getSpecs() const
|
AUD_Specs AUD_DoubleReader::getSpecs()
|
||||||
{
|
{
|
||||||
return m_reader1->getSpecs();
|
return m_reader1->getSpecs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AUD_ReaderType AUD_DoubleReader::getType()
|
||||||
|
{
|
||||||
|
if(m_reader1->getType() == AUD_TYPE_BUFFER &&
|
||||||
|
m_reader2->getType() == AUD_TYPE_BUFFER)
|
||||||
|
return AUD_TYPE_BUFFER;
|
||||||
|
return AUD_TYPE_STREAM;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool AUD_DoubleReader::notify(AUD_Message &message)
|
||||||
|
{
|
||||||
|
return m_reader1->notify(message) | m_reader2->notify(message);
|
||||||
|
}
|
||||||
|
|
||||||
void AUD_DoubleReader::read(int & length, sample_t* & buffer)
|
void AUD_DoubleReader::read(int & length, sample_t* & buffer)
|
||||||
{
|
{
|
||||||
if(!m_finished1)
|
if(!m_finished1)
|
||||||
{
|
{
|
||||||
int len = length;
|
int len = length;
|
||||||
m_reader1->read(len, buffer);
|
m_reader1->read(len, buffer);
|
||||||
|
|
||||||
if(len < length)
|
if(len < length)
|
||||||
{
|
{
|
||||||
AUD_Specs specs = m_reader1->getSpecs();
|
AUD_Specs specs = m_reader1->getSpecs();
|
||||||
int samplesize = AUD_SAMPLE_SIZE(specs);
|
int samplesize = AUD_SAMPLE_SIZE(specs);
|
||||||
|
if(m_buffer->getSize() < length * samplesize)
|
||||||
if(m_buffer.getSize() < length * samplesize)
|
m_buffer->resize(length * samplesize);
|
||||||
m_buffer.resize(length * samplesize);
|
memcpy(m_buffer->getBuffer(), buffer, len * samplesize);
|
||||||
|
|
||||||
sample_t* buf = buffer;
|
|
||||||
buffer = m_buffer.getBuffer();
|
|
||||||
|
|
||||||
memcpy(buffer, buf, len * samplesize);
|
|
||||||
|
|
||||||
len = length - len;
|
len = length - len;
|
||||||
length -= len;
|
length -= len;
|
||||||
m_reader2->read(len, buf);
|
m_reader2->read(len, buffer);
|
||||||
|
memcpy(m_buffer->getBuffer() + length * specs.channels, buffer,
|
||||||
memcpy(buffer + length * specs.channels, buf,
|
|
||||||
len * samplesize);
|
len * samplesize);
|
||||||
|
|
||||||
length += len;
|
length += len;
|
||||||
|
buffer = m_buffer->getBuffer();
|
||||||
m_finished1 = true;
|
m_finished1 = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -27,7 +27,7 @@
|
|||||||
#define AUD_DOUBLEREADER
|
#define AUD_DOUBLEREADER
|
||||||
|
|
||||||
#include "AUD_IReader.h"
|
#include "AUD_IReader.h"
|
||||||
#include "AUD_Buffer.h"
|
class AUD_Buffer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This reader plays two readers with the same specs sequently.
|
* This reader plays two readers with the same specs sequently.
|
||||||
@@ -53,18 +53,15 @@ private:
|
|||||||
/**
|
/**
|
||||||
* The playback buffer for the intersecting part.
|
* The playback buffer for the intersecting part.
|
||||||
*/
|
*/
|
||||||
AUD_Buffer m_buffer;
|
AUD_Buffer* m_buffer;
|
||||||
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_DoubleReader(const AUD_DoubleReader&);
|
|
||||||
AUD_DoubleReader& operator=(const AUD_DoubleReader&);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* Creates a new ping pong reader.
|
* Creates a new ping pong reader.
|
||||||
* \param reader1 The first reader to read from.
|
* \param reader1 The first reader to read from.
|
||||||
* \param reader2 The second reader to read from.
|
* \param reader2 The second reader to read from.
|
||||||
* \exception AUD_Exception Thrown if the specs from the readers differ.
|
* \exception AUD_Exception Thrown if one of the reader specified is NULL
|
||||||
|
* or the specs from the readers differ.
|
||||||
*/
|
*/
|
||||||
AUD_DoubleReader(AUD_IReader* reader1, AUD_IReader* reader2);
|
AUD_DoubleReader(AUD_IReader* reader1, AUD_IReader* reader2);
|
||||||
|
|
||||||
@@ -73,11 +70,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
virtual ~AUD_DoubleReader();
|
virtual ~AUD_DoubleReader();
|
||||||
|
|
||||||
virtual bool isSeekable() const;
|
virtual bool isSeekable();
|
||||||
virtual void seek(int position);
|
virtual void seek(int position);
|
||||||
virtual int getLength() const;
|
virtual int getLength();
|
||||||
virtual int getPosition() const;
|
virtual int getPosition();
|
||||||
virtual AUD_Specs getSpecs() const;
|
virtual AUD_Specs getSpecs();
|
||||||
|
virtual AUD_ReaderType getType();
|
||||||
|
virtual bool notify(AUD_Message &message);
|
||||||
virtual void read(int & length, sample_t* & buffer);
|
virtual void read(int & length, sample_t* & buffer);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -26,16 +26,25 @@
|
|||||||
#include "AUD_EffectFactory.h"
|
#include "AUD_EffectFactory.h"
|
||||||
#include "AUD_IReader.h"
|
#include "AUD_IReader.h"
|
||||||
|
|
||||||
|
AUD_IReader* AUD_EffectFactory::getReader()
|
||||||
|
{
|
||||||
|
if(m_factory != 0)
|
||||||
|
return m_factory->createReader();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
AUD_EffectFactory::AUD_EffectFactory(AUD_IFactory* factory)
|
AUD_EffectFactory::AUD_EffectFactory(AUD_IFactory* factory)
|
||||||
{
|
{
|
||||||
m_factory = factory;
|
m_factory = factory;
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_EffectFactory::~AUD_EffectFactory()
|
void AUD_EffectFactory::setFactory(AUD_IFactory* factory)
|
||||||
{
|
{
|
||||||
|
m_factory = factory;
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_IFactory* AUD_EffectFactory::getFactory() const
|
AUD_IFactory* AUD_EffectFactory::getFactory()
|
||||||
{
|
{
|
||||||
return m_factory;
|
return m_factory;
|
||||||
}
|
}
|
||||||
|
@@ -34,11 +34,6 @@
|
|||||||
*/
|
*/
|
||||||
class AUD_EffectFactory : public AUD_IFactory
|
class AUD_EffectFactory : public AUD_IFactory
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_EffectFactory(const AUD_EffectFactory&);
|
|
||||||
AUD_EffectFactory& operator=(const AUD_EffectFactory&);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/**
|
/**
|
||||||
* If there is no reader it is created out of this factory.
|
* If there is no reader it is created out of this factory.
|
||||||
@@ -49,12 +44,9 @@ protected:
|
|||||||
* Returns the reader created out of the factory.
|
* Returns the reader created out of the factory.
|
||||||
* This method can be used for the createReader function of the implementing
|
* This method can be used for the createReader function of the implementing
|
||||||
* classes.
|
* classes.
|
||||||
* \return The reader created out of the factory.
|
* \return The reader created out of the factory or NULL if there is none.
|
||||||
*/
|
*/
|
||||||
inline AUD_IReader* getReader() const
|
AUD_IReader* getReader();
|
||||||
{
|
|
||||||
return m_factory->createReader();
|
|
||||||
}
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
@@ -66,13 +58,19 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Destroys the factory.
|
* Destroys the factory.
|
||||||
*/
|
*/
|
||||||
virtual ~AUD_EffectFactory();
|
virtual ~AUD_EffectFactory() {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the input factory.
|
||||||
|
* \param factory The input factory.
|
||||||
|
*/
|
||||||
|
void setFactory(AUD_IFactory* factory);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the saved factory.
|
* Returns the saved factory.
|
||||||
* \return The factory or NULL if there has no factory been saved.
|
* \return The factory or NULL if there has no factory been saved.
|
||||||
*/
|
*/
|
||||||
AUD_IFactory* getFactory() const;
|
AUD_IFactory* getFactory();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //AUD_EFFECTFACTORY
|
#endif //AUD_EFFECTFACTORY
|
||||||
|
@@ -27,15 +27,17 @@
|
|||||||
|
|
||||||
AUD_EffectReader::AUD_EffectReader(AUD_IReader* reader)
|
AUD_EffectReader::AUD_EffectReader(AUD_IReader* reader)
|
||||||
{
|
{
|
||||||
|
if(!reader)
|
||||||
|
AUD_THROW(AUD_ERROR_READER);
|
||||||
m_reader = reader;
|
m_reader = reader;
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_EffectReader::~AUD_EffectReader()
|
AUD_EffectReader::~AUD_EffectReader()
|
||||||
{
|
{
|
||||||
delete m_reader;
|
delete m_reader; AUD_DELETE("reader")
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AUD_EffectReader::isSeekable() const
|
bool AUD_EffectReader::isSeekable()
|
||||||
{
|
{
|
||||||
return m_reader->isSeekable();
|
return m_reader->isSeekable();
|
||||||
}
|
}
|
||||||
@@ -45,21 +47,31 @@ void AUD_EffectReader::seek(int position)
|
|||||||
m_reader->seek(position);
|
m_reader->seek(position);
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_EffectReader::getLength() const
|
int AUD_EffectReader::getLength()
|
||||||
{
|
{
|
||||||
return m_reader->getLength();
|
return m_reader->getLength();
|
||||||
}
|
}
|
||||||
|
|
||||||
int AUD_EffectReader::getPosition() const
|
int AUD_EffectReader::getPosition()
|
||||||
{
|
{
|
||||||
return m_reader->getPosition();
|
return m_reader->getPosition();
|
||||||
}
|
}
|
||||||
|
|
||||||
AUD_Specs AUD_EffectReader::getSpecs() const
|
AUD_Specs AUD_EffectReader::getSpecs()
|
||||||
{
|
{
|
||||||
return m_reader->getSpecs();
|
return m_reader->getSpecs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AUD_ReaderType AUD_EffectReader::getType()
|
||||||
|
{
|
||||||
|
return m_reader->getType();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool AUD_EffectReader::notify(AUD_Message &message)
|
||||||
|
{
|
||||||
|
return m_reader->notify(message);
|
||||||
|
}
|
||||||
|
|
||||||
void AUD_EffectReader::read(int & length, sample_t* & buffer)
|
void AUD_EffectReader::read(int & length, sample_t* & buffer)
|
||||||
{
|
{
|
||||||
m_reader->read(length, buffer);
|
m_reader->read(length, buffer);
|
||||||
|
@@ -34,11 +34,6 @@
|
|||||||
*/
|
*/
|
||||||
class AUD_EffectReader : public AUD_IReader
|
class AUD_EffectReader : public AUD_IReader
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// hide copy constructor and operator=
|
|
||||||
AUD_EffectReader(const AUD_EffectReader&);
|
|
||||||
AUD_EffectReader& operator=(const AUD_EffectReader&);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/**
|
/**
|
||||||
* The reader to read from.
|
* The reader to read from.
|
||||||
@@ -49,6 +44,7 @@ public:
|
|||||||
/**
|
/**
|
||||||
* Creates a new effect reader.
|
* Creates a new effect reader.
|
||||||
* \param reader The reader to read from.
|
* \param reader The reader to read from.
|
||||||
|
* \exception AUD_Exception Thrown if the reader specified is NULL.
|
||||||
*/
|
*/
|
||||||
AUD_EffectReader(AUD_IReader* reader);
|
AUD_EffectReader(AUD_IReader* reader);
|
||||||
|
|
||||||
@@ -57,11 +53,13 @@ public:
|
|||||||
*/
|
*/
|
||||||
virtual ~AUD_EffectReader();
|
virtual ~AUD_EffectReader();
|
||||||
|
|
||||||
virtual bool isSeekable() const;
|
virtual bool isSeekable();
|
||||||
virtual void seek(int position);
|
virtual void seek(int position);
|
||||||
virtual int getLength() const;
|
virtual int getLength();
|
||||||
virtual int getPosition() const;
|
virtual int getPosition();
|
||||||
virtual AUD_Specs getSpecs() const;
|
virtual AUD_Specs getSpecs();
|
||||||
|
virtual AUD_ReaderType getType();
|
||||||
|
virtual bool notify(AUD_Message &message);
|
||||||
virtual void read(int & length, sample_t* & buffer);
|
virtual void read(int & length, sample_t* & buffer);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user