Compare commits
690 Commits
main/gingo
...
feature/qu
Author | SHA1 | Date |
---|---|---|
kaetemi | 9d991864c8 | 3 years ago |
kaetemi | a6139ade22 | 3 years ago |
kaetemi | 3fae9db854 | 3 years ago |
kaetemi | 47d178e102 | 3 years ago |
kaetemi | 40ffcb30b6 | 3 years ago |
kaetemi | 80be596654 | 3 years ago |
kaetemi | 57190a279a | 3 years ago |
kaetemi | 5b85b4e837 | 3 years ago |
kaetemi | 22883a1551 | 3 years ago |
kaetemi | 43f21357fa | 3 years ago |
kaetemi | 01881d26c3 | 3 years ago |
kaetemi | c1f33eb142 | 3 years ago |
Jan Boon | 1138817a50 | 3 years ago |
Jan Boon | 439eb542e6 | 3 years ago |
kaetemi | ca106f4361 | 3 years ago |
Jan Boon | c9f9717e1f | 3 years ago |
Jan Boon | 016a1bc890 | 3 years ago |
Jan Boon | 5d5e5a7e8a | 3 years ago |
kaetemi | eda99d43c2 | 3 years ago |
kaetemi | 1d4c70f8e5 | 3 years ago |
kaetemi | 8f9429a03d | 3 years ago |
kaetemi | 9657d71fbd | 3 years ago |
kaetemi | 9f2d08fdc1 | 3 years ago |
kaetemi | 84b63b8241 | 3 years ago |
kaetemi | 2f1ce0af64 | 3 years ago |
kaetemi | 66cb51f57a | 3 years ago |
kaetemi | 15adfeb387 | 3 years ago |
kaetemi | 644b73cd6d | 3 years ago |
kaetemi | 1fb977f16b | 3 years ago |
kaetemi | 8c5fefbece | 3 years ago |
kaetemi | 1e1689ab43 | 3 years ago |
kaetemi | 0b9c159307 | 3 years ago |
kaetemi | a73a86e2ad | 3 years ago |
kaetemi | 730d174f39 | 3 years ago |
kaetemi | ceb10c3d21 | 3 years ago |
kaetemi | 4254f5a01b | 3 years ago |
kaetemi | 1247e69e7b | 3 years ago |
kaetemi | 19b194804c | 3 years ago |
kaetemi | 5ee73e2275 | 3 years ago |
kaetemi | 2d7a602e79 | 3 years ago |
kaetemi | cad53befd9 | 3 years ago |
kaetemi | 4555c7a934 | 3 years ago |
kaetemi | c484af60fe | 3 years ago |
kaetemi | 2326ec531b | 3 years ago |
kaetemi | 7199733e4a | 3 years ago |
kaetemi | acc71cf49a | 3 years ago |
kaetemi | df111808fc | 3 years ago |
kaetemi | 4218b70cf6 | 3 years ago |
kaetemi | f6d3521efa | 3 years ago |
kaetemi | 5f9fcf5884 | 3 years ago |
nimetu | 4a34909459 | 3 years ago |
nimetu | 401d2cbc3a | 3 years ago |
kaetemi | e072c804ca | 3 years ago |
kaetemi | 1723982f04 | 3 years ago |
kaetemi | 30194c3297 | 3 years ago |
kaetemi | 3760a1331c | 3 years ago |
kaetemi | 5685774a7d | 3 years ago |
kaetemi | 4b73faefbe | 3 years ago |
kaetemi | da648d8fc2 | 3 years ago |
kaetemi | 8d92b18e08 | 3 years ago |
kaetemi | 53892c7f7e | 3 years ago |
kaetemi | c65d765459 | 3 years ago |
kaetemi | d5474ae8ca | 3 years ago |
kaetemi | 88631d8570 | 3 years ago |
kaetemi | a1285106b3 | 3 years ago |
kaetemi | f57a5260bb | 3 years ago |
kaetemi | 94c210946d | 3 years ago |
kaetemi | dc2c6251c6 | 3 years ago |
kaetemi | e7c092e0bf | 3 years ago |
kaetemi | 44b53fd0a5 | 3 years ago |
kaetemi | a41156c708 | 3 years ago |
kaetemi | 234a0ced42 | 3 years ago |
nimetu | 3f1f46bc7d | 3 years ago |
nimetu | 7878e13602 | 3 years ago |
nimetu | d2376f0203 | 3 years ago |
nimetu | dc9ab8ec79 | 3 years ago |
nimetu | 4a4e626f56 | 3 years ago |
nimetu | 1652ac8f1c | 3 years ago |
nimetu | 8436aa794e | 3 years ago |
nimetu | cbd0cf5955 | 3 years ago |
nimetu | 99ce0247cc | 3 years ago |
kaetemi | 0ee1536340 | 3 years ago |
Jan Boon | 6bc45e5bbd | 3 years ago |
Nimetu | 2bf12a9a92 | 3 years ago |
nimetu | dfbef3e5b5 | 3 years ago |
nimetu | 1a552078a1 | 3 years ago |
Nimetu | e1139b7e8d | 3 years ago |
Nimetu | 6727dc00ec | 3 years ago |
Nimetu | de1dba32a2 | 3 years ago |
Nimetu | f13c49219e | 3 years ago |
Nimetu | ba003ee45d | 3 years ago |
Nimetu | d46de81fc6 | 3 years ago |
Nimetu | c0a3338029 | 3 years ago |
Nimetu | 4cf5e4f674 | 3 years ago |
Nimetu | cbcf6b0854 | 3 years ago |
kaetemi | 83feb670eb | 3 years ago |
kaetemi | 194edc2606 | 3 years ago |
Nimetu | 50147b3361 | 3 years ago |
Nimetu | 50c4dba593 | 3 years ago |
Nimetu | 81212fd728 | 3 years ago |
Nimetu | 640f91c2a0 | 3 years ago |
Nimetu | a087eacc22 | 3 years ago |
Nimetu | 5731ad6b3e | 3 years ago |
Nimetu | f4726d6964 | 3 years ago |
Nimetu | a356abdd7c | 3 years ago |
Nimetu | ee219b7e5e | 3 years ago |
kaetemi | 5c074ccc8e | 3 years ago |
Nuno | e3c5606baf | 3 years ago |
Nuno | 0063396369 | 3 years ago |
kaetemi | 415fe11606 | 3 years ago |
Nuno | ccef75cdf3 | 3 years ago |
Nuno | 92186cf142 | 3 years ago |
Nuno Gonçalves (Ulukyn) | 05555015ea | 3 years ago |
Nuno Gonçalves (Ulukyn) | a8a0d9162e | 3 years ago |
Nimetu | 31a454b21d | 3 years ago |
Meubli | 4924b3563e | 3 years ago |
Nuno | 03b66c18d4 | 3 years ago |
kaetemi | 8775656c3c | 3 years ago |
kaetemi | a9654bd0b4 | 3 years ago |
kaetemi | 3ec625265e | 3 years ago |
kaetemi | a001eac5ad | 3 years ago |
kaetemi | 56008be890 | 3 years ago |
kaetemi | 7127f9f5f4 | 3 years ago |
kaetemi | ca9729b2a0 | 3 years ago |
kaetemi | 671d8bb286 | 3 years ago |
kaetemi | 939836b5bb | 3 years ago |
kaetemi | 088171a589 | 3 years ago |
kaetemi | a81fcd105a | 3 years ago |
kaetemi | 6a7bcf771d | 3 years ago |
kaetemi | bdbd12c625 | 3 years ago |
kaetemi | 549b2b0f22 | 3 years ago |
kaetemi | de7b301af9 | 3 years ago |
kaetemi | 9466258fa8 | 3 years ago |
kaetemi | 996f6c218e | 3 years ago |
kaetemi | 70aecc79c1 | 3 years ago |
kaetemi | 1e923d03ee | 3 years ago |
kaetemi | 41b4ec6bf3 | 3 years ago |
kaetemi | cee0f53c1d | 3 years ago |
kaetemi | 1b162fb3ae | 3 years ago |
Nimetu | 959f7cfbe8 | 3 years ago |
kaetemi | 1c035401c6 | 3 years ago |
Jan Boon | 60cabbe8ee | 3 years ago |
kaetemi | 1eec1fe31e | 3 years ago |
planetmaker | 1f856ecd8e | 3 years ago |
kaetemi | ac9e8f4f5e | 3 years ago |
kaetemi | 33a8128cfc | 3 years ago |
kaetemi | d465191e96 | 3 years ago |
kaetemi | fdc0af158c | 3 years ago |
kaetemi | 5a34b3dc59 | 3 years ago |
kaetemi | 03270f330f | 3 years ago |
kaetemi | 3fbb3242ee | 3 years ago |
kaetemi | 1dd98445ca | 3 years ago |
kaetemi | d607dec79e | 3 years ago |
kaetemi | df69ff8507 | 3 years ago |
kaetemi | efd2dea7e4 | 3 years ago |
kaetemi | bc5d0fae17 | 3 years ago |
kaetemi | 9bd90c47c4 | 3 years ago |
kaetemi | 010c2c84eb | 3 years ago |
kaetemi | 838a362fad | 3 years ago |
kaetemi | 48548c99b8 | 3 years ago |
kaetemi | 34e079c020 | 3 years ago |
kaetemi | 144ebe7f72 | 3 years ago |
kaetemi | 5ef4a97c8a | 3 years ago |
kaetemi | 62ed0d6de9 | 3 years ago |
kaetemi | 7ecc87e3ed | 3 years ago |
kaetemi | 1df9e53dd5 | 3 years ago |
kaetemi | a8f147231d | 3 years ago |
kaetemi | f73be89553 | 3 years ago |
kaetemi | 5a090b2943 | 3 years ago |
kaetemi | 190057b11b | 3 years ago |
kaetemi | 03b9e1f44f | 3 years ago |
kaetemi | 93dc106d95 | 3 years ago |
kaetemi | 5fc80fca13 | 3 years ago |
kaetemi | 3aeef70db8 | 3 years ago |
kaetemi | c71980df2e | 3 years ago |
kaetemi | 34bb64cea7 | 3 years ago |
kaetemi | fe9d945265 | 3 years ago |
kaetemi | 725206c678 | 3 years ago |
kaetemi | 43716f30fb | 3 years ago |
kaetemi | 5117fd742b | 3 years ago |
kaetemi | d79f103525 | 3 years ago |
kaetemi | 151f5270bc | 3 years ago |
kaetemi | be7ee784ec | 3 years ago |
kaetemi | 3d174a1294 | 3 years ago |
kaetemi | 7a6227efcc | 3 years ago |
kaetemi | fd14ad6c94 | 3 years ago |
kaetemi | c4025de222 | 3 years ago |
kaetemi | 5346d2b15e | 3 years ago |
kaetemi | 3cf8ca0959 | 3 years ago |
kaetemi | 68eb9149df | 3 years ago |
kaetemi | 0115e0b745 | 3 years ago |
kaetemi | e0e85d0100 | 3 years ago |
kaetemi | e3ac824104 | 3 years ago |
kaetemi | 56c3248198 | 3 years ago |
kaetemi | 6cabc38192 | 3 years ago |
kaetemi | 3a2c47ac5a | 3 years ago |
kaetemi | d9ac7b70a8 | 3 years ago |
kaetemi | c41cdd76ff | 3 years ago |
kaetemi | ec63cdc818 | 3 years ago |
kaetemi | d235885d70 | 3 years ago |
kaetemi | ef4fb03143 | 3 years ago |
kaetemi | cf2bf5629f | 3 years ago |
kaetemi | ec6b13a88b | 3 years ago |
kaetemi | 2889e81d63 | 3 years ago |
kaetemi | 678d888b5c | 3 years ago |
kaetemi | 6a79a5bf0f | 3 years ago |
kaetemi | b4638c7969 | 3 years ago |
kaetemi | 4028534f2a | 3 years ago |
kaetemi | a3dea88eb1 | 3 years ago |
kaetemi | b1733439d0 | 3 years ago |
kaetemi | c919b1891b | 3 years ago |
kaetemi | 5df65ae36e | 3 years ago |
kaetemi | 56beb7e214 | 3 years ago |
kaetemi | dea792a3f7 | 3 years ago |
kaetemi | c5ccd66749 | 3 years ago |
kaetemi | ff971efc42 | 3 years ago |
kaetemi | 85d1180719 | 3 years ago |
kaetemi | 4d65d5c459 | 3 years ago |
kaetemi | 6f2cd1fa1b | 3 years ago |
kaetemi | 23b188cadc | 3 years ago |
kaetemi | 4fb55a86d3 | 3 years ago |
kaetemi | 3be4999816 | 3 years ago |
kaetemi | d08547121f | 3 years ago |
kaetemi | 0483474ea0 | 3 years ago |
kaetemi | 7f8d286bc5 | 3 years ago |
kaetemi | 2ecaf3ecd9 | 3 years ago |
kaetemi | 7a95ff23f3 | 3 years ago |
kaetemi | cb47713119 | 3 years ago |
kaetemi | 8adf8e228a | 3 years ago |
kaetemi | 7e7494f897 | 3 years ago |
kaetemi | 9cf4677005 | 3 years ago |
kaetemi | 8f40fdb7b4 | 3 years ago |
kaetemi | 7709977b48 | 3 years ago |
kaetemi | 25b403556f | 3 years ago |
kaetemi | 77e69856d4 | 3 years ago |
kaetemi | b6e79ee3e1 | 3 years ago |
kaetemi | 0a1689ae10 | 3 years ago |
kaetemi | cda6770adb | 3 years ago |
kaetemi | d9b59c1fdc | 3 years ago |
kaetemi | 5a8fa2052b | 3 years ago |
kaetemi | 31f31e6d69 | 3 years ago |
kaetemi | 187ef3af19 | 3 years ago |
kaetemi | 880f850be7 | 3 years ago |
kaetemi | 0fe48635f5 | 3 years ago |
kaetemi | 59b5d1228f | 3 years ago |
kaetemi | b594606862 | 3 years ago |
kaetemi | 10fc562e07 | 3 years ago |
kaetemi | 7175e7f9ed | 3 years ago |
kaetemi | a5d0f904a4 | 3 years ago |
kaetemi | 45668dcbfe | 3 years ago |
kaetemi | 614da137ac | 3 years ago |
kaetemi | 1d06892f16 | 3 years ago |
kaetemi | 08c094e957 | 3 years ago |
kaetemi | 681f133400 | 3 years ago |
kaetemi | cac99dc9ab | 3 years ago |
kaetemi | d30a80acea | 3 years ago |
kaetemi | 486af5ec85 | 3 years ago |
kaetemi | 9230eb1621 | 3 years ago |
kaetemi | 08a28193b4 | 3 years ago |
kaetemi | 8ad0536eed | 3 years ago |
kaetemi | 211d4d276d | 3 years ago |
kaetemi | 378bef8db3 | 3 years ago |
kaetemi | e9080405fc | 3 years ago |
kaetemi | 090ff7d509 | 3 years ago |
kaetemi | 39190cde60 | 3 years ago |
kaetemi | db211ffff7 | 3 years ago |
kaetemi | c3dcdd25de | 3 years ago |
kaetemi | 3b993c6cda | 3 years ago |
kaetemi | bc9d15a149 | 3 years ago |
kaetemi | e067e0eeeb | 3 years ago |
kaetemi | 7873a839ef | 3 years ago |
kaetemi | 3352401f24 | 3 years ago |
kaetemi | 549a015847 | 3 years ago |
kaetemi | fb1557c08e | 3 years ago |
kaetemi | a3626de8bb | 3 years ago |
kaetemi | 0045696546 | 3 years ago |
kaetemi | a5dd6aa857 | 3 years ago |
kaetemi | 5da1678357 | 3 years ago |
kaetemi | 694338302e | 3 years ago |
kaetemi | 5b22e0950a | 3 years ago |
kaetemi | 20ed0a4412 | 3 years ago |
kaetemi | c8ecf0a756 | 3 years ago |
kaetemi | d07e219439 | 3 years ago |
kaetemi | 92bfb0aafb | 3 years ago |
kaetemi | 4407fc2970 | 3 years ago |
kaetemi | 3f63f27143 | 3 years ago |
kaetemi | cb9094f091 | 3 years ago |
kaetemi | 30117e92be | 3 years ago |
kaetemi | b9de2e99a3 | 3 years ago |
kaetemi | 77f92c72a9 | 3 years ago |
kaetemi | b33ff3cb93 | 3 years ago |
kaetemi | da9c5173a6 | 3 years ago |
kaetemi | 3ec5a87d40 | 3 years ago |
kaetemi | 2cd2b9502f | 3 years ago |
kaetemi | 88e2ebd31c | 3 years ago |
kaetemi | 492865deed | 3 years ago |
kaetemi | a1023f923f | 3 years ago |
kaetemi | ce8acd4ca2 | 3 years ago |
kaetemi | 9d722bb70f | 3 years ago |
kaetemi | 59c1c340b8 | 3 years ago |
kaetemi | 43af8e6695 | 3 years ago |
kaetemi | f128e0807c | 3 years ago |
kaetemi | 8cecbb4a7d | 3 years ago |
kaetemi | feb7e7a812 | 3 years ago |
kaetemi | 8b6c3276e4 | 3 years ago |
kaetemi | deb1c7c131 | 3 years ago |
kaetemi | fc3f0355a5 | 3 years ago |
kaetemi | 578cef6c85 | 3 years ago |
kaetemi | 413ca990d0 | 3 years ago |
kaetemi | 37d52231ef | 4 years ago |
kaetemi | f8cb53bfd8 | 4 years ago |
kaetemi | 90225d0011 | 4 years ago |
kaetemi | e08079fe5f | 4 years ago |
kaetemi | a188c6b38a | 4 years ago |
kaetemi | 3f0bacd374 | 4 years ago |
kaetemi | f9b7dbd4cb | 4 years ago |
kaetemi | 449c90a4b0 | 4 years ago |
kaetemi | dba5d1a1ca | 4 years ago |
kaetemi | bce886595e | 4 years ago |
kaetemi | e97cf09e04 | 4 years ago |
kaetemi | dbe34b0c8f | 4 years ago |
kaetemi | 7a647ab76d | 4 years ago |
kaetemi | 113f3f97d7 | 4 years ago |
kaetemi | 28fd4d9011 | 4 years ago |
kaetemi | fdbe73937a | 4 years ago |
kaetemi | d58854ab33 | 4 years ago |
kaetemi | b4b701f90e | 4 years ago |
Xtarsia | 35f30e566b | 4 years ago |
kaetemi | c341631dbf | 4 years ago |
kaetemi | 59ee36332c | 4 years ago |
kaetemi | 45bc21e5c9 | 4 years ago |
kaetemi | cf16ec5c44 | 4 years ago |
kaetemi | 817ca5bf2b | 4 years ago |
kaetemi | 7eeb845768 | 4 years ago |
kaetemi | 6d975e9879 | 4 years ago |
kaetemi | 305ed94561 | 4 years ago |
kaetemi | ebc220fedb | 4 years ago |
kaetemi | a7e880e724 | 4 years ago |
Xtarsia | 607b708465 | 4 years ago |
kaetemi | 144088af13 | 4 years ago |
kaetemi | 6dfff83589 | 4 years ago |
kaetemi | b5f320af33 | 4 years ago |
kaetemi | d1769c586f | 4 years ago |
kaetemi | 68b0fbeae8 | 4 years ago |
kaetemi | 879b792c6a | 4 years ago |
kaetemi | 431b1140e9 | 4 years ago |
kaetemi | 6f2e45d352 | 4 years ago |
kaetemi | 4169349166 | 4 years ago |
kaetemi | c624984da1 | 4 years ago |
kaetemi | b96d96f004 | 4 years ago |
kaetemi | 3609d6369a | 4 years ago |
kaetemi | 46541a700c | 4 years ago |
kaetemi | 8d4c0d0ef1 | 4 years ago |
kaetemi | be11ae1fb6 | 4 years ago |
kaetemi | f203559ecb | 4 years ago |
kaetemi | be28e102ec | 4 years ago |
kaetemi | d512d10f18 | 4 years ago |
kaetemi | 24ceb5df04 | 4 years ago |
kaetemi | bd0c694970 | 4 years ago |
kaetemi | 5769a3599e | 4 years ago |
kaetemi | 176e0975f6 | 4 years ago |
kaetemi | 7c4a2f857d | 4 years ago |
kaetemi | bc3a602ebc | 4 years ago |
kaetemi | 9eb7481c06 | 4 years ago |
kaetemi | 66debd7ebe | 4 years ago |
kaetemi | f0430ec8ad | 4 years ago |
kaetemi | caa4eea391 | 4 years ago |
kaetemi | 3604088713 | 4 years ago |
kaetemi | cd4b746bfa | 4 years ago |
kaetemi | 60f61caa2c | 4 years ago |
kaetemi | a5e9542f2f | 4 years ago |
kaetemi | 7b1136ff0b | 4 years ago |
kaetemi | abd5c38a80 | 4 years ago |
kaetemi | 2a37a76cb5 | 4 years ago |
kaetemi | 4c701386f4 | 4 years ago |
kaetemi | e9feca648a | 4 years ago |
kaetemi | 4ae411968e | 4 years ago |
kaetemi | aa2574e10a | 4 years ago |
kaetemi | a2c7c4dc25 | 4 years ago |
kaetemi | 29f313853d | 4 years ago |
kaetemi | 625d269c11 | 4 years ago |
kaetemi | dc12e2dea3 | 4 years ago |
kaetemi | ae1f4d2df3 | 4 years ago |
Xtarsia | dac3cc2292 | 4 years ago |
kaetemi | 9883454926 | 4 years ago |
kaetemi | b89441d673 | 4 years ago |
kaetemi | 35e18597ee | 4 years ago |
kaetemi | 6787bbf378 | 4 years ago |
kaetemi | a3e762f401 | 4 years ago |
kaetemi | 380722e2e6 | 4 years ago |
kaetemi | d11936a035 | 4 years ago |
kaetemi | c791fe5742 | 4 years ago |
Xtarsia | 5de288a2e7 | 4 years ago |
kaetemi | c08163dcb6 | 4 years ago |
kaetemi | ea6ba2ec97 | 4 years ago |
kaetemi | 9c6918d448 | 4 years ago |
kaetemi | 9cc899a3a6 | 4 years ago |
kaetemi | e773027c6d | 4 years ago |
kaetemi | 3e675b1422 | 4 years ago |
kaetemi | 5934147d9e | 4 years ago |
Xtarsia | 4ca95e1188 | 4 years ago |
kaetemi | 0499fce27d | 4 years ago |
kaetemi | 2295769ad5 | 4 years ago |
kaetemi | 1cfe858588 | 4 years ago |
kaetemi | 374601e8d1 | 4 years ago |
kaetemi | d86c000de2 | 4 years ago |
kaetemi | fa086ea4b9 | 4 years ago |
kaetemi | dcf242c3b1 | 4 years ago |
kaetemi | d31eb606eb | 4 years ago |
kaetemi | 46020d345c | 4 years ago |
kaetemi | 2b2b0a7d48 | 4 years ago |
Xtarsia | 277a854f8d | 4 years ago |
kaetemi | 52c7c16f69 | 4 years ago |
kaetemi | 92ee96a783 | 4 years ago |
kaetemi | b61ad76ac2 | 4 years ago |
Xtarsia | 7a9accde11 | 4 years ago |
kaetemi | d0f9685ee8 | 4 years ago |
Xtarsia | a2b68113ec | 4 years ago |
kaetemi | ec4e2e188e | 4 years ago |
kaetemi | 9580bd5ec0 | 4 years ago |
kaetemi | d2900df0f6 | 4 years ago |
kaetemi | ae876e481a | 4 years ago |
kaetemi | 8594b479e2 | 4 years ago |
Jan Boon | fbab39451f | 4 years ago |
kaetemi | 05501cf30b | 4 years ago |
kaetemi | 357bb28ef2 | 4 years ago |
kaetemi | 5056d3a72a | 4 years ago |
kaetemi | 91a44fd5b5 | 4 years ago |
kaetemi | a51597cf0b | 4 years ago |
kaetemi | f5553dfb59 | 4 years ago |
kaetemi | b4dc60f163 | 4 years ago |
kaetemi | 2859693c1e | 4 years ago |
kaetemi | 6853098df9 | 4 years ago |
kaetemi | c71f516ed2 | 4 years ago |
kaetemi | ccb141672f | 4 years ago |
kaetemi | 4a7a153a3e | 4 years ago |
kaetemi | e3ec67a698 | 4 years ago |
kaetemi | 505e13cd1e | 4 years ago |
Xtarsia | 14a0c5d471 | 4 years ago |
kaetemi | 7a035466da | 5 years ago |
kaetemi | 64fd9f0b78 | 5 years ago |
kaetemi | a7933bc818 | 5 years ago |
kaetemi | 669237dbae | 5 years ago |
kaetemi | a606684e34 | 5 years ago |
kaetemi | 4b4c14dabf | 5 years ago |
kaetemi | 7e232462d0 | 5 years ago |
kaetemi | 09cb0ea5d0 | 5 years ago |
kaetemi | f5eae12b80 | 5 years ago |
kaetemi | 1452a6ba6d | 5 years ago |
kaetemi | a6713b14a6 | 5 years ago |
kaetemi | b505ff9e13 | 5 years ago |
kaetemi | 154ae55165 | 5 years ago |
kaetemi | ada4e5bfbf | 5 years ago |
kaetemi | fb3e97db1d | 5 years ago |
kaetemi | 61974ec15c | 5 years ago |
kaetemi | af6c6b64c3 | 5 years ago |
kaetemi | 0528df7f0b | 5 years ago |
kaetemi | 18d2e393cf | 5 years ago |
kaetemi | 3da77ce061 | 5 years ago |
kaetemi | 90e1297c1d | 5 years ago |
kaetemi | 90931485ba | 5 years ago |
kaetemi | 195e9b1439 | 5 years ago |
kaetemi | 0f50806927 | 5 years ago |
kaetemi | 7d01d8411d | 5 years ago |
kaetemi | c1a3008ca0 | 5 years ago |
kaetemi | 3f39669c9a | 5 years ago |
kaetemi | 51ec683eea | 5 years ago |
kaetemi | ddc9cdabc4 | 5 years ago |
kaetemi | 324c69c8cc | 5 years ago |
kaetemi | 05fdc723f1 | 5 years ago |
Jan Boon | 4a55facb0c | 5 years ago |
kaetemi | def3d25249 | 5 years ago |
kaetemi | f32a5d95d4 | 5 years ago |
kaetemi | 5f3675446c | 5 years ago |
kaetemi | f39a7fe349 | 5 years ago |
kaetemi | 3117c55424 | 5 years ago |
Jan Boon | 185d71365e | 5 years ago |
kaetemi | 02c40934ef | 5 years ago |
kaetemi | f892608865 | 5 years ago |
Jan Boon | 9d1545bbe2 | 5 years ago |
kaetemi | 71a22b43db | 5 years ago |
kaetemi | 5a543239bb | 5 years ago |
Jan Boon | 6cdee90e4e | 5 years ago |
kaetemi | 17d91ad243 | 5 years ago |
kaetemi | 33bf80a3c7 | 5 years ago |
Jan Boon | 1f7fca7df3 | 5 years ago |
Jan Boon | a964da41f7 | 5 years ago |
kaetemi | a900a45153 | 5 years ago |
kaetemi | 0cfe43aa26 | 5 years ago |
kaetemi | 3e7035c6dd | 5 years ago |
kaetemi | ea021e1d96 | 5 years ago |
kaetemi | 55c3939789 | 5 years ago |
kaetemi | 7a71caca6e | 5 years ago |
kaetemi | 9dc0020b61 | 5 years ago |
kaetemi | c7b27c8d70 | 5 years ago |
kaetemi | 6c6a83bc5d | 5 years ago |
Jan Boon | 93f6770fe4 | 5 years ago |
Jan Boon | a94094f865 | 5 years ago |
Jan Boon | 746f033b5c | 5 years ago |
Jan Boon | 5d7e4a921f | 5 years ago |
Jan Boon | f48f4d4555 | 5 years ago |
Jan Boon | 31e1cd6feb | 5 years ago |
Jan Boon | 107728c944 | 5 years ago |
kaetemi | 4053220060 | 5 years ago |
kaetemi | 525db6976a | 5 years ago |
kaetemi | f344c0568c | 5 years ago |
kaetemi | 2d32bc2371 | 5 years ago |
kaetemi | 9d89d3dfca | 5 years ago |
kaetemi | 024447d9fb | 5 years ago |
kaetemi | d496d54ac4 | 5 years ago |
kaetemi | aec03f6234 | 5 years ago |
kaetemi | 1dce83d279 | 5 years ago |
kaetemi | 774b91df9c | 5 years ago |
kaetemi | d5b959db7e | 5 years ago |
kaetemi | b547fd62cb | 5 years ago |
kaetemi | eecd6f1f2c | 5 years ago |
kaetemi | 3f982c2214 | 5 years ago |
kaetemi | b232d0026a | 5 years ago |
kaetemi | be32f02a76 | 5 years ago |
Jan Boon | 48bc27c1e3 | 5 years ago |
kaetemi | 38a7b763d0 | 5 years ago |
kaetemi | f18f4196b4 | 5 years ago |
kaetemi | 35a9e747f7 | 5 years ago |
kaetemi | 8f1d0ebf23 | 5 years ago |
kaetemi | dabf75dbcf | 5 years ago |
kaetemi | a722988987 | 5 years ago |
kaetemi | c914e6fdf6 | 5 years ago |
kaetemi | ad4290f2c9 | 5 years ago |
kaetemi | 739730127d | 5 years ago |
kaetemi | 2cb353438b | 5 years ago |
kaetemi | 46786a1185 | 5 years ago |
kaetemi | 8daffed6c2 | 5 years ago |
kaetemi | 2a917ede27 | 5 years ago |
Jan Boon | 31a819f254 | 5 years ago |
kaetemi | ad15ada3ef | 5 years ago |
kaetemi | 2927b3dfb9 | 5 years ago |
kaetemi | e0a14d79ac | 5 years ago |
kaetemi | ba3c008767 | 5 years ago |
kaetemi | 8c6677dba6 | 5 years ago |
kaetemi | b6dbb65918 | 5 years ago |
Jan Boon | 4d742741d1 | 5 years ago |
kaetemi | 8dd7c52f8a | 5 years ago |
kaetemi | fcfc86c83e | 5 years ago |
kaetemi | f36c979c2e | 5 years ago |
kaetemi | 8bcccefd11 | 5 years ago |
kaetemi | 71c7e31806 | 5 years ago |
kaetemi | 6d5eb14d4f | 5 years ago |
kaetemi | 52d8304659 | 5 years ago |
kaetemi | 3cfedfcf9a | 5 years ago |
kaetemi | 0b47322d6c | 5 years ago |
kaetemi | bfed12711d | 5 years ago |
kaetemi | 84e924b496 | 5 years ago |
kaetemi | 613bb7ccd0 | 5 years ago |
kaetemi | 623ffc6be7 | 5 years ago |
kaetemi | 319ad4b0bf | 5 years ago |
kaetemi | de6eae7e0f | 5 years ago |
kaetemi | b159620fcc | 5 years ago |
kaetemi | 0e08489315 | 5 years ago |
kaetemi | 2ad9e1c78a | 5 years ago |
kaetemi | 8d7ce91b56 | 5 years ago |
kaetemi | 2d1d9c1b0b | 5 years ago |
kaetemi | 85e7b594c6 | 5 years ago |
kaetemi | f980988ae4 | 5 years ago |
kaetemi | ee8ccf13b7 | 5 years ago |
kaetemi | 8895eb88d6 | 5 years ago |
kaetemi | 679c7d7ac3 | 5 years ago |
kaetemi | ba6378e07c | 5 years ago |
kaetemi | b06b0fb08c | 5 years ago |
kaetemi | 81176f102f | 5 years ago |
Jan Boon | 2ad1b76886 | 5 years ago |
Jan Boon | b0fdfaeca9 | 5 years ago |
kaetemi | 4c7c240775 | 5 years ago |
kaetemi | ff87af8423 | 5 years ago |
kaetemi | afee5db9e2 | 5 years ago |
kaetemi | 0bae206bb2 | 5 years ago |
kaetemi | c57c9a1cf6 | 5 years ago |
Jan Boon | 0c8e9f7640 | 5 years ago |
kaetemi | 2b80ec75a9 | 5 years ago |
kaetemi | 0a2ce3c522 | 5 years ago |
kaetemi | 4ca10eb38c | 5 years ago |
kaetemi | 636d8dae55 | 5 years ago |
kaetemi | ecc2085b70 | 5 years ago |
kaetemi | 9b9829a6ab | 5 years ago |
kaetemi | 916be9833c | 5 years ago |
kaetemi | bb3f4052a7 | 5 years ago |
kaetemi | 439cae285d | 5 years ago |
Nimetu | ddd0a7507e | 5 years ago |
kaetemi | c54897bd4f | 5 years ago |
kaetemi | 94ad75bb72 | 5 years ago |
kaetemi | 6ed45fef0b | 5 years ago |
kaetemi | 85c9d4e4b6 | 5 years ago |
kaetemi | 7ac4eb3097 | 5 years ago |
kaetemi | 2f29d03d86 | 5 years ago |
kaetemi | f64ba76bfc | 5 years ago |
kaetemi | aa2386151f | 5 years ago |
kaetemi | 7505fae6d1 | 5 years ago |
kaetemi | f7bdd7ecd7 | 5 years ago |
kaetemi | d70c4a215d | 5 years ago |
kaetemi | 71a412c698 | 5 years ago |
kaetemi | 98a41b75bd | 5 years ago |
kaetemi | a86fb4e195 | 5 years ago |
kaetemi | 3ff031b5ff | 5 years ago |
Nimetu | 249ce945f1 | 5 years ago |
Nimetu | a6a8cb99f5 | 5 years ago |
ulukyn | f11bc06541 | 6 years ago |
Nimetu | 460eb92969 | 5 years ago |
Nimetu | ae68b543b8 | 5 years ago |
Inky | a5a6c321af | 6 years ago |
Inky | 89fa8ca0ac | 6 years ago |
Inky | 9c82a0436f | 6 years ago |
Inky | fb60e00acc | 6 years ago |
Inky | 0a48c4a6e3 | 6 years ago |
Nimetu | 1eb1b118f3 | 6 years ago |
Nimetu | 3b0324ad08 | 6 years ago |
Inky | 4baed9c664 | 6 years ago |
Inky | 41c3d0cbe0 | 6 years ago |
Inky | ccfffe0a8c | 6 years ago |
Inky | 17b96e4819 | 6 years ago |
Inky | 00d31f09c6 | 6 years ago |
ulukyn | 89c22b04a2 | 6 years ago |
ulukyn | cf4cb55f3e | 6 years ago |
ulukyn | 1b19cb4809 | 6 years ago |
Inky | fe4c58df42 | 6 years ago |
ulukyn | 498c02fa4d | 6 years ago |
ulukyn | a7e75b1c6c | 6 years ago |
Inky | d73ea16682 | 6 years ago |
Inky | 64987e8ed6 | 6 years ago |
Inky | 7230a84031 | 6 years ago |
Inky | 36918ac919 | 6 years ago |
Inky | 0683604ada | 6 years ago |
Inky | 038a3bca96 | 6 years ago |
Nimetu | a3bdd3dda5 | 6 years ago |
Inky | 4121a61c85 | 6 years ago |
Inky | 2f2329c67f | 6 years ago |
ulukyn | 9780decca0 | 6 years ago |
Inky | cad47321a3 | 6 years ago |
Inky | 417865bb3a | 6 years ago |
Ulukyn | 36036faffd | 6 years ago |
ulukyn | c0037fc55a | 6 years ago |
Inky | f96289dfbe | 6 years ago |
Riasan | e794b5dd01 | 6 years ago |
ulukyn | 11132f08e6 | 6 years ago |
Riasan | 2d83507b55 | 6 years ago |
ulukyn | 0debc7e6d6 | 6 years ago |
ulukyn | 698c71f137 | 6 years ago |
ulukyn | dcf959fe3d | 6 years ago |
Nimetu | 892d11d2be | 6 years ago |
kervala | 8f61819d43 | 6 years ago |
ulukyn | 0e7380599e | 6 years ago |
kervala | cf1df3e4de | 6 years ago |
ulukyn | 4beecdc81b | 6 years ago |
ulukyn | 0b970371a3 | 6 years ago |
ulukyn | 48f3d3b244 | 6 years ago |
ulukyn | e9e2590d53 | 6 years ago |
ulukyn | f7f1a6035e | 6 years ago |
ulukyn | 4f75f92610 | 6 years ago |
ulukyn | a50bd10b84 | 6 years ago |
ulukyn | 57406f6a8c | 6 years ago |
ulukyn | 65acd3bf9d | 6 years ago |
ulukyn | 16ce2e454c | 6 years ago |
ulukyn | c7bdaf513c | 6 years ago |
ulukyn | 724158c74c | 6 years ago |
Nuno Gonçalves | ed798cb62a | 6 years ago |
ulukyn | 971287ae78 | 7 years ago |
ulukyn | c56d2e136d | 6 years ago |
ulukyn | 3652b23bbb | 6 years ago |
ulukyn | 8b1ead9e77 | 7 years ago |
ulukyn | 5d7c8777a1 | 7 years ago |
ulukyn | 1a52cc3cb1 | 7 years ago |
ulukyn | 0093170ee9 | 7 years ago |
ulukyn | 50d6ae91ae | 7 years ago |
ulukyn | af6975ae11 | 7 years ago |
ulukyn | 0b0b980510 | 7 years ago |
ulukyn | f917d22b71 | 7 years ago |
ulukyn | 61cee990fc | 7 years ago |
ulukyn | fd458d5751 | 7 years ago |
ulukyn@gmail.com | 5c41e79ce0 | 7 years ago |
Riasan | 0b27a27a4c | 7 years ago |
ulukyn@gmail.com | 4f33715b06 | 7 years ago |
ulukyn@gmail.com | b623bb11f5 | 7 years ago |
ulukyn@gmail.com | 3baf7fdb12 | 7 years ago |
ulukyn@gmail.com | 4c91c418d4 | 7 years ago |
ulukyn@gmail.com | 99a949b889 | 7 years ago |
kaetemi | 998daa5c56 | 10 years ago |
kaetemi | a3a347fab4 | 10 years ago |
kaetemi | ba42ed3320 | 10 years ago |
kaetemi | 1359bbf8c2 | 10 years ago |
kaetemi | 5d9f3ce668 | 10 years ago |
kaetemi | 9fec239dfb | 10 years ago |
kaetemi | 06e9d20850 | 10 years ago |
@ -0,0 +1,18 @@
|
|||||||
|
*.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
|
@ -0,0 +1,99 @@
|
|||||||
|
# Locate Lua library
|
||||||
|
# This module defines
|
||||||
|
# LUA54_FOUND, if false, do not try to link to Lua
|
||||||
|
# LUA_LIBRARIES
|
||||||
|
# LUA_INCLUDE_DIR, where to find lua.h
|
||||||
|
# LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
|
||||||
|
#
|
||||||
|
# Note that the expected include convention is
|
||||||
|
# #include "lua.h"
|
||||||
|
# and not
|
||||||
|
# #include <lua/lua.h>
|
||||||
|
# This is because, the lua location is not standardized and may exist
|
||||||
|
# in locations other than lua/
|
||||||
|
|
||||||
|
#=============================================================================
|
||||||
|
# Copyright 2007-2009 Kitware, Inc.
|
||||||
|
#
|
||||||
|
# Distributed under the OSI-approved BSD License (the "License");
|
||||||
|
# see accompanying file Copyright.txt for details.
|
||||||
|
#
|
||||||
|
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||||
|
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
# See the License for more information.
|
||||||
|
#=============================================================================
|
||||||
|
# (To distribute this file outside of CMake, substitute the full
|
||||||
|
# License text for the above reference.)
|
||||||
|
|
||||||
|
find_path(LUA_INCLUDE_DIR lua.h
|
||||||
|
HINTS
|
||||||
|
ENV LUA_DIR
|
||||||
|
PATH_SUFFIXES include/lua54 include/lua5.4 include/lua-5.4 include/lua include
|
||||||
|
PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/sw # Fink
|
||||||
|
/opt/local # DarwinPorts
|
||||||
|
/opt/csw # Blastwave
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(LUA_LIBRARY
|
||||||
|
NAMES lua54 lua5.4 lua-5.4 lua
|
||||||
|
HINTS
|
||||||
|
$ENV{LUA_DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/sw
|
||||||
|
/opt/local
|
||||||
|
/opt/csw
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(LUA_LIBRARY_DEBUG
|
||||||
|
NAMES lua54-d lua5.4-d lua-5.4-d lua-d lua54d lua5.4d lua-5.4d luad
|
||||||
|
HINTS
|
||||||
|
$ENV{LUA_DIR}
|
||||||
|
PATH_SUFFIXES lib64 lib
|
||||||
|
PATHS
|
||||||
|
~/Library/Frameworks
|
||||||
|
/Library/Frameworks
|
||||||
|
/sw
|
||||||
|
/opt/local
|
||||||
|
/opt/csw
|
||||||
|
/opt
|
||||||
|
)
|
||||||
|
|
||||||
|
if(LUA_LIBRARY)
|
||||||
|
# include the math library for Unix
|
||||||
|
if(UNIX AND NOT APPLE AND NOT BEOS)
|
||||||
|
find_library(LUA_MATH_LIBRARY m)
|
||||||
|
set( LUA_LIBRARIES "${LUA_LIBRARY};${LUA_MATH_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||||
|
# For Windows and Mac, don't need to explicitly include the math library
|
||||||
|
else()
|
||||||
|
if (LUA_LIBRARY_DEBUG)
|
||||||
|
set( LUA_LIBRARIES optimized ${LUA_LIBRARY} debug ${LUA_LIBRARY_DEBUG} CACHE STRING "Lua Libraries")
|
||||||
|
else()
|
||||||
|
set( LUA_LIBRARIES "${LUA_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(LUA_INCLUDE_DIR AND EXISTS "${LUA_INCLUDE_DIR}/lua.h")
|
||||||
|
file(STRINGS "${LUA_INCLUDE_DIR}/lua.h" lua_version_str REGEX "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua .+\"")
|
||||||
|
|
||||||
|
string(REGEX REPLACE "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua ([^\"]+)\".*" "\\1" LUA_VERSION_STRING "${lua_version_str}")
|
||||||
|
unset(lua_version_str)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
|
||||||
|
# all listed variables are TRUE
|
||||||
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua54
|
||||||
|
REQUIRED_VARS LUA_LIBRARIES LUA_INCLUDE_DIR
|
||||||
|
VERSION_VAR LUA_VERSION_STRING)
|
||||||
|
|
||||||
|
mark_as_advanced(LUA_INCLUDE_DIR LUA_LIBRARIES LUA_LIBRARY LUA_LIBRARY_DEBUG LUA_MATH_LIBRARY)
|
||||||
|
|
@ -0,0 +1,8 @@
|
|||||||
|
# This file is parsed by HunterGate command
|
||||||
|
|
||||||
|
hunter_config(luabind
|
||||||
|
VERSION 0.9.1
|
||||||
|
URL "https://github.com/ryzom/luabind/tarball/0ae9bd6e40fe6c70e9d032ff096370929f58c143"
|
||||||
|
SHA1 "1dfabfa89ee72066118e4e28e797830e118d2a9b"
|
||||||
|
)
|
||||||
|
|
@ -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,7 +1,63 @@
|
|||||||
# Ryzom Core [![Build Status](https://travis-ci.org/ryzom/ryzomcore.svg)](https://travis-ci.org/ryzom/ryzomcore)
|
# Ryzom Core [![Build Status](https://dev.azure.com/ryzom/ryzomcore/_apis/build/status/ryzom.ryzomcore?branchName=core4)](https://dev.azure.com/ryzom/ryzomcore/_build)
|
||||||
|
|
||||||
Ryzom Core is the open-source project related to Ryzom Game. Written in C++, Ryzom Core contains the whole code (client, server, tools) used to make the commercial MMORPG Ryzom. Ryzom Core is a toolkit for the development of massively multiplayer online universes. It provides the base technologies and a set of development methodologies for the development of both client and server code.
|
Ryzom Core is the open-source project related to Ryzom Game. Written in C++, Ryzom Core contains the whole code (client, server, tools) used to make the commercial MMORPG Ryzom. Ryzom Core is a toolkit for the development of massively multiplayer online universes. It provides the base technologies and a set of development methodologies for the development of both client and server code.
|
||||||
|
|
||||||
|
Ryzom Core is open source and released under the terms of the GNU Affero General Public License 3.0 (GNU/AGPLv3) for the source code. The art assets are dual-licenced under the Creative Commons Attributions-ShareAlike 3.0 (CC-BY-SA) and Free Art License 1.3 (FAL 1.3).
|
||||||
|
|
||||||
|
* Wiki: https://wiki.ryzom.dev/
|
||||||
|
* IRC: https://freegamedev.net/irc/#ryzom
|
||||||
|
* Discord: https://discord.gg/xjSBVkSmCy
|
||||||
|
|
||||||
Ryzom Core is open source and released under the terms of the GNU Affero General Public License 3.0 (GNU/AGPLv3) for the source code and the Creative Commons Attributions-ShareAlike 3.0 (CC-BY-SA) for the art assets. Which means you can create your own game using Ryzom Core, for more information on doing so check out Creating Your Own Game Using Ryzom Core.
|
## About the community
|
||||||
|
|
||||||
|
We are a passionate group of gamers, and open-source aficionados. Many of us fell in love with the original vision and promise of the Saga of Ryzom, or the ideals of open source. For some the game was once our home, or still is. To others, it was an introduction to the open-source software world. We work on Ryzom Core because we care for the things we love, and the friendships we've made over the years.
|
||||||
|
|
||||||
|
The Ryzom Core repository is maintained by the community independently. It is not officially affiliated with the commercial game, nor with Winch Gate Ltd. See the History section on why.
|
||||||
|
|
||||||
|
## Support development
|
||||||
|
|
||||||
|
We are happy to work on this project in our free time. If you would like to contribute to the project financially, you can support us and our loved ones through any of the following links.
|
||||||
|
|
||||||
|
* [![Sponsor](https://img.shields.io/github/sponsors/kaetemi?style=social)]( https://github.com/sponsors/kaetemi) Jan Boon (Kaetemi), Polyverse OÜ. — Goes towards the Ryzom Core servers, and open-source development.
|
||||||
|
|
||||||
|
If you're a regular source code or game asset contributor to the open-source project, feel free to add yourself to this list.
|
||||||
|
|
||||||
|
## Project history
|
||||||
|
|
||||||
|
The Saga of Ryzom was originally developed by Nevrax. A small game development company with a visionary creative direction.
|
||||||
|
|
||||||
|
Several founders and developers of the company at the time were open-source aficionados. The ideal in their minds was to fully open source the game. Unfortunately, the investors thought differently and never fully bought into the open-source model. Only the engine was released at the time.
|
||||||
|
|
||||||
|
This gave birth to the NeL project. The Nevrax Library. While there was public interest in the engine, the lack of commitment to open source by the company made it difficult for independent contributors to work on the project.
|
||||||
|
|
||||||
|
When Nevrax eventually went bankrupt, they were initially bought out by Gameforge. A subsidiary called Gameforge France was formed to work on Ryzom.
|
||||||
|
|
||||||
|
A community-led [Virtual Citizenship Association (VCA)]( https://web.archive.org/web/20080905175524/https://www.virtualcitizenship.org/), raising over € 170,000 in pledges, failed to win the bid. The open-source NeL community was later abandoned by Gameforge once Ryzom eventually fell into oblivion, and revived itself as the OpenNeL project. After Gameforge failed to fully pay for the bankruptcy deal, and some hush-hush behind the backs of the community-led VCA, the ownership was transferred back to the liquidator and onto Winch Gate Properties Limited.
|
||||||
|
|
||||||
|
Fortunately, thanks to the efforts of original Nevrax employees, and key members of OpenNeL, the new owner showed some goodwill towards the open source community, and the full game client and server, as well as a substantial amount of graphics assets, were released as open source.
|
||||||
|
|
||||||
|
With the promise of the game becoming an open source project, they worked together with the OpenNeL community, which renamed to Ryzom Core in order to advertise the game better. In practice, the commercial game servers were being developed on a private repository. Beyond bug fixes and enhancements to the client, the community had zero input. New features that required server modifications were disallowed. The collaboration was doomed to fail.
|
||||||
|
|
||||||
|
The Ryzom Core community was backstabbed and slowly ignored by the new owner. A new Ryzom Forge project was launched behind closed doors, that claimed to make community contributions easier. Yet closing off development almost entirely to outsiders. No attempt was made by the new owner at fully committing to an open-source development model.
|
||||||
|
|
||||||
|
New features on the commercial game developed by the Ryzom Forge team are primarily web applications using the in-game browser, circumventing the AGPLv3. Furthermore, the Ryzom Forge team had at one point updated their private server repository to link the binaries to the game engine on the public repository. This in violation of the AGPLv3 license on community contributions, forcing their hand to make their private server fork public. The web apps remain closed source. The team also shut down the Ryzom Ring player scenario tools on the official servers, in favor of closed source web-based tools that are exclusive to the official event team.
|
||||||
|
|
||||||
|
As the commercial game owners historically, and still, have been a poorly committed and unreliable partner to running this as a truly open-source project, Ryzom Core is currently an independent community project, and is committed to remain that way and protect the rights of independent contributors.
|
||||||
|
|
||||||
|
## Copyright and contributions
|
||||||
|
|
||||||
|
All original source code is copyright (C) 2001-2022 Winch Gate Property Limited. The commercial game's official Git repositories are hosted on GitLab at https://gitlab.com/ryzom.
|
||||||
|
|
||||||
|
The NeL Sound driver for XAudio2 is copyright (C) 2008-2014 Jan BOON <jan.boon@kaetemi.be>.
|
||||||
|
|
||||||
|
Other community contributions and modifications are copyright their respective authors. Consult the OpenNeL SVN and the Ryzom Core Git repository histories for more details.
|
||||||
|
|
||||||
|
The source code in this repository is licensed under the AGPLv3, unless specified otherwise. Likewise, by committing to this repository, you agree to license your modifications under the AGPLv3. You retain all copyright over your work (\*). As such, you have the option to additionally dual-license your fully-owned contributions under any other license. Configuration files are implied to be public domain samples, as they may contain sensitive data in a production environment.
|
||||||
|
|
||||||
|
(\*) If, and only if, you have signed a CTA (part of the NDA, copyright and ownership - your contract may vary) with Winch Gate Ltd., your contributions, along with any other creations related to Ryzom, fall under that contract and will be copyright Winch Gate Ltd. instead (\*\*). As per your contract, your contributions are licensed back to you under the AGPLv3. You retain the moral rights to your work. These are non-transferable rights, which permit you to assert your authorship and be credited for your contributions. You should exercise this right.
|
||||||
|
|
||||||
|
(\*\*) If you live in a legislation where contractual copyright assignments without employment or commercial transaction are unenforceable (e.g. Belgium), and you are not being paid by Winch Gate Ltd. for your current work, the CTA is null and void, and you retain full copyright ownership over your contributions. Consult a lawyer to assert your rights. Don't give them away.
|
||||||
|
|
||||||
|
To comply with the AGPLv3 license, section 5(a), names of the contributors who own the copyrights to modifications will be added to the copyright notice in source files on a periodic basis. You may follow the existing format if you wish to do this yourself.
|
||||||
|
|
||||||
|
The removal of any valid copyright notice is a violation of the AGPLv3 license.
|
||||||
|
@ -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,15 +1,17 @@
|
|||||||
title Ryzom Core: 0_setup.py --noconf
|
title Ryzom Core: 0_setup.py --noconf
|
||||||
0_setup.py --noconf
|
python 0_setup.py --noconf
|
||||||
title Ryzom Core: 1_export.py
|
title Ryzom Core: 1_export.py
|
||||||
1_export.py
|
python 1_export.py
|
||||||
title Ryzom Core: 2_build.py
|
title Ryzom Core: 2_build.py
|
||||||
2_build.py
|
python 2_build.py
|
||||||
title Ryzom Core: 3_install.py
|
title Ryzom Core: 3_install.py
|
||||||
3_install.py
|
python 3_install.py
|
||||||
title Ryzom Core: a1_worldedit_data.py
|
title Ryzom Core: a1_worldedit_data.py
|
||||||
a1_worldedit_data.py
|
python a1_worldedit_data.py
|
||||||
title Ryzom Core: b1_client_dev.py
|
title Ryzom Core: b1_client_dev.py
|
||||||
b1_client_dev.py
|
python b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py
|
title Ryzom Core: b2_shard_data.py
|
||||||
b2_shard_data.py
|
python b2_shard_data.py
|
||||||
title Ryzom Core: Ready
|
title Ryzom Core: b3_shard_dev.py
|
||||||
|
python b3_shard_dev.py
|
||||||
|
title Ryzom Core: Ready
|
||||||
|
@ -1,9 +1,11 @@
|
|||||||
title Ryzom Core: 3_install.py
|
title Ryzom Core: 3_install.py
|
||||||
3_install.py
|
python 3_install.py
|
||||||
title Ryzom Core: a1_worldedit_data.py
|
title Ryzom Core: a1_worldedit_data.py
|
||||||
a1_worldedit_data.py
|
python a1_worldedit_data.py
|
||||||
title Ryzom Core: b1_client_dev.py
|
title Ryzom Core: b1_client_dev.py
|
||||||
b1_client_dev.py
|
python b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py
|
title Ryzom Core: b2_shard_data.py
|
||||||
b2_shard_data.py
|
python b2_shard_data.py
|
||||||
title Ryzom Core: Ready
|
title Ryzom Core: b3_shard_dev.py
|
||||||
|
python b3_shard_dev.py
|
||||||
|
title Ryzom Core: Ready
|
||||||
|
@ -0,0 +1,152 @@
|
|||||||
|
#!/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)
|
||||||
1_export.py -ipj common/characters common/characters_maps_hr
|
python 1_export.py -ipj common/characters common/characters_maps_hr
|
||||||
title Ryzom Core: 2_build.py (CHARACTERS)
|
title Ryzom Core: 2_build.py (CHARACTERS)
|
||||||
2_build.py -ipj common/characters common/characters_maps_hr
|
python 2_build.py -ipj common/characters common/characters_maps_hr
|
||||||
title Ryzom Core: 3_install.py (CHARACTERS)
|
title Ryzom Core: 3_install.py (CHARACTERS)
|
||||||
3_install.py -ipj common/characters common/characters_maps_hr
|
python 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)
|
||||||
b1_client_dev.py
|
python b1_client_dev.py
|
||||||
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
title Ryzom Core: b2_shard_data.py (CHARACTERS)
|
||||||
b2_shard_data.py
|
python b2_shard_data.py
|
||||||
title Ryzom Core: Ready (CHARACTERS)
|
title Ryzom Core: Ready (CHARACTERS)
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue