Compare commits
379 Commits
feature/co
...
main/gingo
Author | SHA1 | Date |
---|---|---|
Nuno Gonçalves (Ulukyn) | 7df9b2f255 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 8697553956 | 3 years ago |
nimetu | d2508c8b15 | 3 years ago |
Nuno Gonçalves (Ulukyn) | d385dedabc | 3 years ago |
Nuno Gonçalves (Ulukyn) | ae33eb99bf | 3 years ago |
Nuno Gonçalves (Ulukyn) | 2b88fd66ba | 3 years ago |
Ben Saine | be5bfd992c | 3 years ago |
Nuno Gonçalves (Ulukyn) | 9a24e7557f | 3 years ago |
Nuno Gonçalves (Ulukyn) | 8708fd74c6 | 3 years ago |
Nuno | db86219eab | 3 years ago |
Nuno Gonçalves (Ulukyn) | c6ec8a8d7d | 3 years ago |
Ben Saine | 357934fcde | 3 years ago |
Nuno Gonçalves (Ulukyn) | e784c3aab1 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 22b4c074e8 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 255257a7f5 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 855410f3d0 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 71a2c6f6e8 | 3 years ago |
Ben Saine | 3b2553e3dd | 3 years ago |
Nuno Gonçalves (Ulukyn) | 54c7e09a10 | 3 years ago |
Meelis Mägi | aebab35cad | 3 years ago |
Nuno Gonçalves (Ulukyn) | 7cb6d4287e | 3 years ago |
Meelis Mägi | 663de25cbe | 3 years ago |
Nuno | a7811f553e | 3 years ago |
Nuno | 743bf7f601 | 3 years ago |
Nuno Gonçalves (Ulukyn) | e891dddd1e | 3 years ago |
Meelis Mägi | e185ddc19f | 3 years ago |
Nuno Gonçalves (Ulukyn) | b12c7ac25c | 3 years ago |
Meelis Mägi | 9cff221a1e | 3 years ago |
Nuno Gonçalves (Ulukyn) | 219bf0e066 | 3 years ago |
Meelis Mägi | c012e7ffcf | 3 years ago |
Ben Saine | 82b724fe88 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 9f2d2e7dda | 3 years ago |
Ben Saine | 5df8ec43a0 | 3 years ago |
Nimetu | 7c82f26bac | 3 years ago |
Nimetu | 3521d2d02e | 3 years ago |
Nuno | 88280ef02f | 3 years ago |
Nimetu | 7344c98e6e | 3 years ago |
Nimetu | 005e714f7d | 3 years ago |
Nimetu | 37abc25dcb | 3 years ago |
kaetemi | ec41ba753f | 3 years ago |
kaetemi | 63b4ea547a | 3 years ago |
Nimetu | c31747a939 | 3 years ago |
Nimetu | 8aa1aed3bd | 3 years ago |
Nimetu | 19c5b582bc | 3 years ago |
Nuno | 993d749dba | 3 years ago |
Nimetu | f6ac9bc4c1 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 9e3064871a | 3 years ago |
Nimetu | 36e83e32f4 | 3 years ago |
Nuno | 0df3879358 | 3 years ago |
Nuno | b7e5ac18e9 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 80623a20cc | 3 years ago |
Nuno Gonçalves (Ulukyn) | efbceec12e | 3 years ago |
Nimetu | 013aad73d2 | 3 years ago |
Nuno | de638dfe6c | 3 years ago |
Nuno | 177e2395a5 | 3 years ago |
Nuno | 0e2ec103ab | 3 years ago |
Nuno | 574efe0c36 | 3 years ago |
Nuno | e43515e88a | 3 years ago |
Nuno | 41794a1122 | 3 years ago |
Nimetu | c47db9bf94 | 3 years ago |
Nimetu | b325126b20 | 3 years ago |
Nuno | 35a7a6628b | 3 years ago |
Nimetu | aa34e88101 | 3 years ago |
Nuno | b667ccb6b6 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 568d8ab895 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 7f01b21d11 | 3 years ago |
Nuno Gonçalves (Ulukyn) | d436d5616a | 3 years ago |
Nuno Gonçalves (Ulukyn) | 973e183f2e | 3 years ago |
Nuno | 5c56c87d09 | 3 years ago |
Nuno | c616010246 | 3 years ago |
Nuno | 700a9aadb7 | 3 years ago |
Nuno Gonçalves (Ulukyn) | a246f3e5d0 | 3 years ago |
Meelis Mägi | bbc291b9d3 | 3 years ago |
Nuno Gonçalves (Ulukyn) | a64981a92a | 3 years ago |
Nuno Gonçalves (Ulukyn) | 17c9dd061a | 3 years ago |
Ben Saine | b72a71e87c | 3 years ago |
bensaine | b4ce38099f | 3 years ago |
Nimetu | 9eaf7d3550 | 3 years ago |
Nimetu | 26827d2c66 | 3 years ago |
Nuno Gonçalves (Ulukyn) | b6781af51e | 3 years ago |
Nuno Gonçalves (Ulukyn) | e1b611f219 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 8d7932a271 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 0cc7a35dad | 3 years ago |
Nuno | 2304445c39 | 3 years ago |
Ulu Kyn | 701d7309e5 | 3 years ago |
Ulu Kyn | f3d0c9dc5b | 3 years ago |
Ulu Kyn | a71f022c1a | 3 years ago |
Nuno | cc3d42737e | 3 years ago |
Nuno | 1e590f1a69 | 3 years ago |
Nuno | f450b57be0 | 3 years ago |
Nuno | fbb343ad51 | 3 years ago |
bensaine | e1527b724b | 3 years ago |
bensaine | c3a633ae50 | 3 years ago |
Nuno | a76e8e1a64 | 3 years ago |
Nuno | 2df441225c | 3 years ago |
Nuno | 56cbc51005 | 3 years ago |
Nuno | 7ce53abffe | 3 years ago |
Nuno | 4c4028822e | 3 years ago |
Nuno | b4323b6515 | 3 years ago |
Nuno | 9923062417 | 3 years ago |
Nuno | 8f74ba7851 | 3 years ago |
Nuno | d6f367b2ba | 3 years ago |
Nuno | 3f5c3c5d98 | 3 years ago |
Ben Saine | 24b0c99034 | 3 years ago |
Nuno | 3dc2aa1bb6 | 3 years ago |
Nuno | 543be4bc4c | 3 years ago |
Nuno | 80007bc602 | 3 years ago |
Nuno | cf9855a6d5 | 3 years ago |
Nuno | bec18c661d | 3 years ago |
Nuno | 4a06fe15dd | 3 years ago |
Ben Saine | 111d4a7a0a | 3 years ago |
Nuno Gonçalves (Ulukyn) | 5d91c33ddd | 3 years ago |
Nuno Gonçalves (Ulukyn) | 01a2508567 | 3 years ago |
Nuno Gonçalves (Ulukyn) | b86b9283b2 | 3 years ago |
Ulukyn | 7bed39665e | 3 years ago |
Nuno | 6a1ea5ff59 | 3 years ago |
Ulukyn | 0e2a14c822 | 3 years ago |
Nuno Gonçalves (Ulukyn) | f9dafe720c | 3 years ago |
Nuno Gonçalves (Ulukyn) | 72691a3379 | 3 years ago |
Nuno Gonçalves (Ulukyn) | bc991c8146 | 3 years ago |
Nuno | 64bff20e03 | 4 years ago |
Nuno | 1eb651a946 | 4 years ago |
Nuno | 7da7d8cbbe | 4 years ago |
Nuno | 0ee26a6488 | 4 years ago |
Nuno | 9e404a5965 | 4 years ago |
Nuno | 97099768dc | 4 years ago |
Nuno | a443848924 | 4 years ago |
Nuno | ca0dc24aa0 | 4 years ago |
Nuno | 6d68e96dd4 | 4 years ago |
Nuno | 83a021e1e6 | 4 years ago |
Nuno | 431b1ea339 | 4 years ago |
Nuno | cc5bd3ddae | 4 years ago |
Nuno | 5613eb855e | 4 years ago |
Nuno | 74c643f147 | 4 years ago |
Nuno | 3d43c3c626 | 4 years ago |
Nuno | 6bd853f7bf | 4 years ago |
Nuno | c5b34c927e | 4 years ago |
Nuno | 72f7cbe4fa | 4 years ago |
Nuno | 9d2fc8c630 | 4 years ago |
Nuno | b4e54d5ad4 | 4 years ago |
Nuno | 54fd022501 | 4 years ago |
Nuno | 5fe26ec6d6 | 4 years ago |
Nuno | 40a9e782c3 | 4 years ago |
Nuno | 155e268ece | 4 years ago |
Nuno | d350b1621d | 4 years ago |
Nuno | 22bab29654 | 4 years ago |
Nuno | 5632fffa44 | 4 years ago |
Nuno | 1cc000cc6c | 4 years ago |
Nuno | 6f4319bfcb | 4 years ago |
Nuno | ab958d1891 | 4 years ago |
Nuno | c3c7e15c81 | 4 years ago |
Nuno | 568a7a10a9 | 4 years ago |
Nuno | f886d5eac7 | 4 years ago |
Nuno | 85e788da81 | 4 years ago |
Nuno | 0fb9422426 | 4 years ago |
Nuno | 89065eee3f | 4 years ago |
Nuno | 6651e839f3 | 4 years ago |
Nuno | 62be2ab1fb | 4 years ago |
Nuno | 8c62f4e64c | 4 years ago |
Nuno | 2075bf7443 | 4 years ago |
Nuno | 44caf59afd | 4 years ago |
Nuno | 057cf828f4 | 4 years ago |
Nuno | 8d2071524c | 4 years ago |
Nuno | 98124a3bd5 | 4 years ago |
Nuno | 46ecaac095 | 4 years ago |
Nuno | 06e2840be5 | 4 years ago |
Nuno | bbabe75247 | 4 years ago |
Nuno | b62ddc49d2 | 4 years ago |
Nuno | 690286b2c4 | 4 years ago |
Nuno | ada7dec7d3 | 4 years ago |
Nuno | 53252d40db | 4 years ago |
Nuno | 2b648934ea | 4 years ago |
Nuno | ea212bcba2 | 4 years ago |
Nuno | 281ec4ba60 | 4 years ago |
Nuno | d35ae0db80 | 4 years ago |
Nuno | 3dbdbad80a | 4 years ago |
Nuno | b8668813df | 4 years ago |
Nuno | 6f9dce0fdc | 4 years ago |
Nuno | fd8b2436ff | 4 years ago |
Nuno | 588bd79535 | 4 years ago |
Nuno | ced0ca3e1c | 4 years ago |
Nuno | c327303222 | 4 years ago |
Nuno | 864eba1629 | 4 years ago |
Nuno | 29c3651063 | 4 years ago |
Nuno | acfb37103f | 4 years ago |
Nuno | 3d38a8ca89 | 4 years ago |
Nuno | dab6321caa | 4 years ago |
Nuno | 07390fed37 | 4 years ago |
Nuno | ec98cd2e65 | 4 years ago |
Nuno | ad52a23437 | 4 years ago |
Nuno | c78d1d934f | 4 years ago |
Nuno | 677933ed98 | 4 years ago |
Nuno | 541529bb3f | 4 years ago |
Nuno | a273f78851 | 4 years ago |
Nuno | cb207bdd9d | 4 years ago |
Nuno | 8ec332fefa | 4 years ago |
Nuno | 2f776eab9c | 4 years ago |
Nuno | 04aa097781 | 4 years ago |
Nuno | 3996327394 | 4 years ago |
Nuno | 27e553ccb5 | 4 years ago |
Nuno | e021c09051 | 4 years ago |
Nuno | 52ff736ee9 | 4 years ago |
Nuno | d2c56f4b7c | 4 years ago |
Nuno | 2bdc6fb7ae | 4 years ago |
Nuno | a848eab99c | 4 years ago |
Ulukyn | 5d4e81e24c | 4 years ago |
Ulukyn | c73fff2ca6 | 4 years ago |
Riasan | 8cd685d1f4 | 5 years ago |
Ulukyn | 97dc744759 | 5 years ago |
Ulukyn | 012339dcf1 | 5 years ago |
Ulukyn | 884c65fc26 | 5 years ago |
Ulukyn | 4138a99fb7 | 5 years ago |
Heernis | 3c052d5fcc | 5 years ago |
Ulukyn | fd2cc53d68 | 5 years ago |
Ulukyn | 6ae34e08d9 | 5 years ago |
Ulukyn | 80568ade1c | 5 years ago |
Ulukyn | a8016b6a59 | 5 years ago |
Ulukyn | ada3c09a51 | 5 years ago |
Ulukyn | f396858ea9 | 5 years ago |
Ulukyn | eae8f9999d | 5 years ago |
Ulukyn | f3009c4178 | 5 years ago |
Ulukyn | 820bd23cf6 | 5 years ago |
Ulukyn | c883ea63e0 | 5 years ago |
Ulukyn | 791a6641d9 | 5 years ago |
Heernis | bcc107e187 | 5 years ago |
Ulukyn | aa15fd4e98 | 5 years ago |
Ulukyn | 0f8673beac | 5 years ago |
Ulukyn | 219914b4bf | 5 years ago |
Ulukyn | fb4aebf506 | 5 years ago |
Ulukyn | 81832ae0af | 5 years ago |
Ulukyn | e32c852d96 | 5 years ago |
Ulukyn | f3a02d4f2a | 5 years ago |
Ulukyn | 07ff703de2 | 5 years ago |
Ulukyn | f6116a813b | 5 years ago |
Ulukyn | bf0042173f | 5 years ago |
Ulukyn | 681568ce08 | 5 years ago |
Ulukyn | 47863be96e | 5 years ago |
Ulukyn | ade5b6e702 | 5 years ago |
Ulukyn | 92090056ea | 5 years ago |
Ulukyn | ce8b05b284 | 5 years ago |
Heernis | f11ed5ea49 | 5 years ago |
Ulukyn | 11086f9b44 | 5 years ago |
Ulukyn | 311e739d98 | 5 years ago |
Ulukyn | f6f7e553fc | 5 years ago |
Ulukyn | 255271cde5 | 5 years ago |
Ulukyn | 6d233cdc2c | 5 years ago |
Ulukyn | f337a28ae2 | 5 years ago |
Ulukyn | a36694614f | 5 years ago |
Ulukyn | bcb8080d42 | 5 years ago |
Ulukyn | 8d0172e1fb | 5 years ago |
Ulukyn | f06eebf26c | 5 years ago |
Ulukyn | 31ecfdf181 | 5 years ago |
Ulukyn | df6c0969c2 | 5 years ago |
Ulukyn | 590abe8bfd | 5 years ago |
Ulukyn | ac6afb7b2f | 5 years ago |
Ulukyn | cb2201a69a | 5 years ago |
Ulukyn | d77d3b7102 | 5 years ago |
Ulukyn | 609d6b470f | 5 years ago |
Ulukyn | 414011ee37 | 5 years ago |
Ulukyn | 9f61f08e74 | 5 years ago |
Ulukyn | aacbcf1e65 | 5 years ago |
Ulukyn | c838136d1a | 5 years ago |
Ulukyn | 0455d07125 | 5 years ago |
Ulukyn | 3966020294 | 5 years ago |
Ulukyn | eeac201cf3 | 5 years ago |
Ulukyn | 51776f9203 | 5 years ago |
Ulukyn | 7b8a4e2210 | 5 years ago |
Ulukyn | 762dcd15e2 | 5 years ago |
Ulukyn | ac43b90ba0 | 5 years ago |
Ulukyn | df3c7c2f2e | 5 years ago |
Ulukyn | 780b9c7e63 | 5 years ago |
Ulukyn | f4ee795fde | 5 years ago |
Ulukyn | c521de1d48 | 5 years ago |
Riasan | d5ceb97fa0 | 5 years ago |
Ulukyn | cdc33730ad | 5 years ago |
Ulukyn | 305a27f0db | 5 years ago |
Nuno Gonçalves | de69dfc285 | 5 years ago |
Nuno Gonçalves | f5776610f1 | 6 years ago |
Inky | 11f2044c7d | 6 years ago |
Inky | 64e26124f8 | 6 years ago |
Riasan | 4f08aa3082 | 6 years ago |
ulukyn | 72d636ded1 | 6 years ago |
Riasan | cba4d7948d | 6 years ago |
ulukyn | 739d000055 | 6 years ago |
ulukyn | 963162855c | 6 years ago |
ulukyn | 89ef083460 | 6 years ago |
Inky | 795606628f | 6 years ago |
Inky | e572cc3e83 | 6 years ago |
ulukyn | bf34575037 | 6 years ago |
ulukyn | 57a32f10ee | 6 years ago |
ulukyn | 6c9a8da387 | 6 years ago |
Riasan | 2aa065d109 | 6 years ago |
ulukyn | 41b0fac726 | 6 years ago |
ulukyn | b7ec1c68ac | 6 years ago |
ulukyn | cc6159a9d5 | 6 years ago |
Inky | 438b521ece | 6 years ago |
Ulukyn | f5f4411a00 | 6 years ago |
Riasan | 29cb0c579f | 6 years ago |
ulukyn | 8434cb1a34 | 6 years ago |
ulukyn | 39004eb54b | 6 years ago |
Riasan | d2df2043c5 | 6 years ago |
Riasan | d8cfde63f8 | 6 years ago |
Nuno Gonçalves | 617682afe6 | 6 years ago |
Nuno Gonçalves | c9d19b4879 | 6 years ago |
ulukyn | 0b507cba7b | 6 years ago |
ulukyn | db5a7b141a | 6 years ago |
ulukyn | 478e2a646f | 6 years ago |
ulukyn | 020c59153d | 6 years ago |
ulukyn | 4f1008a413 | 6 years ago |
Riasan | f14c4d7746 | 6 years ago |
ulukyn | 23fe859e19 | 6 years ago |
Riasan | c6978f769f | 6 years ago |
Riasan | 319ae23064 | 6 years ago |
Riasan | 3e2e6cb696 | 6 years ago |
Riasan | 3c66bf2ba2 | 6 years ago |
Riasan | 1390a45f71 | 6 years ago |
ulukyn | d599fa4c14 | 6 years ago |
ulukyn | b4d09e0774 | 6 years ago |
ulukyn | 6f65197479 | 6 years ago |
ulukyn | 569599281b | 6 years ago |
ulukyn | 10562b720b | 6 years ago |
ulukyn | 1fc73a8079 | 6 years ago |
ulukyn | f821ff6973 | 6 years ago |
Riasan | d51b3b2eae | 6 years ago |
Riasan | 90c99b0b0e | 6 years ago |
Riasan | 48b2e9799e | 6 years ago |
Riasan | 9c680f43ce | 6 years ago |
Riasan | 537865cdb9 | 7 years ago |
ulukyn | 60feb8bc57 | 7 years ago |
ulukyn | dd6057ad71 | 7 years ago |
Riasan | 882e067fc0 | 7 years ago |
Riasan | a82a018f40 | 7 years ago |
Riasan | eb1c367464 | 7 years ago |
teanwen | 4ca7ea8957 | 7 years ago |
ulukyn | 6c731f049e | 7 years ago |
ulukyn | 363a59d238 | 7 years ago |
Riasan | b59b8a51a9 | 7 years ago |
ulukyn | 5648981968 | 7 years ago |
Riasan | c1510a8fb8 | 7 years ago |
Riasan | beb3dca614 | 7 years ago |
Riasan | 80204090d4 | 7 years ago |
Riasan | 57e55ed250 | 7 years ago |
Riasan | 5601d84d60 | 7 years ago |
Riasan | 2b24a51439 | 7 years ago |
Riasan | 3343f46e11 | 7 years ago |
Riasan | 82e5e1a4fc | 7 years ago |
Riasan | 19285bc8e9 | 7 years ago |
Riasan | cdbd2e1f47 | 7 years ago |
Riasan | f8a252abcf | 7 years ago |
Ul U'Kyn | 453c81bc7c | 7 years ago |
Riasan | 56f450782f | 7 years ago |
Riasan | dda9dff6ba | 7 years ago |
Riasan | e0266dedcb | 7 years ago |
Riasan | 28fd5a7265 | 7 years ago |
ulukyn | 085770a098 | 7 years ago |
ulukyn | a5f98add80 | 7 years ago |
ulukyn | bb667c736c | 7 years ago |
ulukyn | d824ff5baf | 7 years ago |
ulukyn | 6cc550732b | 7 years ago |
ulukyn | fcfb17c784 | 7 years ago |
Riasan | 22b06fdb3e | 7 years ago |
Riasan | 05baa720e9 | 7 years ago |
Riasan | 8be4abf0fe | 7 years ago |
Riasan | f47f2b4801 | 7 years ago |
Riasan | 7c8eb4b3c6 | 7 years ago |
Riasan | 146ccbbe4c | 7 years ago |
Ul U'Kyn | eaf08e863e | 7 years ago |
Riasan | 5afbc26916 | 7 years ago |
Ul U'Kyn | b5234633b4 | 7 years ago |
Riasan | c60705a297 | 7 years ago |
Ul U'Kyn | 9d4829ec54 | 7 years ago |
Ul U'Kyn | c37ef9592e | 7 years ago |
Ul U'Kyn | af3fe227c8 | 8 years ago |
Ul U'Kyn | 0e122c76ba | 8 years ago |
Nuno Gonçalves | 14c7013348 | 8 years ago |
Nuno Gonçalves | fbf0d664fc | 8 years ago |
Nuno Gonçalves | 0fd0934111 | 8 years ago |
Nuno Gonçalves | aadf864e4e | 8 years ago |
vl | f86da6ec78 | 9 years ago |
@ -1,18 +0,0 @@
|
||||
*.cpp ident
|
||||
*.h ident
|
||||
|
||||
# Set the default behavior, in case people don't have core.autocrlf set.
|
||||
* text=auto
|
||||
|
||||
# Explicitly declare text files you want to always be normalized and converted
|
||||
# to native line endings on checkout.
|
||||
*.c text
|
||||
*.h text
|
||||
*.cs text
|
||||
*.jade text
|
||||
*.json text
|
||||
*.js text
|
||||
*.css text
|
||||
*.htm text
|
||||
*.txt text
|
||||
*.sh text eol=lf
|
@ -1,99 +0,0 @@
|
||||
# Locate Lua library
|
||||
# This module defines
|
||||
# LUA54_FOUND, if false, do not try to link to Lua
|
||||
# LUA_LIBRARIES
|
||||
# LUA_INCLUDE_DIR, where to find lua.h
|
||||
# LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
|
||||
#
|
||||
# Note that the expected include convention is
|
||||
# #include "lua.h"
|
||||
# and not
|
||||
# #include <lua/lua.h>
|
||||
# This is because, the lua location is not standardized and may exist
|
||||
# in locations other than lua/
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2007-2009 Kitware, Inc.
|
||||
#
|
||||
# Distributed under the OSI-approved BSD License (the "License");
|
||||
# see accompanying file Copyright.txt for details.
|
||||
#
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the License for more information.
|
||||
#=============================================================================
|
||||
# (To distribute this file outside of CMake, substitute the full
|
||||
# License text for the above reference.)
|
||||
|
||||
find_path(LUA_INCLUDE_DIR lua.h
|
||||
HINTS
|
||||
ENV LUA_DIR
|
||||
PATH_SUFFIXES include/lua54 include/lua5.4 include/lua-5.4 include/lua include
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw # Fink
|
||||
/opt/local # DarwinPorts
|
||||
/opt/csw # Blastwave
|
||||
/opt
|
||||
)
|
||||
|
||||
FIND_LIBRARY(LUA_LIBRARY
|
||||
NAMES lua54 lua5.4 lua-5.4 lua
|
||||
HINTS
|
||||
$ENV{LUA_DIR}
|
||||
PATH_SUFFIXES lib64 lib
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
)
|
||||
|
||||
FIND_LIBRARY(LUA_LIBRARY_DEBUG
|
||||
NAMES lua54-d lua5.4-d lua-5.4-d lua-d lua54d lua5.4d lua-5.4d luad
|
||||
HINTS
|
||||
$ENV{LUA_DIR}
|
||||
PATH_SUFFIXES lib64 lib
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
)
|
||||
|
||||
if(LUA_LIBRARY)
|
||||
# include the math library for Unix
|
||||
if(UNIX AND NOT APPLE AND NOT BEOS)
|
||||
find_library(LUA_MATH_LIBRARY m)
|
||||
set( LUA_LIBRARIES "${LUA_LIBRARY};${LUA_MATH_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||
# For Windows and Mac, don't need to explicitly include the math library
|
||||
else()
|
||||
if (LUA_LIBRARY_DEBUG)
|
||||
set( LUA_LIBRARIES optimized ${LUA_LIBRARY} debug ${LUA_LIBRARY_DEBUG} CACHE STRING "Lua Libraries")
|
||||
else()
|
||||
set( LUA_LIBRARIES "${LUA_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(LUA_INCLUDE_DIR AND EXISTS "${LUA_INCLUDE_DIR}/lua.h")
|
||||
file(STRINGS "${LUA_INCLUDE_DIR}/lua.h" lua_version_str REGEX "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua .+\"")
|
||||
|
||||
string(REGEX REPLACE "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua ([^\"]+)\".*" "\\1" LUA_VERSION_STRING "${lua_version_str}")
|
||||
unset(lua_version_str)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua54
|
||||
REQUIRED_VARS LUA_LIBRARIES LUA_INCLUDE_DIR
|
||||
VERSION_VAR LUA_VERSION_STRING)
|
||||
|
||||
mark_as_advanced(LUA_INCLUDE_DIR LUA_LIBRARIES LUA_LIBRARY LUA_LIBRARY_DEBUG LUA_MATH_LIBRARY)
|
||||
|
@ -0,0 +1,8 @@
|
||||
# This file is parsed by HunterGate command
|
||||
|
||||
hunter_config(luabind
|
||||
VERSION 0.9.1
|
||||
URL "https://github.com/nimetu/luabind/tarball/2fa4606"
|
||||
SHA1 "3b4646bab9f0b2362d7b8d71d78e40deaf3cc747"
|
||||
)
|
||||
|
@ -0,0 +1,537 @@
|
||||
# Copyright (c) 2013-2019, Ruslan Baratov
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are met:
|
||||
#
|
||||
# * Redistributions of source code must retain the above copyright notice, this
|
||||
# list of conditions and the following disclaimer.
|
||||
#
|
||||
# * Redistributions in binary form must reproduce the above copyright notice,
|
||||
# this list of conditions and the following disclaimer in the documentation
|
||||
# and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# This is a gate file to Hunter package manager.
|
||||
# Include this file using `include` command and add package you need, example:
|
||||
#
|
||||
# cmake_minimum_required(VERSION 3.2)
|
||||
#
|
||||
# include("cmake/HunterGate.cmake")
|
||||
# HunterGate(
|
||||
# URL "https://github.com/path/to/hunter/archive.tar.gz"
|
||||
# SHA1 "798501e983f14b28b10cda16afa4de69eee1da1d"
|
||||
# )
|
||||
#
|
||||
# project(MyProject)
|
||||
#
|
||||
# hunter_add_package(Foo)
|
||||
# hunter_add_package(Boo COMPONENTS Bar Baz)
|
||||
#
|
||||
# Projects:
|
||||
# * https://github.com/hunter-packages/gate/
|
||||
# * https://github.com/ruslo/hunter
|
||||
|
||||
option(HUNTER_ENABLED "Enable Hunter package manager support" ON)
|
||||
|
||||
if(HUNTER_ENABLED)
|
||||
if(CMAKE_VERSION VERSION_LESS "3.2")
|
||||
message(
|
||||
FATAL_ERROR
|
||||
"At least CMake version 3.2 required for Hunter dependency management."
|
||||
" Update CMake or set HUNTER_ENABLED to OFF."
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include(CMakeParseArguments) # cmake_parse_arguments
|
||||
|
||||
option(HUNTER_STATUS_PRINT "Print working status" ON)
|
||||
option(HUNTER_STATUS_DEBUG "Print a lot info" OFF)
|
||||
option(HUNTER_TLS_VERIFY "Enable/disable TLS certificate checking on downloads" ON)
|
||||
set(HUNTER_ROOT "" CACHE FILEPATH "Override the HUNTER_ROOT.")
|
||||
|
||||
set(HUNTER_ERROR_PAGE "https://hunter.readthedocs.io/en/latest/reference/errors")
|
||||
|
||||
function(hunter_gate_status_print)
|
||||
if(HUNTER_STATUS_PRINT OR HUNTER_STATUS_DEBUG)
|
||||
foreach(print_message ${ARGV})
|
||||
message(STATUS "[hunter] ${print_message}")
|
||||
endforeach()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_status_debug)
|
||||
if(HUNTER_STATUS_DEBUG)
|
||||
foreach(print_message ${ARGV})
|
||||
string(TIMESTAMP timestamp)
|
||||
message(STATUS "[hunter *** DEBUG *** ${timestamp}] ${print_message}")
|
||||
endforeach()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_error_page error_page)
|
||||
message("------------------------------ ERROR ------------------------------")
|
||||
message(" ${HUNTER_ERROR_PAGE}/${error_page}.html")
|
||||
message("-------------------------------------------------------------------")
|
||||
message("")
|
||||
message(FATAL_ERROR "")
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_internal_error)
|
||||
message("")
|
||||
foreach(print_message ${ARGV})
|
||||
message("[hunter ** INTERNAL **] ${print_message}")
|
||||
endforeach()
|
||||
message("[hunter ** INTERNAL **] [Directory:${CMAKE_CURRENT_LIST_DIR}]")
|
||||
message("")
|
||||
hunter_gate_error_page("error.internal")
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_fatal_error)
|
||||
cmake_parse_arguments(hunter "" "ERROR_PAGE" "" "${ARGV}")
|
||||
if("${hunter_ERROR_PAGE}" STREQUAL "")
|
||||
hunter_gate_internal_error("Expected ERROR_PAGE")
|
||||
endif()
|
||||
message("")
|
||||
foreach(x ${hunter_UNPARSED_ARGUMENTS})
|
||||
message("[hunter ** FATAL ERROR **] ${x}")
|
||||
endforeach()
|
||||
message("[hunter ** FATAL ERROR **] [Directory:${CMAKE_CURRENT_LIST_DIR}]")
|
||||
message("")
|
||||
hunter_gate_error_page("${hunter_ERROR_PAGE}")
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_user_error)
|
||||
hunter_gate_fatal_error(${ARGV} ERROR_PAGE "error.incorrect.input.data")
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_self root version sha1 result)
|
||||
string(COMPARE EQUAL "${root}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("root is empty")
|
||||
endif()
|
||||
|
||||
string(COMPARE EQUAL "${version}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("version is empty")
|
||||
endif()
|
||||
|
||||
string(COMPARE EQUAL "${sha1}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("sha1 is empty")
|
||||
endif()
|
||||
|
||||
string(SUBSTRING "${sha1}" 0 7 archive_id)
|
||||
|
||||
if(EXISTS "${root}/cmake/Hunter")
|
||||
set(hunter_self "${root}")
|
||||
else()
|
||||
set(
|
||||
hunter_self
|
||||
"${root}/_Base/Download/Hunter/${version}/${archive_id}/Unpacked"
|
||||
)
|
||||
endif()
|
||||
|
||||
set("${result}" "${hunter_self}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
# Set HUNTER_GATE_ROOT cmake variable to suitable value.
|
||||
function(hunter_gate_detect_root)
|
||||
# Check CMake variable
|
||||
if(HUNTER_ROOT)
|
||||
set(HUNTER_GATE_ROOT "${HUNTER_ROOT}" PARENT_SCOPE)
|
||||
hunter_gate_status_debug("HUNTER_ROOT detected by cmake variable")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Check environment variable
|
||||
if(DEFINED ENV{HUNTER_ROOT})
|
||||
set(HUNTER_GATE_ROOT "$ENV{HUNTER_ROOT}" PARENT_SCOPE)
|
||||
hunter_gate_status_debug("HUNTER_ROOT detected by environment variable")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Check HOME environment variable
|
||||
if(DEFINED ENV{HOME})
|
||||
set(HUNTER_GATE_ROOT "$ENV{HOME}/.hunter" PARENT_SCOPE)
|
||||
hunter_gate_status_debug("HUNTER_ROOT set using HOME environment variable")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Check SYSTEMDRIVE and USERPROFILE environment variable (windows only)
|
||||
if(WIN32)
|
||||
if(DEFINED ENV{SYSTEMDRIVE})
|
||||
set(HUNTER_GATE_ROOT "$ENV{SYSTEMDRIVE}/.hunter" PARENT_SCOPE)
|
||||
hunter_gate_status_debug(
|
||||
"HUNTER_ROOT set using SYSTEMDRIVE environment variable"
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(DEFINED ENV{USERPROFILE})
|
||||
set(HUNTER_GATE_ROOT "$ENV{USERPROFILE}/.hunter" PARENT_SCOPE)
|
||||
hunter_gate_status_debug(
|
||||
"HUNTER_ROOT set using USERPROFILE environment variable"
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
hunter_gate_fatal_error(
|
||||
"Can't detect HUNTER_ROOT"
|
||||
ERROR_PAGE "error.detect.hunter.root"
|
||||
)
|
||||
endfunction()
|
||||
|
||||
function(hunter_gate_download dir)
|
||||
string(
|
||||
COMPARE
|
||||
NOTEQUAL
|
||||
"$ENV{HUNTER_DISABLE_AUTOINSTALL}"
|
||||
""
|
||||
disable_autoinstall
|
||||
)
|
||||
if(disable_autoinstall AND NOT HUNTER_RUN_INSTALL)
|
||||
hunter_gate_fatal_error(
|
||||
"Hunter not found in '${dir}'"
|
||||
"Set HUNTER_RUN_INSTALL=ON to auto-install it from '${HUNTER_GATE_URL}'"
|
||||
"Settings:"
|
||||
" HUNTER_ROOT: ${HUNTER_GATE_ROOT}"
|
||||
" HUNTER_SHA1: ${HUNTER_GATE_SHA1}"
|
||||
ERROR_PAGE "error.run.install"
|
||||
)
|
||||
endif()
|
||||
string(COMPARE EQUAL "${dir}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("Empty 'dir' argument")
|
||||
endif()
|
||||
|
||||
string(COMPARE EQUAL "${HUNTER_GATE_SHA1}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("HUNTER_GATE_SHA1 empty")
|
||||
endif()
|
||||
|
||||
string(COMPARE EQUAL "${HUNTER_GATE_URL}" "" is_bad)
|
||||
if(is_bad)
|
||||
hunter_gate_internal_error("HUNTER_GATE_URL empty")
|
||||
endif()
|
||||
|
||||
set(done_location "${dir}/DONE")
|
||||
set(sha1_location "${dir}/SHA1")
|
||||
|
||||
set(build_dir "${dir}/Build")
|
||||
set(cmakelists "${dir}/CMakeLists.txt")
|
||||
|
||||
hunter_gate_status_debug("Locking directory: ${dir}")
|
||||
file(LOCK "${dir}" DIRECTORY GUARD FUNCTION)
|
||||
hunter_gate_status_debug("Lock done")
|
||||
|
||||
if(EXISTS "${done_location}")
|
||||
# while waiting for lock other instance can do all the job
|
||||
hunter_gate_status_debug("File '${done_location}' found, skip install")
|
||||
return()
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${build_dir}")
|
||||
file(REMOVE_RECURSE "${cmakelists}")
|
||||
|
||||
file(MAKE_DIRECTORY "${build_dir}") # check directory permissions
|
||||
|
||||
# Disabling languages speeds up a little bit, reduces noise in the output
|
||||
# and avoids path too long windows error
|
||||
file(
|
||||
WRITE
|
||||
"${cmakelists}"
|
||||
"cmake_minimum_required(VERSION 3.2)\n"
|
||||
"project(HunterDownload LANGUAGES NONE)\n"
|
||||
"include(ExternalProject)\n"
|
||||
"ExternalProject_Add(\n"
|
||||
" Hunter\n"
|
||||
" URL\n"
|
||||
" \"${HUNTER_GATE_URL}\"\n"
|
||||
" URL_HASH\n"
|
||||
" SHA1=${HUNTER_GATE_SHA1}\n"
|
||||
" DOWNLOAD_DIR\n"
|
||||
" \"${dir}\"\n"
|
||||
" TLS_VERIFY\n"
|
||||
" ${HUNTER_TLS_VERIFY}\n"
|
||||
" SOURCE_DIR\n"
|
||||
" \"${dir}/Unpacked\"\n"
|
||||
" CONFIGURE_COMMAND\n"
|
||||
" \"\"\n"
|
||||
" BUILD_COMMAND\n"
|
||||
" \"\"\n"
|
||||
" INSTALL_COMMAND\n"
|
||||
" \"\"\n"
|
||||
")\n"
|
||||
)
|
||||
|
||||
if(HUNTER_STATUS_DEBUG)
|
||||
set(logging_params "")
|
||||
else()
|
||||
set(logging_params OUTPUT_QUIET)
|
||||
endif()
|
||||
|
||||
hunter_gate_status_debug("Run generate")
|
||||
|
||||
# Need to add toolchain file too.
|
||||
# Otherwise on Visual Studio + MDD this will fail with error:
|
||||
# "Could not find an appropriate version of the Windows 10 SDK installed on this machine"
|
||||
if(EXISTS "${CMAKE_TOOLCHAIN_FILE}")
|
||||
get_filename_component(absolute_CMAKE_TOOLCHAIN_FILE "${CMAKE_TOOLCHAIN_FILE}" ABSOLUTE)
|
||||
set(toolchain_arg "-DCMAKE_TOOLCHAIN_FILE=${absolute_CMAKE_TOOLCHAIN_FILE}")
|
||||
else()
|
||||
# 'toolchain_arg' can't be empty
|
||||
set(toolchain_arg "-DCMAKE_TOOLCHAIN_FILE=")
|
||||
endif()
|
||||
|
||||
string(COMPARE EQUAL "${CMAKE_MAKE_PROGRAM}" "" no_make)
|
||||
if(no_make)
|
||||
set(make_arg "")
|
||||
else()
|
||||
# Test case: remove Ninja from PATH but set it via CMAKE_MAKE_PROGRAM
|
||||
set(make_arg "-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND
|
||||
"${CMAKE_COMMAND}"
|
||||
"-H${dir}"
|
||||
"-B${build_dir}"
|
||||
"-G${CMAKE_GENERATOR}"
|
||||
"${toolchain_arg}"
|
||||
${make_arg}
|
||||
WORKING_DIRECTORY "${dir}"
|
||||
RESULT_VARIABLE download_result
|
||||
${logging_params}
|
||||
)
|
||||
|
||||
if(NOT download_result EQUAL 0)
|
||||
hunter_gate_internal_error(
|
||||
"Configure project failed."
|
||||
"To reproduce the error run: ${CMAKE_COMMAND} -H${dir} -B${build_dir} -G${CMAKE_GENERATOR} ${toolchain_arg} ${make_arg}"
|
||||
"In directory ${dir}"
|
||||
)
|
||||
endif()
|
||||
|
||||
hunter_gate_status_print(
|
||||
"Initializing Hunter workspace (${HUNTER_GATE_SHA1})"
|
||||
" ${HUNTER_GATE_URL}"
|
||||
" -> ${dir}"
|
||||
)
|
||||
execute_process(
|
||||
COMMAND "${CMAKE_COMMAND}" --build "${build_dir}"
|
||||
WORKING_DIRECTORY "${dir}"
|
||||
RESULT_VARIABLE download_result
|
||||
${logging_params}
|
||||
)
|
||||
|
||||
if(NOT download_result EQUAL 0)
|
||||
hunter_gate_internal_error("Build project failed")
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE "${build_dir}")
|
||||
file(REMOVE_RECURSE "${cmakelists}")
|
||||
|
||||
file(WRITE "${sha1_location}" "${HUNTER_GATE_SHA1}")
|
||||
file(WRITE "${done_location}" "DONE")
|
||||
|
||||
hunter_gate_status_debug("Finished")
|
||||
endfunction()
|
||||
|
||||
# Must be a macro so master file 'cmake/Hunter' can
|
||||
# apply all variables easily just by 'include' command
|
||||
# (otherwise PARENT_SCOPE magic needed)
|
||||
macro(HunterGate)
|
||||
if(HUNTER_GATE_DONE)
|
||||
# variable HUNTER_GATE_DONE set explicitly for external project
|
||||
# (see `hunter_download`)
|
||||
set_property(GLOBAL PROPERTY HUNTER_GATE_DONE YES)
|
||||
endif()
|
||||
|
||||
# First HunterGate command will init Hunter, others will be ignored
|
||||
get_property(_hunter_gate_done GLOBAL PROPERTY HUNTER_GATE_DONE SET)
|
||||
|
||||
if(NOT HUNTER_ENABLED)
|
||||
# Empty function to avoid error "unknown function"
|
||||
function(hunter_add_package)
|
||||
endfunction()
|
||||
|
||||
set(
|
||||
_hunter_gate_disabled_mode_dir
|
||||
"${CMAKE_CURRENT_LIST_DIR}/cmake/Hunter/disabled-mode"
|
||||
)
|
||||
if(EXISTS "${_hunter_gate_disabled_mode_dir}")
|
||||
hunter_gate_status_debug(
|
||||
"Adding \"disabled-mode\" modules: ${_hunter_gate_disabled_mode_dir}"
|
||||
)
|
||||
list(APPEND CMAKE_PREFIX_PATH "${_hunter_gate_disabled_mode_dir}")
|
||||
endif()
|
||||
elseif(_hunter_gate_done)
|
||||
hunter_gate_status_debug("Secondary HunterGate (use old settings)")
|
||||
hunter_gate_self(
|
||||
"${HUNTER_CACHED_ROOT}"
|
||||
"${HUNTER_VERSION}"
|
||||
"${HUNTER_SHA1}"
|
||||
_hunter_self
|
||||
)
|
||||
include("${_hunter_self}/cmake/Hunter")
|
||||
else()
|
||||
set(HUNTER_GATE_LOCATION "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
|
||||
string(COMPARE NOTEQUAL "${PROJECT_NAME}" "" _have_project_name)
|
||||
if(_have_project_name)
|
||||
hunter_gate_fatal_error(
|
||||
"Please set HunterGate *before* 'project' command. "
|
||||
"Detected project: ${PROJECT_NAME}"
|
||||
ERROR_PAGE "error.huntergate.before.project"
|
||||
)
|
||||
endif()
|
||||
|
||||
cmake_parse_arguments(
|
||||
HUNTER_GATE "LOCAL" "URL;SHA1;GLOBAL;FILEPATH" "" ${ARGV}
|
||||
)
|
||||
|
||||
string(COMPARE EQUAL "${HUNTER_GATE_SHA1}" "" _empty_sha1)
|
||||
string(COMPARE EQUAL "${HUNTER_GATE_URL}" "" _empty_url)
|
||||
string(
|
||||
COMPARE
|
||||
NOTEQUAL
|
||||
"${HUNTER_GATE_UNPARSED_ARGUMENTS}"
|
||||
""
|
||||
_have_unparsed
|
||||
)
|
||||
string(COMPARE NOTEQUAL "${HUNTER_GATE_GLOBAL}" "" _have_global)
|
||||
string(COMPARE NOTEQUAL "${HUNTER_GATE_FILEPATH}" "" _have_filepath)
|
||||
|
||||
if(_have_unparsed)
|
||||
hunter_gate_user_error(
|
||||
"HunterGate unparsed arguments: ${HUNTER_GATE_UNPARSED_ARGUMENTS}"
|
||||
)
|
||||
endif()
|
||||
if(_empty_sha1)
|
||||
hunter_gate_user_error("SHA1 suboption of HunterGate is mandatory")
|
||||
endif()
|
||||
if(_empty_url)
|
||||
hunter_gate_user_error("URL suboption of HunterGate is mandatory")
|
||||
endif()
|
||||
if(_have_global)
|
||||
if(HUNTER_GATE_LOCAL)
|
||||
hunter_gate_user_error("Unexpected LOCAL (already has GLOBAL)")
|
||||
endif()
|
||||
if(_have_filepath)
|
||||
hunter_gate_user_error("Unexpected FILEPATH (already has GLOBAL)")
|
||||
endif()
|
||||
endif()
|
||||
if(HUNTER_GATE_LOCAL)
|
||||
if(_have_global)
|
||||
hunter_gate_user_error("Unexpected GLOBAL (already has LOCAL)")
|
||||
endif()
|
||||
if(_have_filepath)
|
||||
hunter_gate_user_error("Unexpected FILEPATH (already has LOCAL)")
|
||||
endif()
|
||||
endif()
|
||||
if(_have_filepath)
|
||||
if(_have_global)
|
||||
hunter_gate_user_error("Unexpected GLOBAL (already has FILEPATH)")
|
||||
endif()
|
||||
if(HUNTER_GATE_LOCAL)
|
||||
hunter_gate_user_error("Unexpected LOCAL (already has FILEPATH)")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
hunter_gate_detect_root() # set HUNTER_GATE_ROOT
|
||||
|
||||
# Beautify path, fix probable problems with windows path slashes
|
||||
get_filename_component(
|
||||
HUNTER_GATE_ROOT "${HUNTER_GATE_ROOT}" ABSOLUTE
|
||||
)
|
||||
hunter_gate_status_debug("HUNTER_ROOT: ${HUNTER_GATE_ROOT}")
|
||||
if(NOT HUNTER_ALLOW_SPACES_IN_PATH)
|
||||
string(FIND "${HUNTER_GATE_ROOT}" " " _contain_spaces)
|
||||
if(NOT _contain_spaces EQUAL -1)
|
||||
hunter_gate_fatal_error(
|
||||
"HUNTER_ROOT (${HUNTER_GATE_ROOT}) contains spaces."
|
||||
"Set HUNTER_ALLOW_SPACES_IN_PATH=ON to skip this error"
|
||||
"(Use at your own risk!)"
|
||||
ERROR_PAGE "error.spaces.in.hunter.root"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
string(
|
||||
REGEX
|
||||
MATCH
|
||||
"[0-9]+\\.[0-9]+\\.[0-9]+[-_a-z0-9]*"
|
||||
HUNTER_GATE_VERSION
|
||||
"${HUNTER_GATE_URL}"
|
||||
)
|
||||
string(COMPARE EQUAL "${HUNTER_GATE_VERSION}" "" _is_empty)
|
||||
if(_is_empty)
|
||||
set(HUNTER_GATE_VERSION "unknown")
|
||||
endif()
|
||||
|
||||
hunter_gate_self(
|
||||
"${HUNTER_GATE_ROOT}"
|
||||
"${HUNTER_GATE_VERSION}"
|
||||
"${HUNTER_GATE_SHA1}"
|
||||
_hunter_self
|
||||
)
|
||||
|
||||
set(_master_location "${_hunter_self}/cmake/Hunter")
|
||||
if(EXISTS "${HUNTER_GATE_ROOT}/cmake/Hunter")
|
||||
# Hunter downloaded manually (e.g. by 'git clone')
|
||||
set(_unused "xxxxxxxxxx")
|
||||
set(HUNTER_GATE_SHA1 "${_unused}")
|
||||
set(HUNTER_GATE_VERSION "${_unused}")
|
||||
else()
|
||||
get_filename_component(_archive_id_location "${_hunter_self}/.." ABSOLUTE)
|
||||
set(_done_location "${_archive_id_location}/DONE")
|
||||
set(_sha1_location "${_archive_id_location}/SHA1")
|
||||
|
||||
# Check Hunter already downloaded by HunterGate
|
||||
if(NOT EXISTS "${_done_location}")
|
||||
hunter_gate_download("${_archive_id_location}")
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS "${_done_location}")
|
||||
hunter_gate_internal_error("hunter_gate_download failed")
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS "${_sha1_location}")
|
||||
hunter_gate_internal_error("${_sha1_location} not found")
|
||||
endif()
|
||||
file(READ "${_sha1_location}" _sha1_value)
|
||||
string(TOLOWER "${_sha1_value}" _sha1_value_lower)
|
||||
string(TOLOWER "${HUNTER_GATE_SHA1}" _HUNTER_GATE_SHA1_lower)
|
||||
string(COMPARE EQUAL "${_sha1_value_lower}" "${_HUNTER_GATE_SHA1_lower}" _is_equal)
|
||||
if(NOT _is_equal)
|
||||
hunter_gate_internal_error(
|
||||
"Short SHA1 collision:"
|
||||
" ${_sha1_value} (from ${_sha1_location})"
|
||||
" ${HUNTER_GATE_SHA1} (HunterGate)"
|
||||
)
|
||||
endif()
|
||||
if(NOT EXISTS "${_master_location}")
|
||||
hunter_gate_user_error(
|
||||
"Master file not found:"
|
||||
" ${_master_location}"
|
||||
"try to update Hunter/HunterGate"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
include("${_master_location}")
|
||||
set_property(GLOBAL PROPERTY HUNTER_GATE_DONE YES)
|
||||
endif()
|
||||
endmacro()
|
@ -1,94 +1,94 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Run all export processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all export processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Export')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the export processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "1_export.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "1_export.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("1_export.log"):
|
||||
os.remove("1_export.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_export.log")
|
||||
shutil.move("log.log", "1_export.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Run all export processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all export processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Export')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the export processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "1_export.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "1_export.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("1_export.log"):
|
||||
os.remove("1_export.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_export.log")
|
||||
shutil.move("log.log", "1_export.log")
|
||||
|
@ -1,94 +1,94 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Run all build processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all build processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Build')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the build processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "2_build.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "2_build.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("2_build.log"):
|
||||
os.remove("2_build.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_build.log")
|
||||
shutil.move("log.log", "2_build.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Run all build processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all build processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Build')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the build processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "2_build.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "2_build.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("2_build.log"):
|
||||
os.remove("2_build.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_build.log")
|
||||
shutil.move("log.log", "2_build.log")
|
||||
|
@ -1,94 +1,94 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Run all install processes
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all install processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Install')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the install processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "3_install.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "3_install.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("3_install.log"):
|
||||
os.remove("3_install.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_install.log")
|
||||
shutil.move("log.log", "3_install.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Run all install processes
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all install processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("configuration")
|
||||
|
||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Install')
|
||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if not args.includeproject == None and not args.excludeproject == None:
|
||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||
exit()
|
||||
|
||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||
exit()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the install processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each project
|
||||
for projectName in ProjectsToProcess:
|
||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||
printLog(log, "PROJECT " + projectName)
|
||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||
os.chdir("processes")
|
||||
try:
|
||||
if not args.includeprocess == None:
|
||||
subprocess.call([ "python", "3_install.py", "--includeprocess" ] + args.includeprocess)
|
||||
elif not args.excludeprocess == None:
|
||||
subprocess.call([ "python", "3_install.py", "--excludeprocess" ] + args.excludeprocess)
|
||||
else:
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
projectLog = open("processes/log.log", "r")
|
||||
projectLogData = projectLog.read()
|
||||
projectLog.close()
|
||||
log.write(projectLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + projectName + "> " + str(e))
|
||||
else:
|
||||
printLog(log, "IGNORE PROJECT " + projectName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("3_install.log"):
|
||||
os.remove("3_install.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_install.log")
|
||||
shutil.move("log.log", "3_install.log")
|
||||
|
@ -1,181 +1,181 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 9_upload.py
|
||||
# \brief Upload data to servers
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Game data build pipeline.
|
||||
# Upload data to servers
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2011 Kaetemi
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
try:
|
||||
from upload import *
|
||||
except ImportError:
|
||||
# Not documenting this. Because we can.
|
||||
printLog(log, "ERROR Upload not configured, bye.")
|
||||
exit()
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Upload data to servers")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
# Not documenting this. Because we can.
|
||||
Psftp = findFileMultiDir(log, ToolDirectories + WindowsExeDllCfgDirectories, UploadPsftpTool)
|
||||
printLog(log, "PSFTP " + Psftp)
|
||||
|
||||
def downloadVersionTag(server, user, sshkey, dir):
|
||||
if os.path.isfile("upload.tag"):
|
||||
os.remove("upload.tag")
|
||||
if os.path.isfile("upload.batch"):
|
||||
os.remove("upload.batch")
|
||||
ub = open("upload.batch", "w")
|
||||
ub.write("cd " + dir + "\n")
|
||||
ub.write("get upload.tag upload.tag\n")
|
||||
ub.write("quit\n")
|
||||
ub.close()
|
||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||
os.remove("upload.batch")
|
||||
if os.path.isfile("upload.tag"):
|
||||
ft = open("upload.tag")
|
||||
result = float(ft.read()) # float, really
|
||||
ft.close()
|
||||
os.remove("upload.tag")
|
||||
printLog(log, "INFO Upload tag is " + str(result))
|
||||
return result
|
||||
else:
|
||||
printLog(log, "WARNING Upload tag not found, uploading everything")
|
||||
return 0
|
||||
|
||||
def isDirectoryNeeded(ft, dir):
|
||||
files = os.listdir(dir)
|
||||
for fileName in files:
|
||||
if isLegalFileName(fileName):
|
||||
fileFull = dir + "/" + fileName
|
||||
if os.path.isfile(fileFull):
|
||||
nftf = os.stat(fileFull).st_mtime
|
||||
if nftf > ft:
|
||||
return True
|
||||
elif os.path.isdir(fileFull):
|
||||
if isDirectoryNeeded(ft, fileFull):
|
||||
return True
|
||||
elif not os.path.isdir(fileFull):
|
||||
printLog(log, "isDirectoryNeeded: file not dir or file?!" + fileFull)
|
||||
return False
|
||||
|
||||
def listDirectoryUpload(ft, ub, udb, dir):
|
||||
nft = 0
|
||||
files = os.listdir(dir)
|
||||
for fileName in files:
|
||||
if isLegalFileName(fileName):
|
||||
fileFull = dir + "/" + fileName
|
||||
if os.path.isfile(fileFull):
|
||||
nftf = os.stat(fileFull).st_mtime
|
||||
if nftf > ft:
|
||||
ub.write("put " + fileFull + " " + fileName + "\n")
|
||||
if nftf > nft:
|
||||
nft = nftf
|
||||
elif os.path.isdir(fileFull):
|
||||
if isDirectoryNeeded(ft, fileFull):
|
||||
udb.write("mkdir " + fileName + "\n")
|
||||
ub.write("cd " + fileName + "\n")
|
||||
udb.write("cd " + fileName + "\n")
|
||||
nft2 = listDirectoryUpload(ft, ub, udb, fileFull)
|
||||
if (nft2 > nft):
|
||||
nft = nft2
|
||||
ub.write("cd ..\n")
|
||||
udb.write("cd ..\n")
|
||||
elif not os.path.isdir(fileFull):
|
||||
printLog(log, "listDirectoryUpload: file not dir or file?!" + fileFull)
|
||||
return nft
|
||||
|
||||
def uploadSftp(server, user, sshkey, dir_to, dir_from, addcmd):
|
||||
ft = downloadVersionTag(server, user, sshkey, dir_to)
|
||||
if isDirectoryNeeded(ft, dir_from):
|
||||
if os.path.isfile("upload_dir.batch"):
|
||||
os.remove("upload_dir.batch")
|
||||
if os.path.isfile("upload.batch"):
|
||||
os.remove("upload.batch")
|
||||
udb = open("upload_dir.batch", "w")
|
||||
udb.write("cd " + dir_to + "\n")
|
||||
ub = open("upload.batch", "w")
|
||||
ub.write("cd " + dir_to + "\n")
|
||||
for ac in addcmd:
|
||||
ub.write(ac + "\n")
|
||||
ftn = listDirectoryUpload(ft, ub, udb, dir_from)
|
||||
if (ft > ftn):
|
||||
ftn = ft
|
||||
nft = open("upload.tag", "w")
|
||||
nft.write(str(ftn))
|
||||
nft.close()
|
||||
ub.write("put upload.tag upload.tag\n")
|
||||
ub.write("quit\n")
|
||||
ub.close()
|
||||
udb.write("quit\n")
|
||||
udb.close()
|
||||
subprocess.call([ Psftp, "-be", "-b", "upload_dir.batch", "-i", sshkey, user + "@" + server ])
|
||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||
os.remove("upload_dir.batch")
|
||||
os.remove("upload.batch")
|
||||
os.remove("upload.tag")
|
||||
else:
|
||||
printLog(log, "SKIP " + dir_to)
|
||||
|
||||
printLog(log, ">>> Upload patch <<<")
|
||||
for target in UploadPatch:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], ClientPatchDirectory + "/patch", [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_shard <<<")
|
||||
for target in UploadShard:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], DataShardDirectory, [ "rm *.packed_sheets", "rm primitive_cache/*.binprim" ])
|
||||
|
||||
printLog(log, ">>> Upload data_common <<<")
|
||||
for target in UploadCommon:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], DataCommonDirectory, [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_leveldesign/leveldesign <<<")
|
||||
for target in UploadLeveldesign:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], LeveldesignDirectory, [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_leveldesign/primitives <<<")
|
||||
for target in UploadPrimitives:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], PrimitivesDirectory, [ ])
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("9_upload.log"):
|
||||
os.remove("9_upload.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_upload.log")
|
||||
shutil.move("log.log", "9_upload.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 9_upload.py
|
||||
# \brief Upload data to servers
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Game data build pipeline.
|
||||
# Upload data to servers
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2011 Kaetemi
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
try:
|
||||
from upload import *
|
||||
except ImportError:
|
||||
# Not documenting this. Because we can.
|
||||
printLog(log, "ERROR Upload not configured, bye.")
|
||||
exit()
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Upload data to servers")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
# Not documenting this. Because we can.
|
||||
Psftp = findFileMultiDir(log, ToolDirectories + WindowsExeDllCfgDirectories, UploadPsftpTool)
|
||||
printLog(log, "PSFTP " + Psftp)
|
||||
|
||||
def downloadVersionTag(server, user, sshkey, dir):
|
||||
if os.path.isfile("upload.tag"):
|
||||
os.remove("upload.tag")
|
||||
if os.path.isfile("upload.batch"):
|
||||
os.remove("upload.batch")
|
||||
ub = open("upload.batch", "w")
|
||||
ub.write("cd " + dir + "\n")
|
||||
ub.write("get upload.tag upload.tag\n")
|
||||
ub.write("quit\n")
|
||||
ub.close()
|
||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||
os.remove("upload.batch")
|
||||
if os.path.isfile("upload.tag"):
|
||||
ft = open("upload.tag")
|
||||
result = float(ft.read()) # float, really
|
||||
ft.close()
|
||||
os.remove("upload.tag")
|
||||
printLog(log, "INFO Upload tag is " + str(result))
|
||||
return result
|
||||
else:
|
||||
printLog(log, "WARNING Upload tag not found, uploading everything")
|
||||
return 0
|
||||
|
||||
def isDirectoryNeeded(ft, dir):
|
||||
files = os.listdir(dir)
|
||||
for fileName in files:
|
||||
if isLegalFileName(fileName):
|
||||
fileFull = dir + "/" + fileName
|
||||
if os.path.isfile(fileFull):
|
||||
nftf = os.stat(fileFull).st_mtime
|
||||
if nftf > ft:
|
||||
return True
|
||||
elif os.path.isdir(fileFull):
|
||||
if isDirectoryNeeded(ft, fileFull):
|
||||
return True
|
||||
elif not os.path.isdir(fileFull):
|
||||
printLog(log, "isDirectoryNeeded: file not dir or file?!" + fileFull)
|
||||
return False
|
||||
|
||||
def listDirectoryUpload(ft, ub, udb, dir):
|
||||
nft = 0
|
||||
files = os.listdir(dir)
|
||||
for fileName in files:
|
||||
if isLegalFileName(fileName):
|
||||
fileFull = dir + "/" + fileName
|
||||
if os.path.isfile(fileFull):
|
||||
nftf = os.stat(fileFull).st_mtime
|
||||
if nftf > ft:
|
||||
ub.write("put " + fileFull + " " + fileName + "\n")
|
||||
if nftf > nft:
|
||||
nft = nftf
|
||||
elif os.path.isdir(fileFull):
|
||||
if isDirectoryNeeded(ft, fileFull):
|
||||
udb.write("mkdir " + fileName + "\n")
|
||||
ub.write("cd " + fileName + "\n")
|
||||
udb.write("cd " + fileName + "\n")
|
||||
nft2 = listDirectoryUpload(ft, ub, udb, fileFull)
|
||||
if (nft2 > nft):
|
||||
nft = nft2
|
||||
ub.write("cd ..\n")
|
||||
udb.write("cd ..\n")
|
||||
elif not os.path.isdir(fileFull):
|
||||
printLog(log, "listDirectoryUpload: file not dir or file?!" + fileFull)
|
||||
return nft
|
||||
|
||||
def uploadSftp(server, user, sshkey, dir_to, dir_from, addcmd):
|
||||
ft = downloadVersionTag(server, user, sshkey, dir_to)
|
||||
if isDirectoryNeeded(ft, dir_from):
|
||||
if os.path.isfile("upload_dir.batch"):
|
||||
os.remove("upload_dir.batch")
|
||||
if os.path.isfile("upload.batch"):
|
||||
os.remove("upload.batch")
|
||||
udb = open("upload_dir.batch", "w")
|
||||
udb.write("cd " + dir_to + "\n")
|
||||
ub = open("upload.batch", "w")
|
||||
ub.write("cd " + dir_to + "\n")
|
||||
for ac in addcmd:
|
||||
ub.write(ac + "\n")
|
||||
ftn = listDirectoryUpload(ft, ub, udb, dir_from)
|
||||
if (ft > ftn):
|
||||
ftn = ft
|
||||
nft = open("upload.tag", "w")
|
||||
nft.write(str(ftn))
|
||||
nft.close()
|
||||
ub.write("put upload.tag upload.tag\n")
|
||||
ub.write("quit\n")
|
||||
ub.close()
|
||||
udb.write("quit\n")
|
||||
udb.close()
|
||||
subprocess.call([ Psftp, "-be", "-b", "upload_dir.batch", "-i", sshkey, user + "@" + server ])
|
||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||
os.remove("upload_dir.batch")
|
||||
os.remove("upload.batch")
|
||||
os.remove("upload.tag")
|
||||
else:
|
||||
printLog(log, "SKIP " + dir_to)
|
||||
|
||||
printLog(log, ">>> Upload patch <<<")
|
||||
for target in UploadPatch:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], ClientPatchDirectory + "/patch", [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_shard <<<")
|
||||
for target in UploadShard:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], DataShardDirectory, [ "rm *.packed_sheets", "rm primitive_cache/*.binprim" ])
|
||||
|
||||
printLog(log, ">>> Upload data_common <<<")
|
||||
for target in UploadCommon:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], DataCommonDirectory, [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_leveldesign/leveldesign <<<")
|
||||
for target in UploadLeveldesign:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], LeveldesignDirectory, [ ])
|
||||
|
||||
printLog(log, ">>> Upload data_leveldesign/primitives <<<")
|
||||
for target in UploadPrimitives:
|
||||
uploadSftp(target[0], target[1], target[2], target[3], PrimitivesDirectory, [ ])
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("9_upload.log"):
|
||||
os.remove("9_upload.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_upload.log")
|
||||
shutil.move("log.log", "9_upload.log")
|
||||
|
@ -1,74 +1,74 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file a1_worldedit_data.py
|
||||
# \brief Install worldedit data
|
||||
# \date 2014-09-10 14:01GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install worldedit data
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install worldedit data")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for ecosystem in WorldEditEcosystems:
|
||||
ecosystemName = ecosystem[0]
|
||||
srcZoneLigos = ExportBuildDirectory + "/ecosystems/" + ecosystemName + "/ligo_es/zoneligos/"
|
||||
dstZoneLigos = WorldEditInstallDirectory + "/" + ecosystemName + "/zoneligos/"
|
||||
mkPath(log, srcZoneLigos)
|
||||
mkPath(log, dstZoneLigos)
|
||||
copyFilesNoTreeIfNeeded(log, srcZoneLigos, dstZoneLigos)
|
||||
srcZoneBitmaps = DatabaseDirectory + "/landscape/ligo/" + ecosystemName + "/zonebitmaps/"
|
||||
dstZoneBitmaps = WorldEditInstallDirectory + "/" + ecosystemName + "/zonebitmaps/"
|
||||
mkPath(log, srcZoneBitmaps)
|
||||
mkPath(log, dstZoneBitmaps)
|
||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".tga")
|
||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".png")
|
||||
dstCollisionMap = WorldEditInstallDirectory + "/" + ecosystemName + "/collisionmap/"
|
||||
mkPath(log, dstCollisionMap)
|
||||
for continentName in ecosystem[1]:
|
||||
srcCollisionMap = ExportBuildDirectory + "/continents/" + continentName + "/ai_wmap/"
|
||||
mkPath(log, srcCollisionMap)
|
||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".tga")
|
||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".png")
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("a1_worldedit_data.log"):
|
||||
os.remove("a1_worldedit_data.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_worldedit_data.log")
|
||||
shutil.move("log.log", "a1_worldedit_data.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file a1_worldedit_data.py
|
||||
# \brief Install worldedit data
|
||||
# \date 2014-09-10 14:01GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install worldedit data
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install worldedit data")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for ecosystem in WorldEditEcosystems:
|
||||
ecosystemName = ecosystem[0]
|
||||
srcZoneLigos = ExportBuildDirectory + "/ecosystems/" + ecosystemName + "/ligo_es/zoneligos/"
|
||||
dstZoneLigos = WorldEditInstallDirectory + "/" + ecosystemName + "/zoneligos/"
|
||||
mkPath(log, srcZoneLigos)
|
||||
mkPath(log, dstZoneLigos)
|
||||
copyFilesNoTreeIfNeeded(log, srcZoneLigos, dstZoneLigos)
|
||||
srcZoneBitmaps = DatabaseDirectory + "/landscape/ligo/" + ecosystemName + "/zonebitmaps/"
|
||||
dstZoneBitmaps = WorldEditInstallDirectory + "/" + ecosystemName + "/zonebitmaps/"
|
||||
mkPath(log, srcZoneBitmaps)
|
||||
mkPath(log, dstZoneBitmaps)
|
||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".tga")
|
||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".png")
|
||||
dstCollisionMap = WorldEditInstallDirectory + "/" + ecosystemName + "/collisionmap/"
|
||||
mkPath(log, dstCollisionMap)
|
||||
for continentName in ecosystem[1]:
|
||||
srcCollisionMap = ExportBuildDirectory + "/continents/" + continentName + "/ai_wmap/"
|
||||
mkPath(log, srcCollisionMap)
|
||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".tga")
|
||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".png")
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("a1_worldedit_data.log"):
|
||||
os.remove("a1_worldedit_data.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_worldedit_data.log")
|
||||
shutil.move("log.log", "a1_worldedit_data.log")
|
||||
|
@ -1,17 +1,15 @@
|
||||
title Ryzom Core: 0_setup.py --noconf
|
||||
python 0_setup.py --noconf
|
||||
title Ryzom Core: 1_export.py
|
||||
python 1_export.py
|
||||
title Ryzom Core: 2_build.py
|
||||
python 2_build.py
|
||||
title Ryzom Core: 3_install.py
|
||||
python 3_install.py
|
||||
title Ryzom Core: a1_worldedit_data.py
|
||||
python a1_worldedit_data.py
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: b3_shard_dev.py
|
||||
python b3_shard_dev.py
|
||||
title Ryzom Core: Ready
|
||||
title Ryzom Core: 0_setup.py --noconf
|
||||
0_setup.py --noconf
|
||||
title Ryzom Core: 1_export.py
|
||||
1_export.py
|
||||
title Ryzom Core: 2_build.py
|
||||
2_build.py
|
||||
title Ryzom Core: 3_install.py
|
||||
3_install.py
|
||||
title Ryzom Core: a1_worldedit_data.py
|
||||
a1_worldedit_data.py
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready
|
||||
|
@ -1,11 +1,9 @@
|
||||
title Ryzom Core: 3_install.py
|
||||
python 3_install.py
|
||||
title Ryzom Core: a1_worldedit_data.py
|
||||
python a1_worldedit_data.py
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: b3_shard_dev.py
|
||||
python b3_shard_dev.py
|
||||
title Ryzom Core: Ready
|
||||
title Ryzom Core: 3_install.py
|
||||
3_install.py
|
||||
title Ryzom Core: a1_worldedit_data.py
|
||||
a1_worldedit_data.py
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready
|
||||
|
@ -1,93 +1,93 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file b2_shard_data.py
|
||||
# \brief Install shard data
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install shard data
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install shard data")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for dir in InstallShardDataDirectories:
|
||||
printLog(log, "SHARD PACKAGE " + dir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dir)
|
||||
printLog(log, "FROM " + dir)
|
||||
mkPath(log, InstallDirectory + "/" + dir)
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + dir, ShardInstallDirectory + "/" + dir)
|
||||
for package in InstallShardDataFiles:
|
||||
dstDir = package[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, package[1])
|
||||
for multiDir in InstallShardDataMultiDirectories:
|
||||
dstDir = multiDir[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
for srcDir in multiDir[1]:
|
||||
printLog(log, "FROM " + srcDir)
|
||||
mkPath(log, InstallDirectory + "/" + srcDir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
for multiDir in InstallShardDataPrimitivesDirectories:
|
||||
dstDir = multiDir[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
for srcDir in multiDir[1]:
|
||||
printLog(log, "FROM PRIMITIVES " + srcDir)
|
||||
mkPath(log, PrimitivesDirectory + "/" + srcDir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
copyFilesNoTreeIfNeeded(log, PrimitivesDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
for execDir in InstallShardDataExecutables:
|
||||
dstDir = execDir[0]
|
||||
mkPath(log, LinuxServiceExecutableDirectory)
|
||||
mkPath(log, PatchmanCfgDefaultDirectory)
|
||||
mkPath(log, InstallDirectory)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
copyFileIfNeeded(log, LinuxServiceExecutableDirectory + "/" + execDir[1][1], ShardInstallDirectory + "/" + dstDir + "/" + execDir[1][0])
|
||||
copyFileListNoTreeIfNeeded(log, PatchmanCfgDefaultDirectory, ShardInstallDirectory + "/" + dstDir, execDir[2])
|
||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, execDir[3])
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("b2_shard_data.log"):
|
||||
os.remove("b2_shard_data.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_shard_data.log")
|
||||
shutil.move("log.log", "b2_shard_data.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file b2_shard_data.py
|
||||
# \brief Install shard data
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install shard data
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install shard data")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for dir in InstallShardDataDirectories:
|
||||
printLog(log, "SHARD PACKAGE " + dir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dir)
|
||||
printLog(log, "FROM " + dir)
|
||||
mkPath(log, InstallDirectory + "/" + dir)
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + dir, ShardInstallDirectory + "/" + dir)
|
||||
for package in InstallShardDataFiles:
|
||||
dstDir = package[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, package[1])
|
||||
for multiDir in InstallShardDataMultiDirectories:
|
||||
dstDir = multiDir[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
for srcDir in multiDir[1]:
|
||||
printLog(log, "FROM " + srcDir)
|
||||
mkPath(log, InstallDirectory + "/" + srcDir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
for multiDir in InstallShardDataPrimitivesDirectories:
|
||||
dstDir = multiDir[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
for srcDir in multiDir[1]:
|
||||
printLog(log, "FROM PRIMITIVES " + srcDir)
|
||||
mkPath(log, PrimitivesDirectory + "/" + srcDir)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
copyFilesNoTreeIfNeeded(log, PrimitivesDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||
for execDir in InstallShardDataExecutables:
|
||||
dstDir = execDir[0]
|
||||
mkPath(log, LinuxServiceExecutableDirectory)
|
||||
mkPath(log, PatchmanCfgDefaultDirectory)
|
||||
mkPath(log, InstallDirectory)
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
copyFileIfNeeded(log, LinuxServiceExecutableDirectory + "/" + execDir[1][1], ShardInstallDirectory + "/" + dstDir + "/" + execDir[1][0])
|
||||
copyFileListNoTreeIfNeeded(log, PatchmanCfgDefaultDirectory, ShardInstallDirectory + "/" + dstDir, execDir[2])
|
||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, execDir[3])
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("b2_shard_data.log"):
|
||||
os.remove("b2_shard_data.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_shard_data.log")
|
||||
shutil.move("log.log", "b2_shard_data.log")
|
||||
|
@ -1,152 +0,0 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file b2_shard_data.py
|
||||
# \brief Install shard data
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install shard data
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install to shard dev")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
PatchmanService = findTool(log, ToolDirectories, PatchmanServiceTool, ToolSuffix)
|
||||
printLog(log, "")
|
||||
|
||||
mkPath(log, ShardDevDirectory)
|
||||
mkPath(log, ShardDevDirectory + "/local")
|
||||
printLog(log, ">>> Generate shard dev local.cfg <<<")
|
||||
cfg = open(ShardDevDirectory + "/local.cfg", "w")
|
||||
cfg.write("WindowStyle = \"WIN\";\n")
|
||||
cfg.write("Paths += {\n")
|
||||
cfg.write(" \"" + ShardDevDirectory + "/local\",\n")
|
||||
cfg.write(" \"" + DataCommonDirectory + "\",\n")
|
||||
cfg.write(" \"" + DataShardDirectory + "\",\n")
|
||||
cfg.write(" \"" + LeveldesignDirectory + "\",\n")
|
||||
cfg.write(" \"" + WorldEditorFilesDirectory + "\",\n")
|
||||
for dir in InstallShardDataDirectories:
|
||||
mkPath(log, ShardInstallDirectory + "/" + dir)
|
||||
cfg.write(" \"" + ShardInstallDirectory + "/" + dir + "\",\n")
|
||||
for multiDir in InstallShardDataMultiDirectories:
|
||||
dstDir = multiDir[0]
|
||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||
cfg.write(" \"" + ShardInstallDirectory + "/" + dstDir + "\",\n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("RRDToolPath = \"..\\..\\..\\external\\rrdtool\\rrdtool.exe\";\n")
|
||||
cfg.write("StartCommands += {\n")
|
||||
cfg.write(" // \"gw_aes.transportRemove aes_l3c\",\n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("NegFiltersWarning += {\n")
|
||||
cfg.write(" \"already inserted from\",\n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("// Allow player to stay connected to FS when services go down\n")
|
||||
cfg.write("DontNeedBackend = 1;\n")
|
||||
cfg.flush()
|
||||
cfg.close()
|
||||
printLog(log, "")
|
||||
|
||||
if not os.path.exists(ShardDevDirectory + "/aes_state.txt"):
|
||||
printLog(log, ">>> Generate shard dev aes_state.txt <<<")
|
||||
f = open(ShardDevDirectory + "/aes_state.txt", "w")
|
||||
f.write("ShardOrders unifier so_autostart_off\n")
|
||||
f.write("ShardOrders mainland so_autostart_off\n")
|
||||
f.write("ShardOrders ring so_autostart_off\n")
|
||||
f.flush()
|
||||
f.close()
|
||||
printLog(log, "")
|
||||
|
||||
mkPath(log, ShardDevDirectory + "/ras")
|
||||
if not os.path.exists(ShardDevDirectory + "/ras/as_state.txt"):
|
||||
printLog(log, ">>> Generate shard dev as_state.txt <<<")
|
||||
f = open(ShardDevDirectory + "/ras/as_state.txt", "w")
|
||||
f.write("ShardOrders unifier so_autostart_off\n")
|
||||
f.write("ShardOrders mainland so_autostart_off\n")
|
||||
f.write("ShardOrders ring so_autostart_off\n")
|
||||
f.flush()
|
||||
f.close()
|
||||
printLog(log, "")
|
||||
|
||||
for execDir in InstallShardDataExecutables:
|
||||
dstDir = execDir[0]
|
||||
mkPath(log, PatchmanCfgDefaultDirectory)
|
||||
mkPath(log, InstallDirectory)
|
||||
mkPath(log, ShardDevDirectory + "/live/" + dstDir)
|
||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||
copyFileListNoTreeIfNeeded(log, PatchmanCfgDefaultDirectory, ShardDevDirectory + "/live/" + dstDir, execDir[2])
|
||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardDevDirectory + "/live/" + dstDir, execDir[3])
|
||||
for cfgName in execDir[2]:
|
||||
cfgPath = ShardDevDirectory + "/live/" + dstDir + "/" + cfgName
|
||||
found = False
|
||||
with open(cfgPath, "r") as f:
|
||||
for l in f:
|
||||
if "Paths += {" in l:
|
||||
found = True
|
||||
if not found:
|
||||
with open(cfgPath, "a") as cfg:
|
||||
cfg.write("\n")
|
||||
cfg.write("Paths += {\n")
|
||||
cfg.write(" \"" + ShardDevDirectory + "/live/" + dstDir + "\",\n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.flush()
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
if PatchmanService == "":
|
||||
toolLogFail(log, PatchmanServiceTool, ToolSuffix)
|
||||
else:
|
||||
mkPath(log, PatchmanDevDirectory)
|
||||
cwDir = os.getcwd().replace("\\", "/")
|
||||
os.chdir(PatchmanDevDirectory)
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
subprocess.call([ PatchmanService, "-C.", "-L." ])
|
||||
if os.path.isfile("log.log"):
|
||||
f = open("log.log", "r")
|
||||
for l in f:
|
||||
printLog(log, l.rstrip())
|
||||
f.close()
|
||||
os.chdir(cwDir)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("b3_shard_dev.log"):
|
||||
os.remove("b3_shard_dev.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_shard_dev.log")
|
||||
shutil.move("log.log", "b3_shard_dev.log")
|
@ -1,11 +1,11 @@
|
||||
title Ryzom Core: 1_export.py (CHARACTERS)
|
||||
python 1_export.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: 2_build.py (CHARACTERS)
|
||||
python 2_build.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: 3_install.py (CHARACTERS)
|
||||
python 3_install.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: b1_client_dev.py (CHARACTERS)
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: Ready (CHARACTERS)
|
||||
title Ryzom Core: 1_export.py (CHARACTERS)
|
||||
1_export.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: 2_build.py (CHARACTERS)
|
||||
2_build.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: 3_install.py (CHARACTERS)
|
||||
3_install.py -ipj common/characters common/characters_maps_hr
|
||||
title Ryzom Core: b1_client_dev.py (CHARACTERS)
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready (CHARACTERS)
|
||||
|
@ -1,86 +1,86 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file d2_client_install.py
|
||||
# \brief Install to client install
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install to client install
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install to client install")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for category in InstallClientData:
|
||||
printLog(log, "CATEGORY " + category["Name"])
|
||||
packExt = ".bnp"
|
||||
if (category["StreamedPackages"]):
|
||||
packExt = ".snp"
|
||||
if (category["UnpackTo"] != None):
|
||||
targetPath = ClientInstallDirectory
|
||||
if (category["UnpackTo"] != ""):
|
||||
targetPath += "/" + category["UnpackTo"]
|
||||
mkPath(log, targetPath)
|
||||
for package in category["Packages"]:
|
||||
printLog(log, "PACKAGE " + package[0])
|
||||
mkPath(log, InstallDirectory + "/" + package[0])
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + package[0], targetPath)
|
||||
else:
|
||||
sourcePath = ClientPatchDirectory + "/bnp"
|
||||
targetPath = ClientInstallDirectory + "/data"
|
||||
mkPath(log, targetPath)
|
||||
for package in category["Packages"]:
|
||||
printLog(log, "PACKAGE " + package[0])
|
||||
sourceBnp = sourcePath + "/" + package[0] + packExt
|
||||
targetBnp = targetPath + "/" + package[0] + packExt
|
||||
if (len(package[1]) > 0):
|
||||
sourceBnp = sourcePath + "/" + package[1][0]
|
||||
targetBnp = targetPath + "/" + package[1][0]
|
||||
printLog(log, "TARGET " + package[1][0])
|
||||
copyFileIfNeeded(log, sourceBnp, targetBnp)
|
||||
for ref in category["Refs"]:
|
||||
printLog(log, "REFERENCE " + ref)
|
||||
sourceRef = sourcePath + "/" + ref + "_.ref"
|
||||
targetRef = targetPath + "/" + ref + "_.ref"
|
||||
copyFileIfNeeded(log, sourceRef, targetRef)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("d2_client_install.log"):
|
||||
os.remove("d2_client_install.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_client_install.log")
|
||||
shutil.move("log.log", "d2_client_install.log")
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file d2_client_install.py
|
||||
# \brief Install to client install
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install to client install
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from tools import *
|
||||
|
||||
sys.path.append(WorkspaceDirectory)
|
||||
from projects import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install to client install")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
for category in InstallClientData:
|
||||
printLog(log, "CATEGORY " + category["Name"])
|
||||
packExt = ".bnp"
|
||||
if (category["StreamedPackages"]):
|
||||
packExt = ".snp"
|
||||
if (category["UnpackTo"] != None):
|
||||
targetPath = ClientInstallDirectory
|
||||
if (category["UnpackTo"] != ""):
|
||||
targetPath += "/" + category["UnpackTo"]
|
||||
mkPath(log, targetPath)
|
||||
for package in category["Packages"]:
|
||||
printLog(log, "PACKAGE " + package[0])
|
||||
mkPath(log, InstallDirectory + "/" + package[0])
|
||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + package[0], targetPath)
|
||||
else:
|
||||
sourcePath = ClientPatchDirectory + "/bnp"
|
||||
targetPath = ClientInstallDirectory + "/data"
|
||||
mkPath(log, targetPath)
|
||||
for package in category["Packages"]:
|
||||
printLog(log, "PACKAGE " + package[0])
|
||||
sourceBnp = sourcePath + "/" + package[0] + packExt
|
||||
targetBnp = targetPath + "/" + package[0] + packExt
|
||||
if (len(package[1]) > 0):
|
||||
sourceBnp = sourcePath + "/" + package[1][0]
|
||||
targetBnp = targetPath + "/" + package[1][0]
|
||||
printLog(log, "TARGET " + package[1][0])
|
||||
copyFileIfNeeded(log, sourceBnp, targetBnp)
|
||||
for ref in category["Refs"]:
|
||||
printLog(log, "REFERENCE " + ref)
|
||||
sourceRef = sourcePath + "/" + ref + "_.ref"
|
||||
targetRef = targetPath + "/" + ref + "_.ref"
|
||||
copyFileIfNeeded(log, sourceRef, targetRef)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("d2_client_install.log"):
|
||||
os.remove("d2_client_install.log")
|
||||
shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_client_install.log")
|
||||
shutil.move("log.log", "d2_client_install.log")
|
||||
|
@ -1,15 +1,13 @@
|
||||
title Ryzom Core: 0_setup.py (EXECUTABLES)
|
||||
python 0_setup.py --noconf -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 1_export.py (EXECUTABLES)
|
||||
python 1_export.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 2_build.py (EXECUTABLES)
|
||||
python 2_build.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 3_install.py (EXECUTABLES)
|
||||
python 3_install.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: b3_shard_dev.py
|
||||
python b3_shard_dev.py
|
||||
title Ryzom Core: Ready
|
||||
title Ryzom Core: 0_setup.py (EXECUTABLES)
|
||||
0_setup.py --noconf -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 1_export.py (EXECUTABLES)
|
||||
1_export.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 2_build.py (EXECUTABLES)
|
||||
2_build.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: 3_install.py (EXECUTABLES)
|
||||
3_install.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready
|
||||
|
@ -1,32 +1,32 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file export_build_install.py
|
||||
# \brief Run all processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http:#dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import shutil, subprocess
|
||||
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file export_build_install.py
|
||||
# \brief Run all processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http:#dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import shutil, subprocess
|
||||
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
|
||||
|
@ -1,11 +0,0 @@
|
||||
title Ryzom Core: 1_export.py (FAUNA)
|
||||
python 1_export.py -ipj common/fauna
|
||||
title Ryzom Core: 2_build.py (FAUNA)
|
||||
python 2_build.py -ipj common/fauna
|
||||
title Ryzom Core: 3_install.py (FAUNA)
|
||||
python 3_install.py -ipj common/fauna
|
||||
title Ryzom Core: b1_client_dev.py (FAUNA)
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (FAUNA)
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: Ready (FAUNA)
|
@ -1,220 +1,220 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file directories.py
|
||||
# \brief Directories configuration
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# \date 2001-2005
|
||||
# \author Nevrax
|
||||
# Python port of game data build pipeline.
|
||||
# Directories configuration for '%PreGenEcosystemName%' ecosystem.
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
|
||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||
|
||||
EcosystemName = "%PreGenEcosystemName%"
|
||||
EcosystemPath = "ecosystems/" + EcosystemName
|
||||
CommonName = EcosystemName
|
||||
CommonPath = EcosystemPath
|
||||
|
||||
DatabaseRootName = "%PreGenDatabaseRootName%"
|
||||
DatabaseRootPath = "stuff/" + DatabaseRootName
|
||||
|
||||
|
||||
# *** SOURCE DIRECTORIES IN THE DATABASE ***
|
||||
|
||||
# Shape directories
|
||||
ShapeSourceDirectories = [ ]
|
||||
ShapeSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||
ShapeSourceDirectories += [ "landscape/ligo/" + EcosystemName + "/max" ]
|
||||
|
||||
# Maps directories
|
||||
MapSourceDirectories = [ ]
|
||||
MapSourceDirectories += [ DatabaseRootPath + "/decors/_textures" ]
|
||||
%PreGenMapSubdirectories%MapSourceDirectories += [ "landscape/microveget/" + EcosystemName + "" ]
|
||||
MapSourceDirectories += [ "landscape/water/meshes/" + EcosystemName + "" ]
|
||||
|
||||
MapUncompressedSourceDirectories = [ ]
|
||||
|
||||
# Tiles directories
|
||||
TilesSourceDirectories = [ ]
|
||||
%PreGenTileSourceDirectories%
|
||||
# Tiles root directory
|
||||
TileRootSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||
|
||||
# Displace directory
|
||||
DisplaceSourceDirectory = "landscape/_texture_tiles/" + EcosystemName + "/displace"
|
||||
|
||||
# Do not use, needs to be removed and fixed in processes
|
||||
DisplaceSourceDirectories = [ ]
|
||||
DisplaceSourceDirectories += [ DisplaceSourceDirectory ]
|
||||
|
||||
# Bank directory
|
||||
BankSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||
|
||||
# Vegetable set directories
|
||||
VegetSetSourceDirectories = [ ]
|
||||
VegetSetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||
|
||||
# Veget directories
|
||||
VegetSourceDirectories = [ ]
|
||||
VegetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||
|
||||
# Ligo directories
|
||||
LigoBaseSourceDirectory = "landscape/ligo/" + EcosystemName
|
||||
LigoMaxSourceDirectory = LigoBaseSourceDirectory + "/max"
|
||||
|
||||
# Zone directories
|
||||
ZoneSourceDirectory = [ "landscape/zones/" + EcosystemName ] # For old snowballs style landscape when not using ligo
|
||||
|
||||
# Ig landscape directories
|
||||
IgLandSourceDirectory = "_invalid"
|
||||
|
||||
# Ig other directories
|
||||
IgOtherSourceDirectory = "_invalid"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimSourceDirectories = [ ]
|
||||
PacsPrimSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||
|
||||
|
||||
# *** LOOKUP DIRECTORIES WITHIN THE BUILD PIPELINE *** (TODO: use these instead of search_pathes in properties(_base).cfg)
|
||||
|
||||
# Ig lookup directories used by rbank
|
||||
IgLookupDirectories = [ ]
|
||||
|
||||
# Shape lookup directories used by rbank
|
||||
ShapeLookupDirectories = [ ]
|
||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_clodtex_build" ]
|
||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_with_coarse_mesh" ]
|
||||
|
||||
# Map lookup directories not yet used
|
||||
MapLookupDirectories = [ ]
|
||||
MapLookupDirectories += [ EcosystemPath + "/map_export" ]
|
||||
MapLookupDirectories += [ EcosystemPath + "/map_uncompressed" ]
|
||||
|
||||
|
||||
# *** EXPORT DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||
|
||||
# Map directories
|
||||
MapExportDirectory = CommonPath + "/map_export"
|
||||
MapUncompressedExportDirectory = CommonPath + "/map_uncompressed"
|
||||
|
||||
# Shape directories
|
||||
ShapeTagExportDirectory = CommonPath + "/shape_tag"
|
||||
ShapeNotOptimizedExportDirectory = CommonPath + "/shape_not_optimized"
|
||||
ShapeWithCoarseMeshExportDirectory = CommonPath + "/shape_with_coarse_mesh"
|
||||
ShapeLightmapNotOptimizedExportDirectory = CommonPath + "/shape_lightmap_not_optimized"
|
||||
ShapeAnimExportDirectory = CommonPath + "/shape_anim"
|
||||
|
||||
# Smallbank directories
|
||||
SmallbankExportDirectory = CommonPath + "/smallbank"
|
||||
|
||||
# Tiles directories
|
||||
TilesExportDirectory = CommonPath + "/tiles"
|
||||
|
||||
# Tiles directories
|
||||
DisplaceExportDirectory = CommonPath + "/diplace"
|
||||
|
||||
# Veget directories
|
||||
VegetExportDirectory = CommonPath + "/veget"
|
||||
VegetTagExportDirectory = CommonPath + "/veget_tag"
|
||||
|
||||
# Veget Set directories
|
||||
VegetSetExportDirectory = CommonPath + "/veget_set"
|
||||
|
||||
# Ligo directories
|
||||
LigoEcosystemExportDirectory = CommonPath + "/ligo_es"
|
||||
LigoEcosystemIgExportDirectory = LigoEcosystemExportDirectory + "/igs"
|
||||
LigoEcosystemZoneExportDirectory = LigoEcosystemExportDirectory + "/zones"
|
||||
LigoEcosystemZoneLigoExportDirectory = LigoEcosystemExportDirectory + "/zoneligos"
|
||||
LigoEcosystemCmbExportDirectory = LigoEcosystemExportDirectory + "/cmb"
|
||||
LigoEcosystemTagExportDirectory = CommonPath + "/ligo_es_tag"
|
||||
|
||||
# Zone directories
|
||||
ZoneExportDirectory = CommonPath + "/zone"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimExportDirectory = CommonPath + "/pacs_prim"
|
||||
PacsPrimTagExportDirectory = CommonPath + "/pacs_prim_tag"
|
||||
|
||||
|
||||
# *** BUILD DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||
|
||||
# Map directories
|
||||
MapBuildDirectory = CommonPath + "/map"
|
||||
MapPanoplyBuildDirectory = CommonPath + "/map_panoply"
|
||||
MapPanoplyHlsInfoBuildDirectory = CommonPath + "/map_panoply_hls_info"
|
||||
MapPanoplyHlsBankBuildDirectory = CommonPath + "/map_panoply_hls_bank"
|
||||
MapPanoplyCacheBuildDirectory = CommonPath + "/map_panoply_cache"
|
||||
MapTagBuildDirectory = CommonPath + "/map_tag"
|
||||
|
||||
# Shape directories
|
||||
ShapeClodtexBuildDirectory = CommonPath + "/shape_clodtex_build"
|
||||
ShapeWithCoarseMeshBuildDirectory = CommonPath + "/shape_with_coarse_mesh_builded"
|
||||
ShapeLightmapBuildDirectory = CommonPath + "/shape_lightmap"
|
||||
ShapeLightmap16BitsBuildDirectory = CommonPath + "/shape_lightmap_16_bits"
|
||||
|
||||
# Farbank directories
|
||||
FarbankBuildDirectory = CommonPath + "/farbank"
|
||||
|
||||
# Ig directories ************** TODO CONFIRM IN IG BUILD PROCESS ************ FIX RBANK IF NEEDED ***********
|
||||
IgLandBuildDirectory = "_invalid"
|
||||
IgOtherBuildDirectory = "_invalid"
|
||||
|
||||
# Rbank directories
|
||||
RbankOutputBuildDirectory = "_invalid"
|
||||
|
||||
# Ligo directories
|
||||
|
||||
|
||||
# *** INSTALL DIRECTORIES IN THE CLIENT DATA ***
|
||||
|
||||
# Map directory
|
||||
MapInstallDirectory = CommonName + "_maps"
|
||||
BitmapInstallDirectory = MapInstallDirectory
|
||||
|
||||
# Shape directory
|
||||
ShapeInstallDirectory = CommonName + "_shapes"
|
||||
|
||||
# Lightmap directory
|
||||
LightmapInstallDirectory = CommonName + "_lightmaps"
|
||||
|
||||
# Tile directory
|
||||
TilesInstallDirectory = CommonName + "_tiles"
|
||||
|
||||
# Displace directory
|
||||
DisplaceInstallDirectory = CommonName + "_displaces"
|
||||
|
||||
# Bank directory
|
||||
BankInstallDirectory = CommonName + "_bank"
|
||||
|
||||
# Vegetable set directory
|
||||
VegetSetInstallDirectory = CommonName + "_vegetable_sets"
|
||||
|
||||
# Vegetable shape directory
|
||||
VegetInstallDirectory = CommonName + "_vegetables"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimInstallDirectory = CommonName + "_pacs_prim"
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file directories.py
|
||||
# \brief Directories configuration
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# \date 2001-2005
|
||||
# \author Nevrax
|
||||
# Python port of game data build pipeline.
|
||||
# Directories configuration for '%PreGenEcosystemName%' ecosystem.
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
|
||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||
|
||||
EcosystemName = "%PreGenEcosystemName%"
|
||||
EcosystemPath = "ecosystems/" + EcosystemName
|
||||
CommonName = EcosystemName
|
||||
CommonPath = EcosystemPath
|
||||
|
||||
DatabaseRootName = "%PreGenDatabaseRootName%"
|
||||
DatabaseRootPath = "stuff/" + DatabaseRootName
|
||||
|
||||
|
||||
# *** SOURCE DIRECTORIES IN THE DATABASE ***
|
||||
|
||||
# Shape directories
|
||||
ShapeSourceDirectories = [ ]
|
||||
ShapeSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||
ShapeSourceDirectories += [ "landscape/ligo/" + EcosystemName + "/max" ]
|
||||
|
||||
# Maps directories
|
||||
MapSourceDirectories = [ ]
|
||||
MapSourceDirectories += [ DatabaseRootPath + "/decors/_textures" ]
|
||||
%PreGenMapSubdirectories%MapSourceDirectories += [ "landscape/microveget/" + EcosystemName + "" ]
|
||||
MapSourceDirectories += [ "landscape/water/meshes/" + EcosystemName + "" ]
|
||||
|
||||
MapUncompressedSourceDirectories = [ ]
|
||||
|
||||
# Tiles directories
|
||||
TilesSourceDirectories = [ ]
|
||||
%PreGenTileSourceDirectories%
|
||||
# Tiles root directory
|
||||
TileRootSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||
|
||||
# Displace directory
|
||||
DisplaceSourceDirectory = "landscape/_texture_tiles/" + EcosystemName + "/displace"
|
||||
|
||||
# Do not use, needs to be removed and fixed in processes
|
||||
DisplaceSourceDirectories = [ ]
|
||||
DisplaceSourceDirectories += [ DisplaceSourceDirectory ]
|
||||
|
||||
# Bank directory
|
||||
BankSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||
|
||||
# Vegetable set directories
|
||||
VegetSetSourceDirectories = [ ]
|
||||
VegetSetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||
|
||||
# Veget directories
|
||||
VegetSourceDirectories = [ ]
|
||||
VegetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||
|
||||
# Ligo directories
|
||||
LigoBaseSourceDirectory = "landscape/ligo/" + EcosystemName
|
||||
LigoMaxSourceDirectory = LigoBaseSourceDirectory + "/max"
|
||||
|
||||
# Zone directories
|
||||
ZoneSourceDirectory = [ "landscape/zones/" + EcosystemName ] # For old snowballs style landscape when not using ligo
|
||||
|
||||
# Ig landscape directories
|
||||
IgLandSourceDirectory = "_invalid"
|
||||
|
||||
# Ig other directories
|
||||
IgOtherSourceDirectory = "_invalid"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimSourceDirectories = [ ]
|
||||
PacsPrimSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||
|
||||
|
||||
# *** LOOKUP DIRECTORIES WITHIN THE BUILD PIPELINE *** (TODO: use these instead of search_pathes in properties(_base).cfg)
|
||||
|
||||
# Ig lookup directories used by rbank
|
||||
IgLookupDirectories = [ ]
|
||||
|
||||
# Shape lookup directories used by rbank
|
||||
ShapeLookupDirectories = [ ]
|
||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_clodtex_build" ]
|
||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_with_coarse_mesh" ]
|
||||
|
||||
# Map lookup directories not yet used
|
||||
MapLookupDirectories = [ ]
|
||||
MapLookupDirectories += [ EcosystemPath + "/map_export" ]
|
||||
MapLookupDirectories += [ EcosystemPath + "/map_uncompressed" ]
|
||||
|
||||
|
||||
# *** EXPORT DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||
|
||||
# Map directories
|
||||
MapExportDirectory = CommonPath + "/map_export"
|
||||
MapUncompressedExportDirectory = CommonPath + "/map_uncompressed"
|
||||
|
||||
# Shape directories
|
||||
ShapeTagExportDirectory = CommonPath + "/shape_tag"
|
||||
ShapeNotOptimizedExportDirectory = CommonPath + "/shape_not_optimized"
|
||||
ShapeWithCoarseMeshExportDirectory = CommonPath + "/shape_with_coarse_mesh"
|
||||
ShapeLightmapNotOptimizedExportDirectory = CommonPath + "/shape_lightmap_not_optimized"
|
||||
ShapeAnimExportDirectory = CommonPath + "/shape_anim"
|
||||
|
||||
# Smallbank directories
|
||||
SmallbankExportDirectory = CommonPath + "/smallbank"
|
||||
|
||||
# Tiles directories
|
||||
TilesExportDirectory = CommonPath + "/tiles"
|
||||
|
||||
# Tiles directories
|
||||
DisplaceExportDirectory = CommonPath + "/diplace"
|
||||
|
||||
# Veget directories
|
||||
VegetExportDirectory = CommonPath + "/veget"
|
||||
VegetTagExportDirectory = CommonPath + "/veget_tag"
|
||||
|
||||
# Veget Set directories
|
||||
VegetSetExportDirectory = CommonPath + "/veget_set"
|
||||
|
||||
# Ligo directories
|
||||
LigoEcosystemExportDirectory = CommonPath + "/ligo_es"
|
||||
LigoEcosystemIgExportDirectory = LigoEcosystemExportDirectory + "/igs"
|
||||
LigoEcosystemZoneExportDirectory = LigoEcosystemExportDirectory + "/zones"
|
||||
LigoEcosystemZoneLigoExportDirectory = LigoEcosystemExportDirectory + "/zoneligos"
|
||||
LigoEcosystemCmbExportDirectory = LigoEcosystemExportDirectory + "/cmb"
|
||||
LigoEcosystemTagExportDirectory = CommonPath + "/ligo_es_tag"
|
||||
|
||||
# Zone directories
|
||||
ZoneExportDirectory = CommonPath + "/zone"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimExportDirectory = CommonPath + "/pacs_prim"
|
||||
PacsPrimTagExportDirectory = CommonPath + "/pacs_prim_tag"
|
||||
|
||||
|
||||
# *** BUILD DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||
|
||||
# Map directories
|
||||
MapBuildDirectory = CommonPath + "/map"
|
||||
MapPanoplyBuildDirectory = CommonPath + "/map_panoply"
|
||||
MapPanoplyHlsInfoBuildDirectory = CommonPath + "/map_panoply_hls_info"
|
||||
MapPanoplyHlsBankBuildDirectory = CommonPath + "/map_panoply_hls_bank"
|
||||
MapPanoplyCacheBuildDirectory = CommonPath + "/map_panoply_cache"
|
||||
MapTagBuildDirectory = CommonPath + "/map_tag"
|
||||
|
||||
# Shape directories
|
||||
ShapeClodtexBuildDirectory = CommonPath + "/shape_clodtex_build"
|
||||
ShapeWithCoarseMeshBuildDirectory = CommonPath + "/shape_with_coarse_mesh_builded"
|
||||
ShapeLightmapBuildDirectory = CommonPath + "/shape_lightmap"
|
||||
ShapeLightmap16BitsBuildDirectory = CommonPath + "/shape_lightmap_16_bits"
|
||||
|
||||
# Farbank directories
|
||||
FarbankBuildDirectory = CommonPath + "/farbank"
|
||||
|
||||
# Ig directories ************** TODO CONFIRM IN IG BUILD PROCESS ************ FIX RBANK IF NEEDED ***********
|
||||
IgLandBuildDirectory = "_invalid"
|
||||
IgOtherBuildDirectory = "_invalid"
|
||||
|
||||
# Rbank directories
|
||||
RbankOutputBuildDirectory = "_invalid"
|
||||
|
||||
# Ligo directories
|
||||
|
||||
|
||||
# *** INSTALL DIRECTORIES IN THE CLIENT DATA ***
|
||||
|
||||
# Map directory
|
||||
MapInstallDirectory = CommonName + "_maps"
|
||||
BitmapInstallDirectory = MapInstallDirectory
|
||||
|
||||
# Shape directory
|
||||
ShapeInstallDirectory = CommonName + "_shapes"
|
||||
|
||||
# Lightmap directory
|
||||
LightmapInstallDirectory = CommonName + "_lightmaps"
|
||||
|
||||
# Tile directory
|
||||
TilesInstallDirectory = CommonName + "_tiles"
|
||||
|
||||
# Displace directory
|
||||
DisplaceInstallDirectory = CommonName + "_displaces"
|
||||
|
||||
# Bank directory
|
||||
BankInstallDirectory = CommonName + "_bank"
|
||||
|
||||
# Vegetable set directory
|
||||
VegetSetInstallDirectory = CommonName + "_vegetable_sets"
|
||||
|
||||
# Vegetable shape directory
|
||||
VegetInstallDirectory = CommonName + "_vegetables"
|
||||
|
||||
# PACS primitives directories
|
||||
PacsPrimInstallDirectory = CommonName + "_pacs_prim"
|
||||
|
@ -1,122 +1,122 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file config.py
|
||||
# \brief Process configuration
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Process configuration for '%PreGenEcosystemName%' ecosystem.
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# *** PROCESS CONFIGURATION ***
|
||||
|
||||
# *** PROCESS CONFIG ***
|
||||
ProcessToComplete = [ ]
|
||||
ProcessToComplete += [ "shape" ]
|
||||
ProcessToComplete += [ "map" ]
|
||||
ProcessToComplete += [ "smallbank" ]
|
||||
ProcessToComplete += [ "farbank" ]
|
||||
ProcessToComplete += [ "tiles" ]
|
||||
ProcessToComplete += [ "displace" ]
|
||||
ProcessToComplete += [ "veget" ]
|
||||
ProcessToComplete += [ "vegetset" ]
|
||||
ProcessToComplete += [ "ligo" ]
|
||||
ProcessToComplete += [ "pacs_prim" ]
|
||||
|
||||
|
||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||
|
||||
EcosystemName = "%PreGenEcosystemName%"
|
||||
EcosystemPath = "ecosystems/" + EcosystemName
|
||||
CommonName = EcosystemName
|
||||
CommonPath = EcosystemPath
|
||||
|
||||
|
||||
# *** MAP EXPORT OPTIONS ***
|
||||
PanoplyFileList = [ ]
|
||||
HlsBankFileName = ""
|
||||
|
||||
# *** SHAPE EXPORT OPTIONS ***
|
||||
|
||||
# Compute lightmaps ?
|
||||
ShapeExportOptExportLighting = "%PreGenShapeExportOptExportLighting%"
|
||||
|
||||
# Cast shadow in lightmap ?
|
||||
ShapeExportOptShadow = "%PreGenShapeExportOptShadow%"
|
||||
|
||||
# Lighting limits. 0 : normal, 1 : soft shadows
|
||||
ShapeExportOptLightingLimit = %PreGenShapeExportOptLightingLimit%
|
||||
|
||||
# Lightmap lumel size
|
||||
ShapeExportOptLumelSize = "%PreGenShapeExportOptLumelSize%"
|
||||
|
||||
# Oversampling value. Can be 1, 2, 4 or 8
|
||||
ShapeExportOptOversampling = %PreGenShapeExportOptOversampling%
|
||||
|
||||
# Does the lightmap must be generated in 8 bits format ?
|
||||
ShapeExportOpt8BitsLightmap = "%PreGenShapeExportOpt8BitsLightmap%"
|
||||
|
||||
# Does the lightmaps export must generate logs ?
|
||||
ShapeExportOptLightmapLog = "%PreGenShapeExportOptLightmapLog%"
|
||||
|
||||
# Coarse mesh texture mul size
|
||||
TextureMulSizeValue = "%PreGenTextureMulSizeValue%"
|
||||
|
||||
ClodConfigFile = ""
|
||||
|
||||
# *** COARSE MESH TEXTURE NAME ***
|
||||
CoarseMeshTextureNames = [ ]
|
||||
%PreGenCoarseMeshTextureNames%
|
||||
# *** POSTFIX USED BY THE MULTIPLE TILES SYSTEM ***
|
||||
MultipleTilesPostfix = [ ]
|
||||
%PreGenMultipleTilesPostfix%
|
||||
# *** BANK EXPORT OPTIONS ***
|
||||
|
||||
# Name of the tilebank to use
|
||||
BankTileBankName = EcosystemName
|
||||
|
||||
# *** RBANK EXPORT OPTIONS ***
|
||||
|
||||
# Output names
|
||||
RbankRbankName = "_invalid"
|
||||
|
||||
# *** LIGO OPTIONS ***
|
||||
|
||||
LigoExportLand = ""
|
||||
LigoExportOnePass = 0
|
||||
|
||||
# *** MAPS OPTIONS ***
|
||||
|
||||
ReduceBitmapFactor = 0
|
||||
# list all panoply files
|
||||
MapPanoplyFileList = None
|
||||
# name of the .hlsbank to build.
|
||||
MapHlsBankFileName = None
|
||||
|
||||
# *** SHAPE BUILD OPTIONS *
|
||||
|
||||
BuildShadowSkinEnabled = False
|
||||
ClodConfigFile = ""
|
||||
|
||||
# *** PACS_PRIM OPTIONS ***
|
||||
WantLandscapeColPrimPacsList = True
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file config.py
|
||||
# \brief Process configuration
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Process configuration for '%PreGenEcosystemName%' ecosystem.
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
# *** PROCESS CONFIGURATION ***
|
||||
|
||||
# *** PROCESS CONFIG ***
|
||||
ProcessToComplete = [ ]
|
||||
ProcessToComplete += [ "shape" ]
|
||||
ProcessToComplete += [ "map" ]
|
||||
ProcessToComplete += [ "smallbank" ]
|
||||
ProcessToComplete += [ "farbank" ]
|
||||
ProcessToComplete += [ "tiles" ]
|
||||
ProcessToComplete += [ "displace" ]
|
||||
ProcessToComplete += [ "veget" ]
|
||||
ProcessToComplete += [ "vegetset" ]
|
||||
ProcessToComplete += [ "ligo" ]
|
||||
ProcessToComplete += [ "pacs_prim" ]
|
||||
|
||||
|
||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||
|
||||
EcosystemName = "%PreGenEcosystemName%"
|
||||
EcosystemPath = "ecosystems/" + EcosystemName
|
||||
CommonName = EcosystemName
|
||||
CommonPath = EcosystemPath
|
||||
|
||||
|
||||
# *** MAP EXPORT OPTIONS ***
|
||||
PanoplyFileList = [ ]
|
||||
HlsBankFileName = ""
|
||||
|
||||
# *** SHAPE EXPORT OPTIONS ***
|
||||
|
||||
# Compute lightmaps ?
|
||||
ShapeExportOptExportLighting = "%PreGenShapeExportOptExportLighting%"
|
||||
|
||||
# Cast shadow in lightmap ?
|
||||
ShapeExportOptShadow = "%PreGenShapeExportOptShadow%"
|
||||
|
||||
# Lighting limits. 0 : normal, 1 : soft shadows
|
||||
ShapeExportOptLightingLimit = %PreGenShapeExportOptLightingLimit%
|
||||
|
||||
# Lightmap lumel size
|
||||
ShapeExportOptLumelSize = "%PreGenShapeExportOptLumelSize%"
|
||||
|
||||
# Oversampling value. Can be 1, 2, 4 or 8
|
||||
ShapeExportOptOversampling = %PreGenShapeExportOptOversampling%
|
||||
|
||||
# Does the lightmap must be generated in 8 bits format ?
|
||||
ShapeExportOpt8BitsLightmap = "%PreGenShapeExportOpt8BitsLightmap%"
|
||||
|
||||
# Does the lightmaps export must generate logs ?
|
||||
ShapeExportOptLightmapLog = "%PreGenShapeExportOptLightmapLog%"
|
||||
|
||||
# Coarse mesh texture mul size
|
||||
TextureMulSizeValue = "%PreGenTextureMulSizeValue%"
|
||||
|
||||
ClodConfigFile = ""
|
||||
|
||||
# *** COARSE MESH TEXTURE NAME ***
|
||||
CoarseMeshTextureNames = [ ]
|
||||
%PreGenCoarseMeshTextureNames%
|
||||
# *** POSTFIX USED BY THE MULTIPLE TILES SYSTEM ***
|
||||
MultipleTilesPostfix = [ ]
|
||||
%PreGenMultipleTilesPostfix%
|
||||
# *** BANK EXPORT OPTIONS ***
|
||||
|
||||
# Name of the tilebank to use
|
||||
BankTileBankName = EcosystemName
|
||||
|
||||
# *** RBANK EXPORT OPTIONS ***
|
||||
|
||||
# Output names
|
||||
RbankRbankName = "_invalid"
|
||||
|
||||
# *** LIGO OPTIONS ***
|
||||
|
||||
LigoExportLand = ""
|
||||
LigoExportOnePass = 0
|
||||
|
||||
# *** MAPS OPTIONS ***
|
||||
|
||||
ReduceBitmapFactor = 0
|
||||
# list all panoply files
|
||||
MapPanoplyFileList = None
|
||||
# name of the .hlsbank to build.
|
||||
MapHlsBankFileName = None
|
||||
|
||||
# *** SHAPE BUILD OPTIONS *
|
||||
|
||||
BuildShadowSkinEnabled = False
|
||||
ClodConfigFile = ""
|
||||
|
||||
# *** PACS_PRIM OPTIONS ***
|
||||
WantLandscapeColPrimPacsList = True
|
||||
|
@ -1,65 +1,65 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_all.log"):
|
||||
os.remove("generate_all.log")
|
||||
log = open("generate_all.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate all")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_simple_max_exporters.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_tagged_max_exporters.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_ecosystem_projects.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_all.log"):
|
||||
os.remove("generate_all.log")
|
||||
log = open("generate_all.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate all")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_simple_max_exporters.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_tagged_max_exporters.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
try:
|
||||
subprocess.call([ "python", "generate_ecosystem_projects.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
log.close()
|
||||
|
@ -1,278 +1,278 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file generate_ecosystem_projects.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2010-09-02 10:36GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Generate ecosystem projects
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_ecosystem_projects.log"):
|
||||
os.remove("generate_ecosystem_projects.log")
|
||||
log = open("generate_ecosystem_projects.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate ecosystem projects")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/ecosystem_project_template"
|
||||
mkPath(log, templateDir)
|
||||
|
||||
os.chdir("..")
|
||||
|
||||
|
||||
# Scroll down to add an ecosystem.
|
||||
|
||||
|
||||
|
||||
DefaultShapeExportOptExportLighting = "true"
|
||||
DefaultShapeExportOptShadow = "true"
|
||||
DefaultShapeExportOptLightingLimit = "1"
|
||||
DefaultShapeExportOptLumelSize = "0.25"
|
||||
DefaultShapeExportOptOversampling = "1"
|
||||
DefaultShapeExportOpt8BitsLightmap = "true"
|
||||
DefaultShapeExportOptLightmapLog = "true"
|
||||
DefaultTextureMulSizeValue = "1.5"
|
||||
DefaultSeasonSuffixes = [ "sp" ] + [ "su" ] + [ "au" ] + [ "wi" ]
|
||||
DefaultMapSubdirectories = [ ]
|
||||
DefaultTileDirectories = [ ]
|
||||
|
||||
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = DefaultShapeExportOpt8BitsLightmap
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = DefaultMapSubdirectories
|
||||
TileDirectories = DefaultTileDirectories
|
||||
|
||||
|
||||
PreGenDateTimeStamp = None
|
||||
PreGenEcosystemName = None
|
||||
PreGenDatabaseRootName = None
|
||||
PreGenCoarseMeshTextureNames = None
|
||||
PreGenMultipleTilesPostfix = None
|
||||
PreGenMapSubdirectories = None
|
||||
PreGenTileSourceDirectories = None
|
||||
|
||||
|
||||
def transformLine(line):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", PreGenDateTimeStamp)
|
||||
|
||||
newline = newline.replace("%PreGenEcosystemName%", PreGenEcosystemName)
|
||||
newline = newline.replace("%PreGenDatabaseRootName%", PreGenDatabaseRootName)
|
||||
|
||||
newline = newline.replace("%PreGenCoarseMeshTextureNames%", PreGenCoarseMeshTextureNames)
|
||||
newline = newline.replace("%PreGenMultipleTilesPostfix%", PreGenMultipleTilesPostfix)
|
||||
newline = newline.replace("%PreGenMapSubdirectories%", PreGenMapSubdirectories)
|
||||
newline = newline.replace("%PreGenTileSourceDirectories%", PreGenTileSourceDirectories)
|
||||
|
||||
newline = newline.replace("%PreGenShapeExportOptExportLighting%", ShapeExportOptExportLighting)
|
||||
newline = newline.replace("%PreGenShapeExportOptShadow%", ShapeExportOptShadow)
|
||||
newline = newline.replace("%PreGenShapeExportOptLightingLimit%", ShapeExportOptLightingLimit)
|
||||
newline = newline.replace("%PreGenShapeExportOptLumelSize%", ShapeExportOptLumelSize)
|
||||
newline = newline.replace("%PreGenShapeExportOptOversampling%", ShapeExportOptOversampling)
|
||||
newline = newline.replace("%PreGenShapeExportOpt8BitsLightmap%", ShapeExportOpt8BitsLightmap)
|
||||
newline = newline.replace("%PreGenShapeExportOptLightmapLog%", ShapeExportOptLightmapLog)
|
||||
newline = newline.replace("%PreGenTextureMulSizeValue%", TextureMulSizeValue)
|
||||
newline = newline.replace("%PreGenTileSourceDirectories%", PreGenTileSourceDirectories)
|
||||
|
||||
return newline
|
||||
|
||||
def generateFile(sourceFile, destFile):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, "w")
|
||||
printLog(log, "WRITE " + destFile)
|
||||
for line in srcf:
|
||||
dstf.write(transformLine(line))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateEcosystem(ecosystemName, databaseRootName):
|
||||
global PreGenEcosystemName
|
||||
PreGenEcosystemName = ecosystemName
|
||||
global PreGenDatabaseRootName
|
||||
PreGenDatabaseRootName = databaseRootName
|
||||
global PreGenDateTimeStamp
|
||||
PreGenDateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
|
||||
global PreGenMultipleTilesPostfix
|
||||
PreGenMultipleTilesPostfix = ""
|
||||
global PreGenCoarseMeshTextureNames
|
||||
PreGenCoarseMeshTextureNames = ""
|
||||
global PreGenTileSourceDirectories
|
||||
PreGenTileSourceDirectories = ""
|
||||
for suffix in SeasonSuffixes:
|
||||
PreGenMultipleTilesPostfix += "MultipleTilesPostfix += [ \"_" + suffix + "\" ]\n"
|
||||
PreGenCoarseMeshTextureNames += "CoarseMeshTextureNames += [ \"nel_coarse_mesh_\" + EcosystemName + \"_" + suffix + "\" ]\n"
|
||||
for tiledir in TileDirectories:
|
||||
PreGenTileSourceDirectories += "TilesSourceDirectories += [ \"landscape/_texture_tiles/\" + EcosystemName + \"_" + suffix + "/" + tiledir + "\" ]\n"
|
||||
global PreGenMapSubdirectories
|
||||
PreGenMapSubdirectories = ""
|
||||
for subdir in MapSubdirectories:
|
||||
PreGenMapSubdirectories += "MapSourceDirectories += [ DatabaseRootPath + \"/decors/_textures/" + subdir + "\" ]\n"
|
||||
|
||||
destDir = WorkspaceDirectory + "/ecosystems/" + ecosystemName
|
||||
mkPath(log, destDir)
|
||||
|
||||
generateFile(templateDir + "/process.py", destDir + "/process.py")
|
||||
generateFile(templateDir + "/directories.py", destDir + "/directories.py")
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
# Add new ecosystems below this line.
|
||||
|
||||
|
||||
|
||||
# DESERT
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = DefaultShapeExportOpt8BitsLightmap
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "1.5-marecage_profond" ]
|
||||
TileDirectories += [ "1-marecages" ]
|
||||
TileDirectories += [ "2-citees" ]
|
||||
TileDirectories += [ "3-fond_canyon" ]
|
||||
TileDirectories += [ "4.2-boisbandeclair" ]
|
||||
TileDirectories += [ "4.5-desert2boisbande" ]
|
||||
TileDirectories += [ "4-falaise_bois_bande" ]
|
||||
TileDirectories += [ "5-falaise_normales" ]
|
||||
TileDirectories += [ "6.5-desertalternatif" ]
|
||||
TileDirectories += [ "6-desert" ]
|
||||
TileDirectories += [ "7-routes" ]
|
||||
TileDirectories += [ "8-foretbrule" ]
|
||||
generateEcosystem("desert", "fyros")
|
||||
|
||||
|
||||
# JUNGLE
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "10-crevassejungle" ]
|
||||
TileDirectories += [ "11-paroisjungle" ]
|
||||
TileDirectories += [ "12-vasejungle" ]
|
||||
TileDirectories += [ "1-junglemousse" ]
|
||||
TileDirectories += [ "2-junglefeuilles" ]
|
||||
TileDirectories += [ "3-jungleherbesseche" ]
|
||||
TileDirectories += [ "4-jungleherbevieille" ]
|
||||
TileDirectories += [ "5-jungleterreaux" ]
|
||||
TileDirectories += [ "6-junglegoo" ]
|
||||
TileDirectories += [ "7-sciurejungle" ]
|
||||
TileDirectories += [ "8-terrejungle" ]
|
||||
TileDirectories += [ "9-falaisejungle" ]
|
||||
TileDirectories += [ "Transitions" ]
|
||||
generateEcosystem("jungle", "jungle")
|
||||
|
||||
|
||||
# PRIMES RACINES
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
MapSubdirectories += [ "batiments" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "PR-creux" ]
|
||||
TileDirectories += [ "PR-dome-moussu" ]
|
||||
TileDirectories += [ "PR-kitiniere" ]
|
||||
TileDirectories += [ "PR-mousse-licken" ]
|
||||
TileDirectories += [ "PR-mousse-spongieus" ]
|
||||
TileDirectories += [ "PR-parois" ]
|
||||
TileDirectories += [ "PR-sol-mousse" ]
|
||||
TileDirectories += [ "PR-souche" ]
|
||||
TileDirectories += [ "PR-stalagmite" ]
|
||||
TileDirectories += [ "PR-terre" ]
|
||||
TileDirectories += [ "aditif" ]
|
||||
generateEcosystem("primes_racines", "primes_racines")
|
||||
|
||||
|
||||
# LACUSTRE
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = "0"
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = "8"
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "1a-sable-marin" ]
|
||||
TileDirectories += [ "1-plages" ]
|
||||
TileDirectories += [ "2-iles" ]
|
||||
TileDirectories += [ "2-ilesa" ]
|
||||
TileDirectories += [ "2-iles-marines" ]
|
||||
TileDirectories += [ "3-fondmarin2plage" ]
|
||||
TileDirectories += [ "4-marecages" ]
|
||||
TileDirectories += [ "5-marecages" ]
|
||||
TileDirectories += [ "5-parois-marine" ]
|
||||
TileDirectories += [ "6-fond_marin" ]
|
||||
TileDirectories += [ "7-bassesiles" ]
|
||||
TileDirectories += [ "7-mousseter" ]
|
||||
TileDirectories += [ "7-racines" ]
|
||||
TileDirectories += [ "8-mousse_marine" ]
|
||||
TileDirectories += [ "constructible" ]
|
||||
generateEcosystem("lacustre", "tryker")
|
||||
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file generate_ecosystem_projects.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2010-09-02 10:36GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Generate ecosystem projects
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_ecosystem_projects.log"):
|
||||
os.remove("generate_ecosystem_projects.log")
|
||||
log = open("generate_ecosystem_projects.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate ecosystem projects")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/ecosystem_project_template"
|
||||
mkPath(log, templateDir)
|
||||
|
||||
os.chdir("..")
|
||||
|
||||
|
||||
# Scroll down to add an ecosystem.
|
||||
|
||||
|
||||
|
||||
DefaultShapeExportOptExportLighting = "true"
|
||||
DefaultShapeExportOptShadow = "true"
|
||||
DefaultShapeExportOptLightingLimit = "1"
|
||||
DefaultShapeExportOptLumelSize = "0.25"
|
||||
DefaultShapeExportOptOversampling = "1"
|
||||
DefaultShapeExportOpt8BitsLightmap = "true"
|
||||
DefaultShapeExportOptLightmapLog = "true"
|
||||
DefaultTextureMulSizeValue = "1.5"
|
||||
DefaultSeasonSuffixes = [ "sp" ] + [ "su" ] + [ "au" ] + [ "wi" ]
|
||||
DefaultMapSubdirectories = [ ]
|
||||
DefaultTileDirectories = [ ]
|
||||
|
||||
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = DefaultShapeExportOpt8BitsLightmap
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = DefaultMapSubdirectories
|
||||
TileDirectories = DefaultTileDirectories
|
||||
|
||||
|
||||
PreGenDateTimeStamp = None
|
||||
PreGenEcosystemName = None
|
||||
PreGenDatabaseRootName = None
|
||||
PreGenCoarseMeshTextureNames = None
|
||||
PreGenMultipleTilesPostfix = None
|
||||
PreGenMapSubdirectories = None
|
||||
PreGenTileSourceDirectories = None
|
||||
|
||||
|
||||
def transformLine(line):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", PreGenDateTimeStamp)
|
||||
|
||||
newline = newline.replace("%PreGenEcosystemName%", PreGenEcosystemName)
|
||||
newline = newline.replace("%PreGenDatabaseRootName%", PreGenDatabaseRootName)
|
||||
|
||||
newline = newline.replace("%PreGenCoarseMeshTextureNames%", PreGenCoarseMeshTextureNames)
|
||||
newline = newline.replace("%PreGenMultipleTilesPostfix%", PreGenMultipleTilesPostfix)
|
||||
newline = newline.replace("%PreGenMapSubdirectories%", PreGenMapSubdirectories)
|
||||
newline = newline.replace("%PreGenTileSourceDirectories%", PreGenTileSourceDirectories)
|
||||
|
||||
newline = newline.replace("%PreGenShapeExportOptExportLighting%", ShapeExportOptExportLighting)
|
||||
newline = newline.replace("%PreGenShapeExportOptShadow%", ShapeExportOptShadow)
|
||||
newline = newline.replace("%PreGenShapeExportOptLightingLimit%", ShapeExportOptLightingLimit)
|
||||
newline = newline.replace("%PreGenShapeExportOptLumelSize%", ShapeExportOptLumelSize)
|
||||
newline = newline.replace("%PreGenShapeExportOptOversampling%", ShapeExportOptOversampling)
|
||||
newline = newline.replace("%PreGenShapeExportOpt8BitsLightmap%", ShapeExportOpt8BitsLightmap)
|
||||
newline = newline.replace("%PreGenShapeExportOptLightmapLog%", ShapeExportOptLightmapLog)
|
||||
newline = newline.replace("%PreGenTextureMulSizeValue%", TextureMulSizeValue)
|
||||
newline = newline.replace("%PreGenTileSourceDirectories%", PreGenTileSourceDirectories)
|
||||
|
||||
return newline
|
||||
|
||||
def generateFile(sourceFile, destFile):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, "w")
|
||||
printLog(log, "WRITE " + destFile)
|
||||
for line in srcf:
|
||||
dstf.write(transformLine(line))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateEcosystem(ecosystemName, databaseRootName):
|
||||
global PreGenEcosystemName
|
||||
PreGenEcosystemName = ecosystemName
|
||||
global PreGenDatabaseRootName
|
||||
PreGenDatabaseRootName = databaseRootName
|
||||
global PreGenDateTimeStamp
|
||||
PreGenDateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
|
||||
global PreGenMultipleTilesPostfix
|
||||
PreGenMultipleTilesPostfix = ""
|
||||
global PreGenCoarseMeshTextureNames
|
||||
PreGenCoarseMeshTextureNames = ""
|
||||
global PreGenTileSourceDirectories
|
||||
PreGenTileSourceDirectories = ""
|
||||
for suffix in SeasonSuffixes:
|
||||
PreGenMultipleTilesPostfix += "MultipleTilesPostfix += [ \"_" + suffix + "\" ]\n"
|
||||
PreGenCoarseMeshTextureNames += "CoarseMeshTextureNames += [ \"nel_coarse_mesh_\" + EcosystemName + \"_" + suffix + "\" ]\n"
|
||||
for tiledir in TileDirectories:
|
||||
PreGenTileSourceDirectories += "TilesSourceDirectories += [ \"landscape/_texture_tiles/\" + EcosystemName + \"_" + suffix + "/" + tiledir + "\" ]\n"
|
||||
global PreGenMapSubdirectories
|
||||
PreGenMapSubdirectories = ""
|
||||
for subdir in MapSubdirectories:
|
||||
PreGenMapSubdirectories += "MapSourceDirectories += [ DatabaseRootPath + \"/decors/_textures/" + subdir + "\" ]\n"
|
||||
|
||||
destDir = WorkspaceDirectory + "/ecosystems/" + ecosystemName
|
||||
mkPath(log, destDir)
|
||||
|
||||
generateFile(templateDir + "/process.py", destDir + "/process.py")
|
||||
generateFile(templateDir + "/directories.py", destDir + "/directories.py")
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
# Add new ecosystems below this line.
|
||||
|
||||
|
||||
|
||||
# DESERT
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = DefaultShapeExportOpt8BitsLightmap
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "1.5-marecage_profond" ]
|
||||
TileDirectories += [ "1-marecages" ]
|
||||
TileDirectories += [ "2-citees" ]
|
||||
TileDirectories += [ "3-fond_canyon" ]
|
||||
TileDirectories += [ "4.2-boisbandeclair" ]
|
||||
TileDirectories += [ "4.5-desert2boisbande" ]
|
||||
TileDirectories += [ "4-falaise_bois_bande" ]
|
||||
TileDirectories += [ "5-falaise_normales" ]
|
||||
TileDirectories += [ "6.5-desertalternatif" ]
|
||||
TileDirectories += [ "6-desert" ]
|
||||
TileDirectories += [ "7-routes" ]
|
||||
TileDirectories += [ "8-foretbrule" ]
|
||||
generateEcosystem("desert", "fyros")
|
||||
|
||||
|
||||
# JUNGLE
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "10-crevassejungle" ]
|
||||
TileDirectories += [ "11-paroisjungle" ]
|
||||
TileDirectories += [ "12-vasejungle" ]
|
||||
TileDirectories += [ "1-junglemousse" ]
|
||||
TileDirectories += [ "2-junglefeuilles" ]
|
||||
TileDirectories += [ "3-jungleherbesseche" ]
|
||||
TileDirectories += [ "4-jungleherbevieille" ]
|
||||
TileDirectories += [ "5-jungleterreaux" ]
|
||||
TileDirectories += [ "6-junglegoo" ]
|
||||
TileDirectories += [ "7-sciurejungle" ]
|
||||
TileDirectories += [ "8-terrejungle" ]
|
||||
TileDirectories += [ "9-falaisejungle" ]
|
||||
TileDirectories += [ "Transitions" ]
|
||||
generateEcosystem("jungle", "jungle")
|
||||
|
||||
|
||||
# PRIMES RACINES
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = DefaultShapeExportOptLightingLimit
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = DefaultShapeExportOptOversampling
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
MapSubdirectories += [ "batiments" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "PR-creux" ]
|
||||
TileDirectories += [ "PR-dome-moussu" ]
|
||||
TileDirectories += [ "PR-kitiniere" ]
|
||||
TileDirectories += [ "PR-mousse-licken" ]
|
||||
TileDirectories += [ "PR-mousse-spongieus" ]
|
||||
TileDirectories += [ "PR-parois" ]
|
||||
TileDirectories += [ "PR-sol-mousse" ]
|
||||
TileDirectories += [ "PR-souche" ]
|
||||
TileDirectories += [ "PR-stalagmite" ]
|
||||
TileDirectories += [ "PR-terre" ]
|
||||
TileDirectories += [ "aditif" ]
|
||||
generateEcosystem("primes_racines", "primes_racines")
|
||||
|
||||
|
||||
# LACUSTRE
|
||||
ShapeExportOptExportLighting = DefaultShapeExportOptExportLighting
|
||||
ShapeExportOptShadow = DefaultShapeExportOptShadow
|
||||
ShapeExportOptLightingLimit = "0"
|
||||
ShapeExportOptLumelSize = DefaultShapeExportOptLumelSize
|
||||
ShapeExportOptOversampling = "8"
|
||||
ShapeExportOpt8BitsLightmap = "false"
|
||||
ShapeExportOptLightmapLog = DefaultShapeExportOptLightmapLog
|
||||
TextureMulSizeValue = DefaultTextureMulSizeValue
|
||||
SeasonSuffixes = DefaultSeasonSuffixes
|
||||
MapSubdirectories = [ ]
|
||||
MapSubdirectories += [ "vegetations" ]
|
||||
TileDirectories = [ ]
|
||||
TileDirectories += [ "1a-sable-marin" ]
|
||||
TileDirectories += [ "1-plages" ]
|
||||
TileDirectories += [ "2-iles" ]
|
||||
TileDirectories += [ "2-ilesa" ]
|
||||
TileDirectories += [ "2-iles-marines" ]
|
||||
TileDirectories += [ "3-fondmarin2plage" ]
|
||||
TileDirectories += [ "4-marecages" ]
|
||||
TileDirectories += [ "5-marecages" ]
|
||||
TileDirectories += [ "5-parois-marine" ]
|
||||
TileDirectories += [ "6-fond_marin" ]
|
||||
TileDirectories += [ "7-bassesiles" ]
|
||||
TileDirectories += [ "7-mousseter" ]
|
||||
TileDirectories += [ "7-racines" ]
|
||||
TileDirectories += [ "8-mousse_marine" ]
|
||||
TileDirectories += [ "constructible" ]
|
||||
generateEcosystem("lacustre", "tryker")
|
||||
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
@ -1,100 +1,100 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_simple_max_exporters.log"):
|
||||
os.remove("generate_simple_max_exporters.log")
|
||||
log = open("generate_simple_max_exporters.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate simple max exporters")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
def processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", dateTimeStamp)
|
||||
newline = newline.replace("%PreGenProcessName%", processName)
|
||||
newline = newline.replace("%PreGenFileExtension%", fileExtension)
|
||||
newline = newline.replace("%PreGenSourceDirectoriesVariable%", sourceDirectoriesVariable)
|
||||
newline = newline.replace("%PreGenExportDirectoryVariable%", exportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenInstallDirectoryVariable%", clientDirectoryVariable)
|
||||
return newline
|
||||
|
||||
def generateSimpleMaxExporterFile(sourceFile, destFile, writeMode, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, writeMode)
|
||||
printLog(log, "WRITE " + destFile + " " + writeMode)
|
||||
for line in srcf:
|
||||
dstf.write(processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateSimpleMaxExporter(processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
maxscriptDir = processDir + "/maxscript"
|
||||
mkPath(log, maxscriptDir)
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/simple_max_exporter_template"
|
||||
mkPath(log, templateDir)
|
||||
scriptDir = os.getcwd().replace("\\", "/") + "/max_exporter_scripts"
|
||||
mkPath(log, scriptDir)
|
||||
|
||||
if not os.path.isfile(processDir + "/0_setup.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/0_setup.py", processDir + "/0_setup.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateSimpleMaxExporterFile(templateDir + "/1_export_header.py", processDir + "/1_export.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(scriptDir + "/" + fileExtension + ".py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(templateDir + "/1_export_footer.py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
if not os.path.isfile(processDir + "/2_build.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/2_build.py", processDir + "/2_build.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
if not os.path.isfile(processDir + "/3_install.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/3_install.py", processDir + "/3_install.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateSimpleMaxExporterFile(templateDir + "/export_header.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(scriptDir + "/" + fileExtension + ".ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(templateDir + "/export_footer.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
|
||||
|
||||
generateSimpleMaxExporter("skel", "skel", "SkelSourceDirectories", "SkelExportDirectory", "SkelInstallDirectory")
|
||||
|
||||
generateSimpleMaxExporter("swt", "swt", "SwtSourceDirectories", "SwtExportDirectory", "SwtInstallDirectory")
|
||||
|
||||
generateSimpleMaxExporter("zone", "zone", "ZoneSourceDirectory", "ZoneExportDirectory", "ZoneInstallDirectory")
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_simple_max_exporters.log"):
|
||||
os.remove("generate_simple_max_exporters.log")
|
||||
log = open("generate_simple_max_exporters.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate simple max exporters")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
def processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", dateTimeStamp)
|
||||
newline = newline.replace("%PreGenProcessName%", processName)
|
||||
newline = newline.replace("%PreGenFileExtension%", fileExtension)
|
||||
newline = newline.replace("%PreGenSourceDirectoriesVariable%", sourceDirectoriesVariable)
|
||||
newline = newline.replace("%PreGenExportDirectoryVariable%", exportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenInstallDirectoryVariable%", clientDirectoryVariable)
|
||||
return newline
|
||||
|
||||
def generateSimpleMaxExporterFile(sourceFile, destFile, writeMode, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, writeMode)
|
||||
printLog(log, "WRITE " + destFile + " " + writeMode)
|
||||
for line in srcf:
|
||||
dstf.write(processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateSimpleMaxExporter(processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
maxscriptDir = processDir + "/maxscript"
|
||||
mkPath(log, maxscriptDir)
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/simple_max_exporter_template"
|
||||
mkPath(log, templateDir)
|
||||
scriptDir = os.getcwd().replace("\\", "/") + "/max_exporter_scripts"
|
||||
mkPath(log, scriptDir)
|
||||
|
||||
if not os.path.isfile(processDir + "/0_setup.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/0_setup.py", processDir + "/0_setup.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateSimpleMaxExporterFile(templateDir + "/1_export_header.py", processDir + "/1_export.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(scriptDir + "/" + fileExtension + ".py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(templateDir + "/1_export_footer.py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
if not os.path.isfile(processDir + "/2_build.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/2_build.py", processDir + "/2_build.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
if not os.path.isfile(processDir + "/3_install.py"):
|
||||
generateSimpleMaxExporterFile(templateDir + "/3_install.py", processDir + "/3_install.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateSimpleMaxExporterFile(templateDir + "/export_header.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(scriptDir + "/" + fileExtension + ".ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateSimpleMaxExporterFile(templateDir + "/export_footer.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
|
||||
|
||||
generateSimpleMaxExporter("skel", "skel", "SkelSourceDirectories", "SkelExportDirectory", "SkelInstallDirectory")
|
||||
|
||||
generateSimpleMaxExporter("swt", "swt", "SwtSourceDirectories", "SwtExportDirectory", "SwtInstallDirectory")
|
||||
|
||||
generateSimpleMaxExporter("zone", "zone", "ZoneSourceDirectory", "ZoneExportDirectory", "ZoneInstallDirectory")
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
@ -1,120 +1,120 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_tagged_max_exporters.log"):
|
||||
os.remove("generate_tagged_max_exporters.log")
|
||||
log = open("generate_tagged_max_exporters.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate tagged max exporters")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/tagged_max_exporter_template"
|
||||
mkPath(log, templateDir)
|
||||
scriptDir = os.getcwd().replace("\\", "/") + "/max_exporter_scripts"
|
||||
mkPath(log, scriptDir)
|
||||
|
||||
def processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", dateTimeStamp)
|
||||
newline = newline.replace("%PreGenProcessName%", processName)
|
||||
newline = newline.replace("%PreGenFileExtension%", fileExtension)
|
||||
newline = newline.replace("%PreGenSourceDirectoriesVariable%", sourceDirectoriesVariable)
|
||||
newline = newline.replace("%PreGenExportDirectoryVariable%", exportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenTagExportDirectoryVariable%", tagExportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenInstallDirectoryVariable%", clientDirectoryVariable)
|
||||
return newline
|
||||
|
||||
def generateTaggedMaxExporterFile(sourceFile, destFile, writeMode, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, writeMode)
|
||||
printLog(log, "WRITE " + destFile + " " + writeMode)
|
||||
for line in srcf:
|
||||
dstf.write(processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateTaggedMaxScriptFile(processDir, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
maxscriptDir = processDir + "/maxscript"
|
||||
mkPath(log, maxscriptDir)
|
||||
generateTaggedMaxExporterFile(templateDir + "/export_header.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(scriptDir + "/" + fileExtension + ".ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(templateDir + "/export_footer.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
def generateTaggedMaxScript(processName, fileExtension):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
|
||||
generateTaggedMaxScriptFile(processDir, processName, fileExtension, "_invalid", "_invalid", "_invalid", "_invalid", dateTimeStamp)
|
||||
|
||||
def generateTaggedMaxExporter(processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
|
||||
if not os.path.isfile(processDir + "/0_setup.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/0_setup.py", processDir + "/0_setup.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateTaggedMaxExporterFile(templateDir + "/1_export_header.py", processDir + "/1_export.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(scriptDir + "/" + fileExtension + ".py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(templateDir + "/1_export_footer.py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
if not os.path.isfile(processDir + "/2_build.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/2_build.py", processDir + "/2_build.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
if not os.path.isfile(processDir + "/3_install.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/3_install.py", processDir + "/3_install.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateTaggedMaxScriptFile(processDir, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
|
||||
|
||||
generateTaggedMaxExporter("pacs_prim", "pacs_prim", "PacsPrimSourceDirectories", "PacsPrimExportDirectory", "PacsPrimTagExportDirectory", "PacsPrimInstallDirectory")
|
||||
|
||||
generateTaggedMaxExporter("clodbank", "clod", "ClodSourceDirectories", "ClodExportDirectory", "ClodTagExportDirectory", "ClodInstallDirectory")
|
||||
|
||||
generateTaggedMaxScript("ig", "ig")
|
||||
|
||||
generateTaggedMaxExporter("rbank", "cmb", "RBankCmbSourceDirectories", "RBankCmbExportDirectory", "RBankCmbTagExportDirectory", "PacsInstallDirectory")
|
||||
|
||||
generateTaggedMaxExporter("veget", "veget", "VegetSourceDirectories", "VegetExportDirectory", "VegetTagExportDirectory", "VegetInstallDirectory")
|
||||
|
||||
generateTaggedMaxScript("shape", "shape")
|
||||
|
||||
generateTaggedMaxExporter("anim", "anim", "AnimSourceDirectories", "AnimExportDirectory", "AnimTagExportDirectory", "AnimInstallDirectory")
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../configuration")
|
||||
if os.path.isfile("generate_tagged_max_exporters.log"):
|
||||
os.remove("generate_tagged_max_exporters.log")
|
||||
log = open("generate_tagged_max_exporters.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from tools import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Generate tagged max exporters")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
templateDir = os.getcwd().replace("\\", "/") + "/tagged_max_exporter_template"
|
||||
mkPath(log, templateDir)
|
||||
scriptDir = os.getcwd().replace("\\", "/") + "/max_exporter_scripts"
|
||||
mkPath(log, scriptDir)
|
||||
|
||||
def processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
newline = line.replace("%PreGenWarning%", "WARNING : this is a generated file, don't change it !")
|
||||
newline = newline.replace("%PreGenDateTimeStamp%", dateTimeStamp)
|
||||
newline = newline.replace("%PreGenProcessName%", processName)
|
||||
newline = newline.replace("%PreGenFileExtension%", fileExtension)
|
||||
newline = newline.replace("%PreGenSourceDirectoriesVariable%", sourceDirectoriesVariable)
|
||||
newline = newline.replace("%PreGenExportDirectoryVariable%", exportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenTagExportDirectoryVariable%", tagExportDirectoryVariable)
|
||||
newline = newline.replace("%PreGenInstallDirectoryVariable%", clientDirectoryVariable)
|
||||
return newline
|
||||
|
||||
def generateTaggedMaxExporterFile(sourceFile, destFile, writeMode, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
srcf = open(sourceFile, "r")
|
||||
dstf = open(destFile, writeMode)
|
||||
printLog(log, "WRITE " + destFile + " " + writeMode)
|
||||
for line in srcf:
|
||||
dstf.write(processLine(line, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp))
|
||||
dstf.close()
|
||||
srcf.close()
|
||||
|
||||
def generateTaggedMaxScriptFile(processDir, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp):
|
||||
maxscriptDir = processDir + "/maxscript"
|
||||
mkPath(log, maxscriptDir)
|
||||
generateTaggedMaxExporterFile(templateDir + "/export_header.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(scriptDir + "/" + fileExtension + ".ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(templateDir + "/export_footer.ms", maxscriptDir + "/" + fileExtension + "_export.ms", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
def generateTaggedMaxScript(processName, fileExtension):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
|
||||
generateTaggedMaxScriptFile(processDir, processName, fileExtension, "_invalid", "_invalid", "_invalid", "_invalid", dateTimeStamp)
|
||||
|
||||
def generateTaggedMaxExporter(processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable):
|
||||
dateTimeStamp = time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time()))
|
||||
processDir = ScriptDirectory + "/processes/" + processName
|
||||
mkPath(log, processDir)
|
||||
|
||||
if not os.path.isfile(processDir + "/0_setup.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/0_setup.py", processDir + "/0_setup.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateTaggedMaxExporterFile(templateDir + "/1_export_header.py", processDir + "/1_export.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(scriptDir + "/" + fileExtension + ".py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
generateTaggedMaxExporterFile(templateDir + "/1_export_footer.py", processDir + "/1_export.py", "a", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
if not os.path.isfile(processDir + "/2_build.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/2_build.py", processDir + "/2_build.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
if not os.path.isfile(processDir + "/3_install.py"):
|
||||
generateTaggedMaxExporterFile(templateDir + "/3_install.py", processDir + "/3_install.py", "w", processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
generateTaggedMaxScriptFile(processDir, processName, fileExtension, sourceDirectoriesVariable, exportDirectoryVariable, tagExportDirectoryVariable, clientDirectoryVariable, dateTimeStamp)
|
||||
|
||||
|
||||
|
||||
generateTaggedMaxExporter("pacs_prim", "pacs_prim", "PacsPrimSourceDirectories", "PacsPrimExportDirectory", "PacsPrimTagExportDirectory", "PacsPrimInstallDirectory")
|
||||
|
||||
generateTaggedMaxExporter("clodbank", "clod", "ClodSourceDirectories", "ClodExportDirectory", "ClodTagExportDirectory", "ClodInstallDirectory")
|
||||
|
||||
generateTaggedMaxScript("ig", "ig")
|
||||
|
||||
generateTaggedMaxExporter("rbank", "cmb", "RBankCmbSourceDirectories", "RBankCmbExportDirectory", "RBankCmbTagExportDirectory", "PacsInstallDirectory")
|
||||
|
||||
generateTaggedMaxExporter("veget", "veget", "VegetSourceDirectories", "VegetExportDirectory", "VegetTagExportDirectory", "VegetInstallDirectory")
|
||||
|
||||
generateTaggedMaxScript("shape", "shape")
|
||||
|
||||
generateTaggedMaxExporter("anim", "anim", "AnimSourceDirectories", "AnimExportDirectory", "AnimTagExportDirectory", "AnimInstallDirectory")
|
||||
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
|
||||
# Remove bad file from previous script version
|
||||
listPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable% + "/landscape_col_prim_pacs_list.txt"
|
||||
if os.path.isfile(listPath):
|
||||
os.remove(listPath)
|
||||
|
||||
|
||||
|
||||
# Remove bad file from previous script version
|
||||
listPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable% + "/landscape_col_prim_pacs_list.txt"
|
||||
if os.path.isfile(listPath):
|
||||
os.remove(listPath)
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
|
||||
|
||||
printLog(log, ">>> Export skel directly <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + SkelExportDirectory)
|
||||
for dir in SkelSourceDirectories:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
copyFilesExtNoSubdirIfNeeded(log, DatabaseDirectory + "/" + dir, ExportBuildDirectory + "/" + SkelExportDirectory, ".skel")
|
||||
|
||||
|
||||
|
||||
printLog(log, ">>> Export skel directly <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + SkelExportDirectory)
|
||||
for dir in SkelSourceDirectories:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
copyFilesExtNoSubdirIfNeeded(log, DatabaseDirectory + "/" + dir, ExportBuildDirectory + "/" + SkelExportDirectory, ".skel")
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
|
||||
|
||||
printLog(log, ">>> Try to copy ligo zone if any <<<")
|
||||
printLog(log, "********************************")
|
||||
printLog(log, "******** TODO ********")
|
||||
printLog(log, "********************************")
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
|
||||
printLog(log, ">>> Try to copy ligo zone if any <<<")
|
||||
printLog(log, "********************************")
|
||||
printLog(log, "******** TODO ********")
|
||||
printLog(log, "********************************")
|
||||
printLog(log, "")
|
||||
|
||||
|
@ -1,65 +1,65 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + %PreGenInstallDirectoryVariable%)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + %PreGenInstallDirectoryVariable%)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,92 +1,92 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
# ...
|
||||
|
||||
# Export %PreGenProcessName% 3dsmax
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Export %PreGenProcessName% 3dsmax <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
if (needUpdateDirByTagLog(log, DatabaseDirectory + "/" + dir, ".max", ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%, ".%PreGenFileExtension%")):
|
||||
scriptSrc = "maxscript/%PreGenFileExtension%_export.ms"
|
||||
scriptDst = MaxUserDirectory + "/scripts/%PreGenFileExtension%_export.ms"
|
||||
outputLogfile = ScriptDirectory + "/processes/%PreGenProcessName%/log.log"
|
||||
outputDirectory = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
maxSourceDir = DatabaseDirectory + "/" + dir
|
||||
tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%")
|
||||
tagLen = len(tagList)
|
||||
if os.path.isfile(scriptDst):
|
||||
os.remove(scriptDst)
|
||||
tagDiff = 1
|
||||
sSrc = open(scriptSrc, "r")
|
||||
sDst = open(scriptDst, "w")
|
||||
for line in sSrc:
|
||||
newline = line.replace("%OutputLogfile%", outputLogfile)
|
||||
newline = newline.replace("%MaxSourceDirectory%", maxSourceDir)
|
||||
newline = newline.replace("%OutputDirectory%", outputDirectory)
|
||||
sDst.write(newline)
|
||||
sSrc.close()
|
||||
sDst.close()
|
||||
while tagDiff > 0:
|
||||
printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
|
||||
tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%")
|
||||
newTagLen = len(tagList)
|
||||
tagDiff = newTagLen - tagLen
|
||||
tagLen = newTagLen
|
||||
printLog(log, "Exported " + str(tagDiff) + " .%PreGenFileExtension% files!")
|
||||
os.remove(scriptDst)
|
||||
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
# ...
|
||||
|
||||
# Export %PreGenProcessName% 3dsmax
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Export %PreGenProcessName% 3dsmax <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
if (needUpdateDirByTagLog(log, DatabaseDirectory + "/" + dir, ".max", ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%, ".%PreGenFileExtension%")):
|
||||
scriptSrc = "maxscript/%PreGenFileExtension%_export.ms"
|
||||
scriptDst = MaxUserDirectory + "/scripts/%PreGenFileExtension%_export.ms"
|
||||
outputLogfile = ScriptDirectory + "/processes/%PreGenProcessName%/log.log"
|
||||
outputDirectory = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
maxSourceDir = DatabaseDirectory + "/" + dir
|
||||
tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%")
|
||||
tagLen = len(tagList)
|
||||
if os.path.isfile(scriptDst):
|
||||
os.remove(scriptDst)
|
||||
tagDiff = 1
|
||||
sSrc = open(scriptSrc, "r")
|
||||
sDst = open(scriptDst, "w")
|
||||
for line in sSrc:
|
||||
newline = line.replace("%OutputLogfile%", outputLogfile)
|
||||
newline = newline.replace("%MaxSourceDirectory%", maxSourceDir)
|
||||
newline = newline.replace("%OutputDirectory%", outputDirectory)
|
||||
sDst.write(newline)
|
||||
sSrc.close()
|
||||
sDst.close()
|
||||
while tagDiff > 0:
|
||||
printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
|
||||
tagList = findFiles(log, outputDirectory, "", ".%PreGenFileExtension%")
|
||||
newTagLen = len(tagList)
|
||||
tagDiff = newTagLen - tagLen
|
||||
tagLen = newTagLen
|
||||
printLog(log, "Exported " + str(tagDiff) + " .%PreGenFileExtension% files!")
|
||||
os.remove(scriptDst)
|
||||
|
||||
|
@ -1,49 +1,49 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,57 +1,57 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Install %PreGenProcessName% <<<")
|
||||
exportPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
mkPath(log, exportPath)
|
||||
installPath = InstallDirectory + "/" + %PreGenInstallDirectoryVariable%
|
||||
mkPath(log, installPath)
|
||||
copyFilesExtNoSubdirIfNeeded(log, exportPath, installPath, ".%PreGenFileExtension%")
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Install %PreGenProcessName% <<<")
|
||||
exportPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
mkPath(log, exportPath)
|
||||
installPath = InstallDirectory + "/" + %PreGenInstallDirectoryVariable%
|
||||
mkPath(log, installPath)
|
||||
copyFilesExtNoSubdirIfNeeded(log, exportPath, installPath, ".%PreGenFileExtension%")
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,66 +1,66 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + %PreGenInstallDirectoryVariable%)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + %PreGenInstallDirectoryVariable%)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,9 +1,9 @@
|
||||
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
shutil.move("temp_log.log", "log.log")
|
||||
|
||||
|
||||
# end of file
|
||||
|
||||
|
||||
log.close()
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
shutil.move("temp_log.log", "log.log")
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,130 +1,130 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
if os.path.isfile("temp_log.log"):
|
||||
os.remove("temp_log.log")
|
||||
log = open("temp_log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
# Find tools
|
||||
# ...
|
||||
|
||||
# Export %PreGenProcessName% 3dsmax
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Export %PreGenProcessName% 3dsmax <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%)
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
if (needUpdateDirByTagLog(log, DatabaseDirectory + "/" + dir, ".max", ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%, ".max.tag")):
|
||||
scriptSrc = "maxscript/%PreGenFileExtension%_export.ms"
|
||||
scriptDst = MaxUserDirectory + "/scripts/%PreGenFileExtension%_export.ms"
|
||||
outputLogfile = ScriptDirectory + "/processes/%PreGenProcessName%/log.log"
|
||||
outputDirectory = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
tagDirectory = ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%
|
||||
maxSourceDir = DatabaseDirectory + "/" + dir
|
||||
maxRunningTagFile = tagDirectory + "/max_running.tag"
|
||||
tagList = findFiles(log, tagDirectory, "", ".max.tag")
|
||||
tagLen = len(tagList)
|
||||
if os.path.isfile(scriptDst):
|
||||
os.remove(scriptDst)
|
||||
tagDiff = 1
|
||||
sSrc = open(scriptSrc, "r")
|
||||
sDst = open(scriptDst, "w")
|
||||
for line in sSrc:
|
||||
newline = line.replace("%OutputLogfile%", outputLogfile)
|
||||
newline = newline.replace("%MaxSourceDirectory%", maxSourceDir)
|
||||
newline = newline.replace("%OutputDirectory%", outputDirectory)
|
||||
newline = newline.replace("%TagDirectory%", tagDirectory)
|
||||
sDst.write(newline)
|
||||
sSrc.close()
|
||||
sDst.close()
|
||||
zeroRetryLimit = 3
|
||||
while tagDiff > 0:
|
||||
mrt = open(maxRunningTagFile, "w")
|
||||
mrt.write("moe-moe-kyun")
|
||||
mrt.close()
|
||||
printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
|
||||
if os.path.exists(outputLogfile):
|
||||
try:
|
||||
lSrc = open(outputLogfile, "r")
|
||||
for line in lSrc:
|
||||
lineStrip = line.strip()
|
||||
if (len(lineStrip) > 0):
|
||||
printLog(log, lineStrip)
|
||||
lSrc.close()
|
||||
os.remove(outputLogfile)
|
||||
except Exception:
|
||||
printLog(log, "ERROR Failed to read 3dsmax log")
|
||||
else:
|
||||
printLog(log, "WARNING No 3dsmax log")
|
||||
tagList = findFiles(log, tagDirectory, "", ".max.tag")
|
||||
newTagLen = len(tagList)
|
||||
tagDiff = newTagLen - tagLen
|
||||
tagLen = newTagLen
|
||||
addTagDiff = 0
|
||||
if os.path.exists(maxRunningTagFile):
|
||||
printLog(log, "FAIL 3ds Max crashed and/or file export failed!")
|
||||
if tagDiff == 0:
|
||||
if zeroRetryLimit > 0:
|
||||
zeroRetryLimit = zeroRetryLimit - 1
|
||||
addTagDiff = 1
|
||||
else:
|
||||
printLog(log, "FAIL Retry limit reached!")
|
||||
else:
|
||||
addTagDiff = 1
|
||||
os.remove(maxRunningTagFile)
|
||||
printLog(log, "Exported " + str(tagDiff) + " .max files!")
|
||||
tagDiff += addTagDiff
|
||||
os.remove(scriptDst)
|
||||
printLog(log, "")
|
||||
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# #################################################################
|
||||
# ## %PreGenWarning%
|
||||
# #################################################################
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
if os.path.isfile("temp_log.log"):
|
||||
os.remove("temp_log.log")
|
||||
log = open("temp_log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
|
||||
# Find tools
|
||||
# ...
|
||||
|
||||
# Export %PreGenProcessName% 3dsmax
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Export %PreGenProcessName% 3dsmax <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%)
|
||||
mkPath(log, ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%)
|
||||
for dir in %PreGenSourceDirectoriesVariable%:
|
||||
mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
if (needUpdateDirByTagLog(log, DatabaseDirectory + "/" + dir, ".max", ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%, ".max.tag")):
|
||||
scriptSrc = "maxscript/%PreGenFileExtension%_export.ms"
|
||||
scriptDst = MaxUserDirectory + "/scripts/%PreGenFileExtension%_export.ms"
|
||||
outputLogfile = ScriptDirectory + "/processes/%PreGenProcessName%/log.log"
|
||||
outputDirectory = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
tagDirectory = ExportBuildDirectory + "/" + %PreGenTagExportDirectoryVariable%
|
||||
maxSourceDir = DatabaseDirectory + "/" + dir
|
||||
maxRunningTagFile = tagDirectory + "/max_running.tag"
|
||||
tagList = findFiles(log, tagDirectory, "", ".max.tag")
|
||||
tagLen = len(tagList)
|
||||
if os.path.isfile(scriptDst):
|
||||
os.remove(scriptDst)
|
||||
tagDiff = 1
|
||||
sSrc = open(scriptSrc, "r")
|
||||
sDst = open(scriptDst, "w")
|
||||
for line in sSrc:
|
||||
newline = line.replace("%OutputLogfile%", outputLogfile)
|
||||
newline = newline.replace("%MaxSourceDirectory%", maxSourceDir)
|
||||
newline = newline.replace("%OutputDirectory%", outputDirectory)
|
||||
newline = newline.replace("%TagDirectory%", tagDirectory)
|
||||
sDst.write(newline)
|
||||
sSrc.close()
|
||||
sDst.close()
|
||||
zeroRetryLimit = 3
|
||||
while tagDiff > 0:
|
||||
mrt = open(maxRunningTagFile, "w")
|
||||
mrt.write("moe-moe-kyun")
|
||||
mrt.close()
|
||||
printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
subprocess.call([ Max, "-U", "MAXScript", "%PreGenFileExtension%_export.ms", "-q", "-mi", "-mip" ])
|
||||
if os.path.exists(outputLogfile):
|
||||
try:
|
||||
lSrc = open(outputLogfile, "r")
|
||||
for line in lSrc:
|
||||
lineStrip = line.strip()
|
||||
if (len(lineStrip) > 0):
|
||||
printLog(log, lineStrip)
|
||||
lSrc.close()
|
||||
os.remove(outputLogfile)
|
||||
except Exception:
|
||||
printLog(log, "ERROR Failed to read 3dsmax log")
|
||||
else:
|
||||
printLog(log, "WARNING No 3dsmax log")
|
||||
tagList = findFiles(log, tagDirectory, "", ".max.tag")
|
||||
newTagLen = len(tagList)
|
||||
tagDiff = newTagLen - tagLen
|
||||
tagLen = newTagLen
|
||||
addTagDiff = 0
|
||||
if os.path.exists(maxRunningTagFile):
|
||||
printLog(log, "FAIL 3ds Max crashed and/or file export failed!")
|
||||
if tagDiff == 0:
|
||||
if zeroRetryLimit > 0:
|
||||
zeroRetryLimit = zeroRetryLimit - 1
|
||||
addTagDiff = 1
|
||||
else:
|
||||
printLog(log, "FAIL Retry limit reached!")
|
||||
else:
|
||||
addTagDiff = 1
|
||||
os.remove(maxRunningTagFile)
|
||||
printLog(log, "Exported " + str(tagDiff) + " .max files!")
|
||||
tagDiff += addTagDiff
|
||||
os.remove(scriptDst)
|
||||
printLog(log, "")
|
||||
|
||||
|
@ -1,49 +1,49 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,57 +1,57 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Install %PreGenProcessName% <<<")
|
||||
exportPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
mkPath(log, exportPath)
|
||||
installPath = InstallDirectory + "/" + %PreGenInstallDirectoryVariable%
|
||||
mkPath(log, installPath)
|
||||
copyFilesNoTreeIfNeeded(log, exportPath, installPath)
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install %PreGenProcessName%
|
||||
# \date %PreGenDateTimeStamp%
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install %PreGenProcessName%
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install %PreGenProcessName%")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
printLog(log, ">>> Install %PreGenProcessName% <<<")
|
||||
exportPath = ExportBuildDirectory + "/" + %PreGenExportDirectoryVariable%
|
||||
mkPath(log, exportPath)
|
||||
installPath = InstallDirectory + "/" + %PreGenInstallDirectoryVariable%
|
||||
mkPath(log, installPath)
|
||||
copyFilesNoTreeIfNeeded(log, exportPath, installPath)
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,9 +1,9 @@
|
||||
title Ryzom Core: 1_export.py (INTERFACE)
|
||||
python 1_export.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: 2_build.py (INTERFACE)
|
||||
python 2_build.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: 3_install.py (INTERFACE)
|
||||
python 3_install.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: Ready
|
||||
title Ryzom Core: 1_export.py (INTERFACE)
|
||||
1_export.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: 2_build.py (INTERFACE)
|
||||
2_build.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: 3_install.py (INTERFACE)
|
||||
3_install.py -ipj common/gamedev common/data_common common/exedll common/cfg common/interface common/sfx common/fonts common/outgame
|
||||
title Ryzom Core: b1_client_dev.py
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: Ready
|
||||
|
@ -1,13 +1,11 @@
|
||||
title Ryzom Core: 1_export.py (LEVELDESIGN)
|
||||
python 1_export.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: 2_build.py (LEVELDESIGN)
|
||||
python 2_build.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: 3_install.py (LEVELDESIGN)
|
||||
python 3_install.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: b1_client_dev.py (LEVELDESIGN)
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (LEVELDESIGN)
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: b3_shard_dev.py
|
||||
python b3_shard_dev.py
|
||||
title Ryzom Core: Ready
|
||||
title Ryzom Core: 1_export.py (LEVELDESIGN)
|
||||
1_export.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: 2_build.py (LEVELDESIGN)
|
||||
2_build.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: 3_install.py (LEVELDESIGN)
|
||||
3_install.py -ipj common/gamedev common/data_common common/data_shard common/leveldesign common/exedll common/cfg shard/data_shard shard/data_language shard/data_leveldesign shard/data_game_share
|
||||
title Ryzom Core: b1_client_dev.py (LEVELDESIGN)
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (LEVELDESIGN)
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready
|
||||
|
@ -1,11 +0,0 @@
|
||||
title Ryzom Core: 1_export.py (OBJECTS)
|
||||
python 1_export.py -ipj common/objects
|
||||
title Ryzom Core: 2_build.py (OBJECTS)
|
||||
python 2_build.py -ipj common/objects
|
||||
title Ryzom Core: 3_install.py (OBJECTS)
|
||||
python 3_install.py -ipj common/objects
|
||||
title Ryzom Core: b1_client_dev.py (OBJECTS)
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (OBJECTS)
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: Ready (OBJECTS)
|
@ -1,11 +1,11 @@
|
||||
title Ryzom Core: 1_export.py (PANOPLY)
|
||||
python 1_export.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: 2_build.py (PANOPLY)
|
||||
python 2_build.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: 3_install.py (PANOPLY)
|
||||
python 3_install.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: b1_client_dev.py (PANOPLY)
|
||||
python b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (PANOPLY)
|
||||
python b2_shard_data.py
|
||||
title Ryzom Core: Ready (PANOPLY)
|
||||
title Ryzom Core: 1_export.py (PANOPLY)
|
||||
1_export.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: 2_build.py (PANOPLY)
|
||||
2_build.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: 3_install.py (PANOPLY)
|
||||
3_install.py -ipj common/characters_maps_hr
|
||||
title Ryzom Core: b1_client_dev.py (PANOPLY)
|
||||
b1_client_dev.py
|
||||
title Ryzom Core: b2_shard_data.py (PANOPLY)
|
||||
b2_shard_data.py
|
||||
title Ryzom Core: Ready (PANOPLY)
|
||||
|
@ -1,89 +1,89 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
#printLog(log, "")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, "--- Setup project")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
#printLog(log, "")
|
||||
|
||||
#printLog(log, "")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, "--- Setup client directories")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
#printLog(log, "")
|
||||
#for dir in ClientSetupDirectories:
|
||||
# mkPath(log, InstallDirectory + "/" + dir)
|
||||
#printLog(log, "")
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the setup processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "0_setup.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief Run all setup processes
|
||||
# \date 2009-02-18 15:28GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all setup processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
#printLog(log, "")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, "--- Setup project")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
#printLog(log, "")
|
||||
|
||||
#printLog(log, "")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, "--- Setup client directories")
|
||||
#printLog(log, "-------")
|
||||
#printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
#printLog(log, "")
|
||||
#for dir in ClientSetupDirectories:
|
||||
# mkPath(log, InstallDirectory + "/" + dir)
|
||||
#printLog(log, "")
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the setup processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "0_setup.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
@ -1,73 +1,73 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Run all export processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all export processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the export processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Run all export processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all export processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the export processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "1_export.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
@ -1,73 +1,73 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Run all build processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all build processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the build processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Run all build processes
|
||||
# \date 2009-02-18 09:22GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all build processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
# Log error
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the build processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "2_build.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
@ -1,72 +1,72 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Run all install processes
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all install processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the install processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Run all install processes
|
||||
# \date 2009-02-18 16:19GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Run all install processes
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||
sys.path.append("../configuration")
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||
args = parser.parse_args()
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Run the install processes")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
# For each process
|
||||
for processName in ProcessToComplete:
|
||||
if ((args.includeprocess == None or processName in args.includeprocess) and (args.excludeprocess == None or not processName in args.excludeprocess)):
|
||||
printLog(log, "PROCESS " + processName)
|
||||
os.chdir(processName)
|
||||
try:
|
||||
subprocess.call([ "python", "3_install.py" ])
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
os.chdir("..")
|
||||
try:
|
||||
processLog = open(processName + "/log.log", "r")
|
||||
processLogData = processLog.read()
|
||||
processLog.close()
|
||||
log.write(processLogData)
|
||||
except Exception, e:
|
||||
printLog(log, "<" + processName + "> " + str(e))
|
||||
# subprocess.call("idle.bat")
|
||||
else:
|
||||
printLog(log, "IGNORE PROCESS " + processName)
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
@ -1,66 +1,66 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
#for dir in MapSourceDirectories:
|
||||
# mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyTagExportDirectory)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
#mkPath(log, InstallDirectory + "/" + DummyInstallDirectory)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup source directories
|
||||
printLog(log, ">>> Setup source directories <<<")
|
||||
#for dir in MapSourceDirectories:
|
||||
# mkPath(log, DatabaseDirectory + "/" + dir)
|
||||
|
||||
# Setup export directories
|
||||
printLog(log, ">>> Setup export directories <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyTagExportDirectory)
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup client directories <<<")
|
||||
#mkPath(log, InstallDirectory + "/" + DummyInstallDirectory)
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,117 +1,117 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
# ExecTimeout = findTool(log, ToolDirectories, ExecTimeoutTool, ToolSuffix)
|
||||
printLog(log, "")
|
||||
|
||||
# Export dummy 3dsmax
|
||||
printLog(log, ">>> Export dummy 3dsmax <<<")
|
||||
|
||||
# Build paths
|
||||
#scriptSrc = "maxscript/dummy_export.ms"
|
||||
# scriptDst = MaxDirectory + "/scripts/dummy_export.ms"
|
||||
#scriptDst = MaxUserDirectory + "/scripts/dummy_export.ms"
|
||||
#logFile = ScriptDirectory + "/processes/dummy/log.log"
|
||||
#outDirTag = ExportBuildDirectory + "/" + DummyTagExportDirectory
|
||||
#mkPath(log, outDirTag)
|
||||
#outDirWithoutCoarse = ExportBuildDirectory + "/" + DummyExportDirectory
|
||||
#mkPath(log, outDirWithoutCoarse)
|
||||
#outDirWithCoarse = ExportBuildDirectory + "/" + DummyWithCoarseMeshExportDirectory
|
||||
#mkPath(log, outDirWithCoarse)
|
||||
#outDirLightmap = ExportBuildDirectory + "/" + DummyLightmapNotOptimizedExportDirectory
|
||||
#mkPath(log, outDirLightmap)
|
||||
#outDirAnim = ExportBuildDirectory + "/" + DummyAnimExportDirectory
|
||||
#mkPath(log, outDirAnim)
|
||||
|
||||
#tagList = findFiles(log, outDirTag, "", ".tag")
|
||||
#tagLen = len(tagList)
|
||||
|
||||
# For each directoy
|
||||
#if os.path.isfile(scriptDst):
|
||||
# os.remove(scriptDst)
|
||||
#for dir in DummySourceDirectories:
|
||||
# tagDiff = 1
|
||||
# dummySourceDir = DatabaseDirectory + "/" + dir
|
||||
# mkPath(log, dummySourceDir)
|
||||
# sSrc = open(scriptSrc, "r")
|
||||
# sDst = open(scriptDst, "w")
|
||||
# for line in sSrc:
|
||||
# newline = line.replace("output_logfile", logFile)
|
||||
# newline = newline.replace("dummy_source_directory", dummySourceDir)
|
||||
# newline = newline.replace("output_directory_tag", outDirTag)
|
||||
# newline = newline.replace("output_directory_without_coarse_mesh", outDirWithoutCoarse)
|
||||
# newline = newline.replace("output_directory_with_coarse_mesh", outDirWithCoarse)
|
||||
# newline = newline.replace("dummy_export_opt_export_lighting", DummyExportOptExportLighting)
|
||||
# newline = newline.replace("dummy_export_opt_shadow", DummyExportOptShadow)
|
||||
# newline = newline.replace("dummy_export_opt_lighting_limit", str(DummyExportOptLightingLimit))
|
||||
# newline = newline.replace("dummy_export_opt_lumel_size", DummyExportOptLumelSize)
|
||||
# newline = newline.replace("dummy_export_opt_oversampling", str(DummyExportOptOversampling))
|
||||
# newline = newline.replace("dummy_export_opt_lightmap_log", DummyExportOptLightmapLog)
|
||||
# newline = newline.replace("dummy_lightmap_path", outDirLightmap)
|
||||
# newline = newline.replace("output_directory_anim", outDirAnim)
|
||||
# sDst.write(newline)
|
||||
# sSrc.close()
|
||||
# sDst.close()
|
||||
# while tagDiff > 0:
|
||||
# printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
# subprocess.call([ Max, "-U", "MAXScript", "dummy_export.ms", "-q", "-mi", "-mip" ])
|
||||
# tagList = findFiles(log, outDirTag, "", ".tag")
|
||||
# newTagLen = len(tagList)
|
||||
# tagDiff = newTagLen - tagLen
|
||||
# tagLen = newTagLen
|
||||
# printLog(log, "Exported " + str(tagDiff) + " .max files!")
|
||||
# tagDiff += hackBdummyTree() # force rerun also when bdummy tree deleted
|
||||
# os.remove(scriptDst)
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
if MaxAvailable:
|
||||
# Find tools
|
||||
Max = findMax(log, MaxDirectory, MaxExecutable)
|
||||
# ExecTimeout = findTool(log, ToolDirectories, ExecTimeoutTool, ToolSuffix)
|
||||
printLog(log, "")
|
||||
|
||||
# Export dummy 3dsmax
|
||||
printLog(log, ">>> Export dummy 3dsmax <<<")
|
||||
|
||||
# Build paths
|
||||
#scriptSrc = "maxscript/dummy_export.ms"
|
||||
# scriptDst = MaxDirectory + "/scripts/dummy_export.ms"
|
||||
#scriptDst = MaxUserDirectory + "/scripts/dummy_export.ms"
|
||||
#logFile = ScriptDirectory + "/processes/dummy/log.log"
|
||||
#outDirTag = ExportBuildDirectory + "/" + DummyTagExportDirectory
|
||||
#mkPath(log, outDirTag)
|
||||
#outDirWithoutCoarse = ExportBuildDirectory + "/" + DummyExportDirectory
|
||||
#mkPath(log, outDirWithoutCoarse)
|
||||
#outDirWithCoarse = ExportBuildDirectory + "/" + DummyWithCoarseMeshExportDirectory
|
||||
#mkPath(log, outDirWithCoarse)
|
||||
#outDirLightmap = ExportBuildDirectory + "/" + DummyLightmapNotOptimizedExportDirectory
|
||||
#mkPath(log, outDirLightmap)
|
||||
#outDirAnim = ExportBuildDirectory + "/" + DummyAnimExportDirectory
|
||||
#mkPath(log, outDirAnim)
|
||||
|
||||
#tagList = findFiles(log, outDirTag, "", ".tag")
|
||||
#tagLen = len(tagList)
|
||||
|
||||
# For each directoy
|
||||
#if os.path.isfile(scriptDst):
|
||||
# os.remove(scriptDst)
|
||||
#for dir in DummySourceDirectories:
|
||||
# tagDiff = 1
|
||||
# dummySourceDir = DatabaseDirectory + "/" + dir
|
||||
# mkPath(log, dummySourceDir)
|
||||
# sSrc = open(scriptSrc, "r")
|
||||
# sDst = open(scriptDst, "w")
|
||||
# for line in sSrc:
|
||||
# newline = line.replace("output_logfile", logFile)
|
||||
# newline = newline.replace("dummy_source_directory", dummySourceDir)
|
||||
# newline = newline.replace("output_directory_tag", outDirTag)
|
||||
# newline = newline.replace("output_directory_without_coarse_mesh", outDirWithoutCoarse)
|
||||
# newline = newline.replace("output_directory_with_coarse_mesh", outDirWithCoarse)
|
||||
# newline = newline.replace("dummy_export_opt_export_lighting", DummyExportOptExportLighting)
|
||||
# newline = newline.replace("dummy_export_opt_shadow", DummyExportOptShadow)
|
||||
# newline = newline.replace("dummy_export_opt_lighting_limit", str(DummyExportOptLightingLimit))
|
||||
# newline = newline.replace("dummy_export_opt_lumel_size", DummyExportOptLumelSize)
|
||||
# newline = newline.replace("dummy_export_opt_oversampling", str(DummyExportOptOversampling))
|
||||
# newline = newline.replace("dummy_export_opt_lightmap_log", DummyExportOptLightmapLog)
|
||||
# newline = newline.replace("dummy_lightmap_path", outDirLightmap)
|
||||
# newline = newline.replace("output_directory_anim", outDirAnim)
|
||||
# sDst.write(newline)
|
||||
# sSrc.close()
|
||||
# sDst.close()
|
||||
# while tagDiff > 0:
|
||||
# printLog(log, "MAXSCRIPT " + scriptDst)
|
||||
# subprocess.call([ Max, "-U", "MAXScript", "dummy_export.ms", "-q", "-mi", "-mip" ])
|
||||
# tagList = findFiles(log, outDirTag, "", ".tag")
|
||||
# newTagLen = len(tagList)
|
||||
# tagDiff = newTagLen - tagLen
|
||||
# tagLen = newTagLen
|
||||
# printLog(log, "Exported " + str(tagDiff) + " .max files!")
|
||||
# tagDiff += hackBdummyTree() # force rerun also when bdummy tree deleted
|
||||
# os.remove(scriptDst)
|
||||
|
||||
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,96 +1,96 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
ExecTimeout = findTool(log, ToolDirectories, ExecTimeoutTool, ToolSuffix)
|
||||
BuildShadowSkin = findTool(log, ToolDirectories, BuildShadowSkinTool, ToolSuffix)
|
||||
BuildClodtex = findTool(log, ToolDirectories, BuildClodtexTool, ToolSuffix)
|
||||
LightmapOptimizer = findTool(log, ToolDirectories, LightmapOptimizerTool, ToolSuffix)
|
||||
TgaToDds = findTool(log, ToolDirectories, TgaToDdsTool, ToolSuffix)
|
||||
BuildCoarseMesh = findTool(log, ToolDirectories, BuildCoarseMeshTool, ToolSuffix)
|
||||
|
||||
#if 1: # todo: CoarseMeshTextureNames length > 0 ...
|
||||
# printLog(log, ">>> Build coarse meshes <<<")
|
||||
# dummyWithCoarseMesh = ExportBuildDirectory + "/" + DummyWithCoarseMeshExportDirectory
|
||||
# mkPath(log, dummyWithCoarseMesh)
|
||||
# dummyWithCoarseMeshBuilded = ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory
|
||||
# mkPath(log, dummyWithCoarseMeshBuilded)
|
||||
# cf = open("confdummy_generated.cfg", "w")
|
||||
# cf.write("texture_mul_size = " + TextureMulSizeValue + ";\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("search_path = \n")
|
||||
# cf.write("{\n")
|
||||
# cf.write("\t\"" + dummyWithCoarseMesh + "\", \n")
|
||||
# for dir in MapSourceDirectories:
|
||||
# cf.write("\t\"" + DatabaseDirectory + "/" + dir + "\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("list_mesh = \n")
|
||||
# cf.write("{\n")
|
||||
# # For each dummy with coarse mesh
|
||||
# files = findFiles(log, dummyWithCoarseMesh, "", ".dummy")
|
||||
# for file in files:
|
||||
# sourceFile = dummyWithCoarseMesh + "/" + file
|
||||
# if os.path.isfile(sourceFile):
|
||||
# destFile = dummyWithCoarseMeshBuilded + "/" + file
|
||||
# cf.write("\t\"" + file + "\", \"" + destFile + "\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("output_textures = \n")
|
||||
# cf.write("{\n")
|
||||
# # For each dummy with coarse mesh
|
||||
# for tn in CoarseMeshTextureNames:
|
||||
# cf.write("\t\"" + dummyWithCoarseMesh + "/" + tn + ".tga\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.close()
|
||||
# subprocess.call([ BuildCoarseMesh, "confdummy_generated.cfg" ])
|
||||
# os.remove("confdummy_generated.cfg")
|
||||
# for tn in CoarseMeshTextureNames:
|
||||
# subprocess.call([ TgaToDds, dummyWithCoarseMesh + "/" + tn + ".tga", "-o", dummyWithCoarseMeshBuilded + "/" + tn + ".dds", "-a", "5" ])
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 2_build.py
|
||||
# \brief Build dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Build dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Build dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Find tools
|
||||
ExecTimeout = findTool(log, ToolDirectories, ExecTimeoutTool, ToolSuffix)
|
||||
BuildShadowSkin = findTool(log, ToolDirectories, BuildShadowSkinTool, ToolSuffix)
|
||||
BuildClodtex = findTool(log, ToolDirectories, BuildClodtexTool, ToolSuffix)
|
||||
LightmapOptimizer = findTool(log, ToolDirectories, LightmapOptimizerTool, ToolSuffix)
|
||||
TgaToDds = findTool(log, ToolDirectories, TgaToDdsTool, ToolSuffix)
|
||||
BuildCoarseMesh = findTool(log, ToolDirectories, BuildCoarseMeshTool, ToolSuffix)
|
||||
|
||||
#if 1: # todo: CoarseMeshTextureNames length > 0 ...
|
||||
# printLog(log, ">>> Build coarse meshes <<<")
|
||||
# dummyWithCoarseMesh = ExportBuildDirectory + "/" + DummyWithCoarseMeshExportDirectory
|
||||
# mkPath(log, dummyWithCoarseMesh)
|
||||
# dummyWithCoarseMeshBuilded = ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory
|
||||
# mkPath(log, dummyWithCoarseMeshBuilded)
|
||||
# cf = open("confdummy_generated.cfg", "w")
|
||||
# cf.write("texture_mul_size = " + TextureMulSizeValue + ";\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("search_path = \n")
|
||||
# cf.write("{\n")
|
||||
# cf.write("\t\"" + dummyWithCoarseMesh + "\", \n")
|
||||
# for dir in MapSourceDirectories:
|
||||
# cf.write("\t\"" + DatabaseDirectory + "/" + dir + "\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("list_mesh = \n")
|
||||
# cf.write("{\n")
|
||||
# # For each dummy with coarse mesh
|
||||
# files = findFiles(log, dummyWithCoarseMesh, "", ".dummy")
|
||||
# for file in files:
|
||||
# sourceFile = dummyWithCoarseMesh + "/" + file
|
||||
# if os.path.isfile(sourceFile):
|
||||
# destFile = dummyWithCoarseMeshBuilded + "/" + file
|
||||
# cf.write("\t\"" + file + "\", \"" + destFile + "\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.write("\n")
|
||||
# cf.write("output_textures = \n")
|
||||
# cf.write("{\n")
|
||||
# # For each dummy with coarse mesh
|
||||
# for tn in CoarseMeshTextureNames:
|
||||
# cf.write("\t\"" + dummyWithCoarseMesh + "/" + tn + ".tga\", \n")
|
||||
# cf.write("};\n")
|
||||
# cf.close()
|
||||
# subprocess.call([ BuildCoarseMesh, "confdummy_generated.cfg" ])
|
||||
# os.remove("confdummy_generated.cfg")
|
||||
# for tn in CoarseMeshTextureNames:
|
||||
# subprocess.call([ TgaToDds, dummyWithCoarseMesh + "/" + tn + ".tga", "-o", dummyWithCoarseMeshBuilded + "/" + tn + ".dds", "-a", "5" ])
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,63 +1,63 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
#installPath = InstallDirectory + "/" + DummyInstallDirectory
|
||||
#mkPath(log, installPath)
|
||||
|
||||
printLog(log, ">>> Install dummy <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyExportDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyExportDirectory, installPath, ".dummy")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory, installPath, ".dummy")
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory, installPath, ".dds")
|
||||
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyAnimExportDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyAnimExportDirectory, installPath, ".anim")
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install dummy
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install dummy
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install dummy")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
#installPath = InstallDirectory + "/" + DummyInstallDirectory
|
||||
#mkPath(log, installPath)
|
||||
|
||||
printLog(log, ">>> Install dummy <<<")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyExportDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyExportDirectory, installPath, ".dummy")
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory, installPath, ".dummy")
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyWithCoarseMeshBuildDirectory, installPath, ".dds")
|
||||
|
||||
#mkPath(log, ExportBuildDirectory + "/" + DummyAnimExportDirectory)
|
||||
#copyFilesExtNoTreeIfNeeded(log, ExportBuildDirectory + "/" + DummyAnimExportDirectory, installPath, ".anim")
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,98 +1,98 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + RbankOutputBuildDirectory)
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory)
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildTagDirectory)
|
||||
|
||||
# Setup lookup directories
|
||||
printLog(log, ">>> Setup lookup directories <<<")
|
||||
for dir in IgLookupDirectories:
|
||||
mkPath(log, ExportBuildDirectory + "/" + dir)
|
||||
for dir in PacsPrimLookupDirectories:
|
||||
mkPath(log, ExportBuildDirectory + "/" + dir)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup install directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + AiWmapInstallDirectory)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup configuration <<<")
|
||||
mkPath(log, InstallDirectory + "/" + AiWmapInstallDirectory)
|
||||
mkPath(log, ActiveProjectDirectory + "/generated")
|
||||
cfg = open(ActiveProjectDirectory + "/generated/ai_build_wmap.cfg", "w")
|
||||
cfg.write("\n")
|
||||
cfg.write("// AI BUILD WMAP CONFIGURATION\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("Paths = {\n")
|
||||
for dir in IgLookupDirectories:
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + dir + "\", \n")
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + RbankOutputBuildDirectory + "\", \n")
|
||||
cfg.write("\t\"" + LeveldesignDirectory + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("NoRecursePaths = { };\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("PacsPrimPaths = {\n")
|
||||
for dir in PacsPrimLookupDirectories:
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + dir + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("OutputPath = \"" + ExportBuildDirectory + "/" + AiWmapBuildDirectory + "\";\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("Commands = {\n")
|
||||
cfg.write("\t\"Verbose " + str(AiWmapVerbose) + "\", \n")
|
||||
for startPoint in AiWmapStartPoints:
|
||||
cfg.write("\t\"setStartPoint " + startPoint + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.close()
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 0_setup.py
|
||||
# \brief setup ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Setup ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Setup ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
# Setup build directories
|
||||
printLog(log, ">>> Setup build directories <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + RbankOutputBuildDirectory)
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory)
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildTagDirectory)
|
||||
|
||||
# Setup lookup directories
|
||||
printLog(log, ">>> Setup lookup directories <<<")
|
||||
for dir in IgLookupDirectories:
|
||||
mkPath(log, ExportBuildDirectory + "/" + dir)
|
||||
for dir in PacsPrimLookupDirectories:
|
||||
mkPath(log, ExportBuildDirectory + "/" + dir)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup install directories <<<")
|
||||
mkPath(log, InstallDirectory + "/" + AiWmapInstallDirectory)
|
||||
|
||||
# Setup client directories
|
||||
printLog(log, ">>> Setup configuration <<<")
|
||||
mkPath(log, InstallDirectory + "/" + AiWmapInstallDirectory)
|
||||
mkPath(log, ActiveProjectDirectory + "/generated")
|
||||
cfg = open(ActiveProjectDirectory + "/generated/ai_build_wmap.cfg", "w")
|
||||
cfg.write("\n")
|
||||
cfg.write("// AI BUILD WMAP CONFIGURATION\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("Paths = {\n")
|
||||
for dir in IgLookupDirectories:
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + dir + "\", \n")
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + RbankOutputBuildDirectory + "\", \n")
|
||||
cfg.write("\t\"" + LeveldesignDirectory + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("NoRecursePaths = { };\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("PacsPrimPaths = {\n")
|
||||
for dir in PacsPrimLookupDirectories:
|
||||
cfg.write("\t\"" + ExportBuildDirectory + "/" + dir + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("OutputPath = \"" + ExportBuildDirectory + "/" + AiWmapBuildDirectory + "\";\n")
|
||||
cfg.write("\n")
|
||||
cfg.write("Commands = {\n")
|
||||
cfg.write("\t\"Verbose " + str(AiWmapVerbose) + "\", \n")
|
||||
for startPoint in AiWmapStartPoints:
|
||||
cfg.write("\t\"setStartPoint " + startPoint + "\", \n")
|
||||
cfg.write("};\n")
|
||||
cfg.write("\n")
|
||||
cfg.close()
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,49 +1,49 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 1_export.py
|
||||
# \brief Export ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Export ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Export ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
@ -1,57 +1,57 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
installPath = InstallDirectory + "/" + AiWmapInstallDirectory
|
||||
mkPath(log, installPath)
|
||||
|
||||
printLog(log, ">>> Install ai_wmap <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory)
|
||||
copyFilesNoTreeIfNeeded(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory, installPath)
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# \file 3_install.py
|
||||
# \brief Install ai_wmap
|
||||
# \date 2010-05-24 13:42GMT
|
||||
# \author Jan Boon (Kaetemi)
|
||||
# Python port of game data build pipeline.
|
||||
# Install ai_wmap
|
||||
#
|
||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||
# Copyright (C) 2009-2014 by authors
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||
sys.path.append("../../configuration")
|
||||
|
||||
if os.path.isfile("log.log"):
|
||||
os.remove("log.log")
|
||||
log = open("log.log", "w")
|
||||
from scripts import *
|
||||
from buildsite_local import *
|
||||
from process import *
|
||||
from tools import *
|
||||
from directories import *
|
||||
|
||||
printLog(log, "")
|
||||
printLog(log, "-------")
|
||||
printLog(log, "--- Install ai_wmap")
|
||||
printLog(log, "-------")
|
||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||
printLog(log, "")
|
||||
|
||||
installPath = InstallDirectory + "/" + AiWmapInstallDirectory
|
||||
mkPath(log, installPath)
|
||||
|
||||
printLog(log, ">>> Install ai_wmap <<<")
|
||||
mkPath(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory)
|
||||
copyFilesNoTreeIfNeeded(log, ExportBuildDirectory + "/" + AiWmapBuildDirectory, installPath)
|
||||
|
||||
printLog(log, "")
|
||||
log.close()
|
||||
|
||||
|
||||
# end of file
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue