Compare commits
872 Commits
ryzomclass
...
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 |
Nuno | 514f4613a8 | 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 |
Nimetu | 13eef096b4 | 3 years ago |
Nimetu | d8deff3f23 | 3 years ago |
Nimetu | 2efc16ce52 | 3 years ago |
Nimetu | 5064f0417b | 3 years ago |
Nimetu | d893d15daf | 3 years ago |
kaetemi | 82ef7e5e81 | 3 years ago |
kaetemi | 8f839dc9c7 | 3 years ago |
kaetemi | 5fcaafbc60 | 3 years ago |
kaetemi | 6d60cfee71 | 3 years ago |
kaetemi | 3076b62063 | 3 years ago |
kaetemi | 3d208e024d | 3 years ago |
kaetemi | af16f09d52 | 3 years ago |
kaetemi | b9d4aa2abd | 3 years ago |
Nimetu | 759ece01d0 | 3 years ago |
Nuno | 4a06fe15dd | 3 years ago |
Nuno | 575d5d9957 | 3 years ago |
Nuno | 0d68ca05e2 | 3 years ago |
Nuno | 6091e76516 | 3 years ago |
Nuno | 0fbbf10361 | 3 years ago |
Nuno | 557f5d3d6c | 3 years ago |
Nuno | d7d1bc60c2 | 3 years ago |
Nuno | 3709ea4520 | 3 years ago |
Nuno | 70286d36a9 | 3 years ago |
Ulu Kyn | 92ff9f12b0 | 3 years ago |
Nimetu | 8cbb306db8 | 3 years ago |
Nuno | 36c2ff5b86 | 3 years ago |
Nuno | 1a49c4cd0b | 3 years ago |
Ben Saine | 111d4a7a0a | 3 years ago |
bensaine | 6cfc9585f5 | 3 years ago |
Nimetu | f76ad7a3eb | 3 years ago |
Nimetu | ce0d1234cc | 3 years ago |
Nuno Gonçalves (Ulukyn) | 5d91c33ddd | 3 years ago |
Nimetu | 78478e32cd | 3 years ago |
Nimetu | ea6e4d91c3 | 3 years ago |
Nimetu | d388ff78ec | 3 years ago |
Nimetu | 0b503e352b | 3 years ago |
Nimetu | df4833bf0f | 3 years ago |
Nuno Gonçalves (Ulukyn) | 8ef89b80b0 | 3 years ago |
Nuno Gonçalves (Ulukyn) | bdea7d24d2 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 90161cd121 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 583a16d126 | 3 years ago |
Nimetu | 591ea6869e | 3 years ago |
Nuno Gonçalves (Ulukyn) | 01a2508567 | 3 years ago |
Nuno Gonçalves (Ulukyn) | b86b9283b2 | 3 years ago |
Nimetu | 0225beefa6 | 3 years ago |
Nimetu | 0de1580520 | 3 years ago |
Nimetu | d9dd9863b7 | 3 years ago |
Ulukyn | 7bed39665e | 3 years ago |
Nimetu | 9ecda65791 | 3 years ago |
Nuno | 6a1ea5ff59 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 72ccfc9a02 | 3 years ago |
Ulukyn | 0e2a14c822 | 3 years ago |
Nimetu | a4248d5fa1 | 3 years ago |
Nimetu | 984b2b3590 | 3 years ago |
Nuno | 4331e35227 | 3 years ago |
Nuno Gonçalves (Ulukyn) | ce5817721a | 3 years ago |
Nuno Gonçalves (Ulukyn) | aae899b65a | 3 years ago |
Nuno Gonçalves (Ulukyn) | 4c66865de7 | 3 years ago |
Nimetu | c00a9be398 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 458861951b | 3 years ago |
Nuno Gonçalves (Ulukyn) | 3f991d3781 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 8d5c0facf8 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 178a22d961 | 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 |
Riasan | 62a821bc1d | 3 years ago |
Riasan | 103179ece7 | 3 years ago |
Nimetu | 19d0162332 | 3 years ago |
Nimetu | 5bf139f690 | 3 years ago |
Nimetu | d0d38238a8 | 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 |
kaetemi | 7d1661df42 | 4 years ago |
Nuno | a443848924 | 4 years ago |
Nuno | ca0dc24aa0 | 4 years ago |
Nuno | 6d68e96dd4 | 4 years ago |
kaetemi | 6d4b58c281 | 4 years ago |
kaetemi | fcf97d93df | 4 years ago |
kaetemi | c5658cfe26 | 4 years ago |
Nimetu | bc0071ac57 | 4 years ago |
kaetemi | 37a729b5cc | 4 years ago |
Nuno Gonçalves (Ulukyn) | efc1883cca | 4 years ago |
Nuno | 83a021e1e6 | 4 years ago |
Nuno | 431b1ea339 | 4 years ago |
Nuno | 6c3d6403b0 | 4 years ago |
Nuno | 405974c9c0 | 4 years ago |
Nuno | cc5bd3ddae | 4 years ago |
Nuno | 5613eb855e | 4 years ago |
Nimetu | 5614028f63 | 4 years ago |
Nimetu | a28bda89e6 | 4 years ago |
Nimetu | b2d6c313db | 4 years ago |
Nuno | 74c643f147 | 4 years ago |
Nuno | 3d43c3c626 | 4 years ago |
Nimetu | 78fa873003 | 4 years ago |
Nuno | 6bd853f7bf | 4 years ago |
Nuno | 49b4295765 | 4 years ago |
Nimetu | 3362afaa4d | 4 years ago |
Nuno | c5b34c927e | 4 years ago |
Nuno | fa3eab3305 | 4 years ago |
Nuno | 7d1534fb31 | 4 years ago |
Nuno | 791eb639df | 4 years ago |
Nuno | 772990d421 | 4 years ago |
Nuno | c8fd716f8a | 4 years ago |
Nuno | 72f7cbe4fa | 4 years ago |
Nuno | 9d2fc8c630 | 4 years ago |
Nuno | b4e54d5ad4 | 4 years ago |
Nuno | 904daebd88 | 4 years ago |
Nuno | 9c996b5fe3 | 4 years ago |
Nuno | 7964a42927 | 4 years ago |
Nuno | 24cb13d744 | 4 years ago |
Nuno | c8f4a85f0c | 4 years ago |
Nuno | 7bd936ea24 | 4 years ago |
Nuno | 4bcea9a70e | 4 years ago |
Nuno | 762e3b603e | 4 years ago |
Nuno | 292e142319 | 4 years ago |
Nuno | cdb1786018 | 4 years ago |
Nimetu | 1299484163 | 4 years ago |
Nimetu | 668e15e394 | 4 years ago |
Sit Melai | cdf1bacee1 | 4 years ago |
Nuno | 1ec4f88471 | 4 years ago |
Sit Melai | 673ce18e72 | 4 years ago |
Nuno | 54fd022501 | 4 years ago |
Nuno | 5fe26ec6d6 | 4 years ago |
Nuno | 40a9e782c3 | 4 years ago |
Nuno | 155e268ece | 4 years ago |
Nuno | 649527039b | 4 years ago |
Nuno | d350b1621d | 4 years ago |
Nuno | 22bab29654 | 4 years ago |
Nuno | 5632fffa44 | 4 years ago |
Nuno | 1cc000cc6c | 4 years ago |
Nuno | e9b7345ba5 | 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 | 540ab1ffc8 | 4 years ago |
Nuno | 629e8f5272 | 4 years ago |
Nuno | 868f462d5f | 4 years ago |
Nuno | 5a7d067a71 | 4 years ago |
Nuno | 17f818eace | 4 years ago |
Nuno | 5825332757 | 4 years ago |
Nimetu | c1170a0a4d | 4 years ago |
Nimetu | 291d332b56 | 4 years ago |
Nimetu | d8f54820c4 | 4 years ago |
Nimetu | 155418b20b | 4 years ago |
Nimetu | d665e1fc45 | 4 years ago |
Nimetu | 36f9888b91 | 4 years ago |
Nimetu | 17782d5d21 | 4 years ago |
Nuno | 85e788da81 | 4 years ago |
Nuno | 54de87acf4 | 4 years ago |
Nuno | ebab993e3e | 4 years ago |
Nuno | 3613dfd305 | 4 years ago |
Nuno | c09f82db16 | 4 years ago |
Nuno | 6402a31e4e | 4 years ago |
Nuno | 27cdcf1e02 | 4 years ago |
Nuno | de90245f27 | 4 years ago |
Nuno | bf2f8e39a5 | 4 years ago |
Nimetu | 26482eef1b | 4 years ago |
Nimetu | 383e362ed7 | 4 years ago |
Nimetu | c09ed63120 | 4 years ago |
Nimetu | fdb271bdb3 | 4 years ago |
kaetemi | dba92deea5 | 4 years ago |
Nuno | 0fb9422426 | 4 years ago |
kaetemi | 2528e542cb | 4 years ago |
kaetemi | 719f178f70 | 4 years ago |
Riasan | f83d8a206e | 4 years ago |
Riasan | 8cd863ff44 | 4 years ago |
Nuno | 89065eee3f | 4 years ago |
Sit Melai | 91b3ff25b4 | 4 years ago |
Nimetu | 4bcf9270eb | 4 years ago |
Sit Melai | c75071b488 | 4 years ago |
Nimetu | 04a5aa372b | 4 years ago |
Nimetu | 29ef76e537 | 4 years ago |
Nimetu | 040eee5c9e | 4 years ago |
Nimetu | c6ede4a8b4 | 4 years ago |
Nuno | adf9a646b7 | 4 years ago |
Nuno | 2aaa928cdc | 4 years ago |
Nuno | 83d0e600f1 | 4 years ago |
Nuno | df69a1706f | 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 | 6db93a0ef0 | 4 years ago |
Nuno | f61d10c75e | 4 years ago |
Nuno | 90728f372a | 4 years ago |
Nuno | 8fa5de61e3 | 4 years ago |
Nuno | 74dbe1e52c | 4 years ago |
Nuno | 6adf44f0b0 | 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 | 98b091ab63 | 4 years ago |
Nuno | 53252d40db | 4 years ago |
Nuno | 2b648934ea | 4 years ago |
Nuno | 46c7b0309d | 4 years ago |
Nuno | 347ed4b2fb | 4 years ago |
Nuno | b9d29d5cfe | 4 years ago |
Nuno | ea212bcba2 | 4 years ago |
Nuno | 281ec4ba60 | 4 years ago |
Nuno | 951f000be4 | 4 years ago |
Nuno | 4726e74dcd | 4 years ago |
Nuno | c5fffb9ff0 | 4 years ago |
Nuno | ae9989dfe4 | 4 years ago |
Nuno | d35ae0db80 | 4 years ago |
Nuno | 3dbdbad80a | 4 years ago |
Riasan | 0a81f40606 | 4 years ago |
Nuno | c63b21150e | 4 years ago |
Nuno | 9771d79bc3 | 4 years ago |
Nimetu | b70573d1dc | 4 years ago |
Nimetu | 7111cf44b3 | 4 years ago |
Nimetu | cb77552121 | 4 years ago |
Nuno | 2bf8faf29e | 4 years ago |
Nuno | b984e2e3d8 | 4 years ago |
Nuno | 140c380eb5 | 4 years ago |
Nuno | 1225fc0fe8 | 4 years ago |
Nuno | 13cb05c732 | 4 years ago |
Nuno | f84184af25 | 4 years ago |
Nuno | 4b6e0184a3 | 4 years ago |
Nuno | 269526e87f | 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 |
kaetemi | e998d3a85c | 4 years ago |
kaetemi | 5c3b0cf14b | 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 | 4f34ce36ae | 4 years ago |
Nuno | 8d2b26b738 | 4 years ago |
Nuno | 79e65a6b9e | 4 years ago |
Nuno | 6e59af8dc9 | 4 years ago |
Nuno | d23166ae49 | 4 years ago |
Nuno | 0b110c6a88 | 4 years ago |
Nuno | 13398f094a | 4 years ago |
Nuno | 7018a4439c | 4 years ago |
Riasan | cbbbc74a60 | 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 | 323be1612e | 4 years ago |
Nuno | 184582cfc9 | 4 years ago |
Nimetu | e39cd0a8d3 | 4 years ago |
Nuno | 0b9599c57b | 4 years ago |
Sit Melai | 9d7f2af1a7 | 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 |
kaetemi | b0f1c73d77 | 4 years ago |
kaetemi | 109ed7eba5 | 4 years ago |
Nuno | 9ae2df4527 | 4 years ago |
Nimetu | 762962ef25 | 4 years ago |
Nimetu | 9f3250f4db | 4 years ago |
Nimetu | e8c18b1b44 | 4 years ago |
Nimetu | 73610be10d | 4 years ago |
Nimetu | 72098f624d | 4 years ago |
kaetemi | 1a6e5e6e2b | 4 years ago |
kaetemi | 7adbb84514 | 4 years ago |
kaetemi | e74e229ad9 | 4 years ago |
Nimetu | ae91cc4179 | 4 years ago |
Nimetu | 6ccd8853db | 4 years ago |
Nuno | cc7793202b | 4 years ago |
Nuno | 0bb160545f | 4 years ago |
Nuno | 0e1b464e98 | 4 years ago |
Nuno | dfe051a8df | 4 years ago |
Nuno Gonçalves (Ulukyn) | 2f6133c8ba | 4 years ago |
Nuno Gonçalves (Ulukyn) | 95f8cefecc | 4 years ago |
Nuno Gonçalves (Ulukyn) | b98cd5e345 | 4 years ago |
Nuno Gonçalves (Ulukyn) | bca2a28187 | 4 years ago |
Sit Melai | b7cbeeb2ae | 4 years ago |
Ulukyn | 5d4e81e24c | 4 years ago |
Ulukyn | c73fff2ca6 | 4 years ago |
Nimetu | 9532fc3a81 | 4 years ago |
Nimetu | 6b59fc0081 | 4 years ago |
Sit Melai | 47bf9ecbc8 | 4 years ago |
Sit Melai | 02732c1241 | 4 years ago |
Sit Melai | f96f0b41b9 | 4 years ago |
Sit Melai | 5dc85db8b1 | 4 years ago |
Sit Melai | 49fcec5759 | 4 years ago |
Sit Melai | b8b21914f6 | 4 years ago |
Sit Melai | bccc86bd99 | 4 years ago |
Sit Melai | e5b3b752d5 | 4 years ago |
Sit Melai | c06469b2a0 | 4 years ago |
Ulukyn | 6fa74cd5c2 | 5 years ago |
Riasan | 8cd685d1f4 | 5 years ago |
Riasan | f31eeff8fc | 5 years ago |
Sit Melai | 7e10c697eb | 5 years ago |
Nimetu | f7be62eb3d | 5 years ago |
Nimetu | 2a4b16ab1b | 5 years ago |
Ulukyn | f7e8e3f516 | 5 years ago |
Ulukyn | 107dbc1987 | 5 years ago |
Ulukyn | 97dc744759 | 5 years ago |
Ulukyn | 012339dcf1 | 5 years ago |
Ulukyn | 884c65fc26 | 5 years ago |
Ulukyn | 07f9a55e48 | 5 years ago |
Ulukyn | a87b0f4c97 | 5 years ago |
Ulukyn | 4138a99fb7 | 5 years ago |
Ulukyn | 7be52a10fe | 5 years ago |
Ulukyn | f4a104bf3f | 5 years ago |
Ulukyn | 80a6bf72a9 | 5 years ago |
Ulukyn | 17e539132b | 5 years ago |
Ulukyn | 27bd2cec01 | 5 years ago |
Ulukyn | 6597f32fc1 | 5 years ago |
Ulukyn | 9e2872d15e | 5 years ago |
Ulukyn | 901f33d9a7 | 5 years ago |
Ulukyn | 421de3fa91 | 5 years ago |
Ulukyn | 08fb509d99 | 5 years ago |
Sit Melai | 6c8aeb6ae3 | 5 years ago |
Sit Melai | 59c794f716 | 5 years ago |
Heernis | 3c052d5fcc | 5 years ago |
Sit Melai | c2e7807f99 | 5 years ago |
Riasan | d130a7f826 | 5 years ago |
Ulukyn | fd2cc53d68 | 5 years ago |
Ulukyn | 6ae34e08d9 | 5 years ago |
Ulukyn | 80568ade1c | 5 years ago |
Ulukyn | a8016b6a59 | 5 years ago |
Ulukyn | d0fdfe175d | 5 years ago |
Ulukyn | 4254b6788a | 5 years ago |
Riasan | ada46dfabc | 5 years ago |
kaetemi | fc197880a4 | 5 years ago |
Ulukyn | ada3c09a51 | 5 years ago |
Ulukyn | 83061f7f03 | 5 years ago |
Ulukyn | 3c6bed32fd | 5 years ago |
Nimetu | 92b3a31f0b | 5 years ago |
Ulukyn | f396858ea9 | 5 years ago |
Ulukyn | eae8f9999d | 5 years ago |
Ulukyn | b8885cd661 | 5 years ago |
Ulukyn | f67a1cde32 | 5 years ago |
Ulukyn | feb1a5647d | 5 years ago |
Ulukyn | f3009c4178 | 5 years ago |
Ulukyn | 820bd23cf6 | 5 years ago |
Ulukyn | c883ea63e0 | 5 years ago |
Ulukyn | 791a6641d9 | 5 years ago |
Ulukyn | 521a5c8fb7 | 5 years ago |
Ulukyn | da876dcf7c | 5 years ago |
Ulukyn | 0069db15a6 | 5 years ago |
Ulukyn | 3da2f45363 | 5 years ago |
Ulukyn | 1143ecaae0 | 5 years ago |
Heernis | bcc107e187 | 5 years ago |
Nimetu | 36187626a9 | 5 years ago |
Nimetu | bde8d008d1 | 5 years ago |
Nimetu | 6993a2731f | 5 years ago |
Nimetu | 52d6f89e1e | 5 years ago |
Nimetu | 5bddfcfb22 | 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 |
kaetemi | 39d6ca285a | 5 years ago |
kaetemi | c8fc110a9e | 5 years ago |
kaetemi | a9fc9c2015 | 5 years ago |
Ulukyn | e32c852d96 | 5 years ago |
Ulukyn | f3a02d4f2a | 5 years ago |
Ulukyn | bd99cd8aed | 5 years ago |
Ulukyn | 77d8cce15a | 5 years ago |
Ulukyn | aa0d9d0be9 | 5 years ago |
Ulukyn | 0845e19408 | 5 years ago |
Ulukyn | ece240448d | 5 years ago |
Ulukyn | 07ff703de2 | 5 years ago |
Ulukyn | f6116a813b | 5 years ago |
Ulukyn | 422a8bb744 | 5 years ago |
Ulukyn | 25d4cca3a9 | 5 years ago |
Ulukyn | 6a40fcf12d | 5 years ago |
Ulukyn | bf0042173f | 5 years ago |
Ulukyn | 681568ce08 | 5 years ago |
Ulukyn | 47863be96e | 5 years ago |
Ulukyn | ade5b6e702 | 5 years ago |
Ulukyn | ecd8b952a2 | 5 years ago |
Ulukyn | 272f91210b | 5 years ago |
Ulukyn | 24d4fb8253 | 5 years ago |
Nimetu | 24fd5a6230 | 5 years ago |
Riasan | 9043e78794 | 5 years ago |
Nimetu | 5250d22706 | 5 years ago |
Nimetu | 682985978d | 5 years ago |
Nimetu | b3f8f307b0 | 5 years ago |
Ulukyn | b5ffa8becd | 5 years ago |
Ulukyn | 92090056ea | 5 years ago |
Nimetu | a6c7b3dd37 | 5 years ago |
Ulukyn | 1e54da83ef | 5 years ago |
Ulukyn | 6ec06b29ab | 5 years ago |
Ulukyn | 7b15da1018 | 5 years ago |
Nimetu | 598be95efd | 5 years ago |
Nimetu | 7f373a904e | 5 years ago |
Nimetu | 983475ff7c | 5 years ago |
Ulukyn | 44824414b1 | 5 years ago |
Ulukyn | 95b0f63622 | 5 years ago |
Ulukyn | 264b50a5ec | 5 years ago |
Ulukyn | 143b96c214 | 5 years ago |
Ulukyn | d4e5af7df2 | 5 years ago |
Ulukyn | 8dc9b89f94 | 5 years ago |
Nimetu | 2d86c5377d | 5 years ago |
Ulukyn | 04f9d593e0 | 5 years ago |
Nimetu | 3be969a73d | 5 years ago |
Ulukyn | ce8b05b284 | 5 years ago |
Ulukyn | 42b291c73e | 5 years ago |
Nimetu | 4aa94b3ae9 | 5 years ago |
Nimetu | c0110133d7 | 5 years ago |
Nimetu | c36faf2d61 | 5 years ago |
Ulukyn | fef0cad61a | 5 years ago |
Ulukyn | debb6b7d0c | 5 years ago |
Heernis | f11ed5ea49 | 5 years ago |
Ulukyn | 050d9fea2f | 5 years ago |
Ulukyn | 9a8f29bb67 | 5 years ago |
Ulukyn | c2e879ebcc | 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 | 2c9193fa74 | 5 years ago |
Ulukyn | 7e84ee9ec9 | 5 years ago |
Ulukyn | ff5d4e941c | 5 years ago |
Nimetu | f853adfcba | 5 years ago |
Nimetu | 1f736fc347 | 5 years ago |
Ulukyn | 8f3aaee987 | 5 years ago |
Ulukyn | 8d0172e1fb | 5 years ago |
Ulukyn | f06eebf26c | 5 years ago |
Ulukyn | 31ecfdf181 | 5 years ago |
Ulukyn | 4997576923 | 5 years ago |
Ulukyn | 9b6693763f | 5 years ago |
Ulukyn | b9d1cf26b7 | 5 years ago |
Ulukyn | ae25e054d4 | 5 years ago |
Ulukyn | 269f8c4b2d | 5 years ago |
Ulukyn | a3db3c6ba6 | 5 years ago |
Nimetu | 4d9aa3e684 | 5 years ago |
Nimetu | e99b7e257d | 5 years ago |
Nimetu | 94873c3d3f | 5 years ago |
Nimetu | 586e49282f | 5 years ago |
Nimetu | ca20d582b3 | 5 years ago |
Nimetu | 7cb5c817a6 | 5 years ago |
Nimetu | ec1dfca0c5 | 5 years ago |
Ulukyn | df6c0969c2 | 5 years ago |
Ulukyn | 590abe8bfd | 5 years ago |
Ulukyn | b31fa09af7 | 5 years ago |
Ulukyn | 3220a2aa47 | 5 years ago |
Ulukyn | c639bb3c07 | 5 years ago |
Nimetu | 2f635117f7 | 5 years ago |
Ulukyn | 0cf26cbdf8 | 5 years ago |
Nimetu | 34083dee80 | 5 years ago |
Nimetu | edb0c1fe73 | 5 years ago |
Nimetu | 9aabe0bf35 | 5 years ago |
Nimetu | 3b08d50b83 | 5 years ago |
Ulukyn | 523c07d9d9 | 5 years ago |
Ulukyn | e89d3233dc | 5 years ago |
Ulukyn | 96e95c19ee | 5 years ago |
Ulukyn | e10f79dbf2 | 5 years ago |
Ulukyn | 0aff3b4365 | 5 years ago |
Ulukyn | b0fa434c05 | 5 years ago |
Ulukyn | e349cb4399 | 5 years ago |
Ulukyn | f9cf9db049 | 5 years ago |
Ulukyn | 92f3c01a74 | 5 years ago |
Ulukyn | 3ffab7c1a1 | 5 years ago |
Ulukyn | 4df2489f59 | 5 years ago |
Ulukyn | de6418bb9a | 5 years ago |
Ulukyn | 1db0300515 | 5 years ago |
Ulukyn | 435b4362d3 | 5 years ago |
Ulukyn | f9d37a390a | 5 years ago |
Ulukyn | 99413cff48 | 5 years ago |
Ulukyn | d45f6efcef | 5 years ago |
Ulukyn | 01cb2cfdd8 | 5 years ago |
Ulukyn | 5f762edac4 | 5 years ago |
Ulukyn | bfadcfaff5 | 5 years ago |
Ulukyn | 55172c93b5 | 5 years ago |
Ulukyn | c950373782 | 5 years ago |
Ulukyn | b1d18ddb53 | 5 years ago |
Ulukyn | b869cd07d6 | 5 years ago |
Ulukyn | aaa24fd0f4 | 5 years ago |
Ulukyn | 6747613b03 | 5 years ago |
Ulukyn | ac6afb7b2f | 5 years ago |
Ulukyn | 4048ef29db | 5 years ago |
Ulukyn | b5b395c127 | 5 years ago |
Ulukyn | a7d2175f93 | 5 years ago |
Ulukyn | b16d132e1d | 5 years ago |
Ulukyn | e3cef8803e | 5 years ago |
Ulukyn | cb2201a69a | 5 years ago |
Nimetu | dfeba1426a | 5 years ago |
Ulukyn | c9bec465bc | 5 years ago |
Nimetu | 7856e93723 | 5 years ago |
Nimetu | 8f59a71e3c | 5 years ago |
Nimetu | 15433b263b | 5 years ago |
Ulukyn | 58a731628b | 5 years ago |
Ulukyn | eb8daeb652 | 5 years ago |
Ulukyn | c6d5163c1d | 5 years ago |
Ulukyn | 2c63a3aa96 | 5 years ago |
Ulukyn | 4709e766b9 | 5 years ago |
Ulukyn | b2207337fa | 5 years ago |
Ulukyn | 47dc707c91 | 5 years ago |
Ulukyn | 232af164ed | 5 years ago |
Ulukyn | f18101d97e | 5 years ago |
Ulukyn | 0df2bdec2b | 5 years ago |
Ulukyn | ed17e66d97 | 5 years ago |
Ulukyn | 7f149563f6 | 5 years ago |
Nimetu | e22d271408 | 5 years ago |
Ulukyn | d77d3b7102 | 5 years ago |
Ulukyn | e049c34c8d | 5 years ago |
Ulukyn | 6114cb1044 | 5 years ago |
Ulukyn | 609d6b470f | 5 years ago |
Ulukyn | 414011ee37 | 5 years ago |
Ulukyn | b558a1a18b | 5 years ago |
Ulukyn | b033942d36 | 5 years ago |
Ulukyn | de8c9dddcb | 5 years ago |
Ulukyn | 6e00000b9b | 5 years ago |
Ulukyn | 15ce2cd39c | 5 years ago |
Ulukyn | f9738713a7 | 5 years ago |
Ulukyn | 20b1f3a4c5 | 5 years ago |
Ulukyn | 586d84bc20 | 5 years ago |
Ulukyn | b88341792a | 5 years ago |
Ulukyn | 1c562ddbe6 | 5 years ago |
Ulukyn | 4675b8b8b9 | 5 years ago |
Ulukyn | d2edcbf4ee | 5 years ago |
Ulukyn | 954151ca73 | 5 years ago |
Ulukyn | 45b1bab23f | 5 years ago |
Ulukyn | 123197b90b | 5 years ago |
Ulukyn | 4b847a086a | 5 years ago |
Ulukyn | 9f61f08e74 | 5 years ago |
Ulukyn | aacbcf1e65 | 5 years ago |
Ulukyn | c838136d1a | 5 years ago |
Ulukyn | 0455d07125 | 5 years ago |
Ulukyn | 6785217b3a | 5 years ago |
Ulukyn | cc5423fdd5 | 5 years ago |
Ulukyn | c22f8776f4 | 5 years ago |
Nimetu | f5c0cbcdf3 | 5 years ago |
Nimetu | 8b2108af2f | 5 years ago |
Ulukyn | a7ca6f4499 | 5 years ago |
Ulukyn | 9e5f20a679 | 5 years ago |
Ulukyn | 11573ee85a | 5 years ago |
Ulukyn | 48a9a84d0e | 5 years ago |
Ulukyn | 2f27af125e | 5 years ago |
Ulukyn | 10f864b234 | 5 years ago |
Ulukyn | 0ac92bc08b | 5 years ago |
Ulukyn | 34c1265bce | 5 years ago |
Ulukyn | a6ee9fec63 | 5 years ago |
Ulukyn | fe008c0e52 | 5 years ago |
Ulukyn | 935c5df73a | 5 years ago |
Ulukyn | 7a0737e759 | 5 years ago |
Ulukyn | 09d8346558 | 5 years ago |
Ulukyn | 7f53767d85 | 5 years ago |
karu | 6a7fc98a52 | 5 years ago |
Ulukyn | 3d919974cf | 5 years ago |
Ulukyn | 691bf67c4d | 5 years ago |
Ulukyn | f053eaa157 | 5 years ago |
Ulukyn | 30fabcbd0a | 5 years ago |
Ulukyn | 3966020294 | 5 years ago |
Ulukyn | eeac201cf3 | 5 years ago |
Ulukyn | 357e3f07e4 | 5 years ago |
Ulukyn | 188c3494fa | 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 |
Nimetu | 4c1daee42c | 5 years ago |
Ulu Kyn | b5b8de283b | 5 years ago |
Ulu Kyn | 7b3c09f873 | 5 years ago |
Ulu Kyn | 3f7fc2e870 | 5 years ago |
Ulu Kyn | 4c0438d702 | 5 years ago |
Ulu Kyn | 139b03f0f1 | 5 years ago |
Ulu Kyn | 99caf036ff | 5 years ago |
Ulu Kyn | 6c35550c83 | 5 years ago |
Ulu Kyn | 8221ee2eb9 | 5 years ago |
Ulu Kyn | fd1f151504 | 5 years ago |
Ulu Kyn | c43b4b8bc0 | 5 years ago |
Ulu Kyn | a806758fad | 5 years ago |
Ulu Kyn | 58e24f9c58 | 5 years ago |
Herrah | 99ededcfcb | 5 years ago |
Ulu Kyn | e32e4492ce | 5 years ago |
Ulu Kyn | e3dc99e078 | 5 years ago |
Nuno Gonçalves | 9e406019d8 | 5 years ago |
Nuno Gonçalves | 19789a2544 | 5 years ago |
Nimetu | e4cce24f80 | 5 years ago |
Nimetu | 2e3fa918d4 | 5 years ago |
Nuno Gonçalves | 89973681a2 | 5 years ago |
Nuno Gonçalves | 683af88cb9 | 5 years ago |
Nimetu | da5b7212f8 | 5 years ago |
Nimetu | 14b1c1232a | 5 years ago |
Nuno Gonçalves | de69dfc285 | 5 years ago |
Nuno Gonçalves | f5776610f1 | 5 years ago |
Inky | 11f2044c7d | 5 years ago |
Nimetu | b53d797745 | 5 years ago |
Nimetu | 8b4c179a15 | 5 years ago |
ulukyn | 959d52fd80 | 5 years ago |
Nimetu | b423c0f057 | 5 years ago |
Nimetu | 7148d476ad | 5 years ago |
Nimetu | c9a5fbacd9 | 6 years ago |
Inky | bfbb8e1292 | 6 years ago |
Inky | 045a80b59e | 6 years ago |
Inky | 1ad5cf7a8e | 6 years ago |
Inky | c752619f13 | 6 years ago |
Inky | 26aef169b1 | 6 years ago |
Inky | 8006dbeabe | 6 years ago |
Inky | 6fdbdc9ed1 | 6 years ago |
Inky | f75e413994 | 6 years ago |
Inky | 3acbf83058 | 6 years ago |
Inky | 77496daef4 | 6 years ago |
Inky | c545629a10 | 6 years ago |
Inky | 1910f7bc86 | 6 years ago |
Inky | c1e76fcbb2 | 6 years ago |
Inky | 20fe11c53f | 6 years ago |
Inky | 6fcb6f0669 | 6 years ago |
Inky | a7cdf29463 | 6 years ago |
Inky | b2b16e3cce | 6 years ago |
Inky | 0f3f64cdc2 | 6 years ago |
Inky | c8927c9c4b | 6 years ago |
Inky | 5d1233e805 | 6 years ago |
Inky | f5e9b7703c | 6 years ago |
Inky | 098df688b9 | 6 years ago |
Inky | 6d16b46890 | 6 years ago |
Inky | 331b0d8718 | 6 years ago |
Inky | d9cb317667 | 6 years ago |
Inky | 90e508032c | 6 years ago |
Inky | 4a5de4cb13 | 6 years ago |
Inky | 9d294ef242 | 6 years ago |
Inky | 860d6e2abb | 6 years ago |
Inky | bfab92082b | 6 years ago |
Inky | 64e26124f8 | 6 years ago |
Inky | 21dfa80b73 | 6 years ago |
Inky | ac4d9efd8b | 6 years ago |
Inky | 00f850f143 | 6 years ago |
Nimetu | a4b3e57fd0 | 6 years ago |
Nimetu | 8b2aef9317 | 6 years ago |
Nimetu | c123f63afd | 6 years ago |
Nimetu | a22767af76 | 6 years ago |
ulukyn | f8af0da354 | 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 | 6 years ago |
ulukyn | 60feb8bc57 | 6 years ago |
ulukyn | dd6057ad71 | 6 years ago |
Riasan | 882e067fc0 | 6 years ago |
Riasan | a82a018f40 | 6 years ago |
Riasan | eb1c367464 | 6 years ago |
teanwen | 4ca7ea8957 | 6 years ago |
ulukyn | 6c731f049e | 6 years ago |
ulukyn | 363a59d238 | 6 years ago |
Riasan | b59b8a51a9 | 6 years ago |
ulukyn | 5648981968 | 6 years ago |
Riasan | c1510a8fb8 | 6 years ago |
Riasan | beb3dca614 | 6 years ago |
Riasan | 80204090d4 | 6 years ago |
Riasan | 57e55ed250 | 6 years ago |
Riasan | 5601d84d60 | 6 years ago |
Riasan | 2b24a51439 | 6 years ago |
Riasan | 3343f46e11 | 6 years ago |
Riasan | 82e5e1a4fc | 6 years ago |
Riasan | 19285bc8e9 | 6 years ago |
Riasan | cdbd2e1f47 | 6 years ago |
Riasan | f8a252abcf | 6 years ago |
Ul U'Kyn | 453c81bc7c | 6 years ago |
Riasan | 56f450782f | 6 years ago |
Riasan | dda9dff6ba | 6 years ago |
Riasan | e0266dedcb | 6 years ago |
Riasan | 28fd5a7265 | 6 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,27 +1,28 @@
|
|||||||
4eddbaff0c5e5d685db96ee3e8427aa0fd96ac83 v0.8.0
|
4eddbaff0c5e5d685db96ee3e8427aa0fd96ac83 ryzomcore/v0.8.0
|
||||||
00d9b6e29e95f56785fbf85abe60afd34674f402 v0.9.0
|
00d9b6e29e95f56785fbf85abe60afd34674f402 ryzomcore/v0.9.0
|
||||||
79776c337176dd5b02e1a74fe5dfb703b91747aa v0.9.1
|
79776c337176dd5b02e1a74fe5dfb703b91747aa ryzomcore/v0.9.1
|
||||||
fedf2aa443d09707beed814b0f499c6a5519cc84 v0.10.0
|
fedf2aa443d09707beed814b0f499c6a5519cc84 ryzomcore/v0.10.0
|
||||||
edaa3624a56420b02ccc64c26059801a389927ee v0.11.0
|
edaa3624a56420b02ccc64c26059801a389927ee ryzomcore/v0.11.0
|
||||||
e3fe4855f22c3e75722e015dc33c091c340b3ad7 v0.11.1
|
e3fe4855f22c3e75722e015dc33c091c340b3ad7 ryzomcore/v0.11.1
|
||||||
9e583b717fd63be0be9fd60b99087abf1691ea49 v0.11.2
|
9e583b717fd63be0be9fd60b99087abf1691ea49 ryzomcore/v0.11.2
|
||||||
bfe5628e14a024ba7ea32e4b326ae433a07856b9 v0.11.3
|
bfe5628e14a024ba7ea32e4b326ae433a07856b9 ryzomcore/v0.11.3
|
||||||
9a6120735daa97c96ac5d85ca35c7f21f607bd87 v0.12.0
|
9a6120735daa97c96ac5d85ca35c7f21f607bd87 ryzomcore/v0.12.0
|
||||||
3e92c7104c20d6bc6c2147b4b5fc289e8621d322 v1.0.0
|
3e17907af67e8d66d80e6b714707bbf912607f2a ryzom-patch-3.0.0
|
||||||
8eb94c3549be898fdc4a7c6d791d2477bdc11a18 v1.0.1
|
153e0b605c9e0c83ba05b6428c62838b49cc84b2 ryzom-patch-3.0.1
|
||||||
3e17907af67e8d66d80e6b714707bbf912607f2a ryzom/3.0.0
|
9d41f2994d44b9aad92b83f945f114e4b6bed44a ryzom-patch-3.0.2
|
||||||
153e0b605c9e0c83ba05b6428c62838b49cc84b2 ryzom/3.0.1
|
4300cc14aad098b1f86ea4c55577b7fa4a4cb5d2 ryzom-patch-3.1.0
|
||||||
9d41f2994d44b9aad92b83f945f114e4b6bed44a ryzom/3.0.2
|
d4060f217f4f834cc62a33f2f1ccdf3c28298066 ryzom-patch-3.1.0-hotfix
|
||||||
4300cc14aad098b1f86ea4c55577b7fa4a4cb5d2 ryzom/3.1.0
|
043aaeb3d8a2a54177581b57bda87a9deaad510e ryzom-patch-3.1.0-april_patch
|
||||||
d4060f217f4f834cc62a33f2f1ccdf3c28298066 ryzom/3.1.0-hotfix
|
4036ecf59e83960f03acebc2089eb2ff5eeaed0a ryzom-patch-3.2.0
|
||||||
043aaeb3d8a2a54177581b57bda87a9deaad510e ryzom/3.1.0-april_patch
|
18403bb9485da3d9742c6f007a16d5619ebfb196 ryzom-patch-3.2.1
|
||||||
4036ecf59e83960f03acebc2089eb2ff5eeaed0a ryzom/3.2.0
|
822ff8f8917ad66e09e2c21c983282f6f693b9f6 ryzom-patch-3.3.0
|
||||||
18403bb9485da3d9742c6f007a16d5619ebfb196 ryzom/3.2.1
|
00dde390a394fce9da06c2f3264140282158d39f ryzom-patch-3.3.0
|
||||||
822ff8f8917ad66e09e2c21c983282f6f693b9f6 ryzom/3.3.0
|
dcd4c4d161ef775136e18c7e8f5072b75dede27e ryzom-patch-3.3.1
|
||||||
00dde390a394fce9da06c2f3264140282158d39f ryzom/3.3.0
|
fc4be8ebec5ca754ef4453bc6a9faef90837c674 ryzom-patch-3.4.0
|
||||||
dcd4c4d161ef775136e18c7e8f5072b75dede27e ryzom/3.3.1
|
70eba02e8eab6920586dbabf74e9e8180c729980 ryzom-patch-3.4.0 Steam Fix
|
||||||
fc4be8ebec5ca754ef4453bc6a9faef90837c674 ryzom/3.4.0
|
3941482843f9cd130cfc16634efc08d34a98ed35 ryzom-patch-3.4.0 Atysmas
|
||||||
70eba02e8eab6920586dbabf74e9e8180c729980 ryzom/3.4.0-steam_fix
|
ecae9feb4cceb78103e5d7236caccaf450796cdb ryzom-patch-3.5.0
|
||||||
3941482843f9cd130cfc16634efc08d34a98ed35 ryzom/3.4.0-atysmas
|
95783afa226f241062134eb62f4323295d29ac84 ryzom-patch-3.5.0.9637
|
||||||
ecae9feb4cceb78103e5d7236caccaf450796cdb ryzom/3.5.0
|
2102fb276eb69d49ed4923042215312a63c47c08 Live-746
|
||||||
95783afa226f241062134eb62f4323295d29ac84 ryzom/3.5.0.9637
|
8eb94c3549be898fdc4a7c6d791d2477bdc11a18 ryzomcore/v1.0.1
|
||||||
|
3e92c7104c20d6bc6c2147b4b5fc289e8621d322 ryzomcore/v1.0.0
|
||||||
|
@ -1,81 +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 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()
|
|
||||||
set( LUA_LIBRARIES "${LUA_LIBRARY}" CACHE STRING "Lua Libraries")
|
|
||||||
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_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,120 +1,120 @@
|
|||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Include Modern UI
|
;Include Modern UI
|
||||||
!include "MUI2.nsh"
|
!include "MUI2.nsh"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;General
|
;General
|
||||||
!define Company "Winch Gate"
|
!define Company "Winch Gate"
|
||||||
!define GenericProduct "Ryzom"
|
!define GenericProduct "Ryzom"
|
||||||
!define Product "Ryzom Installer"
|
!define Product "Ryzom Installer"
|
||||||
!define RegistryCat "HKCU"
|
!define RegistryCat "HKCU"
|
||||||
!define RegistryKey "Software\${Company}\${GenericProduct}"
|
!define RegistryKey "Software\${Company}\${GenericProduct}"
|
||||||
!define Executable "ryzom_installer_qt_r.exe"
|
!define Executable "ryzom_installer_qt_r.exe"
|
||||||
!define SrcDir "RyzomInstaller"
|
!define SrcDir "RyzomInstaller"
|
||||||
!define Installer "ryzom_installer_windows.exe"
|
!define Installer "ryzom_installer_windows.exe"
|
||||||
|
|
||||||
;Properly display all languages (Installer will not work on Windows 95, 98 or ME!)
|
;Properly display all languages (Installer will not work on Windows 95, 98 or ME!)
|
||||||
;Unicode true
|
;Unicode true
|
||||||
|
|
||||||
;New XP style
|
;New XP style
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
|
||||||
;Name and file
|
;Name and file
|
||||||
Name "${Product}"
|
Name "${Product}"
|
||||||
OutFile "${Installer}"
|
OutFile "${Installer}"
|
||||||
|
|
||||||
;Default installation folder
|
;Default installation folder
|
||||||
InstallDir "$LOCALAPPDATA\${GenericProduct}"
|
InstallDir "$LOCALAPPDATA\${GenericProduct}"
|
||||||
|
|
||||||
;Get installation folder from registry if available
|
;Get installation folder from registry if available
|
||||||
InstallDirRegKey "${RegistryCat}" "${RegistryKey}" "${GenericProduct} Install Path"
|
InstallDirRegKey "${RegistryCat}" "${RegistryKey}" "${GenericProduct} Install Path"
|
||||||
|
|
||||||
;Request application privileges for Windows Vista
|
;Request application privileges for Windows Vista
|
||||||
RequestExecutionLevel user
|
RequestExecutionLevel user
|
||||||
|
|
||||||
;Best compression
|
;Best compression
|
||||||
SetCompressor LZMA
|
SetCompressor LZMA
|
||||||
|
|
||||||
; ???
|
; ???
|
||||||
AllowSkipFiles on
|
AllowSkipFiles on
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Interface Settings
|
;Interface Settings
|
||||||
|
|
||||||
!define MUI_ICON "${SrcDir}\${GenericProduct}.ico"
|
!define MUI_ICON "${SrcDir}\${GenericProduct}.ico"
|
||||||
!define MUI_UNICON "${SrcDir}\${GenericProduct}.ico"
|
!define MUI_UNICON "${SrcDir}\${GenericProduct}.ico"
|
||||||
!define MUI_HEADERIMAGE
|
!define MUI_HEADERIMAGE
|
||||||
!define MUI_HEADERIMAGE_BITMAP "modern-header.bmp" ; optional
|
!define MUI_HEADERIMAGE_BITMAP "modern-header.bmp" ; optional
|
||||||
!define MUI_WELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
!define MUI_WELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
||||||
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
||||||
!define MUI_ABORTWARNING
|
!define MUI_ABORTWARNING
|
||||||
|
|
||||||
;Show all languages, despite user's codepage
|
;Show all languages, despite user's codepage
|
||||||
!define MUI_LANGDLL_ALLLANGUAGES
|
!define MUI_LANGDLL_ALLLANGUAGES
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Language Selection Dialog Settings
|
;Language Selection Dialog Settings
|
||||||
|
|
||||||
;Remember the installer language
|
;Remember the installer language
|
||||||
!define MUI_LANGDLL_REGISTRY_ROOT "${RegistryCat}"
|
!define MUI_LANGDLL_REGISTRY_ROOT "${RegistryCat}"
|
||||||
!define MUI_LANGDLL_REGISTRY_KEY "${RegistryKey}"
|
!define MUI_LANGDLL_REGISTRY_KEY "${RegistryKey}"
|
||||||
!define MUI_LANGDLL_REGISTRY_VALUENAME "Language"
|
!define MUI_LANGDLL_REGISTRY_VALUENAME "Language"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Pages
|
;Pages
|
||||||
!insertmacro MUI_PAGE_WELCOME
|
!insertmacro MUI_PAGE_WELCOME
|
||||||
!insertmacro MUI_PAGE_DIRECTORY
|
!insertmacro MUI_PAGE_DIRECTORY
|
||||||
!insertmacro MUI_PAGE_INSTFILES
|
!insertmacro MUI_PAGE_INSTFILES
|
||||||
|
|
||||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\${Executable}"
|
!define MUI_FINISHPAGE_RUN "$INSTDIR\${Executable}"
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_FINISH
|
!insertmacro MUI_PAGE_FINISH
|
||||||
|
|
||||||
!insertmacro MUI_UNPAGE_WELCOME
|
!insertmacro MUI_UNPAGE_WELCOME
|
||||||
!insertmacro MUI_UNPAGE_CONFIRM
|
!insertmacro MUI_UNPAGE_CONFIRM
|
||||||
!insertmacro MUI_UNPAGE_INSTFILES
|
!insertmacro MUI_UNPAGE_INSTFILES
|
||||||
!insertmacro MUI_UNPAGE_FINISH
|
!insertmacro MUI_UNPAGE_FINISH
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Languages
|
;Languages
|
||||||
|
|
||||||
!insertmacro MUI_LANGUAGE "English" ;first language is the default language
|
!insertmacro MUI_LANGUAGE "English" ;first language is the default language
|
||||||
!insertmacro MUI_LANGUAGE "French"
|
!insertmacro MUI_LANGUAGE "French"
|
||||||
!insertmacro MUI_LANGUAGE "German"
|
!insertmacro MUI_LANGUAGE "German"
|
||||||
!insertmacro MUI_LANGUAGE "Spanish"
|
!insertmacro MUI_LANGUAGE "Spanish"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Reserve Files
|
;Reserve Files
|
||||||
|
|
||||||
;If you are using solid compression, files that are required before
|
;If you are using solid compression, files that are required before
|
||||||
;the actual installation should be stored first in the data block,
|
;the actual installation should be stored first in the data block,
|
||||||
;because this will make your installer start faster.
|
;because this will make your installer start faster.
|
||||||
|
|
||||||
!insertmacro MUI_RESERVEFILE_LANGDLL
|
!insertmacro MUI_RESERVEFILE_LANGDLL
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Installer Sections
|
;Installer Sections
|
||||||
|
|
||||||
; ----------------------------------------
|
; ----------------------------------------
|
||||||
; Default section
|
; Default section
|
||||||
Section
|
Section
|
||||||
SetOutPath "$INSTDIR"
|
SetOutPath "$INSTDIR"
|
||||||
|
|
||||||
;Client, configuration and misc files
|
;Client, configuration and misc files
|
||||||
File "${SrcDir}\${Executable}"
|
File "${SrcDir}\${Executable}"
|
||||||
File "${SrcDir}\msvcp120.dll"
|
File "${SrcDir}\msvcp120.dll"
|
||||||
File "${SrcDir}\msvcr120.dll"
|
File "${SrcDir}\msvcr120.dll"
|
||||||
|
|
||||||
;Shortcut on desktop
|
;Shortcut on desktop
|
||||||
CreateShortCut "$DESKTOP\${Product}.lnk" "$INSTDIR\${Executable}"
|
CreateShortCut "$DESKTOP\${Product}.lnk" "$INSTDIR\${Executable}"
|
||||||
|
|
||||||
;Store installation folder
|
;Store installation folder
|
||||||
WriteRegStr "${RegistryCat}" "${RegistryKey}" "${GenericProduct} Install Path" $INSTDIR
|
WriteRegStr "${RegistryCat}" "${RegistryKey}" "${GenericProduct} Install Path" $INSTDIR
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Installer Functions
|
;Installer Functions
|
||||||
|
|
||||||
Function .onInit
|
Function .onInit
|
||||||
!insertmacro MUI_LANGDLL_DISPLAY
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,298 +1,298 @@
|
|||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Include Modern UI
|
;Include Modern UI
|
||||||
!include "MUI2.nsh"
|
!include "MUI2.nsh"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;General
|
;General
|
||||||
!define Company "Nevrax"
|
!define Company "Nevrax"
|
||||||
!define Product "Ryzom"
|
!define Product "Ryzom"
|
||||||
!define Version "2.1.0"
|
!define Version "2.1.0"
|
||||||
!define Patch "661"
|
!define Patch "661"
|
||||||
!define RegistryCat "HKLM"
|
!define RegistryCat "HKLM"
|
||||||
!define RegistryKey "Software\${Company}\${Product}"
|
!define RegistryKey "Software\${Company}\${Product}"
|
||||||
!define Executable "client_ryzom_rd.exe"
|
!define Executable "client_ryzom_rd.exe"
|
||||||
!define DstDir "Output"
|
!define DstDir "Output"
|
||||||
!define SrcDir "Ryzom"
|
!define SrcDir "Ryzom"
|
||||||
!define Installer "ryzom_setup_${Patch}.exe"
|
!define Installer "ryzom_setup_${Patch}.exe"
|
||||||
|
|
||||||
;Registry key for uninstaller
|
;Registry key for uninstaller
|
||||||
!define UninstallRegistryRoot "Software\Microsoft\Windows\CurrentVersion\Uninstall"
|
!define UninstallRegistryRoot "Software\Microsoft\Windows\CurrentVersion\Uninstall"
|
||||||
!define UninstallRegistryKey "${UninstallRegistryRoot}\${Product}"
|
!define UninstallRegistryKey "${UninstallRegistryRoot}\${Product}"
|
||||||
|
|
||||||
;Properly display all languages (Installer will not work on Windows 95, 98 or ME!)
|
;Properly display all languages (Installer will not work on Windows 95, 98 or ME!)
|
||||||
Unicode true
|
Unicode true
|
||||||
|
|
||||||
;New XP style
|
;New XP style
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
|
||||||
;Name and file
|
;Name and file
|
||||||
Name "${Product}"
|
Name "${Product}"
|
||||||
OutFile "${DstDir}\${Installer}"
|
OutFile "${DstDir}\${Installer}"
|
||||||
|
|
||||||
;Default installation folder
|
;Default installation folder
|
||||||
InstallDir "$PROGRAMFILES\${Product}"
|
InstallDir "$PROGRAMFILES\${Product}"
|
||||||
|
|
||||||
;Get installation folder from registry if available
|
;Get installation folder from registry if available
|
||||||
InstallDirRegKey "${RegistryCat}" "${RegistryKey}" "${Product} Install Path"
|
InstallDirRegKey "${RegistryCat}" "${RegistryKey}" "${Product} Install Path"
|
||||||
|
|
||||||
;Request application privileges for Windows Vista
|
;Request application privileges for Windows Vista
|
||||||
RequestExecutionLevel admin
|
RequestExecutionLevel admin
|
||||||
|
|
||||||
;Best compression
|
;Best compression
|
||||||
SetCompressor LZMA
|
SetCompressor LZMA
|
||||||
|
|
||||||
; ???
|
; ???
|
||||||
AllowSkipFiles on
|
AllowSkipFiles on
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Variables
|
;Variables
|
||||||
|
|
||||||
;Will be used later
|
;Will be used later
|
||||||
Var MUI_TEMP
|
Var MUI_TEMP
|
||||||
Var STARTMENU_FOLDER
|
Var STARTMENU_FOLDER
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Interface Settings
|
;Interface Settings
|
||||||
|
|
||||||
!define MUI_ICON "${SrcDir}\ryzom.ico"
|
!define MUI_ICON "${SrcDir}\ryzom.ico"
|
||||||
!define MUI_UNICON "${SrcDir}\ryzom.ico"
|
!define MUI_UNICON "${SrcDir}\ryzom.ico"
|
||||||
!define MUI_HEADERIMAGE
|
!define MUI_HEADERIMAGE
|
||||||
!define MUI_HEADERIMAGE_BITMAP "modern-header.bmp" ; optional
|
!define MUI_HEADERIMAGE_BITMAP "modern-header.bmp" ; optional
|
||||||
!define MUI_WELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
!define MUI_WELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
||||||
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "modern-wizard.bmp"
|
||||||
!define MUI_ABORTWARNING
|
!define MUI_ABORTWARNING
|
||||||
|
|
||||||
;Show all languages, despite user's codepage
|
;Show all languages, despite user's codepage
|
||||||
!define MUI_LANGDLL_ALLLANGUAGES
|
!define MUI_LANGDLL_ALLLANGUAGES
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Language Selection Dialog Settings
|
;Language Selection Dialog Settings
|
||||||
|
|
||||||
;Remember the installer language
|
;Remember the installer language
|
||||||
!define MUI_LANGDLL_REGISTRY_ROOT "${RegistryCat}"
|
!define MUI_LANGDLL_REGISTRY_ROOT "${RegistryCat}"
|
||||||
!define MUI_LANGDLL_REGISTRY_KEY "${RegistryKey}"
|
!define MUI_LANGDLL_REGISTRY_KEY "${RegistryKey}"
|
||||||
!define MUI_LANGDLL_REGISTRY_VALUENAME "Language"
|
!define MUI_LANGDLL_REGISTRY_VALUENAME "Language"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Pages
|
;Pages
|
||||||
!insertmacro MUI_PAGE_WELCOME
|
!insertmacro MUI_PAGE_WELCOME
|
||||||
!insertmacro MUI_PAGE_DIRECTORY
|
!insertmacro MUI_PAGE_DIRECTORY
|
||||||
|
|
||||||
;Start Menu Folder Page Configuration
|
;Start Menu Folder Page Configuration
|
||||||
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${RegistryCat}"
|
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${RegistryCat}"
|
||||||
!define MUI_STARTMENUPAGE_REGISTRY_KEY "${RegistryKey}"
|
!define MUI_STARTMENUPAGE_REGISTRY_KEY "${RegistryKey}"
|
||||||
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
|
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_STARTMENU Application $STARTMENU_FOLDER
|
!insertmacro MUI_PAGE_STARTMENU Application $STARTMENU_FOLDER
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_INSTFILES
|
!insertmacro MUI_PAGE_INSTFILES
|
||||||
|
|
||||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\${Executable}"
|
!define MUI_FINISHPAGE_RUN "$INSTDIR\${Executable}"
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_FINISH
|
!insertmacro MUI_PAGE_FINISH
|
||||||
|
|
||||||
!insertmacro MUI_UNPAGE_WELCOME
|
!insertmacro MUI_UNPAGE_WELCOME
|
||||||
!insertmacro MUI_UNPAGE_CONFIRM
|
!insertmacro MUI_UNPAGE_CONFIRM
|
||||||
!insertmacro MUI_UNPAGE_INSTFILES
|
!insertmacro MUI_UNPAGE_INSTFILES
|
||||||
!insertmacro MUI_UNPAGE_FINISH
|
!insertmacro MUI_UNPAGE_FINISH
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Languages
|
;Languages
|
||||||
|
|
||||||
!insertmacro MUI_LANGUAGE "English" ;first language is the default language
|
!insertmacro MUI_LANGUAGE "English" ;first language is the default language
|
||||||
!insertmacro MUI_LANGUAGE "French"
|
!insertmacro MUI_LANGUAGE "French"
|
||||||
!insertmacro MUI_LANGUAGE "German"
|
!insertmacro MUI_LANGUAGE "German"
|
||||||
;!insertmacro MUI_LANGUAGE "Spanish"
|
;!insertmacro MUI_LANGUAGE "Spanish"
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Reserve Files
|
;Reserve Files
|
||||||
|
|
||||||
;If you are using solid compression, files that are required before
|
;If you are using solid compression, files that are required before
|
||||||
;the actual installation should be stored first in the data block,
|
;the actual installation should be stored first in the data block,
|
||||||
;because this will make your installer start faster.
|
;because this will make your installer start faster.
|
||||||
|
|
||||||
!insertmacro MUI_RESERVEFILE_LANGDLL
|
!insertmacro MUI_RESERVEFILE_LANGDLL
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Descriptions
|
;Descriptions
|
||||||
|
|
||||||
;French
|
;French
|
||||||
LangString MSG_SUPPORT_URL_TITLE ${LANG_FRENCH} "Support"
|
LangString MSG_SUPPORT_URL_TITLE ${LANG_FRENCH} "Support"
|
||||||
LangString MSG_SUPPORT_URL ${LANG_FRENCH} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=fr#1"
|
LangString MSG_SUPPORT_URL ${LANG_FRENCH} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=fr#1"
|
||||||
LangString MSG_HOME_URL_TITLE ${LANG_FRENCH} "${Product} sur le Web"
|
LangString MSG_HOME_URL_TITLE ${LANG_FRENCH} "${Product} sur le Web"
|
||||||
LangString MSG_HOME_URL ${LANG_FRENCH} "http://ryzom.fr"
|
LangString MSG_HOME_URL ${LANG_FRENCH} "http://ryzom.fr"
|
||||||
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_FRENCH} "Voulez-vous supprimer vos fichiers de sauvegarde ? Appuyer sur Oui pour effacer vos fichiers de sauvegarde."
|
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_FRENCH} "Voulez-vous supprimer vos fichiers de sauvegarde ? Appuyer sur Oui pour effacer vos fichiers de sauvegarde."
|
||||||
|
|
||||||
;English
|
;English
|
||||||
LangString MSG_SUPPORT_URL_TITLE ${LANG_ENGLISH} "Support"
|
LangString MSG_SUPPORT_URL_TITLE ${LANG_ENGLISH} "Support"
|
||||||
LangString MSG_SUPPORT_URL ${LANG_ENGLISH} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=en#1"
|
LangString MSG_SUPPORT_URL ${LANG_ENGLISH} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=en#1"
|
||||||
LangString MSG_HOME_URL_TITLE ${LANG_ENGLISH} "${Product} on the Web"
|
LangString MSG_HOME_URL_TITLE ${LANG_ENGLISH} "${Product} on the Web"
|
||||||
LangString MSG_HOME_URL ${LANG_ENGLISH} "http://ryzom.com"
|
LangString MSG_HOME_URL ${LANG_ENGLISH} "http://ryzom.com"
|
||||||
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_ENGLISH} "Deleting Save Files? Click Yes to delete your own save files."
|
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_ENGLISH} "Deleting Save Files? Click Yes to delete your own save files."
|
||||||
|
|
||||||
;German
|
;German
|
||||||
LangString MSG_SUPPORT_URL_TITLE ${LANG_GERMAN} "Support"
|
LangString MSG_SUPPORT_URL_TITLE ${LANG_GERMAN} "Support"
|
||||||
LangString MSG_SUPPORT_URL ${LANG_GERMAN} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=de#1"
|
LangString MSG_SUPPORT_URL ${LANG_GERMAN} "http://app.ryzom.com/app_forum/index.php?page=topic/view/22047/1&post149889=de#1"
|
||||||
LangString MSG_HOME_URL_TITLE ${LANG_GERMAN} "${Product} im Internet"
|
LangString MSG_HOME_URL_TITLE ${LANG_GERMAN} "${Product} im Internet"
|
||||||
LangString MSG_HOME_URL ${LANG_GERMAN} "http://ryzom.de"
|
LangString MSG_HOME_URL ${LANG_GERMAN} "http://ryzom.de"
|
||||||
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_GERMAN} "Gespeicherte Dateien löschen? Klicke Ja um die eigenen Dateien zu löschen."
|
LangString MSG_CONFIRM_DELETE_BACKUPS ${LANG_GERMAN} "Gespeicherte Dateien löschen? Klicke Ja um die eigenen Dateien zu löschen."
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Installer Sections
|
;Installer Sections
|
||||||
|
|
||||||
!macro CreateInternetShortcut FILENAME URL ICONFILE
|
!macro CreateInternetShortcut FILENAME URL ICONFILE
|
||||||
WriteINIStr "${FILENAME}.url" "InternetShortcut" "URL" "${URL}"
|
WriteINIStr "${FILENAME}.url" "InternetShortcut" "URL" "${URL}"
|
||||||
WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconFile" "${ICONFILE}"
|
WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconFile" "${ICONFILE}"
|
||||||
WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconIndex" "0"
|
WriteINIStr "${FILENAME}.url" "InternetShortcut" "IconIndex" "0"
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
; ----------------------------------------
|
; ----------------------------------------
|
||||||
; Default section
|
; Default section
|
||||||
Section
|
Section
|
||||||
;Install for All Users
|
;Install for All Users
|
||||||
SetShellVarContext all
|
SetShellVarContext all
|
||||||
|
|
||||||
;Game directories
|
;Game directories
|
||||||
SetOutPath "$INSTDIR\cfg"
|
SetOutPath "$INSTDIR\cfg"
|
||||||
File /r "${SrcDir}\cfg\*.*"
|
File /r "${SrcDir}\cfg\*.*"
|
||||||
|
|
||||||
SetOutPath "$INSTDIR\data"
|
SetOutPath "$INSTDIR\data"
|
||||||
File /r "${SrcDir}\data\*.*"
|
File /r "${SrcDir}\data\*.*"
|
||||||
|
|
||||||
SetOutPath "$INSTDIR\examples"
|
SetOutPath "$INSTDIR\examples"
|
||||||
File /r "${SrcDir}\examples\*.*"
|
File /r "${SrcDir}\examples\*.*"
|
||||||
|
|
||||||
SetOutPath "$INSTDIR\user"
|
SetOutPath "$INSTDIR\user"
|
||||||
File /r "${SrcDir}\user\*.*"
|
File /r "${SrcDir}\user\*.*"
|
||||||
|
|
||||||
SetOutPath "$INSTDIR"
|
SetOutPath "$INSTDIR"
|
||||||
|
|
||||||
;Client, configuration and misc files
|
;Client, configuration and misc files
|
||||||
File "${SrcDir}\client_default.cfg"
|
File "${SrcDir}\client_default.cfg"
|
||||||
File "${SrcDir}\${Executable}"
|
File "${SrcDir}\${Executable}"
|
||||||
File "${SrcDir}\configure.bat"
|
File "${SrcDir}\configure.bat"
|
||||||
File "${SrcDir}\d3dcompiler_43.dll"
|
File "${SrcDir}\d3dcompiler_43.dll"
|
||||||
File "${SrcDir}\d3dx9_43.dll"
|
File "${SrcDir}\d3dx9_43.dll"
|
||||||
File "${SrcDir}\fmod.dll"
|
File "${SrcDir}\fmod.dll"
|
||||||
File "${SrcDir}\forum.url"
|
File "${SrcDir}\forum.url"
|
||||||
File "${SrcDir}\launch.bat"
|
File "${SrcDir}\launch.bat"
|
||||||
File "${SrcDir}\msvcp100.dll"
|
File "${SrcDir}\msvcp100.dll"
|
||||||
File "${SrcDir}\msvcr100.dll"
|
File "${SrcDir}\msvcr100.dll"
|
||||||
File "${SrcDir}\nel_drv_direct3d_win_r.dll"
|
File "${SrcDir}\nel_drv_direct3d_win_r.dll"
|
||||||
File "${SrcDir}\nel_drv_fmod_win_r.dll"
|
File "${SrcDir}\nel_drv_fmod_win_r.dll"
|
||||||
File "${SrcDir}\nel_drv_opengl_win_r.dll"
|
File "${SrcDir}\nel_drv_opengl_win_r.dll"
|
||||||
File "${SrcDir}\ryzom.ico"
|
File "${SrcDir}\ryzom.ico"
|
||||||
File "${SrcDir}\ryzom.url"
|
File "${SrcDir}\ryzom.url"
|
||||||
File "${SrcDir}\Ryzom6.ico"
|
File "${SrcDir}\Ryzom6.ico"
|
||||||
|
|
||||||
;Create uninstaller
|
;Create uninstaller
|
||||||
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
||||||
|
|
||||||
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
|
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
|
||||||
|
|
||||||
;Create shortcuts in Start Menu
|
;Create shortcuts in Start Menu
|
||||||
CreateDirectory "$SMPROGRAMS\$STARTMENU_FOLDER"
|
CreateDirectory "$SMPROGRAMS\$STARTMENU_FOLDER"
|
||||||
CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
|
CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
|
||||||
CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\${Product}.lnk" "$INSTDIR\${Executable}"
|
CreateShortCut "$SMPROGRAMS\$STARTMENU_FOLDER\${Product}.lnk" "$INSTDIR\${Executable}"
|
||||||
|
|
||||||
;Create URLs
|
;Create URLs
|
||||||
!insertmacro CreateInternetShortcut "$SMPROGRAMS\$STARTMENU_FOLDER\$(MSG_SUPPORT_URL_TITLE)" "$(MSG_SUPPORT_URL)" "$INSTDIR\ryzom.ico"
|
!insertmacro CreateInternetShortcut "$SMPROGRAMS\$STARTMENU_FOLDER\$(MSG_SUPPORT_URL_TITLE)" "$(MSG_SUPPORT_URL)" "$INSTDIR\ryzom.ico"
|
||||||
!insertmacro CreateInternetShortcut "$SMPROGRAMS\$STARTMENU_FOLDER\$(MSG_HOME_URL_TITLE)" "$(MSG_HOME_URL)" "$INSTDIR\ryzom.ico"
|
!insertmacro CreateInternetShortcut "$SMPROGRAMS\$STARTMENU_FOLDER\$(MSG_HOME_URL_TITLE)" "$(MSG_HOME_URL)" "$INSTDIR\ryzom.ico"
|
||||||
|
|
||||||
!insertmacro MUI_STARTMENU_WRITE_END
|
!insertmacro MUI_STARTMENU_WRITE_END
|
||||||
|
|
||||||
;Shortcut on desktop
|
;Shortcut on desktop
|
||||||
CreateShortCut "$DESKTOP\${Product}.lnk" "$INSTDIR\${Executable}"
|
CreateShortCut "$DESKTOP\${Product}.lnk" "$INSTDIR\${Executable}"
|
||||||
|
|
||||||
;Add/Remove Program entry
|
;Add/Remove Program entry
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayIcon" "$INSTDIR\${Executable},0"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayIcon" "$INSTDIR\${Executable},0"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayName" "${Product}"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayName" "${Product}"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayVersion" "${Version}"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "DisplayVersion" "${Version}"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "InstallLocation" "$INSTDIR"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "InstallLocation" "$INSTDIR"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "QuietUninstallString" '"$INSTDIR\Uninstall.exe" /S'
|
WriteRegStr HKLM "${UninstallRegistryKey}" "QuietUninstallString" '"$INSTDIR\Uninstall.exe" /S'
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "UninstallString" "$INSTDIR\Uninstall.exe"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "UninstallString" "$INSTDIR\Uninstall.exe"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "Publisher" "${Company}"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "Publisher" "${Company}"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "HelpLink" "$(MSG_SUPPORT_URL)"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "HelpLink" "$(MSG_SUPPORT_URL)"
|
||||||
WriteRegStr HKLM "${UninstallRegistryKey}" "URLInfoAbout" "$(MSG_HOME_URL)"
|
WriteRegStr HKLM "${UninstallRegistryKey}" "URLInfoAbout" "$(MSG_HOME_URL)"
|
||||||
|
|
||||||
;Store installation folder
|
;Store installation folder
|
||||||
WriteRegStr "${RegistryCat}" "${RegistryKey}" "${Product} Install Path" $INSTDIR
|
WriteRegStr "${RegistryCat}" "${RegistryKey}" "${Product} Install Path" $INSTDIR
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Uninstaller Section
|
;Uninstaller Section
|
||||||
Section "Uninstall"
|
Section "Uninstall"
|
||||||
;Install for All Users
|
;Install for All Users
|
||||||
SetShellVarContext all
|
SetShellVarContext all
|
||||||
|
|
||||||
;Game directories
|
;Game directories
|
||||||
RMDir /r "$INSTDIR\cfg"
|
RMDir /r "$INSTDIR\cfg"
|
||||||
RMDir /r "$INSTDIR\data"
|
RMDir /r "$INSTDIR\data"
|
||||||
RMDir /r "$INSTDIR\examples"
|
RMDir /r "$INSTDIR\examples"
|
||||||
|
|
||||||
;Temporary directories
|
;Temporary directories
|
||||||
RMDir /r "$INSTDIR\cache"
|
RMDir /r "$INSTDIR\cache"
|
||||||
RMDir /r "$INSTDIR\unpack"
|
RMDir /r "$INSTDIR\unpack"
|
||||||
|
|
||||||
;Client, configuration and misc files
|
;Client, configuration and misc files
|
||||||
Delete "$INSTDIR\client_default.cfg"
|
Delete "$INSTDIR\client_default.cfg"
|
||||||
Delete "$INSTDIR\${Executable}"
|
Delete "$INSTDIR\${Executable}"
|
||||||
Delete "$INSTDIR\configure.bat"
|
Delete "$INSTDIR\configure.bat"
|
||||||
Delete "$INSTDIR\d3dcompiler_43.dll"
|
Delete "$INSTDIR\d3dcompiler_43.dll"
|
||||||
Delete "$INSTDIR\d3dx9_43.dll"
|
Delete "$INSTDIR\d3dx9_43.dll"
|
||||||
Delete "$INSTDIR\fmod.dll"
|
Delete "$INSTDIR\fmod.dll"
|
||||||
Delete "$INSTDIR\forum.url"
|
Delete "$INSTDIR\forum.url"
|
||||||
Delete "$INSTDIR\launch.bat"
|
Delete "$INSTDIR\launch.bat"
|
||||||
Delete "$INSTDIR\msvcp100.dll"
|
Delete "$INSTDIR\msvcp100.dll"
|
||||||
Delete "$INSTDIR\msvcr100.dll"
|
Delete "$INSTDIR\msvcr100.dll"
|
||||||
Delete "$INSTDIR\nel_drv_direct3d_win_r.dll"
|
Delete "$INSTDIR\nel_drv_direct3d_win_r.dll"
|
||||||
Delete "$INSTDIR\nel_drv_fmod_win_r.dll"
|
Delete "$INSTDIR\nel_drv_fmod_win_r.dll"
|
||||||
Delete "$INSTDIR\nel_drv_opengl_win_r.dll"
|
Delete "$INSTDIR\nel_drv_opengl_win_r.dll"
|
||||||
Delete "$INSTDIR\ryzom.ico"
|
Delete "$INSTDIR\ryzom.ico"
|
||||||
Delete "$INSTDIR\ryzom.url"
|
Delete "$INSTDIR\ryzom.url"
|
||||||
Delete "$INSTDIR\Ryzom6.ico"
|
Delete "$INSTDIR\Ryzom6.ico"
|
||||||
|
|
||||||
;Delete uninstaller
|
;Delete uninstaller
|
||||||
Delete "$INSTDIR\Uninstall.exe"
|
Delete "$INSTDIR\Uninstall.exe"
|
||||||
|
|
||||||
MessageBox MB_YESNO "$(MSG_CONFIRM_DELETE_BACKUPS)" IDNO DontDeleteMiscFiles
|
MessageBox MB_YESNO "$(MSG_CONFIRM_DELETE_BACKUPS)" IDNO DontDeleteMiscFiles
|
||||||
|
|
||||||
;Delete directory
|
;Delete directory
|
||||||
RMDir /r "$INSTDIR"
|
RMDir /r "$INSTDIR"
|
||||||
|
|
||||||
DontDeleteMiscFiles:
|
DontDeleteMiscFiles:
|
||||||
|
|
||||||
;Delete directory if empty
|
;Delete directory if empty
|
||||||
RMDir "$INSTDIR"
|
RMDir "$INSTDIR"
|
||||||
|
|
||||||
;Delete all shortcuts
|
;Delete all shortcuts
|
||||||
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
|
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
|
||||||
|
|
||||||
;Delete Start Menu shortcuts
|
;Delete Start Menu shortcuts
|
||||||
Delete "$SMPROGRAMS\$MUI_TEMP\Uninstall.lnk"
|
Delete "$SMPROGRAMS\$MUI_TEMP\Uninstall.lnk"
|
||||||
Delete "$SMPROGRAMS\$MUI_TEMP\${Product}.lnk"
|
Delete "$SMPROGRAMS\$MUI_TEMP\${Product}.lnk"
|
||||||
Delete "$SMPROGRAMS\$MUI_TEMP\$(MSG_HOME_URL_TITLE).url"
|
Delete "$SMPROGRAMS\$MUI_TEMP\$(MSG_HOME_URL_TITLE).url"
|
||||||
Delete "$SMPROGRAMS\$MUI_TEMP\$(MSG_SUPPORT_URL_TITLE).url"
|
Delete "$SMPROGRAMS\$MUI_TEMP\$(MSG_SUPPORT_URL_TITLE).url"
|
||||||
RMDir /r /REBOOTOK "$SMPROGRAMS\$MUI_TEMP"
|
RMDir /r /REBOOTOK "$SMPROGRAMS\$MUI_TEMP"
|
||||||
|
|
||||||
;Delete desktop shortcut
|
;Delete desktop shortcut
|
||||||
Delete "$DESKTOP\${Product}.lnk"
|
Delete "$DESKTOP\${Product}.lnk"
|
||||||
|
|
||||||
;Delete registry
|
;Delete registry
|
||||||
DeleteRegKey /ifempty "${RegistryCat}" "${RegistryKey}"
|
DeleteRegKey /ifempty "${RegistryCat}" "${RegistryKey}"
|
||||||
DeleteRegKey "${RegistryCat}" "${UninstallRegistryKey}"
|
DeleteRegKey "${RegistryCat}" "${UninstallRegistryKey}"
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Installer Functions
|
;Installer Functions
|
||||||
|
|
||||||
Function .onInit
|
Function .onInit
|
||||||
!insertmacro MUI_LANGDLL_DISPLAY
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|
||||||
;--------------------------------
|
;--------------------------------
|
||||||
;Uninstaller Functions
|
;Uninstaller Functions
|
||||||
|
|
||||||
Function un.onInit
|
Function un.onInit
|
||||||
!insertmacro MUI_UNGETLANGUAGE
|
!insertmacro MUI_UNGETLANGUAGE
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,94 +1,94 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file 1_export.py
|
# \file 1_export.py
|
||||||
# \brief Run all export processes
|
# \brief Run all export processes
|
||||||
# \date 2009-02-18 09:22GMT
|
# \date 2009-02-18 09:22GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Run all export processes
|
# Run all export processes
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Export')
|
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Export')
|
||||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
if not args.includeproject == None and not args.excludeproject == None:
|
if not args.includeproject == None and not args.excludeproject == None:
|
||||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Run the export processes")
|
printLog(log, "--- Run the export processes")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
# For each project
|
# For each project
|
||||||
for projectName in ProjectsToProcess:
|
for projectName in ProjectsToProcess:
|
||||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||||
printLog(log, "PROJECT " + projectName)
|
printLog(log, "PROJECT " + projectName)
|
||||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||||
os.chdir("processes")
|
os.chdir("processes")
|
||||||
try:
|
try:
|
||||||
if not args.includeprocess == None:
|
if not args.includeprocess == None:
|
||||||
subprocess.call([ "python", "1_export.py", "--includeprocess" ] + args.includeprocess)
|
subprocess.call([ "python", "1_export.py", "--includeprocess" ] + args.includeprocess)
|
||||||
elif not args.excludeprocess == None:
|
elif not args.excludeprocess == None:
|
||||||
subprocess.call([ "python", "1_export.py", "--excludeprocess" ] + args.excludeprocess)
|
subprocess.call([ "python", "1_export.py", "--excludeprocess" ] + args.excludeprocess)
|
||||||
else:
|
else:
|
||||||
subprocess.call([ "python", "1_export.py" ])
|
subprocess.call([ "python", "1_export.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
os.chdir("..")
|
os.chdir("..")
|
||||||
try:
|
try:
|
||||||
projectLog = open("processes/log.log", "r")
|
projectLog = open("processes/log.log", "r")
|
||||||
projectLogData = projectLog.read()
|
projectLogData = projectLog.read()
|
||||||
projectLog.close()
|
projectLog.close()
|
||||||
log.write(projectLogData)
|
log.write(projectLogData)
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
else:
|
else:
|
||||||
printLog(log, "IGNORE PROJECT " + projectName)
|
printLog(log, "IGNORE PROJECT " + projectName)
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("1_export.log"):
|
if os.path.isfile("1_export.log"):
|
||||||
os.remove("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.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_export.log")
|
||||||
shutil.move("log.log", "1_export.log")
|
shutil.move("log.log", "1_export.log")
|
||||||
|
@ -1,94 +1,94 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file 2_build.py
|
# \file 2_build.py
|
||||||
# \brief Run all build processes
|
# \brief Run all build processes
|
||||||
# \date 2009-02-18 09:22GMT
|
# \date 2009-02-18 09:22GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Run all build processes
|
# Run all build processes
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Build')
|
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Build')
|
||||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
if not args.includeproject == None and not args.excludeproject == None:
|
if not args.includeproject == None and not args.excludeproject == None:
|
||||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Run the build processes")
|
printLog(log, "--- Run the build processes")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
# For each project
|
# For each project
|
||||||
for projectName in ProjectsToProcess:
|
for projectName in ProjectsToProcess:
|
||||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||||
printLog(log, "PROJECT " + projectName)
|
printLog(log, "PROJECT " + projectName)
|
||||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||||
os.chdir("processes")
|
os.chdir("processes")
|
||||||
try:
|
try:
|
||||||
if not args.includeprocess == None:
|
if not args.includeprocess == None:
|
||||||
subprocess.call([ "python", "2_build.py", "--includeprocess" ] + args.includeprocess)
|
subprocess.call([ "python", "2_build.py", "--includeprocess" ] + args.includeprocess)
|
||||||
elif not args.excludeprocess == None:
|
elif not args.excludeprocess == None:
|
||||||
subprocess.call([ "python", "2_build.py", "--excludeprocess" ] + args.excludeprocess)
|
subprocess.call([ "python", "2_build.py", "--excludeprocess" ] + args.excludeprocess)
|
||||||
else:
|
else:
|
||||||
subprocess.call([ "python", "2_build.py" ])
|
subprocess.call([ "python", "2_build.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
os.chdir("..")
|
os.chdir("..")
|
||||||
try:
|
try:
|
||||||
projectLog = open("processes/log.log", "r")
|
projectLog = open("processes/log.log", "r")
|
||||||
projectLogData = projectLog.read()
|
projectLogData = projectLog.read()
|
||||||
projectLog.close()
|
projectLog.close()
|
||||||
log.write(projectLogData)
|
log.write(projectLogData)
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
else:
|
else:
|
||||||
printLog(log, "IGNORE PROJECT " + projectName)
|
printLog(log, "IGNORE PROJECT " + projectName)
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("2_build.log"):
|
if os.path.isfile("2_build.log"):
|
||||||
os.remove("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.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_build.log")
|
||||||
shutil.move("log.log", "2_build.log")
|
shutil.move("log.log", "2_build.log")
|
||||||
|
@ -1,94 +1,94 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file 3_install.py
|
# \file 3_install.py
|
||||||
# \brief Run all install processes
|
# \brief Run all install processes
|
||||||
# \date 2009-02-18 16:19GMT
|
# \date 2009-02-18 16:19GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Run all install processes
|
# Run all install processes
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
import time, sys, os, shutil, subprocess, distutils.dir_util, argparse
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Install')
|
parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Install')
|
||||||
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
# parser.add_argument('--haltonerror', '-eh', action='store_true')
|
||||||
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
parser.add_argument('--includeproject', '-ipj', nargs='+')
|
||||||
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
parser.add_argument('--excludeproject', '-epj', nargs='+')
|
||||||
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
parser.add_argument('--includeprocess', '-ipc', nargs='+')
|
||||||
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
parser.add_argument('--excludeprocess', '-epc', nargs='+')
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
if not args.includeproject == None and not args.excludeproject == None:
|
if not args.includeproject == None and not args.excludeproject == None:
|
||||||
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
print "ERROR --includeproject cannot be combined with --excludeproject, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if not args.includeprocess == None and not args.excludeprocess == None:
|
if not args.includeprocess == None and not args.excludeprocess == None:
|
||||||
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
print "ERROR --includeprocess cannot be combined with --excludeprocess, exit."
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Run the install processes")
|
printLog(log, "--- Run the install processes")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
# For each project
|
# For each project
|
||||||
for projectName in ProjectsToProcess:
|
for projectName in ProjectsToProcess:
|
||||||
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
if ((args.includeproject == None or projectName in args.includeproject) and (args.excludeproject == None or not projectName in args.excludeproject)):
|
||||||
printLog(log, "PROJECT " + projectName)
|
printLog(log, "PROJECT " + projectName)
|
||||||
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
os.putenv("NELBUILDACTIVEPROJECT", os.path.abspath(WorkspaceDirectory + "/" + projectName))
|
||||||
os.chdir("processes")
|
os.chdir("processes")
|
||||||
try:
|
try:
|
||||||
if not args.includeprocess == None:
|
if not args.includeprocess == None:
|
||||||
subprocess.call([ "python", "3_install.py", "--includeprocess" ] + args.includeprocess)
|
subprocess.call([ "python", "3_install.py", "--includeprocess" ] + args.includeprocess)
|
||||||
elif not args.excludeprocess == None:
|
elif not args.excludeprocess == None:
|
||||||
subprocess.call([ "python", "3_install.py", "--excludeprocess" ] + args.excludeprocess)
|
subprocess.call([ "python", "3_install.py", "--excludeprocess" ] + args.excludeprocess)
|
||||||
else:
|
else:
|
||||||
subprocess.call([ "python", "3_install.py" ])
|
subprocess.call([ "python", "3_install.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
os.chdir("..")
|
os.chdir("..")
|
||||||
try:
|
try:
|
||||||
projectLog = open("processes/log.log", "r")
|
projectLog = open("processes/log.log", "r")
|
||||||
projectLogData = projectLog.read()
|
projectLogData = projectLog.read()
|
||||||
projectLog.close()
|
projectLog.close()
|
||||||
log.write(projectLogData)
|
log.write(projectLogData)
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + projectName + "> " + str(e))
|
printLog(log, "<" + projectName + "> " + str(e))
|
||||||
else:
|
else:
|
||||||
printLog(log, "IGNORE PROJECT " + projectName)
|
printLog(log, "IGNORE PROJECT " + projectName)
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("3_install.log"):
|
if os.path.isfile("3_install.log"):
|
||||||
os.remove("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.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_install.log")
|
||||||
shutil.move("log.log", "3_install.log")
|
shutil.move("log.log", "3_install.log")
|
||||||
|
@ -1,181 +1,181 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file 9_upload.py
|
# \file 9_upload.py
|
||||||
# \brief Upload data to servers
|
# \brief Upload data to servers
|
||||||
# \date 2009-02-18 16:19GMT
|
# \date 2009-02-18 16:19GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Game data build pipeline.
|
# Game data build pipeline.
|
||||||
# Upload data to servers
|
# Upload data to servers
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2011 Kaetemi
|
# Copyright (C) 2011 Kaetemi
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from upload import *
|
from upload import *
|
||||||
except ImportError:
|
except ImportError:
|
||||||
# Not documenting this. Because we can.
|
# Not documenting this. Because we can.
|
||||||
printLog(log, "ERROR Upload not configured, bye.")
|
printLog(log, "ERROR Upload not configured, bye.")
|
||||||
exit()
|
exit()
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Upload data to servers")
|
printLog(log, "--- Upload data to servers")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
# Find tools
|
# Find tools
|
||||||
# Not documenting this. Because we can.
|
# Not documenting this. Because we can.
|
||||||
Psftp = findFileMultiDir(log, ToolDirectories + WindowsExeDllCfgDirectories, UploadPsftpTool)
|
Psftp = findFileMultiDir(log, ToolDirectories + WindowsExeDllCfgDirectories, UploadPsftpTool)
|
||||||
printLog(log, "PSFTP " + Psftp)
|
printLog(log, "PSFTP " + Psftp)
|
||||||
|
|
||||||
def downloadVersionTag(server, user, sshkey, dir):
|
def downloadVersionTag(server, user, sshkey, dir):
|
||||||
if os.path.isfile("upload.tag"):
|
if os.path.isfile("upload.tag"):
|
||||||
os.remove("upload.tag")
|
os.remove("upload.tag")
|
||||||
if os.path.isfile("upload.batch"):
|
if os.path.isfile("upload.batch"):
|
||||||
os.remove("upload.batch")
|
os.remove("upload.batch")
|
||||||
ub = open("upload.batch", "w")
|
ub = open("upload.batch", "w")
|
||||||
ub.write("cd " + dir + "\n")
|
ub.write("cd " + dir + "\n")
|
||||||
ub.write("get upload.tag upload.tag\n")
|
ub.write("get upload.tag upload.tag\n")
|
||||||
ub.write("quit\n")
|
ub.write("quit\n")
|
||||||
ub.close()
|
ub.close()
|
||||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||||
os.remove("upload.batch")
|
os.remove("upload.batch")
|
||||||
if os.path.isfile("upload.tag"):
|
if os.path.isfile("upload.tag"):
|
||||||
ft = open("upload.tag")
|
ft = open("upload.tag")
|
||||||
result = float(ft.read()) # float, really
|
result = float(ft.read()) # float, really
|
||||||
ft.close()
|
ft.close()
|
||||||
os.remove("upload.tag")
|
os.remove("upload.tag")
|
||||||
printLog(log, "INFO Upload tag is " + str(result))
|
printLog(log, "INFO Upload tag is " + str(result))
|
||||||
return result
|
return result
|
||||||
else:
|
else:
|
||||||
printLog(log, "WARNING Upload tag not found, uploading everything")
|
printLog(log, "WARNING Upload tag not found, uploading everything")
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
def isDirectoryNeeded(ft, dir):
|
def isDirectoryNeeded(ft, dir):
|
||||||
files = os.listdir(dir)
|
files = os.listdir(dir)
|
||||||
for fileName in files:
|
for fileName in files:
|
||||||
if isLegalFileName(fileName):
|
if isLegalFileName(fileName):
|
||||||
fileFull = dir + "/" + fileName
|
fileFull = dir + "/" + fileName
|
||||||
if os.path.isfile(fileFull):
|
if os.path.isfile(fileFull):
|
||||||
nftf = os.stat(fileFull).st_mtime
|
nftf = os.stat(fileFull).st_mtime
|
||||||
if nftf > ft:
|
if nftf > ft:
|
||||||
return True
|
return True
|
||||||
elif os.path.isdir(fileFull):
|
elif os.path.isdir(fileFull):
|
||||||
if isDirectoryNeeded(ft, fileFull):
|
if isDirectoryNeeded(ft, fileFull):
|
||||||
return True
|
return True
|
||||||
elif not os.path.isdir(fileFull):
|
elif not os.path.isdir(fileFull):
|
||||||
printLog(log, "isDirectoryNeeded: file not dir or file?!" + fileFull)
|
printLog(log, "isDirectoryNeeded: file not dir or file?!" + fileFull)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def listDirectoryUpload(ft, ub, udb, dir):
|
def listDirectoryUpload(ft, ub, udb, dir):
|
||||||
nft = 0
|
nft = 0
|
||||||
files = os.listdir(dir)
|
files = os.listdir(dir)
|
||||||
for fileName in files:
|
for fileName in files:
|
||||||
if isLegalFileName(fileName):
|
if isLegalFileName(fileName):
|
||||||
fileFull = dir + "/" + fileName
|
fileFull = dir + "/" + fileName
|
||||||
if os.path.isfile(fileFull):
|
if os.path.isfile(fileFull):
|
||||||
nftf = os.stat(fileFull).st_mtime
|
nftf = os.stat(fileFull).st_mtime
|
||||||
if nftf > ft:
|
if nftf > ft:
|
||||||
ub.write("put " + fileFull + " " + fileName + "\n")
|
ub.write("put " + fileFull + " " + fileName + "\n")
|
||||||
if nftf > nft:
|
if nftf > nft:
|
||||||
nft = nftf
|
nft = nftf
|
||||||
elif os.path.isdir(fileFull):
|
elif os.path.isdir(fileFull):
|
||||||
if isDirectoryNeeded(ft, fileFull):
|
if isDirectoryNeeded(ft, fileFull):
|
||||||
udb.write("mkdir " + fileName + "\n")
|
udb.write("mkdir " + fileName + "\n")
|
||||||
ub.write("cd " + fileName + "\n")
|
ub.write("cd " + fileName + "\n")
|
||||||
udb.write("cd " + fileName + "\n")
|
udb.write("cd " + fileName + "\n")
|
||||||
nft2 = listDirectoryUpload(ft, ub, udb, fileFull)
|
nft2 = listDirectoryUpload(ft, ub, udb, fileFull)
|
||||||
if (nft2 > nft):
|
if (nft2 > nft):
|
||||||
nft = nft2
|
nft = nft2
|
||||||
ub.write("cd ..\n")
|
ub.write("cd ..\n")
|
||||||
udb.write("cd ..\n")
|
udb.write("cd ..\n")
|
||||||
elif not os.path.isdir(fileFull):
|
elif not os.path.isdir(fileFull):
|
||||||
printLog(log, "listDirectoryUpload: file not dir or file?!" + fileFull)
|
printLog(log, "listDirectoryUpload: file not dir or file?!" + fileFull)
|
||||||
return nft
|
return nft
|
||||||
|
|
||||||
def uploadSftp(server, user, sshkey, dir_to, dir_from, addcmd):
|
def uploadSftp(server, user, sshkey, dir_to, dir_from, addcmd):
|
||||||
ft = downloadVersionTag(server, user, sshkey, dir_to)
|
ft = downloadVersionTag(server, user, sshkey, dir_to)
|
||||||
if isDirectoryNeeded(ft, dir_from):
|
if isDirectoryNeeded(ft, dir_from):
|
||||||
if os.path.isfile("upload_dir.batch"):
|
if os.path.isfile("upload_dir.batch"):
|
||||||
os.remove("upload_dir.batch")
|
os.remove("upload_dir.batch")
|
||||||
if os.path.isfile("upload.batch"):
|
if os.path.isfile("upload.batch"):
|
||||||
os.remove("upload.batch")
|
os.remove("upload.batch")
|
||||||
udb = open("upload_dir.batch", "w")
|
udb = open("upload_dir.batch", "w")
|
||||||
udb.write("cd " + dir_to + "\n")
|
udb.write("cd " + dir_to + "\n")
|
||||||
ub = open("upload.batch", "w")
|
ub = open("upload.batch", "w")
|
||||||
ub.write("cd " + dir_to + "\n")
|
ub.write("cd " + dir_to + "\n")
|
||||||
for ac in addcmd:
|
for ac in addcmd:
|
||||||
ub.write(ac + "\n")
|
ub.write(ac + "\n")
|
||||||
ftn = listDirectoryUpload(ft, ub, udb, dir_from)
|
ftn = listDirectoryUpload(ft, ub, udb, dir_from)
|
||||||
if (ft > ftn):
|
if (ft > ftn):
|
||||||
ftn = ft
|
ftn = ft
|
||||||
nft = open("upload.tag", "w")
|
nft = open("upload.tag", "w")
|
||||||
nft.write(str(ftn))
|
nft.write(str(ftn))
|
||||||
nft.close()
|
nft.close()
|
||||||
ub.write("put upload.tag upload.tag\n")
|
ub.write("put upload.tag upload.tag\n")
|
||||||
ub.write("quit\n")
|
ub.write("quit\n")
|
||||||
ub.close()
|
ub.close()
|
||||||
udb.write("quit\n")
|
udb.write("quit\n")
|
||||||
udb.close()
|
udb.close()
|
||||||
subprocess.call([ Psftp, "-be", "-b", "upload_dir.batch", "-i", sshkey, user + "@" + server ])
|
subprocess.call([ Psftp, "-be", "-b", "upload_dir.batch", "-i", sshkey, user + "@" + server ])
|
||||||
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
subprocess.call([ Psftp, "-b", "upload.batch", "-i", sshkey, user + "@" + server ])
|
||||||
os.remove("upload_dir.batch")
|
os.remove("upload_dir.batch")
|
||||||
os.remove("upload.batch")
|
os.remove("upload.batch")
|
||||||
os.remove("upload.tag")
|
os.remove("upload.tag")
|
||||||
else:
|
else:
|
||||||
printLog(log, "SKIP " + dir_to)
|
printLog(log, "SKIP " + dir_to)
|
||||||
|
|
||||||
printLog(log, ">>> Upload patch <<<")
|
printLog(log, ">>> Upload patch <<<")
|
||||||
for target in UploadPatch:
|
for target in UploadPatch:
|
||||||
uploadSftp(target[0], target[1], target[2], target[3], ClientPatchDirectory + "/patch", [ ])
|
uploadSftp(target[0], target[1], target[2], target[3], ClientPatchDirectory + "/patch", [ ])
|
||||||
|
|
||||||
printLog(log, ">>> Upload data_shard <<<")
|
printLog(log, ">>> Upload data_shard <<<")
|
||||||
for target in UploadShard:
|
for target in UploadShard:
|
||||||
uploadSftp(target[0], target[1], target[2], target[3], DataShardDirectory, [ "rm *.packed_sheets", "rm primitive_cache/*.binprim" ])
|
uploadSftp(target[0], target[1], target[2], target[3], DataShardDirectory, [ "rm *.packed_sheets", "rm primitive_cache/*.binprim" ])
|
||||||
|
|
||||||
printLog(log, ">>> Upload data_common <<<")
|
printLog(log, ">>> Upload data_common <<<")
|
||||||
for target in UploadCommon:
|
for target in UploadCommon:
|
||||||
uploadSftp(target[0], target[1], target[2], target[3], DataCommonDirectory, [ ])
|
uploadSftp(target[0], target[1], target[2], target[3], DataCommonDirectory, [ ])
|
||||||
|
|
||||||
printLog(log, ">>> Upload data_leveldesign/leveldesign <<<")
|
printLog(log, ">>> Upload data_leveldesign/leveldesign <<<")
|
||||||
for target in UploadLeveldesign:
|
for target in UploadLeveldesign:
|
||||||
uploadSftp(target[0], target[1], target[2], target[3], LeveldesignDirectory, [ ])
|
uploadSftp(target[0], target[1], target[2], target[3], LeveldesignDirectory, [ ])
|
||||||
|
|
||||||
printLog(log, ">>> Upload data_leveldesign/primitives <<<")
|
printLog(log, ">>> Upload data_leveldesign/primitives <<<")
|
||||||
for target in UploadPrimitives:
|
for target in UploadPrimitives:
|
||||||
uploadSftp(target[0], target[1], target[2], target[3], PrimitivesDirectory, [ ])
|
uploadSftp(target[0], target[1], target[2], target[3], PrimitivesDirectory, [ ])
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("9_upload.log"):
|
if os.path.isfile("9_upload.log"):
|
||||||
os.remove("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.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_upload.log")
|
||||||
shutil.move("log.log", "9_upload.log")
|
shutil.move("log.log", "9_upload.log")
|
||||||
|
@ -1,74 +1,74 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file a1_worldedit_data.py
|
# \file a1_worldedit_data.py
|
||||||
# \brief Install worldedit data
|
# \brief Install worldedit data
|
||||||
# \date 2014-09-10 14:01GMT
|
# \date 2014-09-10 14:01GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Install worldedit data
|
# Install worldedit data
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2014 by authors
|
# Copyright (C) 2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Install worldedit data")
|
printLog(log, "--- Install worldedit data")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
for ecosystem in WorldEditEcosystems:
|
for ecosystem in WorldEditEcosystems:
|
||||||
ecosystemName = ecosystem[0]
|
ecosystemName = ecosystem[0]
|
||||||
srcZoneLigos = ExportBuildDirectory + "/ecosystems/" + ecosystemName + "/ligo_es/zoneligos/"
|
srcZoneLigos = ExportBuildDirectory + "/ecosystems/" + ecosystemName + "/ligo_es/zoneligos/"
|
||||||
dstZoneLigos = WorldEditInstallDirectory + "/" + ecosystemName + "/zoneligos/"
|
dstZoneLigos = WorldEditInstallDirectory + "/" + ecosystemName + "/zoneligos/"
|
||||||
mkPath(log, srcZoneLigos)
|
mkPath(log, srcZoneLigos)
|
||||||
mkPath(log, dstZoneLigos)
|
mkPath(log, dstZoneLigos)
|
||||||
copyFilesNoTreeIfNeeded(log, srcZoneLigos, dstZoneLigos)
|
copyFilesNoTreeIfNeeded(log, srcZoneLigos, dstZoneLigos)
|
||||||
srcZoneBitmaps = DatabaseDirectory + "/landscape/ligo/" + ecosystemName + "/zonebitmaps/"
|
srcZoneBitmaps = DatabaseDirectory + "/landscape/ligo/" + ecosystemName + "/zonebitmaps/"
|
||||||
dstZoneBitmaps = WorldEditInstallDirectory + "/" + ecosystemName + "/zonebitmaps/"
|
dstZoneBitmaps = WorldEditInstallDirectory + "/" + ecosystemName + "/zonebitmaps/"
|
||||||
mkPath(log, srcZoneBitmaps)
|
mkPath(log, srcZoneBitmaps)
|
||||||
mkPath(log, dstZoneBitmaps)
|
mkPath(log, dstZoneBitmaps)
|
||||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".tga")
|
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".tga")
|
||||||
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".png")
|
copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".png")
|
||||||
dstCollisionMap = WorldEditInstallDirectory + "/" + ecosystemName + "/collisionmap/"
|
dstCollisionMap = WorldEditInstallDirectory + "/" + ecosystemName + "/collisionmap/"
|
||||||
mkPath(log, dstCollisionMap)
|
mkPath(log, dstCollisionMap)
|
||||||
for continentName in ecosystem[1]:
|
for continentName in ecosystem[1]:
|
||||||
srcCollisionMap = ExportBuildDirectory + "/continents/" + continentName + "/ai_wmap/"
|
srcCollisionMap = ExportBuildDirectory + "/continents/" + continentName + "/ai_wmap/"
|
||||||
mkPath(log, srcCollisionMap)
|
mkPath(log, srcCollisionMap)
|
||||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".tga")
|
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".tga")
|
||||||
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".png")
|
copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".png")
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("a1_worldedit_data.log"):
|
if os.path.isfile("a1_worldedit_data.log"):
|
||||||
os.remove("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.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")
|
shutil.move("log.log", "a1_worldedit_data.log")
|
||||||
|
@ -1,17 +1,15 @@
|
|||||||
title Ryzom Core: 0_setup.py --noconf
|
title Ryzom Core: 0_setup.py --noconf
|
||||||
python 0_setup.py --noconf
|
0_setup.py --noconf
|
||||||
title Ryzom Core: 1_export.py
|
title Ryzom Core: 1_export.py
|
||||||
python 1_export.py
|
1_export.py
|
||||||
title Ryzom Core: 2_build.py
|
title Ryzom Core: 2_build.py
|
||||||
python 2_build.py
|
2_build.py
|
||||||
title Ryzom Core: 3_install.py
|
title Ryzom Core: 3_install.py
|
||||||
python 3_install.py
|
3_install.py
|
||||||
title Ryzom Core: a1_worldedit_data.py
|
title Ryzom Core: a1_worldedit_data.py
|
||||||
python a1_worldedit_data.py
|
a1_worldedit_data.py
|
||||||
title Ryzom Core: b1_client_dev.py
|
title Ryzom Core: b1_client_dev.py
|
||||||
python b1_client_dev.py
|
b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py
|
title Ryzom Core: b2_shard_data.py
|
||||||
python b2_shard_data.py
|
b2_shard_data.py
|
||||||
title Ryzom Core: b3_shard_dev.py
|
title Ryzom Core: Ready
|
||||||
python b3_shard_dev.py
|
|
||||||
title Ryzom Core: Ready
|
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
title Ryzom Core: 3_install.py
|
title Ryzom Core: 3_install.py
|
||||||
python 3_install.py
|
3_install.py
|
||||||
title Ryzom Core: a1_worldedit_data.py
|
title Ryzom Core: a1_worldedit_data.py
|
||||||
python a1_worldedit_data.py
|
a1_worldedit_data.py
|
||||||
title Ryzom Core: b1_client_dev.py
|
title Ryzom Core: b1_client_dev.py
|
||||||
python b1_client_dev.py
|
b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py
|
title Ryzom Core: b2_shard_data.py
|
||||||
python b2_shard_data.py
|
b2_shard_data.py
|
||||||
title Ryzom Core: b3_shard_dev.py
|
title Ryzom Core: Ready
|
||||||
python b3_shard_dev.py
|
|
||||||
title Ryzom Core: Ready
|
|
||||||
|
@ -1,93 +1,93 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file b2_shard_data.py
|
# \file b2_shard_data.py
|
||||||
# \brief Install shard data
|
# \brief Install shard data
|
||||||
# \date 2009-02-18 16:19GMT
|
# \date 2009-02-18 16:19GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Install shard data
|
# Install shard data
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Install shard data")
|
printLog(log, "--- Install shard data")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
for dir in InstallShardDataDirectories:
|
for dir in InstallShardDataDirectories:
|
||||||
printLog(log, "SHARD PACKAGE " + dir)
|
printLog(log, "SHARD PACKAGE " + dir)
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dir)
|
mkPath(log, ShardInstallDirectory + "/" + dir)
|
||||||
printLog(log, "FROM " + dir)
|
printLog(log, "FROM " + dir)
|
||||||
mkPath(log, InstallDirectory + "/" + dir)
|
mkPath(log, InstallDirectory + "/" + dir)
|
||||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + dir, ShardInstallDirectory + "/" + dir)
|
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + dir, ShardInstallDirectory + "/" + dir)
|
||||||
for package in InstallShardDataFiles:
|
for package in InstallShardDataFiles:
|
||||||
dstDir = package[0]
|
dstDir = package[0]
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, package[1])
|
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, package[1])
|
||||||
for multiDir in InstallShardDataMultiDirectories:
|
for multiDir in InstallShardDataMultiDirectories:
|
||||||
dstDir = multiDir[0]
|
dstDir = multiDir[0]
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||||
for srcDir in multiDir[1]:
|
for srcDir in multiDir[1]:
|
||||||
printLog(log, "FROM " + srcDir)
|
printLog(log, "FROM " + srcDir)
|
||||||
mkPath(log, InstallDirectory + "/" + srcDir)
|
mkPath(log, InstallDirectory + "/" + srcDir)
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||||
for multiDir in InstallShardDataPrimitivesDirectories:
|
for multiDir in InstallShardDataPrimitivesDirectories:
|
||||||
dstDir = multiDir[0]
|
dstDir = multiDir[0]
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||||
for srcDir in multiDir[1]:
|
for srcDir in multiDir[1]:
|
||||||
printLog(log, "FROM PRIMITIVES " + srcDir)
|
printLog(log, "FROM PRIMITIVES " + srcDir)
|
||||||
mkPath(log, PrimitivesDirectory + "/" + srcDir)
|
mkPath(log, PrimitivesDirectory + "/" + srcDir)
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||||
copyFilesNoTreeIfNeeded(log, PrimitivesDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
copyFilesNoTreeIfNeeded(log, PrimitivesDirectory + "/" + srcDir, ShardInstallDirectory + "/" + dstDir + "/" + srcDir)
|
||||||
for execDir in InstallShardDataExecutables:
|
for execDir in InstallShardDataExecutables:
|
||||||
dstDir = execDir[0]
|
dstDir = execDir[0]
|
||||||
mkPath(log, LinuxServiceExecutableDirectory)
|
mkPath(log, LinuxServiceExecutableDirectory)
|
||||||
mkPath(log, PatchmanCfgDefaultDirectory)
|
mkPath(log, PatchmanCfgDefaultDirectory)
|
||||||
mkPath(log, InstallDirectory)
|
mkPath(log, InstallDirectory)
|
||||||
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
mkPath(log, ShardInstallDirectory + "/" + dstDir)
|
||||||
printLog(log, "SHARD PACKAGE " + dstDir)
|
printLog(log, "SHARD PACKAGE " + dstDir)
|
||||||
copyFileIfNeeded(log, LinuxServiceExecutableDirectory + "/" + execDir[1][1], ShardInstallDirectory + "/" + dstDir + "/" + execDir[1][0])
|
copyFileIfNeeded(log, LinuxServiceExecutableDirectory + "/" + execDir[1][1], ShardInstallDirectory + "/" + dstDir + "/" + execDir[1][0])
|
||||||
copyFileListNoTreeIfNeeded(log, PatchmanCfgDefaultDirectory, ShardInstallDirectory + "/" + dstDir, execDir[2])
|
copyFileListNoTreeIfNeeded(log, PatchmanCfgDefaultDirectory, ShardInstallDirectory + "/" + dstDir, execDir[2])
|
||||||
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, execDir[3])
|
copyFileListNoTreeIfNeeded(log, InstallDirectory, ShardInstallDirectory + "/" + dstDir, execDir[3])
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("b2_shard_data.log"):
|
if os.path.isfile("b2_shard_data.log"):
|
||||||
os.remove("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.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")
|
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)
|
title Ryzom Core: 1_export.py (CHARACTERS)
|
||||||
python 1_export.py -ipj common/characters common/characters_maps_hr
|
1_export.py -ipj common/characters common/characters_maps_hr
|
||||||
title Ryzom Core: 2_build.py (CHARACTERS)
|
title Ryzom Core: 2_build.py (CHARACTERS)
|
||||||
python 2_build.py -ipj common/characters common/characters_maps_hr
|
2_build.py -ipj common/characters common/characters_maps_hr
|
||||||
title Ryzom Core: 3_install.py (CHARACTERS)
|
title Ryzom Core: 3_install.py (CHARACTERS)
|
||||||
python 3_install.py -ipj common/characters common/characters_maps_hr
|
3_install.py -ipj common/characters common/characters_maps_hr
|
||||||
title Ryzom Core: b1_client_dev.py (CHARACTERS)
|
title Ryzom Core: b1_client_dev.py (CHARACTERS)
|
||||||
python b1_client_dev.py
|
b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
||||||
python b2_shard_data.py
|
b2_shard_data.py
|
||||||
title Ryzom Core: Ready (CHARACTERS)
|
title Ryzom Core: Ready (CHARACTERS)
|
||||||
|
@ -1,86 +1,86 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file d2_client_install.py
|
# \file d2_client_install.py
|
||||||
# \brief Install to client install
|
# \brief Install to client install
|
||||||
# \date 2009-02-18 16:19GMT
|
# \date 2009-02-18 16:19GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Install to client install
|
# Install to client install
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||||
sys.path.append("configuration")
|
sys.path.append("configuration")
|
||||||
|
|
||||||
if os.path.isfile("log.log"):
|
if os.path.isfile("log.log"):
|
||||||
os.remove("log.log")
|
os.remove("log.log")
|
||||||
log = open("log.log", "w")
|
log = open("log.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite_local import *
|
from buildsite_local import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
sys.path.append(WorkspaceDirectory)
|
sys.path.append(WorkspaceDirectory)
|
||||||
from projects import *
|
from projects import *
|
||||||
|
|
||||||
# Log error
|
# Log error
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Install to client install")
|
printLog(log, "--- Install to client install")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
for category in InstallClientData:
|
for category in InstallClientData:
|
||||||
printLog(log, "CATEGORY " + category["Name"])
|
printLog(log, "CATEGORY " + category["Name"])
|
||||||
packExt = ".bnp"
|
packExt = ".bnp"
|
||||||
if (category["StreamedPackages"]):
|
if (category["StreamedPackages"]):
|
||||||
packExt = ".snp"
|
packExt = ".snp"
|
||||||
if (category["UnpackTo"] != None):
|
if (category["UnpackTo"] != None):
|
||||||
targetPath = ClientInstallDirectory
|
targetPath = ClientInstallDirectory
|
||||||
if (category["UnpackTo"] != ""):
|
if (category["UnpackTo"] != ""):
|
||||||
targetPath += "/" + category["UnpackTo"]
|
targetPath += "/" + category["UnpackTo"]
|
||||||
mkPath(log, targetPath)
|
mkPath(log, targetPath)
|
||||||
for package in category["Packages"]:
|
for package in category["Packages"]:
|
||||||
printLog(log, "PACKAGE " + package[0])
|
printLog(log, "PACKAGE " + package[0])
|
||||||
mkPath(log, InstallDirectory + "/" + package[0])
|
mkPath(log, InstallDirectory + "/" + package[0])
|
||||||
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + package[0], targetPath)
|
copyFilesNoTreeIfNeeded(log, InstallDirectory + "/" + package[0], targetPath)
|
||||||
else:
|
else:
|
||||||
sourcePath = ClientPatchDirectory + "/bnp"
|
sourcePath = ClientPatchDirectory + "/bnp"
|
||||||
targetPath = ClientInstallDirectory + "/data"
|
targetPath = ClientInstallDirectory + "/data"
|
||||||
mkPath(log, targetPath)
|
mkPath(log, targetPath)
|
||||||
for package in category["Packages"]:
|
for package in category["Packages"]:
|
||||||
printLog(log, "PACKAGE " + package[0])
|
printLog(log, "PACKAGE " + package[0])
|
||||||
sourceBnp = sourcePath + "/" + package[0] + packExt
|
sourceBnp = sourcePath + "/" + package[0] + packExt
|
||||||
targetBnp = targetPath + "/" + package[0] + packExt
|
targetBnp = targetPath + "/" + package[0] + packExt
|
||||||
if (len(package[1]) > 0):
|
if (len(package[1]) > 0):
|
||||||
sourceBnp = sourcePath + "/" + package[1][0]
|
sourceBnp = sourcePath + "/" + package[1][0]
|
||||||
targetBnp = targetPath + "/" + package[1][0]
|
targetBnp = targetPath + "/" + package[1][0]
|
||||||
printLog(log, "TARGET " + package[1][0])
|
printLog(log, "TARGET " + package[1][0])
|
||||||
copyFileIfNeeded(log, sourceBnp, targetBnp)
|
copyFileIfNeeded(log, sourceBnp, targetBnp)
|
||||||
for ref in category["Refs"]:
|
for ref in category["Refs"]:
|
||||||
printLog(log, "REFERENCE " + ref)
|
printLog(log, "REFERENCE " + ref)
|
||||||
sourceRef = sourcePath + "/" + ref + "_.ref"
|
sourceRef = sourcePath + "/" + ref + "_.ref"
|
||||||
targetRef = targetPath + "/" + ref + "_.ref"
|
targetRef = targetPath + "/" + ref + "_.ref"
|
||||||
copyFileIfNeeded(log, sourceRef, targetRef)
|
copyFileIfNeeded(log, sourceRef, targetRef)
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
if os.path.isfile("d2_client_install.log"):
|
if os.path.isfile("d2_client_install.log"):
|
||||||
os.remove("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.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")
|
shutil.move("log.log", "d2_client_install.log")
|
||||||
|
@ -1,15 +1,13 @@
|
|||||||
title Ryzom Core: 0_setup.py (EXECUTABLES)
|
title Ryzom Core: 0_setup.py (EXECUTABLES)
|
||||||
python 0_setup.py --noconf -ipj common/gamedev common/exedll common/cfg common/data_common
|
0_setup.py --noconf -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||||
title Ryzom Core: 1_export.py (EXECUTABLES)
|
title Ryzom Core: 1_export.py (EXECUTABLES)
|
||||||
python 1_export.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
1_export.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||||
title Ryzom Core: 2_build.py (EXECUTABLES)
|
title Ryzom Core: 2_build.py (EXECUTABLES)
|
||||||
python 2_build.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
2_build.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||||
title Ryzom Core: 3_install.py (EXECUTABLES)
|
title Ryzom Core: 3_install.py (EXECUTABLES)
|
||||||
python 3_install.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
3_install.py -ipj common/gamedev common/exedll common/cfg common/data_common
|
||||||
title Ryzom Core: b1_client_dev.py
|
title Ryzom Core: b1_client_dev.py
|
||||||
python b1_client_dev.py
|
b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py
|
title Ryzom Core: b2_shard_data.py
|
||||||
python b2_shard_data.py
|
b2_shard_data.py
|
||||||
title Ryzom Core: b3_shard_dev.py
|
title Ryzom Core: Ready
|
||||||
python b3_shard_dev.py
|
|
||||||
title Ryzom Core: Ready
|
|
||||||
|
@ -1,32 +1,32 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file export_build_install.py
|
# \file export_build_install.py
|
||||||
# \brief Run all processes
|
# \brief Run all processes
|
||||||
# \date 2009-02-18 15:28GMT
|
# \date 2009-02-18 15:28GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Run all processes
|
# Run all processes
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http:#dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http:#dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http:#www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import shutil, subprocess
|
import shutil, subprocess
|
||||||
|
|
||||||
subprocess.call([ "python", "1_export.py" ])
|
subprocess.call([ "python", "1_export.py" ])
|
||||||
subprocess.call([ "python", "2_build.py" ])
|
subprocess.call([ "python", "2_build.py" ])
|
||||||
subprocess.call([ "python", "3_install.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
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# #################################################################
|
# #################################################################
|
||||||
# ## %PreGenWarning%
|
# ## %PreGenWarning%
|
||||||
# #################################################################
|
# #################################################################
|
||||||
#
|
#
|
||||||
# \file directories.py
|
# \file directories.py
|
||||||
# \brief Directories configuration
|
# \brief Directories configuration
|
||||||
# \date %PreGenDateTimeStamp%
|
# \date %PreGenDateTimeStamp%
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# \date 2001-2005
|
# \date 2001-2005
|
||||||
# \author Nevrax
|
# \author Nevrax
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Directories configuration for '%PreGenEcosystemName%' ecosystem.
|
# Directories configuration for '%PreGenEcosystemName%' ecosystem.
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||||
|
|
||||||
EcosystemName = "%PreGenEcosystemName%"
|
EcosystemName = "%PreGenEcosystemName%"
|
||||||
EcosystemPath = "ecosystems/" + EcosystemName
|
EcosystemPath = "ecosystems/" + EcosystemName
|
||||||
CommonName = EcosystemName
|
CommonName = EcosystemName
|
||||||
CommonPath = EcosystemPath
|
CommonPath = EcosystemPath
|
||||||
|
|
||||||
DatabaseRootName = "%PreGenDatabaseRootName%"
|
DatabaseRootName = "%PreGenDatabaseRootName%"
|
||||||
DatabaseRootPath = "stuff/" + DatabaseRootName
|
DatabaseRootPath = "stuff/" + DatabaseRootName
|
||||||
|
|
||||||
|
|
||||||
# *** SOURCE DIRECTORIES IN THE DATABASE ***
|
# *** SOURCE DIRECTORIES IN THE DATABASE ***
|
||||||
|
|
||||||
# Shape directories
|
# Shape directories
|
||||||
ShapeSourceDirectories = [ ]
|
ShapeSourceDirectories = [ ]
|
||||||
ShapeSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
ShapeSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||||
ShapeSourceDirectories += [ "landscape/ligo/" + EcosystemName + "/max" ]
|
ShapeSourceDirectories += [ "landscape/ligo/" + EcosystemName + "/max" ]
|
||||||
|
|
||||||
# Maps directories
|
# Maps directories
|
||||||
MapSourceDirectories = [ ]
|
MapSourceDirectories = [ ]
|
||||||
MapSourceDirectories += [ DatabaseRootPath + "/decors/_textures" ]
|
MapSourceDirectories += [ DatabaseRootPath + "/decors/_textures" ]
|
||||||
%PreGenMapSubdirectories%MapSourceDirectories += [ "landscape/microveget/" + EcosystemName + "" ]
|
%PreGenMapSubdirectories%MapSourceDirectories += [ "landscape/microveget/" + EcosystemName + "" ]
|
||||||
MapSourceDirectories += [ "landscape/water/meshes/" + EcosystemName + "" ]
|
MapSourceDirectories += [ "landscape/water/meshes/" + EcosystemName + "" ]
|
||||||
|
|
||||||
MapUncompressedSourceDirectories = [ ]
|
MapUncompressedSourceDirectories = [ ]
|
||||||
|
|
||||||
# Tiles directories
|
# Tiles directories
|
||||||
TilesSourceDirectories = [ ]
|
TilesSourceDirectories = [ ]
|
||||||
%PreGenTileSourceDirectories%
|
%PreGenTileSourceDirectories%
|
||||||
# Tiles root directory
|
# Tiles root directory
|
||||||
TileRootSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
TileRootSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||||
|
|
||||||
# Displace directory
|
# Displace directory
|
||||||
DisplaceSourceDirectory = "landscape/_texture_tiles/" + EcosystemName + "/displace"
|
DisplaceSourceDirectory = "landscape/_texture_tiles/" + EcosystemName + "/displace"
|
||||||
|
|
||||||
# Do not use, needs to be removed and fixed in processes
|
# Do not use, needs to be removed and fixed in processes
|
||||||
DisplaceSourceDirectories = [ ]
|
DisplaceSourceDirectories = [ ]
|
||||||
DisplaceSourceDirectories += [ DisplaceSourceDirectory ]
|
DisplaceSourceDirectories += [ DisplaceSourceDirectory ]
|
||||||
|
|
||||||
# Bank directory
|
# Bank directory
|
||||||
BankSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
BankSourceDirectory = "landscape/_texture_tiles/" + EcosystemName
|
||||||
|
|
||||||
# Vegetable set directories
|
# Vegetable set directories
|
||||||
VegetSetSourceDirectories = [ ]
|
VegetSetSourceDirectories = [ ]
|
||||||
VegetSetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
VegetSetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||||
|
|
||||||
# Veget directories
|
# Veget directories
|
||||||
VegetSourceDirectories = [ ]
|
VegetSourceDirectories = [ ]
|
||||||
VegetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
VegetSourceDirectories += [ "landscape/microveget/" + EcosystemName ]
|
||||||
|
|
||||||
# Ligo directories
|
# Ligo directories
|
||||||
LigoBaseSourceDirectory = "landscape/ligo/" + EcosystemName
|
LigoBaseSourceDirectory = "landscape/ligo/" + EcosystemName
|
||||||
LigoMaxSourceDirectory = LigoBaseSourceDirectory + "/max"
|
LigoMaxSourceDirectory = LigoBaseSourceDirectory + "/max"
|
||||||
|
|
||||||
# Zone directories
|
# Zone directories
|
||||||
ZoneSourceDirectory = [ "landscape/zones/" + EcosystemName ] # For old snowballs style landscape when not using ligo
|
ZoneSourceDirectory = [ "landscape/zones/" + EcosystemName ] # For old snowballs style landscape when not using ligo
|
||||||
|
|
||||||
# Ig landscape directories
|
# Ig landscape directories
|
||||||
IgLandSourceDirectory = "_invalid"
|
IgLandSourceDirectory = "_invalid"
|
||||||
|
|
||||||
# Ig other directories
|
# Ig other directories
|
||||||
IgOtherSourceDirectory = "_invalid"
|
IgOtherSourceDirectory = "_invalid"
|
||||||
|
|
||||||
# PACS primitives directories
|
# PACS primitives directories
|
||||||
PacsPrimSourceDirectories = [ ]
|
PacsPrimSourceDirectories = [ ]
|
||||||
PacsPrimSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
PacsPrimSourceDirectories += [ DatabaseRootPath + "/decors/vegetations" ]
|
||||||
|
|
||||||
|
|
||||||
# *** LOOKUP DIRECTORIES WITHIN THE BUILD PIPELINE *** (TODO: use these instead of search_pathes in properties(_base).cfg)
|
# *** LOOKUP DIRECTORIES WITHIN THE BUILD PIPELINE *** (TODO: use these instead of search_pathes in properties(_base).cfg)
|
||||||
|
|
||||||
# Ig lookup directories used by rbank
|
# Ig lookup directories used by rbank
|
||||||
IgLookupDirectories = [ ]
|
IgLookupDirectories = [ ]
|
||||||
|
|
||||||
# Shape lookup directories used by rbank
|
# Shape lookup directories used by rbank
|
||||||
ShapeLookupDirectories = [ ]
|
ShapeLookupDirectories = [ ]
|
||||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_clodtex_build" ]
|
ShapeLookupDirectories += [ EcosystemPath + "/shape_clodtex_build" ]
|
||||||
ShapeLookupDirectories += [ EcosystemPath + "/shape_with_coarse_mesh" ]
|
ShapeLookupDirectories += [ EcosystemPath + "/shape_with_coarse_mesh" ]
|
||||||
|
|
||||||
# Map lookup directories not yet used
|
# Map lookup directories not yet used
|
||||||
MapLookupDirectories = [ ]
|
MapLookupDirectories = [ ]
|
||||||
MapLookupDirectories += [ EcosystemPath + "/map_export" ]
|
MapLookupDirectories += [ EcosystemPath + "/map_export" ]
|
||||||
MapLookupDirectories += [ EcosystemPath + "/map_uncompressed" ]
|
MapLookupDirectories += [ EcosystemPath + "/map_uncompressed" ]
|
||||||
|
|
||||||
|
|
||||||
# *** EXPORT DIRECTORIES FOR THE BUILD PIPELINE ***
|
# *** EXPORT DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||||
|
|
||||||
# Map directories
|
# Map directories
|
||||||
MapExportDirectory = CommonPath + "/map_export"
|
MapExportDirectory = CommonPath + "/map_export"
|
||||||
MapUncompressedExportDirectory = CommonPath + "/map_uncompressed"
|
MapUncompressedExportDirectory = CommonPath + "/map_uncompressed"
|
||||||
|
|
||||||
# Shape directories
|
# Shape directories
|
||||||
ShapeTagExportDirectory = CommonPath + "/shape_tag"
|
ShapeTagExportDirectory = CommonPath + "/shape_tag"
|
||||||
ShapeNotOptimizedExportDirectory = CommonPath + "/shape_not_optimized"
|
ShapeNotOptimizedExportDirectory = CommonPath + "/shape_not_optimized"
|
||||||
ShapeWithCoarseMeshExportDirectory = CommonPath + "/shape_with_coarse_mesh"
|
ShapeWithCoarseMeshExportDirectory = CommonPath + "/shape_with_coarse_mesh"
|
||||||
ShapeLightmapNotOptimizedExportDirectory = CommonPath + "/shape_lightmap_not_optimized"
|
ShapeLightmapNotOptimizedExportDirectory = CommonPath + "/shape_lightmap_not_optimized"
|
||||||
ShapeAnimExportDirectory = CommonPath + "/shape_anim"
|
ShapeAnimExportDirectory = CommonPath + "/shape_anim"
|
||||||
|
|
||||||
# Smallbank directories
|
# Smallbank directories
|
||||||
SmallbankExportDirectory = CommonPath + "/smallbank"
|
SmallbankExportDirectory = CommonPath + "/smallbank"
|
||||||
|
|
||||||
# Tiles directories
|
# Tiles directories
|
||||||
TilesExportDirectory = CommonPath + "/tiles"
|
TilesExportDirectory = CommonPath + "/tiles"
|
||||||
|
|
||||||
# Tiles directories
|
# Tiles directories
|
||||||
DisplaceExportDirectory = CommonPath + "/diplace"
|
DisplaceExportDirectory = CommonPath + "/diplace"
|
||||||
|
|
||||||
# Veget directories
|
# Veget directories
|
||||||
VegetExportDirectory = CommonPath + "/veget"
|
VegetExportDirectory = CommonPath + "/veget"
|
||||||
VegetTagExportDirectory = CommonPath + "/veget_tag"
|
VegetTagExportDirectory = CommonPath + "/veget_tag"
|
||||||
|
|
||||||
# Veget Set directories
|
# Veget Set directories
|
||||||
VegetSetExportDirectory = CommonPath + "/veget_set"
|
VegetSetExportDirectory = CommonPath + "/veget_set"
|
||||||
|
|
||||||
# Ligo directories
|
# Ligo directories
|
||||||
LigoEcosystemExportDirectory = CommonPath + "/ligo_es"
|
LigoEcosystemExportDirectory = CommonPath + "/ligo_es"
|
||||||
LigoEcosystemIgExportDirectory = LigoEcosystemExportDirectory + "/igs"
|
LigoEcosystemIgExportDirectory = LigoEcosystemExportDirectory + "/igs"
|
||||||
LigoEcosystemZoneExportDirectory = LigoEcosystemExportDirectory + "/zones"
|
LigoEcosystemZoneExportDirectory = LigoEcosystemExportDirectory + "/zones"
|
||||||
LigoEcosystemZoneLigoExportDirectory = LigoEcosystemExportDirectory + "/zoneligos"
|
LigoEcosystemZoneLigoExportDirectory = LigoEcosystemExportDirectory + "/zoneligos"
|
||||||
LigoEcosystemCmbExportDirectory = LigoEcosystemExportDirectory + "/cmb"
|
LigoEcosystemCmbExportDirectory = LigoEcosystemExportDirectory + "/cmb"
|
||||||
LigoEcosystemTagExportDirectory = CommonPath + "/ligo_es_tag"
|
LigoEcosystemTagExportDirectory = CommonPath + "/ligo_es_tag"
|
||||||
|
|
||||||
# Zone directories
|
# Zone directories
|
||||||
ZoneExportDirectory = CommonPath + "/zone"
|
ZoneExportDirectory = CommonPath + "/zone"
|
||||||
|
|
||||||
# PACS primitives directories
|
# PACS primitives directories
|
||||||
PacsPrimExportDirectory = CommonPath + "/pacs_prim"
|
PacsPrimExportDirectory = CommonPath + "/pacs_prim"
|
||||||
PacsPrimTagExportDirectory = CommonPath + "/pacs_prim_tag"
|
PacsPrimTagExportDirectory = CommonPath + "/pacs_prim_tag"
|
||||||
|
|
||||||
|
|
||||||
# *** BUILD DIRECTORIES FOR THE BUILD PIPELINE ***
|
# *** BUILD DIRECTORIES FOR THE BUILD PIPELINE ***
|
||||||
|
|
||||||
# Map directories
|
# Map directories
|
||||||
MapBuildDirectory = CommonPath + "/map"
|
MapBuildDirectory = CommonPath + "/map"
|
||||||
MapPanoplyBuildDirectory = CommonPath + "/map_panoply"
|
MapPanoplyBuildDirectory = CommonPath + "/map_panoply"
|
||||||
MapPanoplyHlsInfoBuildDirectory = CommonPath + "/map_panoply_hls_info"
|
MapPanoplyHlsInfoBuildDirectory = CommonPath + "/map_panoply_hls_info"
|
||||||
MapPanoplyHlsBankBuildDirectory = CommonPath + "/map_panoply_hls_bank"
|
MapPanoplyHlsBankBuildDirectory = CommonPath + "/map_panoply_hls_bank"
|
||||||
MapPanoplyCacheBuildDirectory = CommonPath + "/map_panoply_cache"
|
MapPanoplyCacheBuildDirectory = CommonPath + "/map_panoply_cache"
|
||||||
MapTagBuildDirectory = CommonPath + "/map_tag"
|
MapTagBuildDirectory = CommonPath + "/map_tag"
|
||||||
|
|
||||||
# Shape directories
|
# Shape directories
|
||||||
ShapeClodtexBuildDirectory = CommonPath + "/shape_clodtex_build"
|
ShapeClodtexBuildDirectory = CommonPath + "/shape_clodtex_build"
|
||||||
ShapeWithCoarseMeshBuildDirectory = CommonPath + "/shape_with_coarse_mesh_builded"
|
ShapeWithCoarseMeshBuildDirectory = CommonPath + "/shape_with_coarse_mesh_builded"
|
||||||
ShapeLightmapBuildDirectory = CommonPath + "/shape_lightmap"
|
ShapeLightmapBuildDirectory = CommonPath + "/shape_lightmap"
|
||||||
ShapeLightmap16BitsBuildDirectory = CommonPath + "/shape_lightmap_16_bits"
|
ShapeLightmap16BitsBuildDirectory = CommonPath + "/shape_lightmap_16_bits"
|
||||||
|
|
||||||
# Farbank directories
|
# Farbank directories
|
||||||
FarbankBuildDirectory = CommonPath + "/farbank"
|
FarbankBuildDirectory = CommonPath + "/farbank"
|
||||||
|
|
||||||
# Ig directories ************** TODO CONFIRM IN IG BUILD PROCESS ************ FIX RBANK IF NEEDED ***********
|
# Ig directories ************** TODO CONFIRM IN IG BUILD PROCESS ************ FIX RBANK IF NEEDED ***********
|
||||||
IgLandBuildDirectory = "_invalid"
|
IgLandBuildDirectory = "_invalid"
|
||||||
IgOtherBuildDirectory = "_invalid"
|
IgOtherBuildDirectory = "_invalid"
|
||||||
|
|
||||||
# Rbank directories
|
# Rbank directories
|
||||||
RbankOutputBuildDirectory = "_invalid"
|
RbankOutputBuildDirectory = "_invalid"
|
||||||
|
|
||||||
# Ligo directories
|
# Ligo directories
|
||||||
|
|
||||||
|
|
||||||
# *** INSTALL DIRECTORIES IN THE CLIENT DATA ***
|
# *** INSTALL DIRECTORIES IN THE CLIENT DATA ***
|
||||||
|
|
||||||
# Map directory
|
# Map directory
|
||||||
MapInstallDirectory = CommonName + "_maps"
|
MapInstallDirectory = CommonName + "_maps"
|
||||||
BitmapInstallDirectory = MapInstallDirectory
|
BitmapInstallDirectory = MapInstallDirectory
|
||||||
|
|
||||||
# Shape directory
|
# Shape directory
|
||||||
ShapeInstallDirectory = CommonName + "_shapes"
|
ShapeInstallDirectory = CommonName + "_shapes"
|
||||||
|
|
||||||
# Lightmap directory
|
# Lightmap directory
|
||||||
LightmapInstallDirectory = CommonName + "_lightmaps"
|
LightmapInstallDirectory = CommonName + "_lightmaps"
|
||||||
|
|
||||||
# Tile directory
|
# Tile directory
|
||||||
TilesInstallDirectory = CommonName + "_tiles"
|
TilesInstallDirectory = CommonName + "_tiles"
|
||||||
|
|
||||||
# Displace directory
|
# Displace directory
|
||||||
DisplaceInstallDirectory = CommonName + "_displaces"
|
DisplaceInstallDirectory = CommonName + "_displaces"
|
||||||
|
|
||||||
# Bank directory
|
# Bank directory
|
||||||
BankInstallDirectory = CommonName + "_bank"
|
BankInstallDirectory = CommonName + "_bank"
|
||||||
|
|
||||||
# Vegetable set directory
|
# Vegetable set directory
|
||||||
VegetSetInstallDirectory = CommonName + "_vegetable_sets"
|
VegetSetInstallDirectory = CommonName + "_vegetable_sets"
|
||||||
|
|
||||||
# Vegetable shape directory
|
# Vegetable shape directory
|
||||||
VegetInstallDirectory = CommonName + "_vegetables"
|
VegetInstallDirectory = CommonName + "_vegetables"
|
||||||
|
|
||||||
# PACS primitives directories
|
# PACS primitives directories
|
||||||
PacsPrimInstallDirectory = CommonName + "_pacs_prim"
|
PacsPrimInstallDirectory = CommonName + "_pacs_prim"
|
||||||
|
@ -1,122 +1,122 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# #################################################################
|
# #################################################################
|
||||||
# ## %PreGenWarning%
|
# ## %PreGenWarning%
|
||||||
# #################################################################
|
# #################################################################
|
||||||
#
|
#
|
||||||
# \file config.py
|
# \file config.py
|
||||||
# \brief Process configuration
|
# \brief Process configuration
|
||||||
# \date %PreGenDateTimeStamp%
|
# \date %PreGenDateTimeStamp%
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Process configuration for '%PreGenEcosystemName%' ecosystem.
|
# Process configuration for '%PreGenEcosystemName%' ecosystem.
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
# *** PROCESS CONFIGURATION ***
|
# *** PROCESS CONFIGURATION ***
|
||||||
|
|
||||||
# *** PROCESS CONFIG ***
|
# *** PROCESS CONFIG ***
|
||||||
ProcessToComplete = [ ]
|
ProcessToComplete = [ ]
|
||||||
ProcessToComplete += [ "shape" ]
|
ProcessToComplete += [ "shape" ]
|
||||||
ProcessToComplete += [ "map" ]
|
ProcessToComplete += [ "map" ]
|
||||||
ProcessToComplete += [ "smallbank" ]
|
ProcessToComplete += [ "smallbank" ]
|
||||||
ProcessToComplete += [ "farbank" ]
|
ProcessToComplete += [ "farbank" ]
|
||||||
ProcessToComplete += [ "tiles" ]
|
ProcessToComplete += [ "tiles" ]
|
||||||
ProcessToComplete += [ "displace" ]
|
ProcessToComplete += [ "displace" ]
|
||||||
ProcessToComplete += [ "veget" ]
|
ProcessToComplete += [ "veget" ]
|
||||||
ProcessToComplete += [ "vegetset" ]
|
ProcessToComplete += [ "vegetset" ]
|
||||||
ProcessToComplete += [ "ligo" ]
|
ProcessToComplete += [ "ligo" ]
|
||||||
ProcessToComplete += [ "pacs_prim" ]
|
ProcessToComplete += [ "pacs_prim" ]
|
||||||
|
|
||||||
|
|
||||||
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
# *** ECOSYSTEM AND CONTINENT NAMES ***
|
||||||
|
|
||||||
EcosystemName = "%PreGenEcosystemName%"
|
EcosystemName = "%PreGenEcosystemName%"
|
||||||
EcosystemPath = "ecosystems/" + EcosystemName
|
EcosystemPath = "ecosystems/" + EcosystemName
|
||||||
CommonName = EcosystemName
|
CommonName = EcosystemName
|
||||||
CommonPath = EcosystemPath
|
CommonPath = EcosystemPath
|
||||||
|
|
||||||
|
|
||||||
# *** MAP EXPORT OPTIONS ***
|
# *** MAP EXPORT OPTIONS ***
|
||||||
PanoplyFileList = [ ]
|
PanoplyFileList = [ ]
|
||||||
HlsBankFileName = ""
|
HlsBankFileName = ""
|
||||||
|
|
||||||
# *** SHAPE EXPORT OPTIONS ***
|
# *** SHAPE EXPORT OPTIONS ***
|
||||||
|
|
||||||
# Compute lightmaps ?
|
# Compute lightmaps ?
|
||||||
ShapeExportOptExportLighting = "%PreGenShapeExportOptExportLighting%"
|
ShapeExportOptExportLighting = "%PreGenShapeExportOptExportLighting%"
|
||||||
|
|
||||||
# Cast shadow in lightmap ?
|
# Cast shadow in lightmap ?
|
||||||
ShapeExportOptShadow = "%PreGenShapeExportOptShadow%"
|
ShapeExportOptShadow = "%PreGenShapeExportOptShadow%"
|
||||||
|
|
||||||
# Lighting limits. 0 : normal, 1 : soft shadows
|
# Lighting limits. 0 : normal, 1 : soft shadows
|
||||||
ShapeExportOptLightingLimit = %PreGenShapeExportOptLightingLimit%
|
ShapeExportOptLightingLimit = %PreGenShapeExportOptLightingLimit%
|
||||||
|
|
||||||
# Lightmap lumel size
|
# Lightmap lumel size
|
||||||
ShapeExportOptLumelSize = "%PreGenShapeExportOptLumelSize%"
|
ShapeExportOptLumelSize = "%PreGenShapeExportOptLumelSize%"
|
||||||
|
|
||||||
# Oversampling value. Can be 1, 2, 4 or 8
|
# Oversampling value. Can be 1, 2, 4 or 8
|
||||||
ShapeExportOptOversampling = %PreGenShapeExportOptOversampling%
|
ShapeExportOptOversampling = %PreGenShapeExportOptOversampling%
|
||||||
|
|
||||||
# Does the lightmap must be generated in 8 bits format ?
|
# Does the lightmap must be generated in 8 bits format ?
|
||||||
ShapeExportOpt8BitsLightmap = "%PreGenShapeExportOpt8BitsLightmap%"
|
ShapeExportOpt8BitsLightmap = "%PreGenShapeExportOpt8BitsLightmap%"
|
||||||
|
|
||||||
# Does the lightmaps export must generate logs ?
|
# Does the lightmaps export must generate logs ?
|
||||||
ShapeExportOptLightmapLog = "%PreGenShapeExportOptLightmapLog%"
|
ShapeExportOptLightmapLog = "%PreGenShapeExportOptLightmapLog%"
|
||||||
|
|
||||||
# Coarse mesh texture mul size
|
# Coarse mesh texture mul size
|
||||||
TextureMulSizeValue = "%PreGenTextureMulSizeValue%"
|
TextureMulSizeValue = "%PreGenTextureMulSizeValue%"
|
||||||
|
|
||||||
ClodConfigFile = ""
|
ClodConfigFile = ""
|
||||||
|
|
||||||
# *** COARSE MESH TEXTURE NAME ***
|
# *** COARSE MESH TEXTURE NAME ***
|
||||||
CoarseMeshTextureNames = [ ]
|
CoarseMeshTextureNames = [ ]
|
||||||
%PreGenCoarseMeshTextureNames%
|
%PreGenCoarseMeshTextureNames%
|
||||||
# *** POSTFIX USED BY THE MULTIPLE TILES SYSTEM ***
|
# *** POSTFIX USED BY THE MULTIPLE TILES SYSTEM ***
|
||||||
MultipleTilesPostfix = [ ]
|
MultipleTilesPostfix = [ ]
|
||||||
%PreGenMultipleTilesPostfix%
|
%PreGenMultipleTilesPostfix%
|
||||||
# *** BANK EXPORT OPTIONS ***
|
# *** BANK EXPORT OPTIONS ***
|
||||||
|
|
||||||
# Name of the tilebank to use
|
# Name of the tilebank to use
|
||||||
BankTileBankName = EcosystemName
|
BankTileBankName = EcosystemName
|
||||||
|
|
||||||
# *** RBANK EXPORT OPTIONS ***
|
# *** RBANK EXPORT OPTIONS ***
|
||||||
|
|
||||||
# Output names
|
# Output names
|
||||||
RbankRbankName = "_invalid"
|
RbankRbankName = "_invalid"
|
||||||
|
|
||||||
# *** LIGO OPTIONS ***
|
# *** LIGO OPTIONS ***
|
||||||
|
|
||||||
LigoExportLand = ""
|
LigoExportLand = ""
|
||||||
LigoExportOnePass = 0
|
LigoExportOnePass = 0
|
||||||
|
|
||||||
# *** MAPS OPTIONS ***
|
# *** MAPS OPTIONS ***
|
||||||
|
|
||||||
ReduceBitmapFactor = 0
|
ReduceBitmapFactor = 0
|
||||||
# list all panoply files
|
# list all panoply files
|
||||||
MapPanoplyFileList = None
|
MapPanoplyFileList = None
|
||||||
# name of the .hlsbank to build.
|
# name of the .hlsbank to build.
|
||||||
MapHlsBankFileName = None
|
MapHlsBankFileName = None
|
||||||
|
|
||||||
# *** SHAPE BUILD OPTIONS *
|
# *** SHAPE BUILD OPTIONS *
|
||||||
|
|
||||||
BuildShadowSkinEnabled = False
|
BuildShadowSkinEnabled = False
|
||||||
ClodConfigFile = ""
|
ClodConfigFile = ""
|
||||||
|
|
||||||
# *** PACS_PRIM OPTIONS ***
|
# *** PACS_PRIM OPTIONS ***
|
||||||
WantLandscapeColPrimPacsList = True
|
WantLandscapeColPrimPacsList = True
|
||||||
|
@ -1,65 +1,65 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
#
|
#
|
||||||
# \file 0_setup.py
|
# \file 0_setup.py
|
||||||
# \brief Run all setup processes
|
# \brief Run all setup processes
|
||||||
# \date 2009-02-18 15:28GMT
|
# \date 2009-02-18 15:28GMT
|
||||||
# \author Jan Boon (Kaetemi)
|
# \author Jan Boon (Kaetemi)
|
||||||
# Python port of game data build pipeline.
|
# Python port of game data build pipeline.
|
||||||
# Run all setup processes
|
# Run all setup processes
|
||||||
#
|
#
|
||||||
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
# NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
|
||||||
# Copyright (C) 2009-2014 by authors
|
# Copyright (C) 2009-2014 by authors
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
# published by the Free Software Foundation, either version 3 of the
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
# License, or (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful,
|
# This program is distributed in the hope that it will be useful,
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU Affero General Public License for more details.
|
# GNU Affero General Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# 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/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
|
|
||||||
import time, sys, os, shutil, subprocess, distutils.dir_util
|
import time, sys, os, shutil, subprocess, distutils.dir_util
|
||||||
sys.path.append("../configuration")
|
sys.path.append("../configuration")
|
||||||
if os.path.isfile("generate_all.log"):
|
if os.path.isfile("generate_all.log"):
|
||||||
os.remove("generate_all.log")
|
os.remove("generate_all.log")
|
||||||
log = open("generate_all.log", "w")
|
log = open("generate_all.log", "w")
|
||||||
from scripts import *
|
from scripts import *
|
||||||
from buildsite import *
|
from buildsite import *
|
||||||
from tools import *
|
from tools import *
|
||||||
|
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, "--- Generate all")
|
printLog(log, "--- Generate all")
|
||||||
printLog(log, "-------")
|
printLog(log, "-------")
|
||||||
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
subprocess.call([ "python", "generate_simple_max_exporters.py" ])
|
subprocess.call([ "python", "generate_simple_max_exporters.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + processName + "> " + str(e))
|
printLog(log, "<" + processName + "> " + str(e))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
subprocess.call([ "python", "generate_tagged_max_exporters.py" ])
|
subprocess.call([ "python", "generate_tagged_max_exporters.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + processName + "> " + str(e))
|
printLog(log, "<" + processName + "> " + str(e))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
subprocess.call([ "python", "generate_ecosystem_projects.py" ])
|
subprocess.call([ "python", "generate_ecosystem_projects.py" ])
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
printLog(log, "<" + processName + "> " + str(e))
|
printLog(log, "<" + processName + "> " + str(e))
|
||||||
printLog(log, "")
|
printLog(log, "")
|
||||||
|
|
||||||
|
|
||||||
log.close()
|
log.close()
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue