README.md (2963B)
1 # Solstice Animation 2 3 The purpose of this library is to compute the positioning of the constituents 4 of a solar facility. It was developed as part of the 5 [Solstice](https://gitlab.com/meso-star/solstice) project, in collaboration with 6 the [Laboratory of Excellence Solstice](http://www.labex-solstice.fr) and the 7 [PROMES](http://www.promes.cnrs.fr/) laboratory of the National Center for 8 Scientific Research ([CNRS](http://www.cnrs.fr)). Starting in 2026, a new 9 development effort funded by [Ademe](https://www.ademe.fr/) is ongoing. 10 11 ## How to build 12 13 This library, as part of the Solstice app, can be built on any POSIX system. 14 15 Note that you will most likely want to build the entire Solstice app rather than 16 this library alone. If so, a good starting point is the 17 [start-build](https://gitlab.com/meso-star/star-build) build system. 18 19 The Solstice-Anim library relies on the [RSys](https://gitlab.com/vaplv/rsys/) 20 library, and on the [OpenMP](http://www.openmp.org) 1.2 specification to 21 parallelize its computations. 22 23 First ensure that the make utility and a compiler that implements the OpenMP 1.2 24 specification are installed on your system. Then install the above 25 prerequisites. Finally, edit the config.mk file to meet your needs and build 26 the project by running: 27 28 make clean install 29 30 ## Release notes 31 32 ### Version 0.3 33 34 Replace CMake with a POSIX Makefile 35 36 The build procedure is now written in POSIX make and can be configured via 37 the config.mk file. A pkg-config file is also provided to link the 38 library as an external dependency. 39 40 Compared to the CMake alternative, this Makefile adds support for static 41 libraries and an uninstall target. It also enables compiler and linker 42 flags for various hardening features, improving the security and 43 robustness of generated binaries. More broadly, the motivation for this 44 rewrite is to rely on a well-established standard with a simple feature 45 set, available on all UNIX systems - reducing portability concerns and 46 maintenance burden while remaining significantly lighter. 47 48 ### Version 0.2.4 49 50 Raise the minimum required CMake version to 3.1, as version 2.8 has been 51 deprecated since CMake 3.20. 52 53 ### Version 0.2.3 54 55 Remove code that is now part of rsys and upgrade to rsys 0.10. This prevented 56 building using rsys >= 0.8. 57 58 ### Version 0.2.2 59 60 Fix a compilation issue that prevented building tests. 61 62 ### Version 0.2.1 63 64 Update the RSys dependency to 0.6: replace the deprecated `[N]CHECK` macros by 65 the new macro `CHK`. 66 67 ### Version 0.2 68 69 Update the `sanim_node_visit_tree` function: the submitted sun direction may be 70 NULL. In this case, the pivot constraints are not resolved during the tree 71 traversal. 72 73 ## License 74 75 Copyright (C) 2018-2026 |Meso|Star> (<contact@meso-star.com>). 76 Copyright (C) 2016, 2017 CNRS. 77 78 Solstice Animation is free software released under the GPL v3+ license: GNU GPL 79 version 3 or later. You are welcome to redistribute it under certain 80 conditions; refer to the COPYING file for details.