Compare commits

...

1703 Commits

Author SHA1 Message Date
Jeff Moe d0cec92b62 celestia screenshot 2022-05-20 22:32:56 -06:00
Jeff Moe 34a3b5a9cd Install *.deb 2022-05-20 22:06:09 -06:00
Jeff Moe 470cbc3c99 oh. Use separate celestiacontent repo 2022-05-20 21:57:31 -06:00
Jeff Moe 88047d9b06 ignore vi 2022-05-20 21:56:32 -06:00
Jeff Moe 71cf5dda82 celestia-gaia-stardb deps, mostly python3 2022-05-20 21:15:01 -06:00
Jeff Moe 646e755964 more ^M 2022-05-20 20:43:19 -06:00
Jeff Moe d00a02c463 star DB perl script had ^M ... 2022-05-20 20:38:51 -06:00
Jeff Moe 791c80d3d0 Package build minihowto 2022-05-20 20:24:19 -06:00
Jeff Moe 7693e49057 Add readmes to install docs 2022-05-20 20:23:19 -06:00
Jeff Moe e5c825b5f0 rm missing qttxf, latest snapshot 2022-05-20 19:58:40 -06:00
Jeff Moe 916ac7be22 Debian notes 2022-05-20 19:50:14 -06:00
Jeff Moe 9878b500b1 readme stub 2022-05-20 19:43:17 -06:00
Jeff Moe 9b561aa551 mv upstream READMEs 2022-05-20 19:42:42 -06:00
dave-kaye 804a5de2a7 Update GTK solar system browser
Add Dwarf Planets and Minor Moons to solar system browser to match Qt version
2022-05-05 10:41:46 +03:00
Andrew Tribick c6a320d086 Allow EOF status after skipping chunks/trailing bytes in 3ds fies.
This shouldn't happen and I cannot reproduce it, but some people
are running into issues with false positive errors.
2022-05-02 19:32:18 +02:00
Andrew Tribick 0c177cae01 Rewrite 3DS loader 2022-05-02 19:32:18 +02:00
Andrew Tribick bc75235150 Skip testing externally-provided charconv 2022-04-30 22:16:25 +02:00
Hleb Valoshka 4c6fa126d6 Remove remnants of the old font rendering system
Closes: #1359
2022-04-17 13:54:24 +03:00
Hleb Valoshka 698d03cd82 [gtk] Fix display of rings and fading orbits
Closes: #1360
2022-04-17 13:54:09 +03:00
Hleb Valoshka 6ab7660e0c [cmake] Don't mix plain & keyword target_link_libraries()
Closes: #1357
2022-04-07 10:45:15 +03:00
Levin Li b4cf176ac3 Fix nebula/ssc sprite rendering on hidpi setting 2022-04-02 07:53:25 -07:00
Georgi 71a65fb33c updated guide 2022-03-31 22:34:58 -07:00
Georgi 704a075d0a updated demo 2022-03-31 22:34:58 -07:00
Georgi a87dc1bc62 added demo_bg.cel 2022-03-31 22:34:58 -07:00
Hleb Valoshka f4bd55991f Optimize meshes with meshoptimizer library if available 2022-03-07 16:59:47 +03:00
Hleb Valoshka 746b9e3ef3 Optimize model by merging similar meshes 2022-03-07 16:59:47 +03:00
Hleb Valoshka ca80f4448a Optimize mesh by merging similar primitive groups 2022-03-07 16:59:47 +03:00
Hleb Valoshka dee6a216f7 Remove discord from Readme.md 2022-03-03 00:19:33 +03:00
Andrew Tribick 2f77629216 Fix parsing and display of luminosity classes Ia-0, Ia, and Ib
- Allow spaces before luminosity class in stc file
- Allow Ia-0 to be spelled "Ia-0" (as displayed), "Ia0" (as previously), or
  "I-a0" (previous display format) in stc file
- Remove str() and ostream << operators on StellarClass (only used in tests)
2022-02-19 11:33:15 +01:00
Andrew Tribick d2f53d0a56 Supersede not supercede 2022-02-19 11:33:15 +01:00
Hleb Valoshka fb08de771a Create Logger in cmodview 2022-02-18 14:03:41 +03:00
Levin Li 318b4378a9 Fix lua crash in cleanup 2022-02-18 01:30:10 -08:00
Levin Li 6b856b3352 Fix broken star browser 2022-02-11 19:09:16 -08:00
Heiko Becker e51f3d5b97 Drop content submodule from .gitmodules
It's seems a bit confusing to have it in .gitmodules and .gitignore at
the same time.
Furthermore it makes distro packaging fail for my distro.
2022-02-05 21:47:29 +03:00
Andrew Tribick 60ed8238b1 Add integration test for 3ds loader 2022-02-05 09:52:02 +01:00
Hleb Valoshka cbdd9de63f Draw glow before objects
Closes: #1339
2022-01-31 12:20:18 +03:00
transifex-integration[bot] a783eee8fe Translate /po/celestia.pot in ru
translation completed for the source file '/po/celestia.pot'
on the 'ru' language.
2022-01-31 12:19:24 +03:00
Hleb Valoshka 9d60f6e660 [sdl] small cleanup 2022-01-26 22:59:43 +03:00
Hleb Valoshka b7dd51fc81 [sdl] set ShadowMapSize and SolarSystemMaxDistance from config 2022-01-26 22:59:43 +03:00
Hleb Valoshka fecc0ca0a9 [sdl] add support for CELESTIA_DATA_DIR environment variable 2022-01-26 22:59:43 +03:00
Hleb Valoshka c95e554c7a [sdl] allow copy/paste URL to/from a clipboard 2022-01-26 22:59:43 +03:00
Yasushi SHOJI 3702250525 cmod: 3dstocmod: Create logger
Without creating a logger, the command dies with SEGFAULT when
Read3DSFile(std::istream&) tries to print the verbose message.

    GetLogger()->verbose("3DS file, {} bytes\n", chunkSize + 6);

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2022-01-26 22:59:28 +03:00
Yasushi SHOJI 3a218976bf cmod: Fix VertexAttributeSemantic::Position compilation error
The commit b79959979a extracted cmod::Mesh::Position to
cmod::VertexAttributeSemantic::Position but didn't change this line.

This problem occurs only with cmake -DENABLE_TOOLS=1.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2022-01-26 22:59:28 +03:00
SevenSpheres 38f645ff8f Add a vcpkg tip thanks to Andrew Tribick 2022-01-26 10:25:16 -07:00
Andrew Tribick 3a7e6d793b [win] Fix initialization of view options checkboxes 2022-01-26 18:21:44 +01:00
Hleb Valoshka 8f8a2f7677 Optimize calculation of center for renderLargePoint 2022-01-26 01:10:46 +03:00
Hleb Valoshka 772fe24e1b Reuse PointStarVertexBuffer do draw objects as points 2022-01-26 01:10:46 +03:00
Hleb Valoshka 96e282e161 Add methods to reset current matrices 2022-01-26 01:10:46 +03:00
Hleb Valoshka 20a4d13328 Refactor code to draw objects as points
* provide common routine to calculate point size
 * precalculate saturation magnitude
 * remove unused variables
2022-01-26 01:10:46 +03:00
Hleb Valoshka 29a2e1ec1c Update .clang-format 2022-01-26 01:01:15 +03:00
Hleb Valoshka 2cb9da1085 [win32] Convert decimal point & thousands separator to UTF-8 2022-01-25 23:28:17 +03:00
Hleb Valoshka 34d18bb316 Add missing include to fix selfshadowing
Fixes: #1330
2022-01-23 11:39:33 +03:00
Hleb Valoshka f969b37c3e Refactor font handling code
* Add cache for loaded fonts
 * Replace `const std::string &` with `std::string_view` in print
 * Remove static load method
 * Reformat with clang-format
 * Return bool from celestiacore::set*Font
2022-01-20 12:10:30 +03:00
Andrew Tribick 3c9334ece9 [qt] Do not capture menu bars when taking screenshots 2022-01-18 19:00:54 +01:00
Levin Li fc561a7927 Add methods for handling HiDPI, scale icons, splash images using StretchBlt 2022-01-16 02:27:25 -08:00
Levin Li 9d1bcf14b3 Enable dpiAwareness in manifest 2022-01-16 02:27:25 -08:00
Andrew Tribick 40ed2011bf Use qreal to store return value of devicePixelRatioF 2022-01-15 18:13:28 +01:00
Andrew Tribick 7cf1aac419 [qt] Experimental Qt6 support
- Switch from legacy QGLWidget to QOpenGLWidget

- [win32] Use a frameless window 1 pixel larger than the monitor instead of a
  fullscreen window, in order to avoid issues showing context menus

- Fix a settings bug where window state on the fullscreen transition was not
  saved in the MainWindow group.
2022-01-15 18:13:28 +01:00
Levin Li 25cbfabba0 Enable visual styles for Win32 controls 2022-01-14 21:13:55 -08:00
Andrew Tribick 245225dcdf Fix for SonarScanner out of bound false positive 2022-01-12 21:40:21 +01:00
Andrew Tribick 410f86fc88 Use while loop to fix SonarScanner issue 2022-01-08 21:25:52 +01:00
Andrew Tribick 3f7bd9c13e Update floating point compilation options 2022-01-08 16:02:52 +01:00
Andrew Tribick 56751882e6 Minor tokenizer fixes
- Functions in cctype should be called with unsigned char.
- Use charconv to convert numeric tokens.
2022-01-08 15:44:25 +01:00
Hleb Valoshka e04ed379a5 [ci] exclude legacy ui from sonar analysis 2022-01-08 17:21:23 +03:00
Hleb Valoshka 849ce6a5c4 [ci] disable dnf invocation as it fails 2022-01-08 17:21:23 +03:00
Hleb Valoshka 98610c9557 [cmake] suppress "deprecated-declarations" warning for gtk ui 2022-01-08 17:21:23 +03:00
Hleb Valoshka c251dac856 Split greek-letters handling from utf8 and refactor a bit 2022-01-08 17:21:23 +03:00
SevenSpheres eaae852f8f Update celestia.cfg
add pulsars.stc & plutocharon_locs.ssc
2022-01-07 12:43:30 -07:00
Hleb Valoshka eb93a24fcc Fix search for planets around stars with Bayer designations
Closes: #1297

The previos code didn't take into account names like "Ups And Ad" and
interpreted them as "Ups And A".
2022-01-05 15:56:34 +03:00
Hleb Valoshka d0899d29ee Fix ring shadow shaders for planets with several suns
Closes: #1305

Was broken in 32baed9bc
2022-01-05 13:34:51 +03:00
Hleb Valoshka 192359bfa0 [ci] remove ENABLE_DATA from cmake calls 2022-01-04 16:21:52 +03:00
Hleb Valoshka 57c0fe1bde Update spice submodule and enable it in CI build on arm64 2022-01-04 16:21:52 +03:00
Hleb Valoshka e4f7df92b8 [ci] run sonar scanner on a self-managed runner
* legacy frontends won't be checked, only sdl & qt
2022-01-03 18:30:02 +03:00
Hleb Valoshka 5bf9471674 Silence AstroObject::setIndex() unless debug verbosity 2022-01-02 19:32:15 +03:00
Andrew Tribick 7cdf65659d Clamp cosine of phase angle to [-1, 1] 2022-01-02 16:03:52 +01:00
Hleb Valoshka dea8c42eb1 [ci] add a custom job for *.po files 2022-01-01 23:59:32 +03:00
Andrew Tribick 7b762832a4 [qtwin] Fix crash on pasting screenshots
Workaround for an issue with the Windows Qt version where Celestia crashes
when a copied screenshot is pasted into another application. This appears to
be because the data sent to the clipboard still contains a reference to the
data in the destructed Image object, despite the Qt documentation stating that
QClipboard::setImage causes the clipboard to take ownership of the data. This
does not occur if the QImage manages its own buffer.
2022-01-01 21:27:10 +01:00
Andrew Tribick 4a9403ecf5 Fix galaxy hue calculation 2022-01-01 12:38:54 +01:00
Andrew Tribick 33116aad4a Backport C++20 numbers header 2021-12-31 17:25:39 +01:00
Andrew Tribick e8ca56f575 Remove unused code and apply bugfixes to SphereMesh
- Remove unused overload of displace
- Fix some bugs retrieving wrong data element
- Use Eigen::Map to simplify vector code
- Remove dispmap.h/dispmap.cpp
2021-12-31 11:12:53 +01:00
Andrew Tribick 727e4c999b Remove unreachable returns 2021-12-30 22:33:18 +01:00
Andrew Tribick f0e6ff3673 Refactor bigfix and univcoord 2021-12-30 21:30:18 +01:00
Andrew Tribick ee74d05f92 Clamp universal position to within 2^62 microlightyears on x, y and z axes 2021-12-30 21:30:18 +01:00
Andrew Tribick c40c04f595 Remove unused memorypool sources 2021-12-30 21:23:58 +01:00
Andrew Tribick fb45b8461d Enforce lower bound on rings/slices for spheremesh
- Avoid potential division-by-zero errors if nSlices=0
- Remove unused SphereMesh constructors
- Un-deprecate the cms format
2021-12-30 13:29:29 +01:00
Andrew Tribick fd9ea94377 Add managers for galaxy/globular details to avoid destructor issues on exit 2021-12-30 11:58:44 +01:00
Andrew Tribick c632aea62d Use std::uint8_t in procedural texture code 2021-12-30 11:58:44 +01:00
Andrew Tribick 85e5bae406 Additional globular refactoring
- Store vector directly in GlobularForm
- Use local statics
2021-12-30 11:58:44 +01:00
Andrew Tribick 657f127a66 Refactor globular: namespace management 2021-12-30 11:58:44 +01:00
Andrew Tribick e8782ceeb0 Reduce indirection, re-use custom templates if possible 2021-12-30 11:58:44 +01:00
Andrew Tribick 31b67185dd Refactor galaxy: namespace management 2021-12-30 11:58:44 +01:00
Andrew Tribick 73176faeb4 Fix parameter order in 'Error loading star X for asterism Y' 2021-12-30 11:58:22 +01:00
Andrew Tribick f15443bf63 Remove WIP HDR implementation 2021-12-29 14:48:36 +01:00
Andrew Tribick 5678539e05 Remove unused particle system code 2021-12-29 14:48:36 +01:00
Andrew Tribick 86f2aab284 Remove glcontext.* 2021-12-29 14:48:36 +01:00
Andrew Tribick b683c7801d Return std::string_view from Tokenizer::getStringValue to reduce copying 2021-12-29 13:08:54 +01:00
Andrew Tribick 2a533b20d5 Remove getNameValue from tokenizer (duplicate functionality of getStringValue) 2021-12-29 13:08:54 +01:00
Andrew Tribick 1d77f75963 Remove celmath::clamp in favour of std::clamp 2021-12-29 12:32:16 +01:00
Andrew Tribick 657604c69a Replace invalid use of memcpy in curveplot
- Vertex is not trivially copyable, therefore memcpy is not allowed.
- Put local classes and functions into unnamed namespace.
- Remove using namespace std, using namespace Eigen.
- Prefer C++-style casts.
- Use C++17 std::clamp where appropriate.
- Use logger for debugging
2021-12-28 23:04:50 +01:00
Andrew Tribick 2069f1ce68 Use <iosfwd> instead of <iostream> in logger.h 2021-12-28 22:36:10 +01:00
Andrew Tribick ea320060dc Only pass -fno-rtti and -fno-exceptions for C++ 2021-12-28 22:14:51 +01:00
Hleb Valoshka 50deb54bff Remove unneeded fs::path.string() conversions 2021-12-28 21:14:29 +01:00
Andrew Tribick e4ea8e0df4 Remove filesystem compatibility implementation
Keep <experimental/filesystem> support for now, so we still need to use a
compatibility header to alias the namespace.
2021-12-28 21:14:29 +01:00
Andrew Tribick e6a7b32fee Remove string_view compatibility headers 2021-12-28 21:14:29 +01:00
Andrew Tribick d7b896c013 Remove pre-C++17 Eigen alignment code 2021-12-28 21:14:29 +01:00
Andrew Tribick 9651e9e265 Use inline constexpr for constants in header files 2021-12-28 21:14:29 +01:00
Andrew Tribick 1dc01e221e Collapse using declarations 2021-12-28 21:14:29 +01:00
Andrew Tribick 4f913eb3ad Collapse nested namespaces 2021-12-28 21:14:29 +01:00
Andrew Tribick 279c721373 Require C++17, CMake 3.8 2021-12-28 21:14:29 +01:00
Andrew Tribick d978e275dd Reject zero-sized chunks in 3DS reader 2021-12-28 20:23:34 +01:00
Andrew Tribick d541a3c9c6 Update Spice submodule 2021-12-28 20:05:05 +01:00
Andrew Tribick 22291cd795 Add PowerShell and sh scripts to clone/update content directory 2021-12-28 18:37:00 +01:00
Andrew Tribick a5ea219b27 CMake fixes
- [msvc] Remove defaulted /W option to prevent override warnings from Spice
- Fix capitalization of Perl in find_package
- Replace deprecated qt5_use_modules in cmodview
2021-12-28 18:21:38 +01:00
Hleb Valoshka 28f47b0dd8 Remove content submodule
Closes: #1260
2021-12-28 15:18:14 +03:00
Hleb Valoshka 3e93c71a95 [ci] Run test builds on ARM64 agent
Signed-off-by: Hleb Valoshka <375gnu@gmail.com>
2021-12-27 12:04:43 +03:00
Hleb Valoshka 98e5684e81 [ci] build usual gnu/linux on old ubuntu only and changes to src & workflow 2021-12-27 12:04:43 +03:00
Hleb Valoshka 15ea2f330f [ci] enable scanning with sonarcloud 2021-12-27 12:04:43 +03:00
Hleb Valoshka 2505e9a51f Fix Bulgarian translation file 2021-12-27 01:33:41 +03:00
Andrew Tribick c85e4550a7 Use submodule for Gaia EDR3 tool 2021-12-26 22:21:02 +01:00
transifex-integration[bot] 53439a5cfd Translate /po/celestia.pot in bg
translation completed for the source file '/po/celestia.pot'
on the 'bg' language.
2021-12-26 23:55:42 +03:00
Hleb Valoshka a264433697 [win32] Create logger earlier to fix segv
SplashScreen class uses LoadImageFromFile which calls GetLogger
2021-12-26 23:06:16 +03:00
Andrew Tribick 9385415788 Fix loop iteration in randutils 2021-12-26 18:09:58 +01:00
Levin Li 968199915c Add support for different temperature scales 2021-12-25 23:10:10 +08:00
Hleb Valoshka ab409356c1 Add versioned local config file support 2021-12-24 21:32:27 +03:00
Hleb Valoshka 29d76471f2 Fix search for stars orbiting barycenters
Closes: #1126
2021-12-24 14:50:58 +03:00
Levin Li f2caba91f1 Update content submodule 2021-12-24 18:38:19 +08:00
Hleb Valoshka 904e4220a8 [ci] build with glut support 2021-12-20 22:36:03 +03:00
Hleb Valoshka f34111c117 [glut] add missing using celestia::util::Level 2021-12-20 22:36:03 +03:00
Hleb Valoshka 14af83a391 Implement Logger to replace raw cerr/cout and DPRINTF usage 2021-12-20 17:54:50 +03:00
Andrew Tribick b94d084af3 Fix floating point from_chars implementation
- Do not assume a zero-byte terminator exists in the source
- Ignore exponent if format does not contain scientific
- Require exponent if format does not contain fixed
- Add support for hexfloat parsing
- Fail if a plus sign is present
- Add bitwise operations to chars_format
- Avoid use of unnamed namespace in header file
- Detect whether charconv is present and if floating point charconv is supported
2021-12-16 16:33:27 +01:00
Georgi 63d4de9d81 Bulgarian language update
adopted the latest changes
2021-12-14 23:49:23 +03:00
Hleb Valoshka 498dc6083c [po] Remove po2, update po 2021-12-14 13:16:18 +03:00
Hleb Valoshka 08b0cd0682 Use custom gettext file to translated object names 2021-12-14 13:16:18 +03:00
Andrew Tribick 2baab87bf0 [qt] Fix storing window state on transition to fullscreen 2021-12-10 20:33:09 +01:00
Hleb Valoshka a5f80d0608 [tests] fix catch_main linkage
This fixes the following error on my Ubuntu 18.04 with CMake 3.10.2:

CMake Error at cmake/TestCase.cmake:8 (target_link_libraries):
Target "catch_main" of type OBJECT_LIBRARY may not be linked into another
target. One may link only to STATIC or SHARED libraries, or to executables
with the ENABLE_EXPORTS property set.
Call Stack (most recent call first):
test/unit/CMakeLists.txt:6 (test_case)
2021-12-06 22:48:18 +03:00
Andrew Tribick 30dda19ef9 Fix warnings in celmodel
- Remove unused variables in createLinePrimitiveGroup
- Ensure result is always set in default case in BinaryModelWrite::writeVertices
2021-12-05 20:32:44 +01:00
Levin Li 9a94e2dc6b Allow to use a custom date formatter for display 2021-12-05 18:56:30 +08:00
Levin Li b9b02beb0e Use localized names at bottom right 2021-12-05 18:30:44 +08:00
Andrew Tribick 2793756f91 Components inherit visibility from first non-component ancestor
- Share visibility logic between Component and SurfaceFeature
- Avoid null dereference for Component/SurfaceFeature defined on stars
2021-12-04 22:48:46 +01:00
Andrew Tribick a670d8e3be Cleanup and fix celutil/util.h; rename to tzutil.h
- Replace deleteFunc with lambdas
- Remove unused printlineFunc, memsize
- string_view does not allow returning the TZ name, replace with std::string&
2021-12-04 11:44:36 +01:00
Andrew Tribick 82ddd20fe2 Code analysis cleanup
- Move modelview/projection matrices to render contexts that use them
- Do not create an unused second light in cmodview
2021-12-04 09:49:52 +01:00
Andrew Tribick bcbd538d0a Remove const_cast in cmodview by implementing Model::setMaterial 2021-12-04 09:49:52 +01:00
Andrew Tribick 7c5c903f47 Remove pointers from mesh and model vectors
- Hold models in unique_ptr
2021-12-04 09:49:52 +01:00
Andrew Tribick 3a02e59b83 Cleanup of operators and material uniquification 2021-12-04 09:49:52 +01:00
Andrew Tribick 8684543580 Store vertex data as array of 4-byte words 2021-12-04 09:49:52 +01:00
Andrew Tribick 019411dc21 Remove pointers from VertexDescription and PrimitiveGroup indices 2021-12-04 09:49:52 +01:00
Andrew Tribick b79959979a Extract inner types from Material and Mesh
- Remove using namspace cmod
- Convert enums to enum classes
2021-12-04 09:49:52 +01:00
Andrew Tribick 474057221b Refactor 3DS loading to avoid excessive use of unique_ptr 2021-12-04 09:49:52 +01:00
Hleb Valoshka 41936fc6bf Remove old fonts support 2021-11-30 14:39:33 +03:00
Hleb Valoshka f46a00f4f1 Remove automatic mipmap mode, as it duplicates the default mode 2021-11-29 12:26:19 +03:00
Hleb Valoshka 7228d408e0 Remove condition which is always true 2021-11-29 12:26:19 +03:00
Hleb Valoshka 8113dae087 Remove GLU usage in texture.cpp 2021-11-29 12:26:19 +03:00
Hleb Valoshka cd2293f6c6 Refactor texture caps 2021-11-29 12:26:19 +03:00
Andrew Tribick 965ee69a98 Replace C++-style comments with C-style comments in gtkegl.c 2021-11-26 19:02:19 +01:00
Andrew Tribick 9f7262bcce Refactor Material and Material::Color comparison operators 2021-11-25 19:11:06 +01:00
Andrew Tribick 990163ac35 Clean up namespaces and includes in model.cpp/model.h 2021-11-25 19:11:06 +01:00
Andrew Tribick 79234cda24 Remove inheritance from Material maps, Model destructor
- Reference texture maps by ResourceHandles in cmod Materials
- Add basic path manager for integration tests and tools
- Remove virtual destructor on Model class as nothing inherits from it
2021-11-25 19:11:06 +01:00
Hleb Valoshka 8a903b0d0d [celx] Add acceleration time to observer:gotoselection()
+ replace magic values with constants
 + small cleanup
2021-11-25 16:22:09 +03:00
Hleb Valoshka 189f6372e3 [celx] handle locations in object:localname() 2021-11-25 01:12:46 +03:00
Andrew Tribick aac69395bb Enforce minimum fmt version 6.1.0 to ensure float roundtrip 2021-11-21 14:39:49 +01:00
Andrew Tribick 7c38b34683 Add test for CMOD binary to ASCII to binary roundtrip 2021-11-21 14:39:49 +01:00
Andrew Tribick 4132f41889 Remove duplicated code from cmodfix 2021-11-21 12:32:37 +01:00
Andrew Tribick 06613bda27 Add unit tests for the tokenizer
- Added tests for the tokenizer
- Reorganized the tests so that the catch main method is only compiled once
- Fixed missing error return in the tokenizer found by the tests
2021-11-18 22:43:03 +01:00
Hleb Valoshka 6b853ce47f Fix fault due to result expanded to int 2021-11-19 00:41:52 +03:00
Hleb Valoshka 2ff075d843 [celx] Fix location type returned by loc:getinfo()
getFeatureType() returns std::uint64_t
  + C++14 style for lambda
  + tiny-tiny optimization around std::string usage
2021-11-18 10:57:42 +03:00
Andrew Tribick e92c3d9bd5 More forgiving handling of invalid UTF-8 sequences
- Report an error (once per stream)
- In string literals, append U+FFFD REPLACEMENT CHARACTER
2021-11-17 12:29:54 +01:00
Andrew Tribick 8ae1fcb88e Additional format checks for string escapes and numbers
- Disallow invalid string escapes
- Disallow numbers ending with a sign character (e.g. + or 3.2e-)
- Disallow exponents immediately after a sign (e.g. +e32)
2021-11-17 12:29:54 +01:00
Levin Li 5f947cfa2c Add atmosphere height to culling radius 2021-11-17 17:24:52 +08:00
Andrew Tribick e686619f2e Don't read DDS header twice, reallow triggering eof() 2021-11-17 08:26:09 +01:00
Hleb Valoshka 6e7787faf3 [ci] Split line for better readability 2021-11-17 09:49:32 +03:00
Hleb Valoshka 204fe018a8 [ci] Build both on Ubuntu 18.04 & latest 2021-11-17 09:49:32 +03:00
Levin Li 2c044240d7 Sync content repo 2021-11-17 14:00:11 +08:00
Andrew Tribick e78b51ad07 Fix ASCII material loading 2021-11-16 21:33:56 +01:00
Andrew Tribick d82043f914 Fix for fmt 4.0 (as used by Ubuntu 18.04 LTS) 2021-11-16 18:56:43 +01:00
Levin Li 7c933c576d Correctly finish rendering point stars before drawing new ones 2021-11-16 21:13:15 +08:00
Andrew Tribick b3efa631d9 Enforce maximum token length, error on invalid UTF-8 sequences 2021-11-15 18:28:06 +01:00
Andrew Tribick 0f1ed583ae Move internal cmod parsing code to unnamed namespace 2021-11-15 18:28:06 +01:00
Andrew Tribick 0d636696eb Add error checking in cmod read/write 2021-11-15 18:28:06 +01:00
Andrew Tribick f79b21e7d3 Use existing tokenizer to parse ASCII cmod files 2021-11-15 18:28:06 +01:00
Andrew Tribick 5e141eef21 Refactor random number and Perlin noise 2021-11-14 19:42:39 +01:00
Andrew Tribick debcca3a1c Further celmath cleanup
- Tidy up includes and namespace handling
- Replace Ray with Eigen::ParametrizedLine
2021-11-14 19:42:39 +01:00
Andrew Tribick 43f0cc416e Fix spelling of 'opening' 2021-11-14 12:12:52 +01:00
Levin Li 2cf37d3e70 Abandon line strips that are of size 0/1 2021-11-12 20:00:41 +08:00
Andrew Tribick da5f621a19 Set up common binary IO functions 2021-11-10 19:14:19 +01:00
Andrew Tribick 368d94c0ad Remove unused catalogxref code 2021-11-10 19:13:39 +01:00
Andrew Tribick dc2a506839 Remove unused celmath files 2021-11-08 23:29:00 +01:00
Andrew Tribick 80d098f3c9 Remove using namespace from headers 2021-11-06 16:28:45 +01:00
Andrew Tribick e00f5b7d2c Fix tools, cleanup, remove reinterpret_cast undefined behaviour 2021-11-05 19:53:05 +01:00
Andrew Tribick 61850bfb9b Use unique_ptr to indicate ownership in cel3ds 2021-11-05 19:53:05 +01:00
Andrew Tribick f3e5444003 Add error checking to 3DS loader 2021-11-05 19:53:05 +01:00
Andrew Tribick 71bfec795c Use templated functions in 3dsread (improve type safety) 2021-11-05 19:53:05 +01:00
Andrew Tribick ef10800e7c Clean up headers/using namespace in cel3ds 2021-11-05 19:53:05 +01:00
Andrew Tribick ec232b7fad Fix for debug builds
- Include fmt/ostream.h in debug.h to allow formatting filesystem paths
- Avoid including headers via debug.h on non-debug builds
2021-10-26 10:17:48 +03:00
SevenSpheres ab6bdd75fc Remove content section of README & add help files from 1.6.x branch 2021-10-25 10:13:47 -05:00
SevenSpheres 9f96552540 Some small fixes to documentation
Mostly ported from 1.6.x branch
2021-10-25 10:13:47 -05:00
Andrew Tribick c5d100f698 [qt] Fix info panel for retrograde and subsynchronous rotators 2021-10-24 14:51:57 +02:00
Levin Li dff29425fe Fix crash displaying localized DSOs 2021-10-23 17:35:18 +08:00
Hleb Valoshka 98768a5ea2 [ci] Add build in C++17 mode 2021-10-23 12:15:01 +03:00
Hleb Valoshka b6da4a73f9 [tests] Build filesystem test only if building own fs library 2021-10-23 12:15:01 +03:00
Hleb Valoshka 28f674565e Add and use Overlay::printf instead of Overlay::operator<< 2021-10-23 12:15:01 +03:00
Hleb Valoshka ede49e97c1 [cmake] Build own fs implementation only if needed 2021-10-23 12:15:01 +03:00
Hleb Valoshka 811ed4ff3c Fix a few error messages 2021-10-23 12:15:01 +03:00
Hleb Valoshka d417525d67 [cmake] Allow C++ standard definition via command line 2021-10-23 12:15:01 +03:00
Hleb Valoshka 481f81c664 [cmake] Use FindFilesystem instead of own code 2021-10-23 12:15:01 +03:00
Hleb Valoshka 5f050040fe [cmake] Import FindFilesystem 2021-10-23 12:15:01 +03:00
Hleb Valoshka 58d303478c [cmake] Set policy CMP0004 to NEW 2021-10-23 12:15:01 +03:00
Hleb Valoshka ccd01c460f Fix fs::path printing using fmt 2021-10-23 12:15:01 +03:00
GurrenLagannTSS 1951497aaf Fix spelling mistake (Cource to Source) 2021-10-21 23:39:29 +03:00
Hleb Valoshka 42790d9013 Replace deprecated fmt::fprintf calls 2021-10-19 19:35:23 +03:00
Levin Li 1613542c5d Fix duplicate in Body as well 2021-10-19 17:42:49 +08:00
Levin Li cb0fe13ecd Remove duplciates in star/dso name index 2021-10-19 17:42:49 +08:00
Andrew Tribick 11c0361324 Fixes for the Windows build
- Move the compatibility classes into the cel17 namespace
- Skip generating resource translations if Perl not present
- Use fmt/ostream.h instead of fmt/printf.h for string_view
2021-10-18 09:58:33 +03:00
Andrew Tribick e987a7035d Skip UTF-8 BOM if present 2021-10-18 09:58:19 +03:00
Andrew Tribick df94a78658 Rewrite tokenizer and remove custom float parsing 2021-10-18 09:58:19 +03:00
Hleb Valoshka aacdbaec95 Fix incorrectly updated condition 2021-10-14 17:33:19 +03:00
Levin Li d0ed0d79de Display AVIF support status in QT 2021-10-14 10:35:26 +08:00
Levin Li bf5689574d Make AVIF optional 2021-10-14 10:35:26 +08:00
Levin Li 406f0b3036 Update CI and INSTALL.md 2021-10-14 10:35:26 +08:00
Levin Li 7a91ba9311 Update build script 2021-10-14 10:35:26 +08:00
Levin Li a45425c374 Support AVIF texture 2021-10-14 10:35:26 +08:00
transifex-integration[bot] 4cbc70ec8d Translate /po/celestia.pot in bg
translation completed for the source file '/po/celestia.pot'
on the 'bg' language.
2021-10-10 19:59:10 +03:00
SevenSpheres cfc77c67d8 Update celestia.cfg 2021-10-07 10:47:35 +03:00
Hleb Valoshka e7ee8ba045 Update content submodule 2021-10-06 15:29:19 +03:00
Levin Li be980acf11 Update celestia.cfg to include descriptions of new parameters 2021-10-05 00:11:10 +08:00
SevenSpheres 9133103817 Update celestia.cfg 2021-10-03 16:13:51 -04:00
Levin Li b04ffab738 Add support in .cfg 2021-09-28 14:03:24 +08:00
Levin Li f0db65c8f6 Add support for imperial units 2021-09-28 14:03:24 +08:00
Levin Li 103ba3e889 Translate well known star and dsos 2021-09-28 13:14:12 +08:00
Hleb Valoshka 6d23c903b2 [tests] update catch.hpp to fix build with glibc 2.34
Closes: #1117
2021-09-24 09:44:16 +03:00
Hleb Valoshka 8cd7bd1036 Allow to use Lunar-Lambert and specular together 2021-09-21 16:27:09 +03:00
Suleyman Poyraz 506d7c600c Updated Turkish Translations.
*Turkish Translation reviewed.
* Fixed translation.
    I don't think just one /n cause problem :)
2021-09-13 09:35:32 +03:00
Hleb Valoshka a2a67c59e8 Fix a bug in fs::recursive_directory_iterator()
The 4th element of directory_iterator() controls if it should advance to
the first non special directory entry (not . nor ..).

If m_iter advances itself and m_iter->path() is a directory then the next
call to recursive_directory_iterator.increment() will not step down into
this directory.
2021-09-06 20:53:36 +03:00
Hleb Valoshka 6f666280fd [celx] fix paths in loadtexture() and runscript() 2021-09-06 20:53:36 +03:00
Hleb Valoshka 4786cac9f4 [win] Fix Chinese grammar used in China and Taiwan 2021-08-31 09:28:19 +03:00
Hleb Valoshka 8e5a89a5a7 [win] build DLLs with UI translation 2021-08-30 11:10:47 +03:00
Hleb Valoshka f4ef910886 [win,ci] skip ffmpeg installation 2021-08-30 11:10:47 +03:00
Hleb Valoshka b067799a3c Use old way to capture video in windows environment 2021-08-23 11:04:03 +03:00
Hleb Valoshka f731579681 Revert "Refactor movie capture to use FFMPEG only" 2021-08-23 11:04:03 +03:00
Hleb Valoshka 7b52f23c97 Open log file with relative name in the current dir not in the data dir 2021-08-09 08:58:52 +03:00
Andrew Tribick f5f8d895db Match line length in row inversion with Image constructor 2021-07-31 16:35:25 +03:00
Hleb Valoshka 8153d2b5b4 [celx] Use default GLSL program in gl.Begin 2021-07-29 10:36:37 +03:00
Hleb Valoshka 1f286c67d2 [qt] Remove menu and toolbars in fullscreen mode
Based on GottfriedSp code
2021-07-27 08:19:32 +03:00
Konstantin Podsvirov dec8acafe5 Refine the URL of the Spice submodule 2021-07-22 22:57:56 +03:00
Hleb Valoshka b3d37663f3 Fix errors and warnings with VC++2019 2021-07-13 10:03:38 +03:00
Hleb Valoshka d6ceb8176c [cmake] don't compile qttxf 2021-07-13 10:03:38 +03:00
Hleb Valoshka 53b2012b82 [fs] add current_path() function 2021-07-13 10:03:38 +03:00
Levin Li 32baed9bcd Do not rely on clamp to border on ring textures 2021-06-28 22:21:13 +08:00
Joseph C Wang 05cb7196b5 make it compile with fmt v8 2021-06-27 20:52:35 +03:00
Hleb Valoshka e78a178a16 [win32] Fix "codecs" combobox
The 3rd parameter is a position not a special id associated with the entry
2021-06-24 17:59:04 +03:00
Hleb Valoshka 4cc79c1349 Add support for ffmpeg 4.4 2021-06-24 17:59:04 +03:00
Hleb Valoshka e20a07ae94 [cmake] Remove cotire completely 2021-06-24 17:59:04 +03:00
Hleb Valoshka 7b5adfffd3 [cmake] Remove workaround for static libintl
We need a more generic and simpler way to add additional dependencies
manually.
2021-06-24 17:59:04 +03:00
Hleb Valoshka d3cfa9f333 [cmake] Rename FindCspice to FindCSPICE 2021-06-24 17:59:04 +03:00
Hleb Valoshka 1c68ecdd8e [cmake] Update FindFFMPEG 2021-06-24 17:59:04 +03:00
Hleb Valoshka d394192999 Allow binary orbits without text source
Closes: #1088
2021-06-24 09:41:15 +03:00
Hleb Valoshka 03388d6d1d Add support for more JPL compatible ephemerides
Original patch was posted to https://celestia.space/forum/viewtopic.php?f=4&t=17282

====================================
Here comes the original description:
====================================
Before this update, the celestia code supports only JPL Big Endian
ephemerides DE406/DE405/DE200.

The big endian ephemeris DE406 comes in chunk of 300 years. If you
want to concatenate several pieces, using the software provided by JPL
(which does not handle endianess), you need a big endian platform. The
little endian DE406 comes in one piece of 6000 years, so you don't
even need to concatenate this one.

This commit adds the following:
- support for both endianess with autodetection of endianess
- support for all JPL DE ephemeris (from DE200) with autodetection of
record size.
- support for JPL DE compatible ephemeris such as the INPOP ephemeris
from Paris observatory (only the ephemeris files in the legacy JPL DE
compatible format and with timescale TDB, not the INPOP native format,
or the TCB files). http://www.imcce.fr/inpop/download10e.php

The method to autodetect ephemeris type, record size and endianess is
based on the CALCEPH software.
It would probably be better if possible to wrap around the CALCEPH
library (so that it would also support INPOP native format) but this
would be more work.

In addition to the ephemeris number and the start and end date, the
record size and endianess are also printed to the log (which you get
by pressing the tilde key).
If the ephemeris is an INPOP ephemeris, then the ephemeris number is
not printed to the log: it just says "INPOP".

It has been tested with:
- DE406 big endian
- DE406 little endian
- DE405 big endian
- DE423 little endian
- INPOP10A little endian
on Linux/x86_64.

However, no accurate regression testing has been performed. It has
only been tested visually that the planets orbits do not look wrong
and that the log is reporting the correct endianess, record size and
ephemeris name.
2021-06-16 15:38:51 +03:00
Hleb Valoshka d4c8cc8149 Star classes T5-Y should not have glow around them 2021-06-16 15:38:44 +03:00
Hleb Valoshka e1cec55218 Fix movie capture in GL ES environment 2021-06-16 14:15:32 +03:00
Hleb Valoshka bece12f6e4 Refactor Image class and image capture
* use GL_MESA_pack_invert to flip captured buffer
 * move enum PixelFormat to own file
 * use PixelFormat instead of GL formats in Image
 * provide captureImage() in CelestiaCore
 * use CelestiaCore methods to capture images in Qt UI
2021-06-16 14:15:32 +03:00
Levin Li c7018259a6 Remove alpha channel for DXT1 textures 2021-06-15 09:36:14 +08:00
Levin Li 5d1bcc2256 Remove make_unique compat 2021-06-13 15:50:22 +08:00
Levin Li fbc165c9d6 Drop C++11 and defaults to build with C++14 2021-06-13 15:50:22 +08:00
transifex-integration[bot] 42bb3103ed Translate /po/celestia.pot in bg
translation completed updated for the source file '/po/celestia.pot'
on the 'bg' language.
2021-06-12 18:55:05 +03:00
Hleb Valoshka 9ec482e24e Update installation instructions 2021-06-09 14:15:18 +03:00
Hleb Valoshka 5cba3df157 Position label in front of star drawn as mesh
Closes: #1041
2021-06-09 14:15:05 +03:00
Andrew Tribick 83a98802ee Add .vscode to .gitignore 2021-06-08 14:24:14 +08:00
Hleb Valoshka 098a383c78 Fix formatting in shader code 2021-06-07 23:10:04 +03:00
Hleb Valoshka 1c6219ed7a Don't calculate light half vector in vertex shader
1) It's already calculated in CelestiaGLProgram::initParameters()
2) This decreases number of varying floats by 3 per light, so for the case
listed in #593 we save 9 floats, so 8 are available.
2021-06-07 23:10:04 +03:00
Hleb Valoshka 51f8af2479 [win32] Add "select primary body" menu entry to win UI 2021-06-07 10:43:16 +03:00
Hleb Valoshka 45635522dc [win32] Add minor moons and dwarf planets into an object's context menu (Closes: #459) 2021-06-07 10:43:16 +03:00
Hleb Valoshka 0efba5944b [win32] Fix compilation without FFMPEG 2021-06-07 10:43:16 +03:00
Hleb Valoshka 378a431532 [qt] Use QFileDialog::getSaveFileName to select video file 2021-06-06 08:44:21 +03:00
Hleb Valoshka 076662df9f Fix warnings produced by MSVC 2021-06-06 08:44:21 +03:00
Hleb Valoshka 6e83aa9e04 Refactor movie capture to use FFMPEG only 2021-06-06 08:44:21 +03:00
Hleb Valoshka 8dab250f22 Use FFMpeg to capture video 2021-06-06 08:44:21 +03:00
Hleb Valoshka 5af65a58f3 [cmake] Remove cotire usage
* It doesn't work with cmake >= 3.12 and M$ VC++ (not a big issue)
* It doesn't work with extern "C" properly (blocks FFMPEG)
* It's unmaintained
2021-06-06 08:44:21 +03:00
Levin Li 04c6b40c50 Fix parsing URLs containing non ascii values 2021-06-05 15:57:06 +08:00
Hleb Valoshka c9f04184fa [tools] bump requests version to 2.25.1 to fix compatibility with urllib3 2021-06-03 11:33:20 +03:00
Hleb Valoshka 16a3f65ed0 try 2021-06-03 10:45:58 +03:00
Hleb Valoshka ecd99f948c [CI] Enable github actions for windows 2021-06-03 10:45:58 +03:00
Andrew Tribick 4c24b235b6 Remove duplicated assets 2021-06-03 10:45:44 +03:00
dependabot[bot] 79ccbe4f9b Bump urllib3 from 1.25.10 to 1.26.5 in /src/tools/celestia-gaia-stardb
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.25.10 to 1.26.5.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.25.10...1.26.5)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-03 15:01:22 +08:00
Levin Li 28bb2b52bd Fix compatibility with QT6 2021-05-31 15:13:02 +08:00
Levin Li cc3c6df49c Avoid showing duplicate names 2021-05-31 08:11:54 +08:00
Levin Li 009e09df63 Clear dateStrWidth on clearFonts 2021-05-27 16:34:33 +08:00
Levin Li fd2ba19d79 Add back support for URL version 4 2021-05-26 08:40:34 +08:00
Levin Li b4858b1e72 Use shared_ptr around TextureFont 2021-05-24 08:37:01 +08:00
Levin Li c79979a477 Query directly into localizedNameIndex for i18n completion 2021-05-24 08:36:34 +08:00
Andrew Tribick 3836d4cf23 [qt] Fix deprecation warnings 2021-05-23 16:25:38 +03:00
Levin Li f72f5993c6 Apply changes to frontends 2021-05-23 11:03:07 +08:00
Levin Li e3297b7775 Namespacing Marker* and Rect 2021-05-23 11:03:07 +08:00
Hleb Valoshka d1e62e9d23 [pkg] fix debian/control 2021-05-22 09:18:30 +03:00
Levin Li d6270ecac2 i18n for star and dsos in code 2021-05-22 09:34:34 +08:00
Hleb Valoshka c72c4aef51 [CI] Package some tools 2021-05-21 17:44:43 +03:00
Hleb Valoshka 88e2f742d7 Fix signed/unsigned mismatch in comparrisions 2021-05-21 17:44:43 +03:00
Hleb Valoshka 1c078b1186 Don't use deprecated methods 2021-05-21 17:44:43 +03:00
Hleb Valoshka 1e55054eb1 [pkg] add missing build-depdendency on cmake to debian/control 2021-05-21 17:44:43 +03:00
Levin Li 0fb2b4e7c0 Add an option to not search for localized version of a script 2021-05-17 08:00:40 +08:00
Levin Li 9d74b326a9 Implement skip_permission_denied and align behavior with std::filesystem 2021-05-17 08:00:17 +08:00
Levin Li 72367cc1b7 HiDPI mouse events for QT 2021-05-16 10:15:52 +08:00
Levin Li 631d109741 Support HiDPI on QT front end 2021-05-15 07:57:40 +08:00
transifex-integration[bot] 83f7ca59b2 Translate /po/celestia.pot in zh_CN
translation completed updated for the source file '/po/celestia.pot'
on the 'zh_CN' language.
2021-05-14 10:40:54 +08:00
transifex-integration[bot] abb34b4f99 Translate /po/celestia.pot in ru
translation completed for the source file '/po/celestia.pot'
on the 'ru' language.
2021-05-12 17:38:26 +03:00
Levin Li d79a4ac43b Sort DSO directories in extras directories 2021-05-11 16:28:13 +08:00
transifex-integration[bot] f11e4d6864 Translate /po/celestia.pot in bg
translation completed for the source file '/po/celestia.pot'
on the 'bg' language.
2021-05-10 23:30:24 +03:00
transifex-integration[bot] f1c8eb2ae5 Translate /po/celestia.pot in be
translation completed for the source file '/po/celestia.pot'
on the 'be' language.
2021-05-10 23:07:29 +03:00
Hleb Valoshka e356f9339e Fix a few strings 2021-05-10 23:03:53 +03:00
Hleb Valoshka 4c09e9d77a [cmake] very simple implementation of target_link_directories 2021-05-10 19:47:15 +03:00
munix9 4d67bf0cee Update INSTALL.md 2021-05-10 09:37:00 +03:00
Levin Li 87e2aefc0c Update azure-pipelines.yml and INSTALL.md 2021-05-09 15:10:51 +08:00
Levin Li bf10d8d6e1 Make theora and gtk usable on Mac 2021-05-09 15:10:51 +08:00
transifex-integration[bot] 5dd7444720 Translate /po/celestia.pot in bg
translation completed updated for the source file '/po/celestia.pot'
on the 'bg' language.
2021-05-08 19:20:42 +03:00
transifex-integration[bot] 12dbdac148 Translate /po/celestia.pot in bg
translation completed for the source file '/po/celestia.pot'
on the 'bg' language.
2021-05-08 19:17:28 +03:00
transifex-integration[bot] 97a393f6b2 Translate /po/celestia.pot in be
translation completed updated for the source file '/po/celestia.pot'
on the 'be' language.
2021-05-08 13:56:57 +03:00
Levin Li 657eb4a1d5 Speed up start_ru.cel
Also converting the file to UTF-8
2021-05-08 18:31:37 +08:00
Hleb Valoshka 08d2a0b7eb [i18n] Update translation files 2021-05-08 13:13:37 +03:00
Hleb Valoshka c906f917eb [i18n] translate more strings 2021-05-08 13:13:37 +03:00
Hleb Valoshka 668a6023e9 [win32] Remove useless check for nullptr 2021-05-08 13:13:37 +03:00
transifex-integration[bot] 50800f4f22 Translate /po/celestia.pot in bg
translation completed updated for the source file '/po/celestia.pot'
on the 'bg' language.
2021-05-06 23:14:48 +03:00
Hleb Valoshka 1ee185318e Update translations 2021-05-05 15:04:47 +03:00
Hleb Valoshka ca95ccc4b8 [qt] Place colons before closing "b" tag 2021-05-05 15:04:47 +03:00
Hleb Valoshka a7b5ed202f [i18n] Use C_ macro to correctly translate "Spacecraft" 2021-05-05 15:04:47 +03:00
Hleb Valoshka e65e535a2e [i18n] Add support for context-dependent translations 2021-05-05 15:04:47 +03:00
Hleb Valoshka dd9b91f459 Fix rendering of elliptical bodies' rings 2021-05-05 15:04:31 +03:00
Levin Li 499e115a70 Remove Eigen and fmt submodules 2021-05-03 21:01:55 +03:00
Hleb Valoshka cb8c1e8f03 [utils] add generic util::ResolveWildcard() method 2021-04-25 14:22:59 +03:00
Hleb Valoshka f8105c1bda [compat] add fs::path::replace_extension() 2021-04-25 14:22:59 +03:00
transifex-integration[bot] 4c5769ff17 Translate /po/celestia.pot in ru
translation completed for the source file '/po/celestia.pot'
on the 'ru' language.
2021-04-21 17:56:56 +03:00
Hleb Valoshka 173f2399ff Disable depth writing for objects rendered as points (Closes: #947) 2021-04-19 10:24:20 +03:00
Hleb Valoshka c9d2b4ac79 [gtk] Allow Gtk3 usage 2021-04-18 10:41:21 +03:00
Hleb Valoshka 460046776b [gtk] Update information shown in help->about 2021-04-18 10:41:21 +03:00
Hleb Valoshka 2efdd54233 [gtk] Set max width of tour description widget (Gtk3 compatibility)
It's too wide with Gtk3.
2021-04-18 10:41:21 +03:00
Hleb Valoshka a84958355a [gtk] Enable processing of scroll-event signals (Gtk3 compatibility) 2021-04-18 10:41:21 +03:00
Hleb Valoshka 0e97ade98a [gtk] Add own implementation of EGL-capable window 2021-04-18 10:41:21 +03:00
Hleb Valoshka e3c62264e5 Remove reference to bintray from INSTALL.md 2021-04-17 21:23:16 +03:00
Hleb Valoshka 2de9a72027 [gtk] Fix speed in Time menu 2021-04-14 08:44:48 +03:00
Hleb Valoshka 375e45f857 [gtk] Hide options dialog instead of removal (Closes: #17) 2021-04-14 08:44:48 +03:00
Hleb Valoshka 828e7d44e1 [gtk] Use cairo if present 2021-04-14 08:44:48 +03:00
Hleb Valoshka b43f2abe24 [gtk] Replace deprecated API with Gtk3 compatible 2021-04-14 08:44:48 +03:00
Levin Li 3de6707b0c Include setjmp.h for jpeg.cpp 2021-04-10 21:33:23 +08:00
SevenSpheres 9582eef708 Update star data
Update of temperatures and bolometric corrections for all main-sequence stars and brown dwarfs. Also updated temperature for the Sun.
2021-04-09 14:37:12 -04:00
transifex-integration[bot] 8746f9501b Translate /po/celestia.pot in zh_CN
translation completed updated for the source file '/po/celestia.pot'
on the 'zh_CN' language.
2021-04-09 21:32:24 +03:00
Hleb Valoshka 77af6f7419 Refactor images related code
* move different formats support to its own directory
 * add common CaptureBufferToFile subroutine
2021-04-06 10:23:53 +03:00
Hleb Valoshka ad5f3d31b3 Change texture clamp mode for stars to Texture::EdgeClamp
For better compatibility with OpenGL ES
2021-04-05 13:33:32 +03:00
Hleb Valoshka ccd0d64bdc [gtk] Fix buffer overflow in eclipse finder
Fixes: #935
2021-03-30 14:23:51 +03:00
Levin Li 37de4c3784 Fix incorrect bracket around & 2021-03-30 15:23:54 +08:00
Hleb Valoshka 94ed734f83 Add Doxygen config 2021-03-29 10:35:56 +03:00
Levin Li 164d8ef8bd Avoid usiing reserve and assign by index, as it might result in undefined behavior 2021-03-27 22:30:39 +08:00
Levin Li 80fb64ecc5 Use quoted include for lua.hpp 2021-03-27 22:30:39 +08:00
Levin Li dc88685c2c Fix compilation with std filesystem 2021-03-27 22:30:39 +08:00
Hleb Valoshka b8dd1d2282 Refactor software DDS decoder
* Use C++ memory API (new/delete) instead of malloc/free
 * Remove unneeded variables
 * Format using clang-format
 * Use PackRGBA instead of hardcoding color value
2021-03-19 11:00:49 +03:00
Levin Li 2f7662fd3b Avoid undefined behavior caused by passing negative value to isdigit 2021-03-15 17:44:55 +08:00
Levin Li 7a21915460 Add missing using namespace std; 2021-03-15 17:44:55 +08:00
Levin Li 2f12dd9452 Add some utils for apple platform and remove functions for portable builds 2021-03-15 17:44:55 +08:00
Levin Li 08037d78e8 Add cctype include for toupper 2021-03-15 17:44:55 +08:00
Levin Li 8540ed5d9f Move UI related code to celestia/win32 2021-03-15 17:44:55 +08:00
Levin Li bce3dd0b9d Use new[] for GalaxyVertices 2021-03-14 20:40:59 +08:00
Levin Li 4959ffbe6e Correctly set __cplusplus with /Zc:__cplusplus 2021-03-14 20:40:59 +08:00
Levin Li a32e905556 Fix for lua 5.4 2021-03-14 20:40:59 +08:00
Levin Li e24d7e002d Use string_view.data instead of .begin and .end 2021-03-14 20:40:59 +08:00
Levin Li 2ccf453644 Make dds_decompress .cpp instead of .c 2021-03-14 20:40:59 +08:00
Hleb Valoshka f16c355d11 Add a new body parameter "reflectivity" complementing albedos 2021-03-10 17:51:10 +03:00
Hleb Valoshka 8e0efe3868 Build GTK+ frontend in CI 2021-03-09 09:07:21 +03:00
Hleb Valoshka de06f3d3cd Fix gtk+ frontend build failures caused by #925 2021-03-09 09:07:21 +03:00
Hleb Valoshka f89d9068ab [win] copy old favorites file to the new location 2021-03-09 09:07:21 +03:00
Hleb Valoshka 93ec39a836 Add guards for portable builds
ports commit c4f02af from 1.6.x
2021-03-09 09:07:21 +03:00
Hleb Valoshka 451fe6ffcb Read favorites file from system data directory
This commits ports 8ba1ab7 from 1.6.x branch
2021-03-09 09:07:21 +03:00
Hleb Valoshka df25eed5a2 Add fs::create_directory() and move fs utility function to their own file 2021-03-09 09:07:21 +03:00
Hleb Valoshka f1d84435a0 Add missing operators and constructors to array_view 2021-03-09 09:07:21 +03:00
Hleb Valoshka 757fda0e36 Disable more MSVC warnings 2021-03-08 14:08:36 +03:00
Hleb Valoshka 7069cebb90 Fix missing return statement 2021-03-08 14:08:36 +03:00
Hleb Valoshka 6b14925798 Produce release builds without exceptions and RTTI 2021-03-08 14:08:36 +03:00
Hleb Valoshka f5f8770f7f Keep Url objects instead of pointer in history 2021-03-08 14:08:36 +03:00
Hleb Valoshka 332840fdd1 Refactor Url class
* Critical change:
   - Drop Url versions 1, 2 and 4. Versions 1 and 2 are
     too old and can't be handled properly. Version 4
     was added to handle 64 bit RenderFlags but we can
     encode them in backward compatible way by adding a
     new parameter "nrf" ignored by Celestia 1.6.

 * Use string_view to reduce memory allocation during Url
   parsing.

 * Use non-throwing functions to parse numbers.
2021-03-08 14:08:36 +03:00
Hleb Valoshka db9dd5cb18 Extract string utilities to own file 2021-03-08 14:08:36 +03:00
Hleb Valoshka 5f911ca18e Add ISO-8801 time format used in URL to astro::Date 2021-03-08 14:08:36 +03:00
Hleb Valoshka fe810135f6 Translate and simplify displayed RA/Dec 2021-03-08 14:08:36 +03:00
Hleb Valoshka b954e279a2 A bit of refactoring in legacy scripting support 2021-03-08 14:08:36 +03:00
Hleb Valoshka ba7e0602a0 Remove 'using namespace std' from header files 2021-03-08 14:08:36 +03:00
Hleb Valoshka 8f46b2b978 astro - use std::string_view where appropriate 2021-03-08 14:08:36 +03:00
Hleb Valoshka 0dab2d9d5b astro - add useful literals
* au (astronomic units)
 * ly (light years)
 * c (speed of light)
2021-03-08 14:08:36 +03:00
Hleb Valoshka b714d109af Fix warnings shown by MinGW compiler 2021-03-03 20:18:32 +03:00
Hleb Valoshka 7043d45164 Restore possibility to blacklist GL extensions 2021-03-03 20:18:32 +03:00
Hleb Valoshka 41c4ecf47c Fix RenderFlags' compatibility with 1.6.x 2021-03-03 20:18:32 +03:00
Hleb Valoshka 959d31de70 Fix LuaState::loadScript() usage 2021-03-03 20:18:32 +03:00
Hleb Valoshka d41a375c04 Use std::tie in `operator<` 2021-03-03 20:18:32 +03:00
Hleb Valoshka f265e70607 Add an array_view class as a read-only analog of c++20's std::span 2021-03-03 20:18:32 +03:00
Hleb Valoshka bb9551bcf5 Add a C++17 compatible charconv, from_chars only 2021-03-03 20:18:32 +03:00
Hleb Valoshka 95c24446c1 Add a C++17 compatible string_view implementation
Actually there are some limitation caused by the fact that other classes
(e.g. std::string) don't know about string_view, so such limitation must
be handled manually.
2021-03-03 20:18:32 +03:00
Levin Li 00a395d3c6 Fix crash due to use of uninitialized memory 2021-03-01 19:24:06 +08:00
Levin Li f761c59f32 Fix crash in rendering orbits again 2021-02-26 20:56:16 +08:00
Darshaka Pathirana 52cb444d02 Update Debian 10 (buster) installation instruction
Avoid using `apt-key add -` and follow Debian best-practices on how to use 3rd party Debian repository signed keys:

* https://michael-prokop.at/blog/2021/02/16/how-to-properly-use-3rd-party-debian-repository-signing-keys-with-apt/
* https://wiki.debian.org/DebianRepository/UseThirdParty#Sources.list_entry

That way you can also encourage the user to check the GPG fingerprint.

Added Debian codename "buster", so people can find it when searching for it in this repository.

Also removed Bintray URL as it is deprecated and is going "sunset" on May 1st 2021,
see: https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/
2021-02-26 15:56:08 +03:00
Levin Li e0e49a6d24 Call flush in end and only bind buffer once 2021-02-22 20:17:28 +08:00
dependabot[bot] a8bfcc9691 Bump cryptography from 3.2 to 3.3.2 in /src/tools/celestia-gaia-stardb
Bumps [cryptography](https://github.com/pyca/cryptography) from 3.2 to 3.3.2.
- [Release notes](https://github.com/pyca/cryptography/releases)
- [Changelog](https://github.com/pyca/cryptography/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/3.2...3.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-12 01:08:32 +03:00
Hleb Valoshka 5360a165e0 Update debian/copyright for new files 2021-01-14 16:46:12 +03:00
Hleb Valoshka 18c5126459 Copy console output into a file
Currently Qt frontend only, can be activated by passing -l/--log option:
celestia-qt --log /tmp/celestia.log
2021-01-14 16:45:57 +03:00
Hleb Valoshka 6b512f5fe9 Drop software S3/DXT compression support 2021-01-14 16:45:42 +03:00
Levin Li d6a5b7240e Fix point sprite not scaled in models 2021-01-05 13:50:06 +08:00
Levin Li 6e9bf032d8 Remove dead frontends 2021-01-04 16:28:04 +08:00
Levin Li 0c6ef0d0d6 Draw lines in models with triangles 2021-01-04 08:32:52 +08:00
Levin Li b21a5fd404 Draw lines with lines when lineWidth < maxLineWidth 2021-01-03 17:21:55 +08:00
Levin Li 668fd219cc Render lines with triangles 2021-01-03 17:21:55 +08:00
Georgi 7d4398c088 Wording Improvements to BG 2
Redo the last PR.
2021-01-01 13:39:57 +03:00
Levin Li 160d1b95cd Fix galaxy flickering on zooming in 2020-12-29 15:16:29 +08:00
Levin Li c507171ee3 Update azure-pipelines.yml 2020-12-29 15:15:36 +08:00
Levin Li fe6a832941 Update .appveyor.yml
Temporary fix to appveyor build.
2020-12-09 19:26:14 +08:00
SevenSpheres 694110ccc3 Update celestia-gaia-stardb
v1.0.4, hopefully final version
2020-12-06 12:26:03 -05:00
Levin Li c31e0da681 Show line width range in info 2020-12-05 23:00:31 +08:00
SevenSpheres 4e5d5bd33b Auto-update version number in README 2020-12-04 09:27:38 -05:00
Levin Li e2b9598f17 Always use gl_PointSize in shader to set point size 2020-12-04 19:46:32 +08:00
Hleb Valoshka 3ece44ff2a Update latest release version and download page 2020-12-03 20:18:08 +03:00
Levin Li ddf92cb77c Set up CI with Azure Pipelines
[skip ci]
2020-12-03 23:26:12 +08:00
Levin Li 22590114d1 Set line width according to DPI 2020-12-03 15:14:39 +08:00
Levin Li 21cba1eaeb Fix orbit depth bug in rendering 2020-12-01 15:59:41 +08:00
Levin Li 6848f65ee9 Fix point star rendering 2020-11-29 18:21:51 +08:00
Levin Li a0186828eb Fix largestar shader on some platforms 2020-11-22 14:48:34 +08:00
Levin Li b465017de8 Support fisheye projection, dumb version 2020-11-20 23:52:23 +08:00
Levin Li 62b5f58351 Fix GTK building with gettext
@munix9
2020-11-18 08:06:54 +08:00
SevenSpheres 753efbf6ac Update celestia-gaia-stardb 2020-11-17 12:21:48 -05:00
Levin Li 0a891c4a11 More eigen fixes 2020-11-17 21:10:01 +08:00
Levin Li b8caa691f4 Use cmake define for filesystem include 2020-11-17 21:08:55 +08:00
Levin Li 9678af503e Update .travis.yml 2020-11-17 20:57:54 +08:00
Levin Li 2d16342b5f Strip alpha value in save screenshot as PNG as well 2020-11-14 10:10:18 +08:00
Levin Li 16f06574ab Use GL_RGBA to read pixels on GLES 2020-11-12 22:54:06 +08:00
Levin Li b64abb2a56 Allow to block text display with text display hander 2020-11-09 22:29:03 +08:00
Levin Li 1a2ccd2d59 Add callback for text display 2020-11-07 07:20:50 +08:00
dependabot[bot] 6739779ce0 Bump cryptography from 2.7 to 3.2 in /src/tools/celestia-gaia-stardb
Bumps [cryptography](https://github.com/pyca/cryptography) from 2.7 to 3.2.
- [Release notes](https://github.com/pyca/cryptography/releases)
- [Changelog](https://github.com/pyca/cryptography/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/2.7...3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-28 13:29:19 +08:00
Levin Li 021d821031 Automatically adopt font DPI from screen DPI 2020-10-27 20:33:10 +08:00
Levin Li b1d7797e54 Restore sun halo 2020-10-27 16:53:59 +08:00
Levin Li aca0243488 Add scale for globular shader for HiDPI 2020-10-25 16:29:26 +08:00
Levin Li 8129589490 Fix potential crash in galaxy rendering 2020-10-23 16:05:20 +08:00
Levin Li 8fe5f876a3 Fix wrong constellation name in zh_CN.po 2020-10-19 20:24:18 +08:00
Levin Li 2a6abbce9d Support configurable pick tolerance 2020-10-11 16:53:37 +08:00
Levin Li 536c064160 Fix crash in DDS and galaxy picking 2020-10-11 16:53:12 +08:00
Levin Li 17cd02b3cc Add view port effect for post processing 2020-10-10 20:18:15 +08:00
Levin Li 1f8cc6bb52 Enable point fade 2020-10-09 01:23:42 +08:00
Levin Li 1f150db611 separate modelview and projection 2020-10-06 13:39:09 +08:00
Levin Li 5f2484cf5a Fix depth test for rendering object 2020-09-29 17:32:35 +08:00
Levin Li 94930934aa Safety check 2020-09-28 20:37:31 +08:00
Levin Li 431f2b7a98 Support DXTc software decompressing 2020-09-28 20:37:31 +08:00
Levin Li d92e5a2151 Update .appveyor.yml 2020-09-28 11:13:16 +08:00
Melroy van den Berg 6891b7560b Change domain to https://celestia.space/ 2020-09-08 21:56:32 +03:00
Tom Callaway 316d7c4a06 update ambiguous licensing 2020-08-25 12:37:51 +03:00
Georgi acd80d7dc3 Update bg.po 2020-08-09 11:42:07 +03:00
Georgi b9fb55d3aa Update bg.po 2020-08-09 11:42:07 +03:00
Georgi 2e16877701 Update start_bg.cel 2020-08-09 11:42:07 +03:00
Georgi 8378a3f72b Update guide_bg.cel 2020-08-09 11:42:07 +03:00
Georgi a20ded92e8 the actual commit 2020-08-09 11:42:07 +03:00
Georgi 331c2b0725 Update controls_bg.txt 2020-08-09 11:42:07 +03:00
Georgi b6b6d0ee66 Update TRANSLATORS 2020-08-09 11:42:07 +03:00
Georgi c5c40dfcd8 Add files via upload 2020-08-09 11:42:07 +03:00
Konstantin Podsvirov 5c17a06661 Building celestia-sdl with MinGW
Tested with SDL2 library from MSYS2 software distribution.
2020-08-07 11:48:39 +03:00
Hleb Valoshka 929390eec6 Use internal state management to check MSAA state 2020-08-05 09:58:26 +03:00
Hleb Valoshka 8768f3497a Refactor depth state changing 2020-08-05 09:58:26 +03:00
Hleb Valoshka c26f64a89e Remove unneeded texture unbinds 2020-08-05 09:58:26 +03:00
Hleb Valoshka 6e8dbde814 Remove unneeded glUseProgram(0) 2020-08-05 09:58:26 +03:00
Lars Rosenboom 18dd48db0e Update INSTALL.md
freetype was missing in the list of "required packages" on macOS (tried to compile on 10.15.6 Catalina yesterday).
2020-08-03 09:53:21 +03:00
Levin Li 0d4cda24ed Add missing log level in DPRINTF 2020-08-02 19:32:21 +08:00
Hleb Valoshka 908f04d271 Make extinction distance dependent 2020-08-02 09:04:57 +03:00
Hleb Valoshka a8b609d75a Add extinction parameter for stars 2020-08-02 09:04:57 +03:00
Hleb Valoshka 1e95fdc777 Use Star::getApparentMagnitude instead of astro::absToAppMag 2020-08-02 09:04:57 +03:00
Levin Li f1517ee88d More fixes to is_directory check 2020-08-02 07:57:44 +08:00
SevenSpheres de411493c6 Add celestia-gaia-stardb 2020-08-01 10:06:17 +08:00
Hleb Valoshka 4abb9d2bb0 Add apparent extinction parameter for stars
Closes: #599
2020-07-26 18:39:06 +03:00
Hleb Valoshka 89991fb773 Natural order sorting for typed text completions 2020-07-26 11:14:04 +03:00
Hleb Valoshka d3e0912a71 Fix incorrectly calculated temperature for barycenter orbiting planets
Closes: #812
2020-07-26 08:31:03 +03:00
Hleb Valoshka 8946c34d7b Fix console up scroll 2020-07-25 09:41:21 +03:00
Hleb Valoshka 686d82e6c1 Replace fmt::fprintf with DPRINTF in albedo warning
Will restore in 1.8
2020-07-25 09:41:21 +03:00
Georgi ab63836de8 Update bg.po 2020-07-24 09:16:35 +03:00
Georgi 98f4ab83b8 Constellations into Bulgarian language 2020-07-24 09:16:35 +03:00
Levin Li 68a741d668 Fix console display with hidpi 2020-07-23 14:38:52 +08:00
Hleb Valoshka 6f0d9226a5 Calculate temperature for planets orbiting barycenters
Closes: #674
2020-07-23 09:36:29 +03:00
Hleb Valoshka 15ce6b1c91 Prefer asteroids over moons when getting orbit classification
Closes: #512
2020-07-23 09:36:10 +03:00
Hleb Valoshka 9c78f9c705 Allow to skip files in "extras"
Closes: #416
2020-07-22 09:04:08 +03:00
Hleb Valoshka 3fc58d3c55 Allow OrbitColor overriding for reference points
Closes: #805
2020-07-21 14:39:20 +03:00
Hleb Valoshka 8cec287e10 Sync turkish and chinese translations with transifex 2020-07-19 18:24:09 +03:00
Hleb Valoshka 84835d1cf6 Update lithuanian translation based on #801 2020-07-19 18:24:09 +03:00
Levin Li 96165c1153 msgmerge 2020-07-15 19:37:54 +08:00
Levin Li e90a3ea8ec Update ja.po 2020-07-15 19:37:54 +08:00
Hleb Valoshka e5f662ef65 Update translation template 2020-07-14 19:22:01 +03:00
Hleb Valoshka e6d3836e15 Extract names from dwarfplanets.ssc and minormoons.ssc 2020-07-14 19:22:01 +03:00
Hleb Valoshka 82e61060c5 Take loader initialization out of loop 2020-07-13 11:24:14 +03:00
Hleb Valoshka 219678fa98 Sort extras entries before loading 2020-07-13 11:24:14 +03:00
Hleb Valoshka 39d62659f9 Fix build failures reported by munix9 2020-07-13 11:23:50 +03:00
Hleb Valoshka a0f6a2c1ff Don't build static archives
1) We don't need them
2) There are issues with MinGW as CMake adds *.a together with *.so to
linker, so it's unable to resolve proper source of exported functions
2020-07-12 10:41:53 +03:00
Hleb Valoshka 0eda63121c Provide common celestia library instead of linking it to all frontends 2020-07-12 10:41:53 +03:00
Hleb Valoshka d7257adacc Don't distribute fonts with debian package, use fonts-dejavu-core package 2020-07-12 10:41:53 +03:00
Hleb Valoshka 4d911e41a6 Don't install legacy *.txf fonts 2020-07-12 10:41:53 +03:00
Hleb Valoshka ddbe9ddd1d Refactor astro.*/url.* to remove extern global variables 2020-07-12 10:41:53 +03:00
Hleb Valoshka 41f6b95c72 Add state tracking for depth 2020-07-08 15:09:18 +03:00
Hleb Valoshka e2bbd838a5 Add state tracking for blending 2020-07-08 15:09:18 +03:00
Hleb Valoshka 0811e7c350 Remove make_shared and make_unique to keep single style 2020-07-07 08:15:18 +03:00
Levin Li 7c81df8850 Fix crash due to init of TwoVectorFrame 2020-07-06 08:24:59 +08:00
Levin Li 06c688ad40 Larger star on hidpi screens 2020-07-04 19:39:37 +08:00
Levin Li c8338ea91f Fix point sso rendering on macOS 2020-07-01 21:43:53 +08:00
Hleb Valoshka 9e956abe3d Remove support for legacy TXF fonts 2020-06-24 17:14:31 +03:00
Levin Li 56ac73be36 Replace is_directory checking method 2020-06-23 21:13:12 +08:00
Hleb Valoshka 0754b85ee1 Add `scroll` method for Console 2020-06-23 14:41:40 +03:00
Hleb Valoshka ce533c9cc1 Make planet to point transition less ugly 2020-06-22 21:25:44 +03:00
unknown 94cd51ac64 Replace LF with CRLF for render info on Windows 2020-06-22 17:27:10 +08:00
Hleb Valoshka 4fd0562386 [win] promote warning C4316 to an error
...to prevent program abnormal termination if classes with members of
Eigen::* types are misaligned in memory
2020-06-22 08:24:10 +03:00
Hleb Valoshka 5b7ad7f9ca Properly align classes with members of Eigen::* type 2020-06-22 08:24:10 +03:00
Hleb Valoshka bd3cd7cc06 Provide win32 builds with debug information enabled 2020-06-22 08:24:10 +03:00
Levin Li 1a29294772 Check path empty before check is_directory 2020-06-22 08:29:42 +08:00
unknown 10e25e808d Do not call bind_text_domain_codeset 2020-06-21 23:35:51 +08:00
unknown 313f762a80 Add native font control to dialogs 2020-06-21 23:35:51 +08:00
unknown 852b696ea2 Fix crash on eclipse finder 2020-06-21 23:35:51 +08:00
unknown b6334718ba Fix string cut off during conversion 2020-06-21 23:35:51 +08:00
Levin Li 14df4fc955 Support reading font face for a specific index from .cfg 2020-06-21 23:17:04 +08:00
Levin Li 9d4043b9fa Fix potential crash caused by substring index 2020-06-21 19:31:07 +08:00
Hleb Valoshka 1c668d3d7f Fix warnings reported by clang/gcc 2020-06-20 10:11:09 +03:00
Levin Li 0e1983f48a Update CMakeLists.txt 2020-06-20 14:00:32 +08:00
Levin Li dbe84c16c4 Update CMakeLists.txt
On Mac with Xcode, CMAKE_CXX_COMPILER_ID is AppleClang
2020-06-20 14:00:32 +08:00
Levin Li 42c7625bf6 Additional safe area inset change
Console background
2020-06-18 23:10:58 +08:00
Hleb Valoshka b18ad6189c Fix alignment of TextureFontPrivate
should fix SIGBUS / BUS_ADRALN on Android
2020-06-17 13:13:34 +03:00
Hleb Valoshka 5124962d07 [qt] Don't use deprecated features 2020-06-16 21:59:21 +03:00
Hleb Valoshka 9a91bfebdb Fix some warnings found by clang++ 2020-06-16 21:59:21 +03:00
Hleb Valoshka f0110afdd8 [cmake] Add useful policies 2020-06-16 21:59:21 +03:00
Hleb Valoshka 794e833a42 Remove legacy build files 2020-06-16 21:59:21 +03:00
Hleb Valoshka ea4f89113a Use flush() before rebuilding atlas
...to avoid garbled output due to changed texture
2020-06-16 21:59:21 +03:00
Levin Li 2228773646 Better support for HiDPI for text 2020-06-16 12:32:27 +08:00
Hleb Valoshka 4619ba1a1a Check angle between normal and a light when applying shadow
to avoid shadow projection on back side (if looking from the light)
2020-06-15 19:27:46 +03:00
Hleb Valoshka 6b8a1fe6b3 Fix flickering edges on iOS
Li: "rq * rq - qq might be negative, and produce nan in this case,
which got translated into the largest float point number to displayed
as white"
2020-06-15 19:27:46 +03:00
Hleb Valoshka c588f80824 OpenGL ES 2.0 initial support 2020-06-15 19:27:46 +03:00
Levin Li 20b066cbcd Fix garbled text 2020-06-15 23:41:40 +08:00
Levin Li 2ce81471f6 Set font with DPI value 2020-06-10 19:41:41 +08:00
Hleb Valoshka ba308e4f19 Fix typo 2020-06-10 09:06:57 +03:00
Hleb Valoshka 0b6940565a [celx] Update ColorAttributeIndex value in gl.Color
...to fix font colors
2020-06-09 21:28:37 +03:00
Hleb Valoshka 457fcc1bac [celx] Return text width from font:render
...instead of updating ModelView matrix, fixes text rendering in LUT5
2020-06-09 21:28:37 +03:00
Hleb Valoshka a33e24914b [celx] Add method celestia:version() 2020-06-09 21:28:37 +03:00
Hleb Valoshka d9243202fa [celx] Add method font:unbind() 2020-06-09 21:28:37 +03:00
Hleb Valoshka e9c7de007a Add missing Overlay::beginText/endText 2020-06-09 13:53:34 +03:00
Levin Li 0110862f27 Allow to change font after initialization 2020-06-08 18:19:35 +08:00
Levin Li a0eb4038f1 Support safe area insets 2020-06-06 09:12:07 +08:00
Hleb Valoshka 4731334605 Small optimization 2020-06-01 10:36:42 +03:00
Hleb Valoshka e8f813ab38 Round label position to decreate jittering 2020-06-01 10:36:42 +03:00
Hleb Valoshka 29cc9b0ccf Revert "Decrease annotations jittering"
This reverts commit c09672bab3.
2020-06-01 10:36:42 +03:00
Hleb Valoshka ec41cfde60 Refactor TextureFont::render()
1. Don't update ModelView Matrix in TextureFont::render()
  2. Remove variants without offset
2020-06-01 10:35:42 +03:00
Hleb Valoshka 7a062af1ec Optimize sphere rendering using degenerate triangles
Total time to render a 640x480 frame drops from 6.8 ms (6.2 the best case)
to 2.7 ms (2.8 the worst case) (tested on Intel UHD Graphics 620)
2020-05-26 16:09:08 +03:00
Hleb Valoshka cdb7529563 Update translations 2020-05-22 13:33:11 +03:00
Hleb Valoshka c40b186eba Increase galaxy memory chunk to decrease number of draw calls
Total number of draw call goes down from ~7k to ~2k on initial scene
2020-05-22 09:58:42 +03:00
Hleb Valoshka 6b5a004008 Unbind font before restoring matrices in console
Closes: #743
2020-05-18 19:40:00 +03:00
Hleb Valoshka 9966d759c9 Optimize font rendering 2020-05-17 18:40:57 +03:00
Levin Li 91b2cf32eb Update .travis.yml
Update to Xcode 11.4 and use current version of fmt
2020-05-13 08:48:18 +08:00
Hleb Valoshka 54da875bf8 [sdl] Initial implementation of a basic SDL interface 2020-05-12 18:26:27 +03:00
Hleb Valoshka 9863f8bea9 Remove unneeded fixed pipeline wrappers 2020-05-12 15:59:56 +03:00
Hleb Valoshka 1fb1f2de91 Replace fixed function GL code with GL ES compatible one 2020-05-12 15:59:56 +03:00
Hleb Valoshka e9282b9d6d Refactor console and overlay to avoid GL matrices usage 2020-05-12 15:25:52 +03:00
LukeCEL d42862ef84 [tools] Implement spherical option for new star database format in startextdump 2020-05-11 08:18:29 +03:00
Hleb Valoshka a8b6ed4b80 Partially revert 31f28f6 to fix selection pointer rendering 2020-05-07 20:38:55 +03:00
Hleb Valoshka 22c080901b [tools] Don't allocate file streams on the heap 2020-05-07 20:37:26 +03:00
Hleb Valoshka fd79dee429 [tools] Don't create ofstream instances on the heap
Closes: #722
2020-05-06 21:55:02 +03:00
Hleb Valoshka 75922bd0c7 Use glBufferSubData instead of glMapBuffer in CurvePlot 2020-05-06 16:20:44 +03:00
Hleb Valoshka 9abfb5c951 LODSphereMesh compatibility with OpenGL ES and cleanup
Important points:
 * Use glBufferSubData instead of glMapBuffer, because
   - the former is usually faster
   - the latter is not supported by OpenGL ES 2
 * Always use VBO, it should be faster in this usage pattern
 * Remove debug code, I doubt we will ever use it
2020-05-06 16:20:27 +03:00
Levin Li 6d1616c2ca Update .gitignore
ignore auto-generated .DS_Store on Mac
2020-05-06 13:58:21 +08:00
Hleb Valoshka c5e0697a6c [cmake] restore compatibility with older cmake 2020-05-05 16:51:57 +03:00
Hleb Valoshka 7e499f8fd9 Add FramebufferObject::isSupported() 2020-05-05 16:51:57 +03:00
Hleb Valoshka a75312e748 Remove EXT/ARB suffixes
CubeMaps & BGR(A) are core feature in 2.1

FBO variants are handled by libepoxy
2020-05-05 16:51:57 +03:00
Hleb Valoshka ae27c1a1b0 Drop GLEW support 2020-05-05 16:51:57 +03:00
Hleb Valoshka b86c4aba4e Allow absolute paths for fonts 2020-05-05 13:45:28 +03:00
Hleb Valoshka 541e9d78b3 Use custom RenderContext to create shadow map 2020-05-01 23:31:25 +03:00
Hleb Valoshka c26faf70e2 Remove "simple" shaders 2020-04-30 10:23:19 +03:00
Hleb Valoshka daf34b5656 Port to "unlit" lighting model 2020-04-30 10:23:19 +03:00
Hleb Valoshka b781d7a7c8 Add "unlit" shader lighting model 2020-04-30 10:23:19 +03:00
Hleb Valoshka 7d81d26112 Add stellar class WO 2020-04-27 11:49:03 +03:00
Hleb Valoshka 5c6715d148 Refactor a few methods to make them more readable 2020-04-24 09:54:19 +03:00
Hleb Valoshka 7287fb0925 Use already calculated variable 2020-04-24 09:54:19 +03:00
Hleb Valoshka 31f28f6771 Make model & projection matrices float and change their initialization 2020-04-24 09:54:19 +03:00
Hleb Valoshka b651d31928 Change location of some code parts 2020-04-24 09:54:19 +03:00
Hleb Valoshka 1cf5c868cf Remove dead code 2020-04-24 09:54:19 +03:00
Hleb Valoshka b4bab385a0 Use private method instead of passing camera orientation to private methods 2020-04-24 09:54:19 +03:00
Hleb Valoshka 728b384a70 Make smooth line control function private 2020-04-24 09:54:19 +03:00
Hleb Valoshka 898b19a3a6 Fix color of globular markers 2020-04-24 09:54:19 +03:00
Hleb Valoshka 83f1b90397 Move solar system sbjects rendering to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka 6be2deb920 Rename renderLocations to locationsToAnnotations 2020-04-24 09:54:19 +03:00
Hleb Valoshka 0653b81762 Move depth partitioning to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka 6b8e3c864a Move eclipsed star exposure correction to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka dfd315ecc7 Move renderList culling to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka b30e12cb87 Move magnitude correction inside atmosphere to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka f8324ecd93 Move near systems lists building to own subroutine 2020-04-24 09:54:19 +03:00
Hleb Valoshka 4d13a302b6 Move DSORenderer to its own files 2020-04-24 09:54:19 +03:00
Hleb Valoshka 47b123b183 Optimize annotations rendering using a precomputed projection matrix 2020-04-24 09:54:19 +03:00
Hleb Valoshka c09672bab3 Decrease annotations jittering 2020-04-24 09:54:19 +03:00
Hleb Valoshka 9f371f457b Refactor annotations rendering 2020-04-24 09:54:19 +03:00
Hleb Valoshka f32e8af444 Refactor markers and selection cursor rendering 2020-04-24 09:54:19 +03:00
Hleb Valoshka 53fee32967 Make AtmosphereExtinctionThreshold float constexpr 2020-04-24 09:54:19 +03:00
Hleb Valoshka 4b6062838b Cleanup renderFlags definitions 2020-04-24 09:54:19 +03:00
Hleb Valoshka 97a2ae6330 GL_QUAD_STRIP -> GL_TRIANGLE_STRIP 2020-04-24 09:54:19 +03:00
Hleb Valoshka a7776ccfff Remove polygon mode modification in comet rendering code 2020-04-24 09:54:19 +03:00
Hleb Valoshka d510b2bf6d More methods to work with Color 2020-04-24 09:54:19 +03:00
Hleb Valoshka 21754e0946 Add "_deg" literal
Instead of degToRad(60.0) we can use 60.0_deg
2020-04-24 09:54:19 +03:00
Hleb Valoshka 5c4f6aae87 Update information shown in "OpenGL Info" window 2020-04-19 20:40:28 +03:00
Hleb Valoshka 91131a29cb Remove CustomTemplate from Globulars
Closes: #697
2020-04-14 21:17:45 +03:00
Hleb Valoshka 72bf923741 Better handle libintl dependencies 2020-04-13 09:38:48 +03:00
Hleb Valoshka 91c3e618c2 [travis] pin fmt version 6.1.2 to workaroud build failure
See https://github.com/fmtlib/fmt/issues/1631 for more information.
2020-04-13 13:39:28 +08:00
Levin Li 65541e2e17 Update AUTHORS 2020-04-11 22:03:43 +08:00
Levin Li c6a1b75dcf Update INSTALL.md, rules, CMakeLists.txt 2020-04-11 22:03:24 +08:00
Hleb Valoshka b17d70bcb4 Use glVertexPointer instead of glVertexAttribPointer(0) 2020-04-10 12:22:28 +03:00
Hleb Valoshka 7e5965d437 Remove vsync support
# X11 only
# Basically useless with double buffering
2020-04-10 12:22:28 +03:00
Hleb Valoshka 40d77e41af Another cleanup session in render.cpp
... those things were used in old render paths only
2020-04-10 12:22:28 +03:00
Hleb Valoshka 25c4b50ddf Show planet ring by default 2020-04-10 12:22:28 +03:00
Hleb Valoshka ec1e81e6be Update .gitignore 2020-04-10 12:22:28 +03:00
Hleb Valoshka ef74883114 Set ios::binary for xyzvbin files 2020-04-09 13:43:52 +03:00
Hleb Valoshka 359ee75e81 Remove unused deprecated parameter 2020-04-06 20:30:46 +03:00
Hleb Valoshka 3599f14e12 Restore support for BlendTexture property
Closes: #602
2020-04-06 20:30:46 +03:00
Hleb Valoshka 845c1a5454 Fix keys compare in ShaderManager 2020-04-06 20:30:46 +03:00
Hleb Valoshka 96feeceae4 Add RingRenderData to hide implementation specific data 2020-04-05 13:21:50 +03:00
Hleb Valoshka 64ac62d06d Remove const and inline attribures in Overlay 2020-04-05 13:21:50 +03:00
Hleb Valoshka e5d54df6bb Initial implementation of self shadowing
Known bugs and limitations:
  * Only the 1st light source casts shadows.
  * Thin objects have incorrect shadows, see ISS.
2020-04-03 11:31:09 +03:00
SevenSpheres 9413154ec5 Update author list 2020-04-01 11:19:23 +03:00
Hleb Valoshka 1ca9db3212 Fix some warnings reported by msvc
1) warning C4390: ';': empty controlled statement found; is this the intent?
2) warning C4305: 'argument': truncation from 'double' to 'float'
2020-03-29 17:58:49 +03:00
Hleb Valoshka 04c187d776 [qt] Don't use deprecated Qt features 2020-03-29 17:58:49 +03:00
Hleb Valoshka a325973907 Install data files from git submodule 2020-03-29 09:12:13 +03:00
Hleb Valoshka aa03364c90 [cmake] don't install data files 2020-03-29 09:12:13 +03:00
Hleb Valoshka e336d452fa deb: remove celestia-data package 2020-03-29 09:12:13 +03:00
Hleb Valoshka 8bb74a6ef3 [win32] Fix possible failure if config was not read 2020-03-26 11:24:56 +03:00
Hleb Valoshka bd7f9ebc9b Use libepoxy instead of GLEW
Unlike GLEW libepoxy supports OpenGL ES and better handles cases with
functions provided by different extensions, e.g. the same functions
provided by vendor/EXT/ARB/core.
2020-03-26 11:24:56 +03:00
Hleb Valoshka 15bf42104a Use core/FBO function to generate mipmaps instead of glu 2020-03-23 09:27:10 +03:00
munix9 b83fc8a037 Update openSUSE/AppImage infos 2020-03-21 17:31:36 +03:00
munix9 846e0270d7 Enable TTF support for Debian/Ubuntu builds 2020-03-21 17:10:57 +03:00
Hleb Valoshka 31b98ec657 Add DejaVu fonts and use them by default 2020-03-21 13:21:03 +03:00
Hleb Valoshka b26777dc8c Compute shader variables inside main
Fixes shader compilation with gl4es translation layer
2020-03-17 12:24:01 +03:00
Hleb Valoshka df508a0c59 Make global/static VO class instances again
Closes: #659
2020-03-16 19:31:25 +03:00
pirogronian f75f86436a Use find method in lua getstar and getdso. 2020-03-13 12:43:16 +01:00
Hleb Valoshka 91c09087f6 Use GL3/GLES compatible particle rendering
Closes: #549
2020-03-11 01:20:17 +03:00
Hleb Valoshka 643c705357 Fix VertexObject destruction 2020-03-07 15:40:39 +03:00
Hleb Valoshka f67b331f02 Show error if an incorrect URL passed to CelestiaCore::goToUrl 2020-03-07 15:40:39 +03:00
Hleb Valoshka 154c06e0a7 Fix failure if an incorrect URL is pasted
Closes: #637

+ small code cleanup
2020-03-07 15:40:39 +03:00
Hleb Valoshka 815c0e46a4 Initial unit tests implementation 2020-03-07 11:05:35 +03:00
Hleb Valoshka b9a4516534 Move test data and scripts to test directory 2020-03-07 11:05:35 +03:00
SevenSpheres 8efb8a2204 Add newlines in solarsys.cpp 2020-03-07 11:04:35 +03:00
pirogronian e8d0e4d1d7 Move blockarray to celutil 2020-03-06 20:47:42 +01:00
pirogronian 035aa30ae5 Replace generic catalog type and related minor polishing. 2020-03-06 18:11:53 +01:00
pirogronian 1ebc427f41 Transform CatEntry into AstroObject with minimal common indexing rountines. 2020-03-06 18:11:53 +01:00
Hleb Valoshka 377d620d5b Extract FramebufferObject to its own file 2020-03-04 19:52:55 +03:00
Hleb Valoshka 6eaa915873 Don't abort if starnames.dat has not been loaded
Closes: #625
2020-03-04 19:52:28 +03:00
Hleb Valoshka 50f15ff5cd [debian] Fix git commit passed to cmake 2020-03-04 19:52:11 +03:00
Hleb Valoshka 9e433e6cd8 Build configuration cleanup 2020-03-03 20:04:55 +03:00
Li Linfeng c5d1f58528 Natural sort based on numeric values in QT 2020-03-01 18:19:06 +08:00
Li Linfeng b2e54e77b3 Fix a bug where shader might not compile
it's discovered while using gl4es shim, the operands should be of the same value type
2020-03-01 17:37:18 +08:00
Li Linfeng fef8d5f153 Update .travis.yml 2020-03-01 17:09:55 +08:00
Hleb Valoshka ec076eb582 [win32] remove uneeded menu separators 2020-02-20 18:44:58 +03:00
Hleb Valoshka f8831d4d2e Common OpenGL information code
Closes: #609
2020-02-18 15:13:06 +03:00
Hleb Valoshka fe35e8e2bd Use Color::parse in AssociativeArray::getColor 2020-02-17 19:52:44 +03:00
Hleb Valoshka 3604152867 Make Color constructors constexpr 2020-02-17 19:52:44 +03:00
Hleb Valoshka 073088e869 Add Color::data() method returning data as byte[4] 2020-02-17 19:52:44 +03:00
Hleb Valoshka 91166938d7 Disable unused version of ReplaceGreekLetterAbbr
It requires additional work to match ReplaceGreekLetterAbbr(std::string)
behaviour
2020-02-17 19:52:29 +03:00
Hleb Valoshka 3fb8fad9cf Convert more digits to superscripts in Bayer designations
Closes: #605
2020-02-17 19:52:29 +03:00
Hleb Valoshka e625496059 [qt] Pass '[' and ']' keys to search console
Closes: #526
2020-02-16 11:05:32 +03:00
Hleb Valoshka 8376232f1c [windows] Fix string conversion functions 2020-02-16 11:05:17 +03:00
Hleb Valoshka d41f4ba85d add missing gettext.h includes in gtk and glut frontends 2020-02-15 16:51:08 +03:00
Hleb Valoshka 46dc8a7216 [appveyor] fix build with current VM image 2020-02-15 00:20:13 +03:00
Hleb Valoshka fb4bede3d1 Allow building without NLS 2020-02-15 00:20:13 +03:00
SevenSpheres 1468a20d99 Add GitHub-related files 2020-02-12 11:24:21 +03:00
Dan Church 5df1bebb66 Fix missing header (GCC 4)
`clog` is no longer a built-in and requires iostream.
2020-02-11 20:42:38 +03:00
Hleb Valoshka 4a38917e08 Split parser.* into hash.*, value.* and parser.* 2020-02-07 23:15:43 +03:00
Hleb Valoshka 4598c3cf62 Fix and enable structs in shaders 2020-01-31 20:30:38 +03:00
Hleb Valoshka 6969373ec4 Add and use time-related helper methods 2020-01-25 11:50:28 +03:00
Lars Næsbye Christensen bf1b75106a removed INSTALL text file 2020-01-25 11:02:09 +08:00
Lars Næsbye Christensen d177fac61d changed link from INSTALL to INSTALL.md 2020-01-25 11:02:09 +08:00
Lars Næsbye Christensen 206e2c0aec add Markdown version of INSTALL 2020-01-25 11:02:09 +08:00
Hleb Valoshka db90b02646 [qt] Dump more technical information 2020-01-23 19:54:40 +03:00
Hleb Valoshka e7a0db7c4f [ci] pack windows artifacts 2020-01-20 19:33:35 +03:00
Hleb Valoshka 908daf95cf Tiny shader optimization 2020-01-12 14:56:15 +03:00
Hleb Valoshka 87a551ede7 Fix number of bits used for shadows
Fixes red bodies as reported in #565, and possibly #583
2020-01-12 14:56:15 +03:00
Li Linfeng bfc8f4b4d9 Add openclusters.dsc to CMakeLists.txt 2020-01-12 11:53:12 +03:00
SevenSpheres 758dd43f25 Add openclusters.dsc
Credit to Andrew Tribick
2020-01-11 18:59:15 +03:00
Hleb Valoshka 7f0513e3d3 Fix scripted orbits and rotations (Closes: #576) 2020-01-09 19:11:07 +03:00
SevenSpheres fb8544806c Update README* 2020-01-02 12:14:00 +08:00
Lars Næsbye Christensen 46a7bee657 add change directory command; fix typo 2019-12-30 00:39:05 +03:00
Hleb Valoshka 739f71cd1c Cleanup includes a little bit 2019-12-21 19:16:39 +03:00
Hleb Valoshka 26063bf3a6 Use shaders to draw fonts 2019-12-21 19:16:39 +03:00
Hleb Valoshka 716376c807 Update INSTALL & README* files 2019-12-19 18:41:21 +03:00
SevenSpheres 2cd95ac2e7 Update temperatures for cool stars 2019-12-16 19:11:22 +03:00
Hleb Valoshka 705c383b9f Fix VBO data type
GL_DYNAMIC_DRAW == update occasionally
GL_STREAM_DRAW == update on every draw
2019-12-13 20:31:17 +03:00
Hleb Valoshka ad2de6b6a5 [tools,qt] Replace deprecated Qt methods 2019-12-06 10:55:14 +03:00
Hleb Valoshka bcced3c103 [win32] Use ASCII function version explicitly 2019-12-06 10:55:14 +03:00
Hleb Valoshka 754d149b3a Fix includes in bigfix.cpp 2019-12-06 10:55:14 +03:00
Hleb Valoshka 7b592b4eda Remove copy constructor & operator= in LuaHook
Because of member of std::unique_ptr type LuaHook can't be copied
2019-12-06 10:55:14 +03:00
Hleb Valoshka cb6162f4aa Move markerVO from Renderer to glmarker.cpp
As it's a common static buffer
2019-12-06 10:55:14 +03:00
Hleb Valoshka f8a4d69491 Remove dead code from renderer 2019-12-06 10:55:14 +03:00
Hleb Valoshka bb1f3aefe5 Add support for body mass units (Closes: #513) 2019-12-05 11:37:45 +03:00
Hleb Valoshka 99c3e50a18 Fix distance display for m and km units 2019-12-05 11:37:45 +03:00
Hleb Valoshka 971d203ecc Fix copy-paste error 2019-12-05 11:37:45 +03:00
Hleb Valoshka 32eaa68d0a Remove fixed pipeline calls 2019-12-05 11:37:33 +03:00
LukeCEL 18856700a9 Overhaul of nearstars.stc
Changes include:
- Updated distances for most stars, mostly Gaia DR2
- Updated parameters, generally from SIMBAD or individual sources
- New orbital elements for many star systems
- Includes spectral type Y, not included in Celestia 1.6.1
- Changed Gliese/GJ naming scheme: 1 to 999 is Gliese; 1000 above is GJ
- Removed star systems that are known to not be within 25 ly
- Removed remaining textures
The file still retains the overall structure, as well as part of the heading.
2019-12-04 10:43:22 +03:00
Hleb Valoshka 3e133ba119 Refactor boundaries rendering to have common and rendering parts 2019-12-04 10:42:10 +03:00
Hleb Valoshka c21934aee3 Refactor asterisms rendering to have common and rendering parts 2019-12-04 10:42:10 +03:00
Hleb Valoshka 8778c07ccb Refactor render.cpp and extract some classes to own files 2019-12-03 12:13:34 +03:00
SevenSpheres 7f052a65e4 Delete NEWS 2019-12-02 17:54:46 +08:00
Hleb Valoshka e4e1a0ddc5 Remove deprecated C++ features
std::unary_function & std::binary_function were deprecated in C++11
and removed in C++17
2019-11-30 22:45:25 +03:00
Li Linfeng 7a5f9161d6 Update INSTALL 2019-11-29 16:34:35 +08:00
Hleb Valoshka 539f80367f Use shaders to draw object as point (dumb version) 2019-11-28 17:04:36 +03:00
Hleb Valoshka a4af9e3e05 Use shaders to draw star as point 2019-11-28 14:37:27 +03:00
Paolo Pantò f8c254c634 [qt] Process event sent before the event loop started 2019-11-28 14:37:05 +03:00
Hleb Valoshka af83ddae7f [support,win] Build with TTF support 2019-11-28 14:36:49 +03:00
Hleb Valoshka 34882294ab Update appveyor.yaml
* use vcpkg provided cspice
 * fix build with TTF
 * don't upload artifacts to bintray (doesn't work and useless as appveyor
   host them itself)
2019-11-28 14:36:49 +03:00
Hleb Valoshka 667577983c Provide clamp only for C++ < 17 2019-11-28 14:36:19 +03:00
Hleb Valoshka 5d4b23f241 Use shaders in sky grid drawing 2019-11-25 15:11:37 +03:00
Hleb Valoshka 8005ac1577 Add shaders for planetographic grid 2019-11-25 10:51:02 +03:00
Hleb Valoshka 7025800e98 Fix typo 2019-11-25 10:50:46 +03:00
Hleb Valoshka 39eb715f98 Reimplement galaxies using shaders 2019-11-25 10:50:46 +03:00
Li Linfeng 02bcf41173 do not use wordexp on unsupported systems 2019-11-22 21:16:19 +08:00
Li Linfeng 741f326eb4 Update .travis.yml 2019-11-22 19:11:33 +08:00
Hleb Valoshka 6f6b3998d3 Use getAspectRatio() where appropriate 2019-11-21 11:50:13 +03:00
Hleb Valoshka 72e6d5bb05 Replace gluOrtho2D with own implementation 2019-11-21 11:50:13 +03:00
Hleb Valoshka bf2f4cb236 Replace gluPerspective with own implementation 2019-11-21 11:50:13 +03:00
Hleb Valoshka 6b954fd7af Replace gluProject with own implementation 2019-11-21 11:50:13 +03:00
SevenSpheres 32ce75e858 Increase star render distance to 1 Gly 2019-11-21 09:01:56 +08:00
Hleb Valoshka 48824889fa Partially revert "Remove fixed pipeline calls in glsl-based code"
Without this chunk garbage is shown on screen when rendering models

This reverts commit e363e9102f.
2019-11-20 17:14:34 +03:00
Hleb Valoshka 682aef8422 Initial implementation for TrueType fonts support 2019-11-20 12:16:15 +03:00
Hleb Valoshka 6e871064e4 Replace deprecated QDesktop::numScreens() call 2019-11-20 12:15:27 +03:00
Li Linfeng c7432f10b2 remove redundant lookat 2019-11-17 20:43:26 +08:00
SevenSpheres 11c7374d17 Remove old redundant models 2019-11-16 12:10:11 +03:00
Hleb Valoshka 6be3afb1e6 Move glut frontend to its own subdir 2019-11-15 21:53:57 +03:00
Hleb Valoshka fbd83e5587 Use shaders to draw orbits 2019-11-15 11:10:21 +03:00
Hleb Valoshka 5af66f9ab2 Reimplement comets using glsl (part I)
TODO: 1) use VertexObject 2) possibly offload more computation to GPU
2019-11-15 11:10:21 +03:00
Hleb Valoshka 702531879c Port particles renderer to use shaders (without VBO yet) 2019-11-15 11:10:21 +03:00
Hleb Valoshka b0ec6d6fc2 Change appveyor image to fix CI failures 2019-11-15 11:09:57 +03:00
SevenSpheres 0cfd894507 Update README.md
Fix display of Celestia logo
2019-11-12 09:20:21 +08:00
Hleb Valoshka b14f4f8b4b Tiny cleanup in renderer 2019-11-11 13:48:37 +03:00
Hleb Valoshka e363e9102f Remove fixed pipeline calls in glsl-based code 2019-11-11 13:48:37 +03:00
Hleb Valoshka 73bcba8fdb Draw unlit clouds using shaders 2019-11-11 13:48:37 +03:00
Hleb Valoshka 4d815ad44e Draw unlit ellipsoid atmosphere using shaders 2019-11-11 13:48:37 +03:00
Hleb Valoshka 54031bba8c Reimplement unlit sphere with shaders 2019-11-11 13:48:37 +03:00
Hleb Valoshka add171b6fa Fix error reporting when shader linking failed 2019-11-11 13:48:37 +03:00
Anthony-B-Russo10 02f8bff902 Added the Archive Repository 2019-11-10 10:40:48 +03:00
Hleb Valoshka b259987e95 Move ellipsoidTangent to mathlib.h 2019-11-09 15:08:03 +03:00
Hleb Valoshka fecd61fcb1 Render crosshair using glsl and common BO 2019-11-09 15:08:03 +03:00
Hleb Valoshka 3f757998f4 Draw ecliptic using glsl and common BO 2019-11-09 15:08:03 +03:00
Hleb Valoshka ae02fe2c38 Refactor selection pointer to use glsl and common BO 2019-11-09 15:08:03 +03:00
Hleb Valoshka 08907c5883 Tiny refactoring for simplify code 2019-11-09 15:08:03 +03:00
Hleb Valoshka 0d5e867219 Add Renderer::getAspectRatio() method 2019-11-09 15:08:03 +03:00
SevenSpheres 972267d69f Remove duplicate moons 2019-11-08 02:19:10 +03:00
Hleb Valoshka cf945d7b6e Show Reference Points labels (Closes: #489) 2019-11-06 12:33:52 +03:00
Hleb Valoshka 00ee0d4bcd [cmake] Update for vcpkg-provided cspice 2019-11-06 02:31:27 +03:00
Hleb Valoshka 16051ed90a [appveyor] disable cmake files dump on error 2019-11-04 15:29:07 +03:00
Hleb Valoshka 26f3a3b5a9 [appveyor] Add build artifacts 2019-11-04 15:29:07 +03:00
Hleb Valoshka 89e1b9c441 Revert "Initialize marker representations in constructor"
...because colors can be changed using celx

This reverts commit 2090a883d4.
2019-11-04 13:09:12 +03:00
Hleb Valoshka 0af14d4ca8 Add LOD for planet rings 2019-11-01 12:12:04 +03:00
Hleb Valoshka 9e9541ce1b Fix markers rendering in multiview mode (Closes: #486) 2019-10-30 09:53:11 +03:00
Hleb Valoshka 99b0acf556 Make Selection variables private again 2019-10-30 09:53:11 +03:00
Li Linfeng f8fcc4c0ae place config.h generation after mac version check 2019-10-29 21:53:28 +08:00
Li Linfeng 7f64139a53 disable c++fs prior to macOS 10.15 2019-10-29 17:44:35 +08:00
Luke McCrone f3edf65d77 Show dwarf planets and minor moons in right-click menu #459 (no pluto yet) 2019-10-28 12:18:52 +03:00
SevenSpheres f1a6af1ab5 Change dwarf planet label color 2019-10-27 12:29:39 +03:00
Hleb Valoshka 7c593f366f Fix compilation without CELX 2019-10-26 00:59:03 +03:00
Hleb Valoshka 7435f420dc Set Qt::AA_UseDesktopOpenGL before QCoreApplication creation (Closes: #407) 2019-10-26 00:58:47 +03:00
Hleb Valoshka b565806a43 Chage dwarf planet orbit and Pluton-Charon orbit colors (Closes: #463) 2019-10-25 21:14:03 +03:00
munix9 3ec9365891 Added missing tools in Debian config 2019-10-23 00:09:23 +03:00
Hleb Valoshka 8957e22472 Restore star orbits (Closes: #448)
Was broken by e73e366
2019-10-21 21:56:00 +03:00
Hleb Valoshka f84ca4277a Atmosphere tools modernization
scattersim works as in 1.6.x
scattertable generates broken dds files
2019-10-21 18:40:28 +03:00
Hleb Valoshka 6e90626feb Add a method to transform Ray3 with 4x4 matrix 2019-10-21 18:40:28 +03:00
Li Linfeng 5342437c79 fix space between star/dso name and description 2019-10-21 14:42:09 +08:00
SevenSpheres af44846991 README.md fixes
Fixed grammar, fixed line breaks, updated copyright year.
Moved 375gnu and pirogronian to authors, added Li Linfeng to authors, added Nils Larsson to contributors, added Selden to "documentation"
2019-10-19 20:08:07 +03:00
Hleb Valoshka 097d7113e2 Provide a common method to save screenshots 2019-10-19 17:47:31 +03:00
Hleb Valoshka 2c2a17aa0a Implementation of the new interface for legacy scripting 2019-10-19 13:17:32 +03:00
Hleb Valoshka dfd177ffc7 Implementation of the new interface for Lua scripting 2019-10-19 13:17:32 +03:00
Hleb Valoshka d93a1cdf03 Common new script interface 2019-10-19 13:17:32 +03:00
Hleb Valoshka 779ad3c5c1 [gtk] Remove copy of CelestiaCore::runScript (Closes: #456) 2019-10-19 13:17:32 +03:00
Hleb Valoshka 1ab6b27f3f [win32] Remove copy of CelestiaCore::runScript, part 2 2019-10-19 13:17:32 +03:00
Hleb Valoshka d63b65f83e [win32] Don't make splash top most 2019-10-19 12:59:50 +03:00
Hleb Valoshka b849e76bf3 [win32] Remove copy of CelestiaCore::runScript from win frontend 2019-10-19 12:01:40 +03:00
Hleb Valoshka 3cb4d3154d Make options maps common to all scripts 2019-10-18 12:13:48 +03:00
Hleb Valoshka 73ac1b85de Move execenv.h to celscript/common 2019-10-17 23:02:35 +03:00
Hleb Valoshka 6953eb7aa2 Use lua_getfield instead of helper getField 2019-10-17 23:02:35 +03:00
Hleb Valoshka 9401a4389e Move scripts to their own subdirectories 2019-10-17 21:21:12 +03:00
Li Linfeng 7cff1728a3 fix warnings 2019-10-14 17:41:03 +08:00
Hleb Valoshka f46c51d387 Fix duplicated english names (Closes: #441) 2019-10-12 19:02:57 +03:00
Hleb Valoshka 17db71b97f Remove hard-coded startup logo (Closes: #417) 2019-10-09 15:55:14 +03:00
Hleb Valoshka e3baaad767 Big common application code refactoring
* Allow to parse four element vectors
 * Allow colors defined in HTML notation (#rrggbbaa)
   in CEL scripts
 * Refactor Overlay::Rectangle to an independent class
 * Refactor CelestiaCore::OverlayImage to an independent class
 * Refactor CelestiaCore::View to an independent class
 * Rename Renderer::getScreenSize to getViewport
 * Add wrappers for scissors test and MSAA control
2019-10-09 15:55:14 +03:00
Hleb Valoshka 6e44de22f1 Fix home directory expansion in Windows 2019-10-09 15:55:14 +03:00
Hleb Valoshka 7fd01f38b0 Fix PVS Studio reported errors (Closes: #425) 2019-10-04 20:49:34 +03:00
Konstantin Podsvirov e9ae3959eb Update INSTALL
Fix mistake in tool name: vcpg -> vcpkg (missing k symbol)
2019-10-03 10:22:03 +03:00
Hleb Valoshka b469511ce3 Use bolometric luminosity to calculate comet's tail fading
Closes: #405
2019-09-20 00:01:19 +03:00
Hleb Valoshka 198e067f75 Add a method to get star's bolometric luminosity 2019-09-20 00:01:19 +03:00
Hleb Valoshka f371bd31c1 Update installation instructions 2019-09-13 20:35:45 +03:00
Paolo Pantò 1776830271 Extract git commit from a package version 2019-09-06 17:55:19 +03:00
Paolo Pantò 2b69c45efd Add MIME types handled by Celestia to *.desktop files 2019-09-06 17:55:19 +03:00
Hleb Valoshka 1f0ba55079 Fix dependencies to allow replacement of celestia-common-nonfree 2019-09-06 17:55:19 +03:00
Hleb Valoshka 35106691a1 Fix virtual texture loading and VT code tiny cleanup 2019-09-06 11:28:23 +03:00
Askaniy 31cc7363da Dwarf planets corrections
+ texture and oblateness of Ceres
2019-09-04 22:20:03 +03:00
pirogronian c0cc66e77d Common stuff for shared classes. 2019-09-03 22:03:04 +02:00
Li Linfeng 3a56afb24f update install and CI for mac 2019-09-03 23:30:26 +08:00
Hleb Valoshka 2dd0a996d7 Provide build files for Debian and derivatives 2019-09-03 18:17:34 +03:00
laikh 3019e497e9 Use Ctrl+C and Ctrl+V to handle both the console copy-and-paste and the URL copy-and-paste 2019-09-02 21:18:02 +02:00
laikh e2854c0698 Remove F5 F6 shortcuts for copy and paste to solve conflicts with setTargetSpeed 2019-09-02 21:18:02 +02:00
laikh 562dc24641 Fix debug compilation errors 2019-09-01 08:44:28 +08:00
Li Linfeng 9c371c891c define macros for print levels and avoid direct use of fmt::printf 2019-08-31 13:32:44 +08:00
Li Linfeng 56d2b8765a bring menu handler change to gtk/win 2019-08-30 20:57:07 +08:00
Li Linfeng eb51fa8228 adapt to context menu handler change 2019-08-30 20:57:07 +08:00
Li Linfeng c986cdebf9 use handler for context menu callback 2019-08-30 20:57:07 +08:00
Hleb Valoshka 2aa162f0bb [qt] Show more data about planets in infopanel 2019-08-29 12:56:58 +03:00
Hleb Valoshka 11897032d4 Fix some warnings 2019-08-27 23:54:27 +03:00
Hleb Valoshka 05faeee8a4 Mark overridden virtual function as "override" 2019-08-27 23:54:27 +03:00
Hleb Valoshka 6202c06869 [osx] Silence warnings about deprecated OpenGL 2019-08-27 23:54:27 +03:00
Hleb Valoshka efc4810104 Don't abort if extras directory doesn't exist (Closes: #376) 2019-08-27 23:43:46 +03:00
Li Linfeng 3a17adb08a Fix solar system browser item model 2019-08-27 22:45:39 +03:00
Hleb Valoshka bcce84601c [cmake] Link celcompat to celutil instead of celengine 2019-08-22 08:55:46 +08:00
Hleb Valoshka 4c20e54119 [cmake] define required macros for debug builds 2019-08-22 08:55:46 +08:00
Hleb Valoshka 0130655d87 [gtk] Don't call string() on strings 2019-08-22 08:55:46 +08:00
Hleb Valoshka ca39d82b09 Reimplement DebugPrint using variadic templates (Closes: #367) 2019-08-22 08:55:46 +08:00
Li Linfeng 71ca974838 Replace the apple macro in qt project 2019-08-21 11:59:40 +03:00
Li Linfeng c820617bb8 Use __APPLE__ in place of TARGET_OS_MAC 2019-08-20 10:19:42 +03:00
Hleb Valoshka e66cff9800 Update win32's view options dialog 2019-08-16 20:10:48 +03:00
Hleb Valoshka 96f8b4a6ee Add missing #ifdef CELX 2019-08-16 18:11:24 +03:00
Hleb Valoshka 48bef14233 Remove Directory class replaced with filesystem API 2019-08-16 18:11:24 +03:00
Hleb Valoshka b6b543438d Port to filesystem API 2019-08-16 18:11:24 +03:00
Hleb Valoshka ceaed57aa5 Add a minimal C++17-like filesystem library 2019-08-16 18:11:24 +03:00
Hleb Valoshka 6d81fc780a Add new and refactor existing char<->wchar routines for Win32 2019-08-16 18:11:24 +03:00
Hleb Valoshka f05679db8e Implement DPRINTF using fmt 2019-08-16 18:11:24 +03:00
laikh c17a717626 Add -D_ENABLE_EXTENDED_ALIGNED_STORAGE for MSVC to fix the build 2019-08-16 17:10:10 +03:00
pirogronian c3567d820c Replace refcounted objects with std::shared_ptr 2019-08-16 12:45:57 +03:00
Hleb Valoshka 2090a883d4 Initialize marker representations in constructor 2019-08-16 09:49:01 +03:00
Hleb Valoshka 1125957c83 Pass constant refs instead of objects to LookAt 2019-08-16 09:49:01 +03:00
Hleb Valoshka deb23a7b80 Add a ::Color -> cmod::Material::Color helper 2019-08-16 09:49:01 +03:00
Hleb Valoshka 8cf30873fd [gtk] Enable locales early
Based on a Debian's patch
2019-08-16 09:49:01 +03:00
Hleb Valoshka f0c568dbf3 Rename variable mips to mip to fix compilation on mips64
Based on the patch from Debian
2019-08-16 09:49:01 +03:00
Hleb Valoshka f8d3815a70 Move duplicated setVertexArrays to RenderContext 2019-08-16 09:49:01 +03:00
Hleb Valoshka 4d5f2d9c64 Convert raw pointers to std::unique_ptr in ModelGeometry 2019-08-16 09:49:01 +03:00
Li Linfeng 37cab4140b Use const char * on debug print 2019-08-16 09:39:03 +03:00
Hleb Valoshka f53f547dc3 Refactor compiler options definition 2019-08-13 11:25:15 +03:00
Hleb Valoshka 4fcfa1dfe3 Rename ODMenu.* to lowercase 2019-08-13 11:25:15 +03:00
Hleb Valoshka 4af3d88925 Fix compilation errors with mingw-w64 5.0.0 2019-08-13 11:25:15 +03:00
laikh cfdda11bf6 Move cmdparser.*, command.*, and execution.* from celengine to celestia, modify celephem to OBJECT library and merge the objects in the celengine library, fix Spice dependency 2019-08-13 11:24:37 +03:00
khlai a5fa3f5114 Add cmake debug flag to the INSTALL instruction for Mingw debug build 2019-08-12 17:26:07 +03:00
Li Linfeng 2c92aee13a Fix backspace on qt osx 2019-08-12 15:56:40 +03:00
khlai 7713f8b610 Update INSTALL instruction for Mingw debug build 2019-08-12 15:55:08 +03:00
dlshcbmuipmam 7e52983c19 Add instruction of installing luajit with vcpkg 2019-08-08 20:09:53 +03:00
dlshcbmuipmam c6d608b8a7 Add include/luajit as path suffix to FindLuaJIT.cmake 2019-08-08 20:09:53 +03:00
Li Linfeng 6617d94672 Remove unused code 2019-08-07 12:15:32 +03:00
Li Linfeng 8743edad9e Use relative path on tools 2019-08-07 12:15:32 +03:00
Li Linfeng 589face93e Use relative path for data and config on macOS platform 2019-08-07 12:15:32 +03:00
Li Linfeng 19d36c0d2d Setup macOS bundle for celestia-qt 2019-08-07 12:15:32 +03:00
U-DESKTOP-5KURQFU\dlshc ad8eda79f4 Fix MinGW build and add instruction 2019-08-07 12:14:42 +03:00
Luke McCrone 3bc970c780 279 - context menu entry "back to the star" (qt and gtk)
279 - cleanup as requested
2019-08-05 12:46:45 +03:00
dlshcbmuipmam 85fa5ddade Fix Lua Version Preprocessor Warning 2019-08-04 21:23:10 +03:00
Hleb Valoshka 204ba15f37 [qt] Use QStandardPaths to get data location (Closes: #335) 2019-08-03 17:34:48 +03:00
Hleb Valoshka 78bfe3e860 [appveyor] Use previous image 2019-08-03 16:32:18 +03:00
Gitea cfc225adc7 Refactor Overlay::rect() to use instead of direct GL calls 2019-08-02 14:34:25 +03:00
Hleb Valoshka 35b53b22d5 Refactor simple shader generation 2019-08-02 14:34:25 +03:00
Hleb Valoshka ba0b39fdff Fix overlay image replacement and style cleanups 2019-08-02 14:34:25 +03:00
Hleb Valoshka 9fe2198ebb Fix glGetError() call 2019-08-02 14:34:25 +03:00
Li Linfeng bd51baf8f9 Use lua version defined in lua.h 2019-07-30 14:30:17 +03:00
Hleb Valoshka e94842c945 Use XCode10.2 image in Travis 2019-07-25 17:54:05 +03:00
Li Linfeng e57f0ae304 Remove constexpr for pow and exp for clang 2019-07-21 19:42:07 +03:00
Hleb Valoshka edc4d240be [qt] QtEventFinder cleanup 2019-07-18 22:52:16 +03:00
Hleb Valoshka 24bce0bb82 [qt] Fix incorrect eclipse display time (Closes: #321) 2019-07-18 22:52:16 +03:00
Hleb Valoshka 7b095b8151 Reimplement globular clusters using GLSL 2019-07-10 23:43:15 +03:00
Hleb Valoshka 93c4a3b55c Add celmath::clamp(val, low, high) 2019-07-10 23:43:15 +03:00
Hleb Valoshka 74144a85bc Remove forgotten files for ancient hardware 2019-07-09 23:38:41 +03:00
Hleb Valoshka a93befe941 Remove uneeded #include "vecgl.h" 2019-07-09 23:38:41 +03:00
Hleb Valoshka de1a8d181e Remove unneeded celengine/celestia.h 2019-07-09 23:38:41 +03:00
Hleb Valoshka 7d4f03d5fb [win32] Add helper dlgCheck for 64-bit values
bad but working
2019-07-09 23:38:21 +03:00
Hleb Valoshka da32a3318c [cmake] Call configure_file after check_include_files 2019-07-09 00:53:22 +03:00
Hleb Valoshka 2250dd9c23 [win32] Update registry key, fix uint64_t saving 2019-07-09 00:53:04 +03:00
Hleb Valoshka e7aaee0ec8 Fading orbits in Win32 and Gtk2 frontends 2019-07-08 17:29:46 +03:00
Hleb Valoshka c07c36e70c [qt] Make DSO filter nonexclusive (replace QRadioButton with QCheckBox) 2019-07-08 17:19:21 +03:00
Hleb Valoshka 6295f4d1af [qt] Solar system filtering 2019-07-08 17:19:21 +03:00
Hleb Valoshka a1bdca280a Make VisibleRegion more GL2-friendly 2019-07-07 22:24:59 +03:00
Hleb Valoshka 96c22fbe8e Add simple shaders for color and texture 2019-07-07 22:24:59 +03:00
Hleb Valoshka a90570e36a Allow updates of VertexObject and mark some methods as noexcept 2019-07-07 22:24:59 +03:00
Hleb Valoshka 6712b90d84 Utility method to calculate memory size to store a container data 2019-07-07 22:24:59 +03:00
Hleb Valoshka 845990a91a Fix virtual methods definition for DSO, make some methods private 2019-07-07 12:10:21 +03:00
Hleb Valoshka a10da37741 Return correct type from DeepSkyObject::getRenderMask()
More correctly is to return Renderer::RenderFlags, but this require big
render.h refactoring.
2019-07-07 12:10:21 +03:00
fuse b11cd25553 Use vertex buffer when displaying orbits 2019-07-02 15:07:13 +03:00
Hleb Valoshka 5389cd7c4f Allow arbitrary attributes in VertexObject 2019-07-02 10:29:31 +03:00
Hleb Valoshka 239063306c Add a method to get arbitrary attribute location 2019-07-02 10:29:31 +03:00
Hleb Valoshka 5f9fa3c2d4 Add Mat3/4ShaderParameter classes 2019-07-02 10:29:31 +03:00
fuse 76252c86e5 Fix assert in Renderer::renderMarker 2019-06-28 17:30:59 +03:00
Hleb Valoshka 30c686c028 Markers reimplemented using modern GL 2019-06-25 23:03:30 +03:00
Hleb Valoshka 852874b32f Add frame capture function to Renderer 2019-06-24 23:58:30 +03:00
Hleb Valoshka ec7b1acec9 Update jpeg/png headers in imagecapture.cpp as in image.cpp 2019-06-24 23:58:30 +03:00
Hleb Valoshka dc457430dc Install GLSL shaders 2019-06-24 12:12:18 +03:00
Hleb Valoshka e9ef0f7e57 Port starfield to static shaders 2019-06-21 13:57:04 +03:00
Hleb Valoshka 9745b125f3 Support for static shaders in ShaderManager 2019-06-21 13:57:04 +03:00
Hleb Valoshka b09b48b1ab Disable GLContext usage as it does nothing now 2019-06-20 13:03:02 +03:00
Hleb Valoshka 0dbd19be9f Fix random abnormal termination when enabling RefAxes (Closes: #302) 2019-06-20 13:02:45 +03:00
Hleb Valoshka 2475a7f1b3 Make a few methods const 2019-06-20 13:02:27 +03:00
Hleb Valoshka e255a34c7a Initialize some variables 2019-06-20 13:02:27 +03:00
Hleb Valoshka c17493885f Fix memory leaks 2019-06-20 13:02:27 +03:00
Hleb Valoshka 0e2ee08c42 Use fmt::printf instead of iostreams 2019-06-20 13:02:27 +03:00
Hleb Valoshka 7a3cfbc320 Port axisarrow to VertexObject 2019-06-17 18:20:20 +03:00
Hleb Valoshka 6e35410715 Port asterisms to VertexObject 2019-06-17 18:20:20 +03:00
Hleb Valoshka b9575c70eb Port boundaries to VertexObject 2019-06-17 18:20:20 +03:00
Hleb Valoshka f300827de4 Add VBO/VAO wrapper class 2019-06-17 18:20:20 +03:00
Hleb Valoshka bb533bbbf7 Fix code guarded by #ifdef HDR 2019-06-17 18:19:56 +03:00
Hleb Valoshka c95fe7ee0f Fix bool usage in Body 2019-06-17 18:19:56 +03:00
pirogronian 9dbdf29c4a Fix typo in DSO octree debug macro. 2019-06-06 12:27:22 +02:00
Hleb Valoshka a401969268 [cmake] Disable GLUT frontend by default 2019-06-06 11:58:28 +03:00
Hleb Valoshka 9f6cdadee3 Drop support for ancient Lua 5.0 2019-06-06 11:58:28 +03:00
Hleb Valoshka b59a25508d [cmake] Fix USE_SPICE macro definition creation
Taken from https://build.opensuse.org/package/view_file/home:munix9:unstable/celestia/fix-USE_SPICE.patch?expand=1
2019-06-04 17:28:32 +03:00
Hleb Valoshka 6ff875dab3 [qt] Open wikibook instead of local manual
... as we don't have local manual

Based on https://build.opensuse.org/package/view_file/home:munix9:unstable/celestia/fix-manual-file-url.patch?expand=1
2019-06-04 17:27:56 +03:00
Hleb Valoshka d4ac931da9 Skip CI builds with Lua 5.2
basically 5.1 & 5.3 are enough
2019-05-31 11:15:30 +03:00
Hleb Valoshka b705597b9d Use LuaJIT on all platforms if available 2019-05-31 11:15:30 +03:00
Hleb Valoshka b10d6b04c4 Add CMake module for LuaJIT 2019-05-31 11:15:30 +03:00
Hleb Valoshka 1fe8dd37c9 Move Win32 definitions to the common location 2019-05-27 00:53:21 +03:00
Hleb Valoshka eb86cab106 Simplify the main CMakeLists.txt 2019-05-27 00:53:21 +03:00
Hleb Valoshka 2486554514 Explicitly load FPHSA in FindCspice.cmake 2019-05-27 00:53:21 +03:00
Hleb Valoshka 2b275cee37 Fix two MSVC C4305 warnings
double to float truncation
2019-05-20 10:48:04 +03:00
Hleb Valoshka f3a73dae71 Move math code into celmath namespace 2019-05-20 10:48:04 +03:00
Hleb Valoshka 440f34350c Remove celmath::log2 as it's defined in C++11 2019-05-20 10:48:04 +03:00
Hleb Valoshka 88fe409d21 Enable compilation with unsafe fast math option 2019-05-17 18:27:40 +03:00
Hleb Valoshka dc6e86edbf Remove old EclipseFinder API and cleanup 2019-05-06 23:08:28 +03:00
Hleb Valoshka 7472122e38 Port Win32 frontend to the new EF API 2019-05-06 23:08:28 +03:00
Hleb Valoshka 1d0b0abce0 Port Gtk+ frontend to the new EF API 2019-05-06 23:08:28 +03:00
Hleb Valoshka f031745020 Replace QtEclipseFinder with EclipseFinder 2019-05-06 23:08:28 +03:00
Hleb Valoshka ccb39d3342 Add new API to EclipseFinder 2019-05-06 23:08:28 +03:00
Hleb Valoshka 1af23318fd Remove a makefile superseded by cmake 2019-05-06 23:07:57 +03:00
Hleb Valoshka ad15f2ffa0 [cmake] Fix macro name in the error meesage 2019-05-06 23:07:57 +03:00
Hleb Valoshka 0972f8a269 Move src/buildstardb.cpp to src/tools/stardb and remove src/tools/buildstardb.cpp
The latter is an older version of the former
2019-05-06 23:07:57 +03:00
Hleb Valoshka a968fadb5f [cmake] Disable tools by default but enable in CI 2019-05-05 18:04:45 +03:00
Hleb Valoshka 407e669747 [cmake] Cleanup the main CMakeLists.txt 2019-05-05 18:04:45 +03:00
Hleb Valoshka d36e8bdeac Fix copy-paste error 2019-05-05 16:50:35 +03:00
Hleb Valoshka 242c5ad84d Fix build directory in VC++ 64 bit 2019-05-05 16:50:35 +03:00
Hleb Valoshka 06ca2c5fec Add scripts for manual building under windows 2019-05-03 14:24:56 +03:00
Hleb Valoshka 0a5840ca1c [docs] Update installation instructions 2019-05-03 14:24:56 +03:00
Hleb Valoshka 78641736fd Replace sscanf with C++11 methods where appropriate 2019-05-02 22:58:37 +03:00
pirogronian 226f1ee793 Additional code hide behind OCTREE_DEBUG flag. 2019-05-02 13:57:42 +02:00
pirogronian 29beca06ad Restrict feature do OCTREE_DEBUG flag + some polishing. 2019-05-02 13:57:42 +02:00
pirogronian b6f025abd3 Added debug octree stats, visible together with fps counter. 2019-05-02 13:57:42 +02:00
Hleb Valoshka 87963a6a42 Fix display of surface features and diffuse objects
Surface features will be shown only if their parent body is visible.

Diffuse objects are shown always
2019-05-02 13:26:55 +03:00
Hleb Valoshka 920a0c81b1 Remove unused and unneeded ringSystemSections option 2019-04-22 21:21:05 +03:00
Hleb Valoshka a426916e2a Get rid of immediate mode in ring rendering
nSections was hardcoded to 100 so I removed it from renderRingSystem
2019-04-22 21:21:05 +03:00
Hleb Valoshka e80b06e67e [win32] remove __iob_func
* we prefer vcpkg libraries build using the same compiler
* VC++ 2017 is ABI compatible with 2017: https://docs.microsoft.com/en-gb/cpp/porting/binary-compat-2015-2017?view=vs-2019
2019-04-12 17:09:58 +03:00
Hleb Valoshka 7ad6b37970 [cmake] refactor build_cmod_tool macro to allow WIN32 targets 2019-04-12 17:09:58 +03:00
Hleb Valoshka 7bc9bcd674 [cmake] Update compile options for MSVC
/bigobj is required when using Ninja
2019-04-12 00:53:18 +03:00
pirogronian e422fe5e87 Fix ReplaceGreekLetterAbbr overvoracity. 2019-04-09 13:09:07 +02:00
pirogronian fa582dd10b Fix Bayer notation parsing & matching regresion. 2019-04-09 13:09:07 +02:00
Hleb Valoshka df23c60e7a Fix alignment issues in CELX routines (Closes: #263) 2019-04-08 22:02:53 +03:00
Luke McCrone 10875c4569 Issue #251: removing Alpha Centauri Bb 2019-04-08 12:08:04 +03:00
Hleb Valoshka 53845ad72e Add min() macro definition
It's not defined in MSVC and not supported by C standards
2019-04-08 12:07:43 +03:00
Hleb Valoshka 6bc84833be [cmake] Instal perl tools 2019-04-08 12:07:43 +03:00
Hleb Valoshka f9e27241ba [tools] install the leap second kernel to the data dir 2019-04-08 12:07:43 +03:00
Hleb Valoshka a80389dbcf [tools] Load the leap second kernel later
... to show usage and error messages
2019-04-08 12:07:43 +03:00
Hleb Valoshka db90fbf3a0 Update the leap second kernel used by spice2xyzv 2019-04-08 12:07:43 +03:00
Hleb Valoshka b62da0e74c [cmake] Enable building of spice2xyzv tool 2019-04-08 12:07:43 +03:00
Hleb Valoshka a45c415b44 [cmake] Enable vsop tools 2019-04-08 12:07:43 +03:00
Hleb Valoshka 89021ed9bd [tools] Show usage message for vsoptrunc-* 2019-04-08 12:07:43 +03:00
Hleb Valoshka 870f2feebd [cmake] Build qttxf tool 2019-04-08 12:07:43 +03:00
Hleb Valoshka 1d07836fa4 Port qttxf tool to Qt5 2019-04-08 12:07:43 +03:00
Hleb Valoshka d652219482 [cmake] Enable cmod tools building 2019-04-08 12:07:43 +03:00
Hleb Valoshka b8850a0d03 Fix copy-paste error 2019-04-08 12:07:43 +03:00
Hleb Valoshka 2c154346f3 Fix includes 2019-04-08 12:07:43 +03:00
Hleb Valoshka d846eb0ef3 Port cmod tools to Qt5 2019-04-08 12:07:43 +03:00
Hleb Valoshka 20365410c9 Port cmod tools to Eigen 3 2019-04-08 12:07:43 +03:00
Hleb Valoshka bcd7b97d89 [cmake] Remove unneeded fmt sources 2019-04-08 12:07:43 +03:00
pirogronian c465ab2615 Fix crash on create new lua rotation object. 2019-04-07 19:03:58 +02:00
Hleb Valoshka 9a851f0ea2 Remove eigenport.h 2019-04-03 00:18:02 +03:00
Hleb Valoshka 5d3452e011 Cleanup png and jpeg related code
libpng and libjpeg are mandatory now
2019-04-03 00:18:02 +03:00
Hleb Valoshka e6dacb43fa Remove unused deprecated methods 2019-04-03 00:18:02 +03:00
Hleb Valoshka bf68d471c3 Remove ancient vertex programs support 2019-04-03 00:18:02 +03:00
pirogronian b2d88df04a Qt: add copy/paste search console text actions. 2019-03-28 09:05:04 +01:00
pirogronian 044f5392b5 Add getter/setter for search console typed text. 2019-03-28 09:05:04 +01:00
pirogronian 1495531a03 Typed text search: if not valid, submit first completion. 2019-03-26 21:24:21 +01:00
pirogronian 6e1d57ef3a Add checking for Greek-formatted names in searching object by directly provided name. 2019-03-26 21:24:21 +01:00
pirogronian 0f3b37f066 Add replacement support also for full Greek letters names. 2019-03-26 21:24:21 +01:00
Hleb Valoshka 45836d993a Use location type "Ring" instead of "XX" (Other) for rings 2019-03-23 09:59:06 +03:00
Hleb Valoshka b95bdee04c Pass tangents vector to shaders (Closes: #240) 2019-03-22 16:31:12 +03:00
Askaniy 5b57f13e0e Removing dwarf planets 2019-03-20 15:52:26 +03:00
Hleb Valoshka 81aa6f43bc Remove support for old vector math 2019-03-16 18:21:50 +03:00
Hleb Valoshka d1d5970b8a Rename Earth's nigth side texture
All textures follow the $planet-$type naming scheme
2019-03-12 18:21:44 +03:00
Hleb Valoshka da8d3701d1 Don't use native OSX resourse paths by default 2019-03-11 22:01:14 +03:00
Luke McCrone a363fc772b Issue #216: Allow changing colors for comet tails 2019-03-11 21:24:21 +03:00
Hleb Valoshka 9d51cbfad3 Update README and celestia.cfg 2019-03-04 22:16:27 +03:00
Hleb Valoshka 9489d85166 Update minor moons and solar system objects
actual author - Askanij
2019-03-04 22:16:27 +03:00
Hleb Valoshka f4fac091cc Update textures and models
actual author: Askaniy
2019-03-04 22:16:27 +03:00
Hleb Valoshka 2375e17fff Add Solar system's dwarf planets
actual author: Askaniy
2019-03-04 22:16:27 +03:00
pirogronian 5464388d28 Change Omega Cen and Xi Tucanae into Bayer format. 2019-02-28 20:23:09 +01:00
pirogronian 8490d93082 Restore name completion support. 2019-02-28 20:23:09 +01:00
pirogronian 55f67a8c44 Replace Greek letter before adding to database. 2019-02-28 20:23:09 +01:00
pirogronian 4549c491d2 Check Greek initialization at instance access. 2019-02-28 20:23:09 +01:00
Hleb Valoshka e8226510c7 Don't process generated Qt files with AUTOMOC and AUTOUIC
Explicitly set current behaviour
2019-02-14 23:24:35 +03:00
Hleb Valoshka f089e98d83 Handle cases when git is installed but sources are not a repository clone 2019-02-14 23:24:35 +03:00
Hleb Valoshka 0b339f41d7 Use cmake's `option` instead of `set` to control a build 2019-02-14 23:24:35 +03:00
Hleb Valoshka bedcdb53cf Document executable names (Closes: #228) 2019-02-14 23:24:03 +03:00
Hleb Valoshka 63f86a44f2 Update translation files 2019-02-14 22:01:38 +03:00
Hleb Valoshka cb230cab02 Fix paths to extract strings from 2019-02-14 21:28:34 +03:00
Hleb Valoshka 3e0674b9cb Don't add empty strings to translations 2019-02-14 21:27:51 +03:00
Hleb Valoshka eadcf76a9c Fix path to legacy KDE frontend 2019-02-14 21:09:36 +03:00
Hleb Valoshka a78b70122b Update site address 2019-02-14 21:08:33 +03:00
Hleb Valoshka 4bbce34d03 Kpc -> kpc 2019-02-14 21:08:06 +03:00
Hleb Valoshka 67c2a50b9c Move native OSX frontend to src/celestia 2019-02-14 21:07:28 +03:00
Hleb Valoshka 7e4a6d62f8 Enable OSX builds 2019-02-09 00:21:00 +03:00
Hleb Valoshka 37b964ab50 Always use jpeg and png libs, drop CGBuffer.h 2019-02-09 00:21:00 +03:00
Hleb Valoshka 6b0d6439ca Fix DPRINTF for OSX platform 2019-02-09 00:21:00 +03:00
Hleb Valoshka d666e76e6e Use libintl.h on all platforms 2019-02-09 00:21:00 +03:00
Hleb Valoshka 0fc5edf500 FindIntl: support for gettext installed with brew 2019-02-09 00:21:00 +03:00
Hleb Valoshka a185a83373 Cleanup definitions for jpeg and png support
No more support for ancient libpng
2019-02-09 00:21:00 +03:00
Hleb Valoshka cf9f0e0b45 Remove definitions for ancient compillers 2019-02-09 00:21:00 +03:00
Hleb Valoshka 08c74687cb Move disabled warning to CMakeLists.txt 2019-02-09 00:21:00 +03:00
Hleb Valoshka 84e27140e8 Change WIN32 macro check to _WIN32 2019-02-09 00:21:00 +03:00
Hleb Valoshka c80a1520ac Use config.h on all platforms 2019-02-09 00:21:00 +03:00
Hleb Valoshka 7f052e5cae Remove 3rd party code from macosx dir 2019-02-09 00:21:00 +03:00
Hleb Valoshka 58d8742156 Install files form extras-standard subdirs 2019-02-09 00:18:03 +03:00
Hleb Valoshka aea55f500c Update CMakeLists.txt for submodules usage 2019-01-31 13:13:40 +03:00
Hleb Valoshka 187e4418f2 Spice's csupport is not required 2019-01-31 13:13:40 +03:00
Hleb Valoshka a53f1895ed Add required git submodules 2019-01-31 13:13:40 +03:00
Hleb Valoshka 23d5ca3d2c Remove bundled copies of thirdparty code 2019-01-31 13:13:40 +03:00
Hleb Valoshka 188c436611 Update README and INSTALL (Closes: #219) 2019-01-30 16:29:08 +03:00
Hleb Valoshka 44f0e3217e Remove Visual Studio project files 2019-01-26 16:12:21 +03:00
Hleb Valoshka 913512df1c Remove QMake support 2019-01-26 16:12:21 +03:00
Hleb Valoshka 78d566d692 Use cmake instead of qmake in travis-ci builds 2019-01-26 16:12:21 +03:00
Hleb Valoshka f367d7bacc Use bswap functions provided by MSVC and Apple 2019-01-26 14:33:20 +03:00
pirogronian 706c99d308 Celx LUA value to Celestia parser Value convertion helper. 2019-01-21 17:49:35 +01:00
Hleb Valoshka 8b23439292 Update celestia.rc for native windows UI 2019-01-20 22:54:48 +03:00
Hleb Valoshka 1921672941 Add resources to exe files 2019-01-20 22:54:48 +03:00
Hleb Valoshka 65acb21911 Remove bundled win and osx libraries 2019-01-19 21:55:23 +03:00
Hleb Valoshka 8bde4aa6f9 [cmake] Fix splash installation directory (Closes: #198) 2019-01-19 21:55:09 +03:00
Hleb Valoshka f039f55963 [cmake] add cspice support 2019-01-19 21:55:09 +03:00
Hleb Valoshka d6b9e61e86 Fix (or disable) warnings produced by VS2015 2019-01-19 21:54:56 +03:00
Hleb Valoshka 3202b5242d [appveyor] Disable builds for all branches except master 2019-01-19 21:54:42 +03:00
pirogronian 4a41fb69c1 Fix type mismatches and wrong function call. 2019-01-19 19:12:28 +01:00
pirogronian ba3f1f655c Untempletization of NameDatabase 2019-01-18 23:00:39 +01:00
Hleb Valoshka e478aa0918 Build stardb tools as console applications on windows 2019-01-19 00:57:18 +03:00
Hleb Valoshka b1e36e1f1b Add C++ versions of xyzv2bin, bin2xyzv 2019-01-19 00:57:18 +03:00
Hleb Valoshka d32085969a Fix byte order of xyzvbinaryheader.byte_order
should be native instead of LE
2019-01-19 00:57:18 +03:00
Hleb Valoshka 196ec6dc5b Add include<cstdint> to xyzvbinary.h 2019-01-19 00:57:18 +03:00
Hleb Valoshka f11a116de5 Move __BYTE_ORDER__ definition for win32 to celutil/bytes.h 2019-01-19 00:57:18 +03:00
Hleb Valoshka 085bfd6762 Add missing semicolon in shader definition (Closes: #203) 2019-01-17 12:34:27 +03:00
Hleb Valoshka a6b50bb25a Binary XYZV format implementation (Closes: #168) 2019-01-15 20:32:38 +03:00
Askaniy 1ffe65c6c3 Update temperature, albedo and colors
Temperature correction and albedo improvement using new SSC parameters.
Now Celestia displays the real temperature.

Bond albedo values were taken from the English Wikipedia, for Mars:
http://www.tak2000.com/data/planets/mars.htm
Geometric albedo and colors of planets was calculated with very high
accuracy together with Zemlyanin from the spectra from this paper:
https://arxiv.org/abs/1609.05048

Textures and other parameters will be updated later.
2019-01-14 22:27:08 +03:00
Hleb Valoshka d19f024e5c Fix appveyor.yml to build Pull Requests...
... enable release build profile (debug build are broken now),
    dump CMakeCache.txt on build failure
2019-01-14 16:41:35 +03:00
Hleb Valoshka dc7aea72b8 Add appveyor.yml to test windows builds
Currently 32bit x86 and MSVC2015 only
2019-01-11 12:57:55 +03:00
Hleb Valoshka bf77df0997 [qt] Use desktop GL always 2019-01-11 12:57:55 +03:00
Hleb Valoshka 45e6a61bcf Update cmake files 2019-01-11 12:57:55 +03:00
Hleb Valoshka 379a658dff Fix format specifier 2019-01-11 12:57:55 +03:00
Hleb Valoshka 0df7c1d54e Fix "signed/unsigned mismatch" warning 2019-01-11 12:57:55 +03:00
Hleb Valoshka 7a2afa9f6b [win] Fix includes and remove macro redifinitions 2019-01-11 12:57:55 +03:00
Hleb Valoshka 6962697e22 [win] Fix types left after switch to standard types 2019-01-11 12:57:55 +03:00
Hleb Valoshka 69928b5ebf Install libqt5opengl5-dev in travis ci 2019-01-06 23:20:35 +03:00
pirogronian 03be74e3c7 Revert "Replace deprecated QGLWidget with QOpenGLWidget"
This reverts commit 2f7adf19d0.
2019-01-06 23:20:35 +03:00
Hleb Valoshka c80ad6c12e .clang-format for automated code formatting 2019-01-06 18:11:14 +03:00
Hleb Valoshka f4bb2aba39 Fix matrix order in multiplication
Old vector library is row based, while Eigen is column based by default,
so matrix order should be swapped.
2019-01-04 21:10:21 +03:00
Hleb Valoshka a6e74a7676 Remove incorrectly placed ';' 2019-01-04 19:10:01 +03:00
Hleb Valoshka 8df616c497 [qmake] Don't require unused XML library 2019-01-04 19:10:01 +03:00
Hleb Valoshka 8daf8f07d4 [win] Undef libintl's replacement for printf family 2019-01-04 19:10:01 +03:00
pirogronian 8c032924c7 Make dispositions general and use it in loadCategory. 2019-01-03 20:00:30 +01:00
Hleb Valoshka f56c3a104b Add lua_isinteger for lua 5.1 and 5.2 2019-01-01 12:23:31 +03:00
Hleb Valoshka bca39dc424 Test builds with lua versions 5.1, 5.2, 5.3 2019-01-01 12:23:31 +03:00
Hleb Valoshka 23261fc623 Don't install celmodel.a 2019-01-01 12:23:31 +03:00
pirogronian 2e1a1e9be1 Add legacy OpenGL linking option 2018-12-31 20:37:20 +01:00
pirogronian de2a2a892e I18n support for user defined categories via Lua and catalog files. 2018-12-30 17:23:48 +01:00
pirogronian 2f7adf19d0 Replace deprecated QGLWidget with QOpenGLWidget 2018-12-27 23:06:53 +03:00
Hleb Valoshka 1d198c3b72 Celx methods for new parameters 2018-12-22 23:22:49 +03:00
Hleb Valoshka e2d7efd984 celxlua: add push(float) 2018-12-22 23:22:49 +03:00
Hleb Valoshka c710412ba7 New planet parameters, core 2018-12-22 23:22:49 +03:00
pirogronian 6befa417ff [Qt] Unmark action in selection popup & browsers. 2018-12-22 21:18:38 +01:00
pirogronian a2dba1e519 Some celx module fixes & improvements. 2018-12-22 14:15:49 +01:00
pirogronian e51b08f367 Lua method to bind custom translation domain. 2018-12-19 21:16:09 +01:00
Hleb Valoshka 4eabb17ba2 Fix application start on Windows 2018-12-19 19:47:23 +03:00
Hleb Valoshka 372ebfb4f5 Convert static variable to constexpr 2018-12-19 19:47:23 +03:00
Hleb Valoshka b02a1184d5 Move DSO_OCTREE_ROOT_SIZE definition to dsodb.h
It's required by render.cpp so we can't leave it in dsodb.cpp only
2018-12-19 19:47:23 +03:00
pirogronian 781541e329 Sample data. 2018-12-19 17:31:30 +01:00
pirogronian 7f23b726c4 Core mechanism. 2018-12-19 17:31:30 +01:00
pirogronian 8cb76495a6 Celx misc modernization & some internal fixes. 2018-12-17 08:24:15 +01:00
Hleb Valoshka fd058fb3f3 Fixes for Windows native frontend
Actual author is Janus
2018-12-11 22:32:32 +03:00
Hleb Valoshka 06ab3d8b2c Remove unneeded functions from GLContext 2018-12-11 20:32:13 +03:00
Hleb Valoshka ea3988b6f3 Remove unused GLContext 2018-12-11 20:32:13 +03:00
Hleb Valoshka dbd7090117 Make ShaderManager private property of Renderer 2018-12-11 20:32:13 +03:00
Hleb Valoshka 8aaf7fb205 Add missing files to CMakeLists 2018-12-08 02:26:37 +03:00
Hleb Valoshka 7931114b9f Fix new warnings
- warning: deleting object of polymorphic class type ‘Star’ which has
   non-virtual destructor might cause undefined behavior
   [-Wdelete-non-virtual-dtor]
 - enumeration value ‘Type_Generic’ not handled in switch [-Wswitch]
2018-12-08 02:06:16 +03:00
Hleb Valoshka 77d4fdc0f6 Check wchar_t in utf8 handling functions (Closes: #158) 2018-12-08 02:06:03 +03:00
Hleb Valoshka 35ff97a07a Mark some enums as uint32_t
By default enums are int, so 0xffffffff == -1. But those enums are used in
unsigned context so some compilers (Visual C++ at least) throw warnings.
2018-12-08 02:05:52 +03:00
Hleb Valoshka 514a948144 Return reference from getInfoURL() of DeepSkyObject and Location 2018-12-08 02:05:52 +03:00
Hleb Valoshka 91b783102d Remove static global std::string 2018-12-08 02:05:52 +03:00
pirogronian e5e229d472 Haschild method added, critical bug fixed, code cleanup. 2018-12-07 10:17:11 +01:00
pirogronian 3075323113 Fixes security issue and code quality improvements. 2018-12-07 10:17:11 +01:00
pirogronian e6e84d1ce3 User-defined categories. Core + Lua. 2018-12-07 10:17:11 +01:00
Hleb Valoshka fe955fbbc4 Minimal .travisci.yml 2018-12-03 12:13:02 +03:00
Hleb Valoshka ed9a13b92f Remove g_ShaderManager from globals
#150 is not reproducible any more
2018-12-02 23:49:34 +03:00
Hleb Valoshka d242bde6a8 Remove some static class members 2018-12-02 23:49:34 +03:00
Hleb Valoshka f7d6edd671 Remove global std::string variables in stardb 2018-12-02 23:49:34 +03:00
Hleb Valoshka 03131d862c Make warnings more userfriendly 2018-12-02 16:24:33 +03:00
Hleb Valoshka dc8d537917 Remove useless code 2018-12-02 16:24:33 +03:00
Hleb Valoshka 6fcaadb207 Fix ~/.celestia.cfg reading 2018-12-02 16:24:33 +03:00
Hleb Valoshka 34ab3bd829 Update translations 2018-12-01 20:44:16 +03:00
Hleb Valoshka 7e498c0235 Update pot creation infrastructure 2018-12-01 20:44:16 +03:00
Hleb Valoshka 8f00c289f4 Ignore temporary files used to create pot files 2018-12-01 20:44:16 +03:00
Hleb Valoshka 04fa23b724 [cmake] install missing images 2018-12-01 01:02:14 +03:00
Hleb Valoshka 39e5372dd2 [cmake] Don't install static libraries 2018-12-01 01:02:14 +03:00
Hleb Valoshka afa60f72cb [glut] Show error message if simulation initialization failed 2018-12-01 01:02:14 +03:00
Hleb Valoshka 6ce95849fa [core] Continue loading if no DSO files are present 2018-12-01 01:02:14 +03:00
Hleb Valoshka e8d9a265ae [cmake] Fix data files installation 2018-12-01 01:02:14 +03:00
Hleb Valoshka c2fb193f4b [qt] Add fading orbit toggle option 2018-12-01 01:01:38 +03:00
Hleb Valoshka 7b8175eb5c [core,celx] Add ShowFadingOrbits renderer flag 2018-12-01 01:01:38 +03:00
Hleb Valoshka 549a646c67 Initial cmake implementation 2018-11-29 10:18:26 +03:00
Hleb Valoshka 354354bda3 [tools] Remove gets() usage 2018-11-29 10:18:05 +03:00
Hleb Valoshka 867e289cec [tools] Fix compilation fixes
Iirc the warning was related to missing const
2018-11-29 10:18:05 +03:00
Hleb Valoshka eeb50558e4 [tools] Migrate to Eigen 2018-11-29 10:18:05 +03:00
Hleb Valoshka d1f0434229 [gtk] Fix compilation warning 2018-11-29 10:18:05 +03:00
Hleb Valoshka c7e5038266 [gtk] Use app->core to call getConfig() 2018-11-29 10:18:05 +03:00
Hleb Valoshka 83a9751eb3 [gtk] Fix render flag setup in options dialog 2018-11-29 10:18:05 +03:00
Hleb Valoshka 17144db455 [gtk] Use g_object_unref instead of gdk_pixbuf_unref
gdk_pixbuf_unref was deprecated in 2001 so no guards are required
2018-11-29 10:18:05 +03:00
Hleb Valoshka bb1f4cede5 [qt] Remove unneeded include 2018-11-29 10:18:05 +03:00
Hleb Valoshka 82ef4e3b95 [qt] Add "Go to object" dialog
Like it was in Gtk and OSX backends
2018-11-28 10:24:07 +03:00
Hleb Valoshka 0acc4fed67 Update .gitignore
* Remove autotools stuff.
 * Add cmake build dirs.
 * Remove binaries compiled in place.
2018-11-27 21:15:14 +03:00
Hleb Valoshka 4e6367d2fe Fix spice checking 2018-11-27 11:21:56 +03:00
Hleb Valoshka 0956422bcf Iterator fix 2018-11-27 11:21:56 +03:00
Hleb Valoshka 8529ad1313 Fix scripts and images installation 2018-11-27 11:21:56 +03:00
Hleb Valoshka de563fbd66 Better pkg-config support for LUA 2018-11-27 11:21:56 +03:00
Hleb Valoshka 0bd0b4e19c Pass SolarSystemMaxDistance to a renderer (Closes: #133) 2018-11-26 13:16:40 +03:00
Hleb Valoshka 56ae267ad7 Add an new config parameter: SolarSystemMaxDistance
It will define maximal distance where solar system objects are
rendered.

It's value is inside [1, 10] LY.
2018-11-26 13:16:40 +03:00
Hleb Valoshka 6a5acbcdb6 Fix format specifier for float number 2018-11-26 13:16:40 +03:00
Hleb Valoshka e75123bfd0 Remove hardcoded maximal distance from an observer to stars
Stars close that the distance are rendered as solar systems (e.g. with
their planets, orbits, Oort belts).
2018-11-26 13:16:40 +03:00
Dorothea Baker fe4bf3f144 Add missing Linux installation info to readme 2018-11-25 19:13:56 +01:00
Hleb Valoshka f4a9b09e57 [qt] Fix copy-paste error 2018-11-25 13:01:16 +03:00
Hleb Valoshka 5d0f46422f [qt] Unmark object before marking it 2018-11-23 09:44:42 +03:00
Hleb Valoshka 0965c0b954 [qt] call beginResetModel() before changing a model 2018-11-23 09:44:42 +03:00
Hleb Valoshka 13e75c82c1 [qt] Allow to mark solar system bodies 2018-11-23 09:44:42 +03:00
Hleb Valoshka d1830f2b90 Fix leap seconds
- the first one was on 1972/June/30
 - the last one was 2016/Dec/31 not 2015
2018-11-22 22:22:27 +03:00
Hleb Valoshka 8592f59246 Replace markers with the same priority 2018-11-22 22:22:27 +03:00
Hleb Valoshka a89e40a856 Add loadfragment script function instead of from_ssc (Closes: #126) 2018-11-21 20:30:37 +03:00
Hleb Valoshka 54b62b8fe0 Amend location types
large -> largeringed (less confusing name)
trench -> ring (we already have a trench-like feature)
2018-11-20 23:13:19 +03:00
Hleb Valoshka d5f41a28c7 Change "Custom FPS" accelerator (Closes: #120) 2018-11-20 20:15:28 +03:00
pirogronian e41cc5dee4 Move lua methods to celx_celestia and celx_misc 2018-11-20 16:40:52 +01:00
Hleb Valoshka f13cb111e8 Make StarDetails::infoURL string instead of pointer 2018-11-19 23:29:19 +03:00
Hleb Valoshka 07ed1e3061 Make Location::infoURL string instead of pointer 2018-11-19 23:29:19 +03:00
Hleb Valoshka 4966813cac [qt] Fix render tab layout, disable rendering path selection 2018-11-19 23:29:19 +03:00
Hleb Valoshka 04ee7d5a76 Eliminate code duplication + style fix 2018-11-19 23:29:19 +03:00
Hleb Valoshka dcf7f4aa55 Return string ref in Body::getInfoURL 2018-11-19 23:29:19 +03:00
Hleb Valoshka 9d25ab249f Add from_ssc command for CEL scripts 2018-11-17 20:56:17 +03:00
Hleb Valoshka deeca96ddb Update URL to handle 64bit render flags, bump URL version to 4 2018-11-16 21:25:16 +01:00
Hleb Valoshka 9a02392856 [Qt] Use plural form of Spacecrafts in dialogs 2018-11-16 21:25:16 +01:00
Hleb Valoshka f0c5c155f6 [win] Update Windows backend for new display properties 2018-11-16 21:25:16 +01:00
Hleb Valoshka adff12a0aa [gtk] Update GTK+ backend for new display properties 2018-11-16 21:25:16 +01:00
Hleb Valoshka 60c42c2588 Add new Renderer flags
* ShowDwarfPlanets
 * ShowMoons
 * ShowMinorMoons
 * ShowAsteroids
 * ShowComets
 * ShowSpacecrafts
 * ShowFadingOrbits (not used yet)
2018-11-16 21:25:16 +01:00
Hleb Valoshka c1d1f0ead4 Fixes in observer:setlocationflags 2018-11-16 21:25:16 +01:00
Hleb Valoshka 0ecb2eb509 Add CelxLua::FlagMap64 for 64 bit flags, use in FlagMap 32 bit 2018-11-16 21:25:16 +01:00
Hleb Valoshka 74c418dd1e Load SSC fragments dynamicly 2018-11-16 21:20:55 +01:00
pirogronian 358268ad61 Make fps menu smart enough to detect actual fps rate setting. 2018-11-16 12:07:03 +01:00
pirogronian 475352634b Make Star style and Texture Resolution menus truly exclusive. 2018-11-16 12:07:03 +01:00
pirogronian e82a87018a Make FPS control menu checkable, move VSync option to it and rename properly. 2018-11-16 12:07:03 +01:00
pirogronian 05067da608 Fix: "All eclipses" button acted as "Lunar eclipses". 2018-11-16 10:02:39 +01:00
Hleb Valoshka b4ccb15c93 Add 4 custom location feature 2018-11-13 20:02:56 +01:00
Hleb Valoshka e92af93d08 Implement CEL/CELX methods to change texture of planet rings (Closes: #48) 2018-11-13 20:01:51 +01:00
Hleb Valoshka 0bfece85c2 [Qt] Add controls to toggle planet's rings 2018-11-13 19:59:17 +01:00
Hleb Valoshka e40b9549a7 Allow to disable and enable planet rings (Closes: #47) 2018-11-13 19:59:17 +01:00
Hleb Valoshka 2e654e451b Don't render corona for T5-T9 and Y class stars 2018-11-13 19:55:07 +01:00
Hleb Valoshka 52683be09b Add StellarClass helpers for StarDB Ver. 0x0200
Due to emerge of Spectral_Y
2018-11-13 19:55:07 +01:00
Hleb Valoshka e094e6876e Simplify StellarClass::str() 2018-11-13 19:55:07 +01:00
Hleb Valoshka 7e1fb92933 Add Brown Dwarf spectral class Y (Closes: #43) 2018-11-13 19:55:07 +01:00
Hleb Valoshka 24117cf609 Update bolometric correction and temperature for T class 2018-11-13 19:55:07 +01:00
pirogronian 089b974ee2 Restoring READE.md 2018-11-11 18:13:04 +01:00
pirogronian 8d5b729b52 Direct manual control over frame rate. Useful on weaker machines. 2018-11-09 15:21:39 +01:00
Hleb Valoshka 83d2799c0b Draw asterisms using VBO 2018-11-09 11:14:24 +03:00
Hleb Valoshka c2205c7f77 Implement AsterismList class with render() method 2018-11-09 11:14:24 +03:00
Hleb Valoshka 8564fa16e7 Make asterism.cpp more C++11-like 2018-11-09 11:14:24 +03:00
pirogronian b1d513a981 Fix lua versions detection. 2018-11-08 22:23:29 +01:00
Hleb Valoshka ddd95f6911 Re-implement some annotations using addAnnotation 2018-11-08 23:43:13 +03:00
Hleb Valoshka e73e366828 Cleanup renderer, no functional changes 2018-11-08 23:43:13 +03:00
Hleb Valoshka 9069df6c6b Move asterisms and boundaries drawing from Renderer::draw() 2018-11-08 23:43:13 +03:00
Hleb Valoshka fe40034189 Add helper methods to enable/disable smooth lines 2018-11-08 23:43:13 +03:00
Hleb Valoshka 7bb6ba543a [Qt] Fix inverted logic of "Latin Names" checkbox 2018-11-08 12:39:16 +03:00
Hleb Valoshka e66c98189b Don't include deleted header 2018-11-08 12:38:54 +03:00
Hleb Valoshka 3c04587e3f Add missing location feature saxum 2018-11-08 12:38:54 +03:00
Hleb Valoshka d31b4289d5 Add new location features to core, make them 64bit (Closes: #32) 2018-11-08 11:07:07 +03:00
Hleb Valoshka 9eec07a589 Sort locations 2018-11-08 11:07:07 +03:00
Hleb Valoshka e0c1585263 Make work with constellations more C++-like 2018-11-08 11:06:17 +03:00
Hleb Valoshka 9d5c914e4b Don't use localtime_r on Windows
That code was not tested actually.
On windows struct tm doesn't have localtime_r and tm_zone
2018-11-08 11:06:17 +03:00
Hleb Valoshka d7839beaf2 Fixing nonstandard types found by mingw-w64-i686 2018-11-08 11:06:17 +03:00
Hleb Valoshka 02e920d703 Fix some QString -> std::string conversions 2018-11-08 11:06:17 +03:00
Hleb Valoshka 898c89cb16 Fix preprocessor usage, make code cleareer 2018-11-08 11:06:17 +03:00
Hleb Valoshka 49c34587a3 Fix incorrect replacement in tools/cmod 2018-11-08 11:06:17 +03:00
Hleb Valoshka 1e80930a6d Use Eigen::Vector*::Unit*() and Eigen::Vector*::Zero() here and there 2018-11-08 11:06:17 +03:00
Hleb Valoshka 2603c60ad9 Fix indents in TRANSLATORS 2018-10-31 22:33:12 +03:00
Hleb Valoshka 5e41e38a8a [qt] Add menu to toggle VSync 2018-10-31 22:33:12 +03:00
Hleb Valoshka b4a8279b40 [qt] Set missing dialog titles 2018-10-31 22:33:12 +03:00
Hleb Valoshka 334c6e76f7 [qt] Change InfoPanel data when selection is changed in a *Browser 2018-10-31 22:33:12 +03:00
Hleb Valoshka 8c613c67f5 [qt] Use QString::fromStdString instead of QString::fromUtf8(s.c_str()) 2018-10-31 22:33:12 +03:00
Hleb Valoshka 253aaa4985 [qt] Make InfoPanel more L10n friendly 2018-10-31 22:33:12 +03:00
Hleb Valoshka f11f6133d2 [qt] Fix SolarSystem browser
* Fix navigation (SolarSystemTreeModel::sibling())
  * Fix ModelTester (SolarSystemTreeModel::flags())
  * Style fixes
2018-10-31 22:33:12 +03:00
Hleb Valoshka f701d4d86e [qt] Fix numbers output in Celestial & DSO browsers
* set precision to 3 for distance in CelBrowser
 * set precision to 6 for distance in DSOBrowser
 * use locale-defined way to display numbers
2018-10-31 22:33:12 +03:00
Hleb Valoshka eab70c96cb Fix more coverity issues
Mostly uninitialized variables plus one memory leak
2018-10-30 23:52:19 +03:00
Hleb Valoshka 062bf69397 Use C++11 static_assert 2018-10-30 23:52:19 +03:00
Hleb Valoshka 878c7ddcdf Force C++11 for older compillers 2018-10-30 23:52:19 +03:00
Hleb Valoshka bd409c1580 Allow Vsync usage (Unix only) 2018-10-30 23:52:19 +03:00
Hleb Valoshka 85f6dad804 Remove code used in old rendering paths 2018-10-30 23:52:19 +03:00
Hleb Valoshka 1fb9f82384 Add missing guards for spice code 2018-10-30 23:52:19 +03:00
Hleb Valoshka 1fda8e35f0 Fix warnings found by PVS
- 1 copy-paste error
  - 1 nullptr dereference
  - fixed self-assignment in Mesh::VertexDescription::operator=
  - a few missing delete
  - all other are checks for nullptr after new
2018-10-28 22:00:27 +03:00
Hleb Valoshka fa5ab79304 Cleanup code related to non-GLSL render paths 2018-10-28 22:00:27 +03:00
Hleb Valoshka 2828853d83 Cleanups, no functional changes 2018-10-28 22:00:27 +03:00
Hleb Valoshka 93b25bc5a0 Remove dead StarRenderer code 2018-10-28 22:00:27 +03:00
Hleb Valoshka c6de578de6 Dummy audio support for scripts (Closes: #19) 2018-10-28 12:21:31 +03:00
Hleb Valoshka 4ad277ed7a Correctly compute planet matrix for frustum (Closes: #17)
Original misbehaviour was caused by the two facts:
- old matrices are row-based (DX style) while Eigen's are colum-based so
  we need to multiply them in an opposite order
- Scaling() is applied to all matrix members while we need just to move
  our camera n relative units, where n = camera position/planet radius

+ remove old irrelevant comment
2018-10-28 12:18:38 +03:00
Hleb Valoshka f478faa5a4 Use std::string instead of char[] in annotations (Closes: #22) 2018-10-27 18:37:28 +03:00
Hleb Valoshka 2377b0089c Draw constellation boundaries using glsl 2018-10-26 00:22:54 +03:00
Hleb Valoshka dfe4ca01af Move shader dumping into its own helper 2018-10-23 00:03:39 +03:00
Hleb Valoshka 6653929310 Remove ARB programs support completely 2018-10-23 00:03:39 +03:00
Hleb Valoshka b9d532a902 Disable ancient ARB vertex programs 2018-10-23 00:03:39 +03:00
Hleb Valoshka 717bf3413d Rewrite star rendering using GLSL
Shader manager needs more attention though.
2018-10-23 00:03:39 +03:00
Hleb Valoshka 8a894bfb0e Workaround bug with planet dissapearing when an observer gets closer
See issue #17.
2018-10-22 23:08:11 +03:00
Hleb Valoshka 5503885ed6 Wrap defines with ifndef 2018-10-20 19:39:28 +03:00
Hleb Valoshka 594b3c9f63 Don't resize console buffer if new rows eq old 2018-10-20 19:39:19 +03:00
Hleb Valoshka 5e84d0e3e3 Free some memory allocations explicitly, found by vagrant
I found strange issue when Celestia is built using cmake: the program
was aborted with "corrupted size vs. prev_size" message.

GDB showed address as `delete[] text` in Console::~Console(), while there
was not double free().

Vargant showed "incorrect delete/delete[]/realloc" for
ShaderManager.shaders.

Now it's gone.
2018-10-20 19:39:12 +03:00
Hleb Valoshka b51280666b Initialize GLEW in glutmain 2018-10-20 19:38:34 +03:00
Hleb Valoshka e7d50818f4 Fix buildstardb compilation with -fpremissive 2018-10-20 19:38:15 +03:00
Hleb Valoshka ea273e0c6c Cleanups, no functional changes 2018-10-18 21:52:04 +03:00
Hleb Valoshka 110ff74fd8 New doesn't return nullptr 2018-10-18 21:51:13 +03:00
Hleb Valoshka 9d050df592 Remove extra whitespaces in rotation perion 2018-10-18 21:51:03 +03:00
Hleb Valoshka 4a2b1102ee Fix member initialization with itself 2018-10-18 21:50:59 +03:00
Hleb Valoshka 8685b114a3 Cleanup warnings found by clang++ 2018-10-18 21:50:41 +03:00
Hleb Valoshka 4104d557c9 Bundle libfmt 5.2.1 2018-10-17 22:19:03 +03:00
Hleb Valoshka 363abc40f3 Use libfmt instead of C-style & iostream workflow
TODO: check StarDatabase::getStarName
2018-10-17 22:19:03 +03:00
Hleb Valoshka 2cfebbadb4 Change time speed format
1) Without "'" modifier as fmtlib doesn't support it yet
  2) Decrease precision to 6
2018-10-17 22:19:03 +03:00
Hleb Valoshka 9281ea9d6e Add libfmt to celestia.pro (WIP, Unix only) 2018-10-17 22:19:03 +03:00
Hleb Valoshka a3a91ed8a0 Fix galaxies selection (Closes: #13)
It was introduced during conversion to C++11
2018-10-15 19:34:18 +03:00
Hleb Valoshka df3c23a079 Fix uninitialized variable warning 2018-10-14 18:14:33 +03:00
Hleb Valoshka a406f004f4 Strip ARB suffixes in curveplot 2018-10-14 18:14:33 +03:00
Hleb Valoshka 6a8c3f40db Move cupverplot to celengine 2018-10-14 18:14:33 +03:00
Hleb Valoshka 72a39d0e0a Disable unused code 2018-10-14 18:14:33 +03:00
Hleb Valoshka 1ab966a5eb Qt backend C++11 and style cleanups 2018-10-14 12:50:16 +03:00
Hleb Valoshka 00bab1e046 Enable splash window
TODO: resolve issues with pixmap alpha channel
2018-10-14 01:11:01 +03:00
Hleb Valoshka cb0ec7deae Update build instructions 2018-10-13 23:38:09 +03:00
Hleb Valoshka b3efd50661 Make cmod::Model destructor virtual (Closes: #8)
+tiny warning fixes
2018-10-13 23:05:32 +03:00
Hleb Valoshka e546a53e19 Refactor overlay image code to an own subclass 2018-10-13 22:47:18 +03:00
Hleb Valoshka 974686cf15 Remove "old-stype" star rendering 2018-10-07 21:32:43 +03:00
Hleb Valoshka 524cbd518f Replace some constants absent in GL ES 2018-10-07 21:27:33 +03:00
Hleb Valoshka 73a869c137 Use core OpenGL2 functions instead of their ARB versions 2018-10-07 20:45:01 +03:00
Hleb Valoshka c45e85fbfa Remove dead rendering code 2018-10-07 20:42:06 +03:00
Hleb Valoshka 451ecfd12e Remove hacks for ancient video cards 2018-10-07 19:39:33 +03:00
Hleb Valoshka 2ef2df3b80 Remove basic (OpenGL 1.0) render path 2018-10-07 19:39:33 +03:00
Hleb Valoshka 829a17d4ac Remove multitexture render path 2018-10-07 19:04:50 +03:00
Hleb Valoshka 0d7a20ea77 Remove GL VP render path 2018-10-07 19:03:14 +03:00
Hleb Valoshka 8a120b1e30 Remove GL1.5 VP & VP render path 2018-10-07 19:00:27 +03:00
Hleb Valoshka b4ab67be02 Remove Geforce FX render paths 2018-10-07 18:57:59 +03:00
Hleb Valoshka 0849e2658a Remove NV combiners render path 2018-10-07 18:54:55 +03:00
Hleb Valoshka 7345d49e8c Enable GL_ARB_shader_texture_lod in fragment shaders (Closes: #94) 2018-10-07 13:38:25 +03:00
Hleb Valoshka a2581b7e85 celx: add pause method
* w/o arguments - toggle pause state
 * w/ an arguments:
   - true - pause
   - false - resume
2018-10-07 13:38:25 +03:00
Hleb Valoshka 30de4e60d5 Exit if simulation was not created successfully
To prevent null pointer dereferencing and segmentation fault.
2018-10-07 13:38:25 +03:00
Hleb Valoshka e562c6a8f7 Don't show message about missing bookmarks file 2018-10-07 13:38:25 +03:00
Hleb Valoshka f5fee44693 Cleanup includes 2018-10-07 13:38:25 +03:00
Hleb Valoshka f80d09c554 Disable unused Capsule support in Frustum 2018-10-07 13:38:25 +03:00
Hleb Valoshka 8790e84a4c Wrap compatibility methods with #ifdef __CELVEC__ 2018-10-07 13:38:25 +03:00
Hleb Valoshka 85829063e0 Finish eigenization 2018-10-07 13:38:24 +03:00
Hleb Valoshka e290322b1c Add some tests for ported cel/celx methods 2018-10-07 13:38:24 +03:00
Hleb Valoshka 6b412b7a65 Remove unneeded includes of eigenport.h 2018-10-07 13:38:24 +03:00
Hleb Valoshka 2c0e4dcf56 Port left unported celx commands to eigen 2018-10-07 13:38:24 +03:00
Hleb Valoshka f09115b34c Port left unported cel commands to eigen 2018-10-07 13:38:24 +03:00
Hleb Valoshka 5f05bd711a Remove autotools files 2018-10-07 13:38:24 +03:00
Hleb Valoshka 8b957ef6a7 Update sites in about box 2018-10-07 13:38:24 +03:00
Hleb Valoshka 85aa3b1b62 Update translations 2018-10-07 13:38:24 +03:00
Hleb Valoshka 8db36a8b7a Add CelestiaQTranslator class to use gettext with Qt5 UI 2018-10-07 13:38:15 +03:00
Hleb Valoshka 8ae185a23d Fix QTextStream::<< usage
when used with char* it assumes ISO-8859-1 encoding
2018-10-07 12:39:21 +03:00
Hleb Valoshka 8e95dda855 Add extractrc script, move update_pot.sh to po/ 2018-10-07 12:39:21 +03:00
Hleb Valoshka cfc6923c20 Use localtime_r on all platforms to set TZ offset and name (Closes: #92) 2018-10-07 12:39:21 +03:00
Hleb Valoshka 4bdfe271e5 Remove C++14-isms
Some day this commit will be reverted.
2018-09-22 23:42:03 +03:00
Hleb Valoshka 83b222013b Better FeatureType in location.cpp/h 2018-09-22 23:42:03 +03:00
Hleb Valoshka 915a4e8b80 Remove copy-pasted code
it was added twice
2018-09-22 23:42:03 +03:00
Hleb Valoshka 7470fe4d6f Decrease memory used by UTF-8 tables 2018-09-22 23:42:03 +03:00
Hleb Valoshka 27e39aa4c3 Use c.push_back instead of c.insert(c.end,...) 2018-09-22 23:42:03 +03:00
Hleb Valoshka f9d096d6da Mark some methods as constexpr and replace with templates 2018-09-22 23:42:03 +03:00
Hleb Valoshka 73638c116d Remove basictypes.h and use standard c++11 types 2018-09-22 23:42:03 +03:00
Hleb Valoshka 5097d204d0 Use c++11 timer 2018-09-22 23:42:02 +03:00
Hleb Valoshka b082d5f47f Automatically convert to c++11 using clan-tidy
+ manual cleanups
2018-09-22 23:42:02 +03:00
Hleb Valoshka 743a7e91a7 Update year + add non-breakable space
... to prevent line wrapping before 2.

# Conflicts:
#	src/celestia/qt/qtappwin.cpp
2018-09-22 23:42:02 +03:00
Hleb Valoshka e49c61c90e Extend fatalError() to use flash() and use it instead of alerter 2018-09-22 23:41:58 +03:00
Hleb Valoshka 4358a25fcc Show git commit in "About" window
Can be useful when reporting issues
2018-09-22 23:41:58 +03:00
Hleb Valoshka 9f6ad88ed8 Add Cel command setwindowbordersvisible (Closes: #53)
# Conflicts:
#	src/celengine/cmdparser.cpp
#	src/celengine/command.h
2018-09-22 23:41:58 +03:00
GottfriedSp 74e07e859b added new leap seconds Jul 2015 and Jan 2016
fixed comment Jan 2012 -> Jul 2012
2018-09-22 23:41:58 +03:00
Hleb Valoshka c250fa623e Check for system installed eigen & glew 2018-09-22 23:41:58 +03:00
Hleb Valoshka bff29b516a Fix qmake project file
* cleanups
  * check for spice & byteswap.h

# Conflicts:
#	celestia.pro
2018-09-22 23:41:58 +03:00
GottfriedSp 5b8f243233 fixed crash when loading of celx script failed 2018-09-22 23:41:58 +03:00
GottfriedSp 87c3e973be changed error text 2018-09-22 23:41:58 +03:00
Hleb Valoshka 9b9faf6e03 unix: install splash.png into a proper location 2018-09-22 23:41:58 +03:00
Hleb Valoshka 5a5b06481f Fix the most serious fixes found by coverity
… resource leaks, null pointers dereference
2018-09-22 23:41:58 +03:00
Alexell 0d002e490e Updated all language files
Language files are automatically filled with a draft translation based on the original translations.
2018-09-22 23:41:58 +03:00
Alexell c3acdf932d Added script for generating celestia.pot template
Update celestia.pot (generated by script)

Co-Authored-By: Ignacio Losiggio <iglosiggio@gmail.com>
2018-09-22 23:41:57 +03:00
pirogronian 3cf7383b4e Supposedly fix lua version problem on non-unix platforms. 2018-09-22 23:41:57 +03:00
Hleb Valoshka 4c93f8b948 celx: add titles for examples 2018-09-22 23:41:57 +03:00
Hleb Valoshka ee43f559a0 lua: fix compatibility with 5.2 and 5.3 2018-09-22 23:41:57 +03:00
Hleb Valoshka c748b2f3f8 Set proper words order in menu entry for Celestia Manual 2018-09-22 23:41:57 +03:00
Hleb Valoshka e48e74f2e9 Look for Lua 5.2 libraries in project file
On Unix only
2018-09-22 23:41:57 +03:00
Gavin Stark 29a215ad17 adding name sorting to dso and star browsers 2018-09-22 23:41:57 +03:00
Gavin Stark bd076c38ab fixing panning issue #34 2018-09-22 23:41:57 +03:00
Hleb Valoshka 2ca6fde86c Fix incorrect comparision 2018-09-22 23:41:57 +03:00
Hleb Valoshka f34c7568c4 fix (some) compiler warnings
# Conflicts:
#	src/celengine/observer.cpp
2018-09-22 23:41:57 +03:00
Hleb Valoshka 882e4ecf28 fix whitespaces and indents
trailing spaces are removed
tabs are replaced with 4 spaces

# Conflicts:
#	src/celengine/cmdparser.cpp
#	src/celengine/command.cpp
#	src/celestia/celestiacore.cpp
#	src/celestia/celestiacore.h
#	src/celestia/qt/qtappwin.cpp
#	src/celestia/qt/qtglwidget.cpp
#	src/celestia/win32/winmain.cpp
2018-09-22 23:41:57 +03:00
Hleb Valoshka c1fdbcfc8d replace if with switch in getopt() parsing 2018-09-22 23:41:57 +03:00
Hleb Valoshka d6f0e459f0 fix symlink creation 2018-09-22 23:41:57 +03:00
Hleb Valoshka 0546fd1bec update for newer automake 2018-09-22 23:41:57 +03:00
Hleb Valoshka f48a72f9bc replace _BSD_SOURCE with _DEFAULT_SOURCE 2018-09-22 23:41:57 +03:00
Hleb Valoshka 627be3b5c0 update .gitignore 2018-09-22 23:41:57 +03:00
Joseph C Wang efea401e2c add ok button to preference dialog 2018-09-22 23:41:56 +03:00
Joseph C Wang 3fedf866ff Add Lua 5.2 support
see https://bugzilla.redhat.com/show_bug.cgi?id=1045632:wq
2018-09-22 23:41:56 +03:00
Alexell 8cc4e60e39 Updated libint for QT support. 2018-09-22 23:41:56 +03:00
WIN-641EQTUHGRE\root 40de39362a win32/64 fixes 2018-09-22 23:41:56 +03:00
Rikard Falkeborn 4642c3fcec Replace celestia.vcproj with celestia.vcxproj in Makefile.am 2018-09-22 23:41:56 +03:00
Alexell cb0d9bc200 Updated QT about description & RU locale 2018-09-22 23:41:56 +03:00
Alexell 87ec214549 Added celdat2txt tool
Dump the contents of the Celestia star database files in a text format
that's easy to read, edit or to use in other db applications.
Created by Hans Bruggink (HB).
2018-09-22 23:41:56 +03:00
Nils Larsson a1043fbfaa Various Qt5 fixes.
# Conflicts:
#	src/celestia/qt/qtglwidget.cpp
2018-09-22 23:41:56 +03:00
Nils Larsson 35419855ea Added missing <cstring> include. 2018-09-22 23:41:56 +03:00
Nils Larsson dff13f2656 Guard INT64_MAX. 2018-09-22 23:41:56 +03:00
Alexell 662a2cba0e Updated GLEW source lib to latest version 2.1.0 2018-09-22 23:41:56 +03:00
Alexell e49dcc692e Small QT5 fixes
Updated resetModels and fixed LUA lib name/path.
2018-09-22 23:41:56 +03:00
Alexell 6b5e8f49cf Changed output build directory for x84/x64 2018-09-22 23:41:56 +03:00
Dmitry Brant ff2455857a Upgrade code for 64-bit build in Visual Studio.
This updates the code to build for an x64 target.
- Provide prebuilt x64 static libraries.
- Update Windows dialog code for 64-bit support.
- Update libpng to 1.6.29.

Still a few issues:
- Sound (fmod) isn't working correctly in 64-bit.
2018-09-22 23:41:56 +03:00
Dmitry Brant a2e79dcd05 Don't generate manifest automatically. 2018-09-22 17:08:07 +03:00
Dmitry Brant 3efaf84862 Add iob_func shim for successful Win32 build. 2018-09-22 17:08:07 +03:00
Dmitry Brant a25d26720c Adapt code to Eigen 3.3
No functional changes, just adapting to API changes in Eigen.
2018-09-22 17:08:07 +03:00
Dmitry Brant 3436d15bc3 Upgrade Eigen to 3.3 2018-09-22 17:08:07 +03:00
Dmitry Brant 73a8d13087 Upgrade project files to VS2017.
# Conflicts:
#	celestia.vcproj
2018-09-22 17:08:07 +03:00
Dmitry Brant 111120c3eb Use Segoe UI for dialog font, instead of MS Sans Serif.
...so that the app looks like it belongs in 2017, not 2004.
2018-09-22 17:08:07 +03:00
Alexell 31a036f2f8 Added demo CEL/CELX scripts for overlay & verbosity
# Conflicts:
#	scripts/audio/sound_demo.celx
2018-09-22 17:08:06 +03:00
Alexell d149798b86 Added new cel/celx commands
cel: verbosity and overlay.
celx: celestia:overlay and celestia:verbosity.
Thanks to Vincent Giangiulio.
2018-09-22 17:08:06 +03:00
Alexell e14647fd27 Changed order of Render->Star style menu items 2018-09-22 17:08:06 +03:00
Alexell a43ae267e3 Added store in the registry for new options
Added store in the registry for star color and VisualMagnitude for QT
and Win interface.

# Conflicts:
#	src/celestia/win32/winmain.cpp
2018-09-22 17:08:06 +03:00
Alexell 53b79871b0 Small fade fix
Fade constellation boundaries and constellations figures fix.
2018-09-22 17:08:06 +03:00
Alexell d85fde1eac Added new filter for QT browser
Added "barycenters" filter for QT Star Browser.
2018-09-22 17:08:06 +03:00
Alexell 90f4b6bfbd Fix obs:gotolonglat (distance parameter work) 2018-09-22 17:08:06 +03:00
Alexell dd37f1812a Added scrollbar in PlanetarySystem popup menu for QT like as Win, added vesroin info. 2018-09-22 17:08:06 +03:00
Alexell c102af525c Added configuration options
Added ReverseMouseWheel option (existing in source) in celestia.cfg
file, added new orbit rendering parameters.
2018-09-22 17:08:06 +03:00
Alexell 4c49fbaa55 QT hotkeys fix
Added hotkey [Shift+F10] for video capture, fix hotkeys for MultiView.
2018-08-11 22:05:17 +03:00
Alexell 62703a79fb Updated LUA source library to version 5.1.5 with Coco patch
http://coco.luajit.org/
2018-08-11 22:04:52 +03:00
Alexell bf6c5fca18 Changed celestia.pot and ru.po 2018-08-11 22:04:35 +03:00
Alexell 97b496cbea Updated GLEW source library to latest version 2.0.0 2018-08-11 22:04:02 +03:00
Alexell c9b4cc34e7 Updated LUA source library to version 5.1.4 2018-08-11 22:03:43 +03:00
Alexell e75f19f86f Fixed input object names (on Enter) by Cyrillic, for win and QT version.
# Conflicts:
#	src/celestia/qt/qtglwidget.cpp
2018-08-11 22:02:11 +03:00
Alexell c4aa9e91cd Minor default params changes.
Magnitude set to 8.0 as default. Show LocationLabels as default. Added
GitHub link to QT vesion.
2018-08-11 21:51:49 +03:00
Alexell ba086a746f Hotkeys and star color minor changes.
Added hotkeys for switching resolution textures [R] and [Shift+R], added
a screen message by pressing [Ctrl+X].  Star color switching commands
now have string values "blackbody_d65" and "enhanced", rather than
logical, as previously.
2018-08-11 21:51:49 +03:00
Alexell 7cc3d26391 QT version: change default window position
Fixed critical error at removing last item bookmark, changed default
render flags.
2018-08-11 21:51:36 +03:00
Alexell ce1de62117 QT version: added splash screen on startup
+ changed Russian translation file
2018-08-11 21:44:49 +03:00
Alexell ca6bf16863 QT version: changed Celestia icon
Added "Manual Celestia" item in Help menu, added menu icons.
2018-08-11 21:44:13 +03:00
Alexell 60a75b9abc Added new .celx functions
Added new .celx functions: celestia:getstarcolor and
celestia:setstarcolor for star color control. Added scripts for example.
2018-08-11 21:43:40 +03:00
Alexell ebf939c513 Added "Star color" menu item
Added "Star color" menu item duplicate key command [Shift +%]. Fixed
"Help Guide" menu item error.
2018-08-11 21:42:53 +03:00
Alexell f86b6e54c5 Updated language files
Updated language files. Added sans10_ru.txf font for the Russian locale.
Changed controls_ru.txt
2018-08-11 21:41:55 +03:00
Alexell 061b390f94 Minor code changes
Fixed Tour Guide bug (go to the first object in the list did not work).
Improved quality for jpg screenshots. "Version" label on the splash
added to localization. Small changes in Star Browser and Eclipses.
2018-08-11 21:41:15 +03:00
Alexell 748ec19a41 Changed Celestia icon. Changed and added menu icons.
Changed Celestia icon. Changed and added menu icons. Make a small change
in the position and size of dialog elements.
2018-08-11 21:40:49 +03:00
Grant Hutchison 7033ec3246 Added KOI-889 b, Kepler-69 b&c, KIC 4862625 b, Ome Ser b, HD 2952 b, HD 120084 b 2013-04-25 18:09:30 +00:00
Grant Hutchison 937f1d865e Added KOI_889, Kepler-69, KIC 4862625 A 2013-04-25 18:07:58 +00:00
Grant Hutchison 57a3bbc29b Removed Hip 11952 b&c; added CoRoT-16 b, Kepler-62 b,c,d,e,f 2013-04-19 15:24:26 +00:00
Grant Hutchison de9606d9a4 Added CoRoT-16 and Kepler-62 2013-04-19 15:23:06 +00:00
Grant Hutchison 9d4407694a Added WISE J104915.57-531906.1 binary 2013-03-13 16:53:57 +00:00
Grant Hutchison 21f30ad2b2 Added WASP-80 b, KIC 8852719 b, HIP 27803 b&c, HD 103774 b, HD 109271 b&c 2013-02-04 23:53:28 +00:00
Grant Hutchison af2636c91d Added WASP-80, KIC 8852719 2013-02-04 23:46:23 +00:00
Grant Hutchison ad78243128 Fully specified orbit for Alf Cen 2013-02-04 23:45:03 +00:00
Grant Hutchison e850f38ca0 Added KELT-3 b; Tau Cet b,c,d,e,f 2012-12-19 17:12:27 +00:00
Grant Hutchison 8dc2c31476 Added KELT-3 2012-12-19 17:11:21 +00:00
Grant Hutchison 008db9b8eb Added WASP-52 b, -58 b, -59 b, -60 b, -71 b, 77A b, HD 66141 b, HD 220074 b, HD 208527 b, HD 27631 b, HD 219077 b, HD 166724 b; HD 40307 e,f,g 2012-11-30 23:19:15 +00:00
Grant Hutchison 0f7f3aaa8b Added WASP-52, -58, -59, -60, -71, 77A 2012-11-30 23:16:40 +00:00
Grant Hutchison f368985e57 Added Alf Cen B b 2012-10-17 18:56:56 +00:00
Grant Hutchison 2d5f8fd66e Added WASP-54 b, WASP-56 b, WASP-57 b, WTS-1 b, NSVS 1425 b&c 2012-10-14 21:10:53 +00:00
Grant Hutchison 86480c1765 Added WASP-54, -56, -57; WTS-1; NSVS 1425 2012-10-14 21:08:42 +00:00
Grant Hutchison 3c201f2be8 Added 37 stars 2012-09-25 22:05:53 +00:00
Andrew Tribick 0d038d1219 Moved celestia.pro file to main folder, updated desktop file to point at correct icon location. 2012-05-28 16:17:50 +00:00
Andrew Tribick 263a44aaee Added Theora capture on Linux Qt. 2012-05-27 11:04:07 +00:00
Andrew Tribick 069a61b3af Expanded preferences dialog box for Qt; added ability to turn off tinted illumination. 2012-05-23 21:28:37 +00:00
Andrew Tribick c01c112d16 Preserve the 1.6.1 changes in the log. 2012-05-23 19:36:25 +00:00
Andrew Tribick f9da3c06f4 Merged in changes to the Windows installer script from the 1.6.1 branch 2012-05-23 19:26:03 +00:00
Grant Hutchison b0895783c0 Added single planets to KOI-53, WASP-47, -55, -61, -62, -63, -66 & -67; HD 10180 i&j; KOI-872 b,c&d; HD 16031 b&c; Gliese 433 c 2012-05-12 13:50:31 +00:00
Grant Hutchison 725e495139 Added KOI-13 & -872; WASP-47, -55, -61, -62, -63, -66 & -67 2012-05-12 13:47:48 +00:00
Andrew Tribick e6d7a54cc9 Reorganise cmod tools directory and add qmake project files. 2012-05-03 19:49:05 +00:00
Andrew Tribick 47107b119e Add missing zlib.h for libpng15. 2012-05-01 21:06:09 +00:00
Andrew Tribick 207823b1d8 Patch to fix valgrind errors and gcc warnings from Daniel K.O.
Use #ifdef FOO instead of #if FOO
Unused function parameter names
Uninitialised member in FrameTree
Memory read after deallocation in ReferenceFrame
Unmatched new[]/delete[] in StarDatabase
Uninitialised temperature in StarDatabase
Uninitialised member of RenderListEntry: isOpaque
Fix for convoluted code in renderer
2012-04-26 19:50:22 +00:00
Grant Hutchison 3f8d95466e Added brown dwarfs throughout, additional stars beyond RECONS Top 100 list; non-Charm2 red dwarf radii made realistic 2012-04-02 22:05:34 +00:00
Fridger Schrempp cb9922be2f Updated the Celestia version number to 1.7.0 in sync with celestia.pro 2012-04-02 16:15:18 +00:00
Fridger Schrempp 4b2e305e50 Added .desktop file for Linux by Andrew. It is part of 'make install' target in celestia.pro. 2012-04-01 17:36:28 +00:00
Fridger Schrempp 767944b037 For Linux: Implemented a 'make install target' and a Lua name adaptation based on pkgconfig. Additional tunings by Andrew and Pat. 2012-04-01 16:35:20 +00:00
Fridger Schrempp afbb6aa41e Fixed environment variable query 2012-04-01 16:29:58 +00:00
Fridger Schrempp 70cf5a1b20 For Linux: Implemented a 'make install target' and a Lua name adaptation based on pkgconfig. Additional tunings by Andrew and Pat. 2012-04-01 16:03:39 +00:00
Pat Suwalski 55c5cce055 Fix resource loading in symbol-optimized build (non-qmake). 2012-03-28 20:04:49 +00:00
Pat Suwalski e7f3cb7d4e Update Makefiles to reflect commits 5192 and 5194. 2012-03-28 17:19:01 +00:00
Andrew Tribick 88eeedff84 Clean-up: removed another VC++6 makefile 2012-03-22 20:16:55 +00:00
Andrew Tribick 5b7568a9ad Clean-up: removed bat files for VC++6. 2012-03-22 20:09:01 +00:00
Andrew Tribick 8a6a703660 Clean-up: removed old VC++6 files 2012-03-22 20:04:53 +00:00
Andrew Tribick a6ebb6d434 Added names for exoplanet host stars Kepler-21 and HR 8799. 2012-03-05 20:29:21 +00:00
Chris Laurel a974ef9308 Initialized cullingRadius member of Body class. Leaving it uninitialized meant that it could end up set to NaN, resulting in odd behavior. 2012-02-25 02:20:18 +00:00
Chris Laurel a3e6e2ee45 Added new leap second on 30 Jun 2012. 2012-02-11 03:51:24 +00:00
Grant Hutchison 877beb3614 Added 31 Kepler planets in 10 systems; RR Cae b; Gliese 667C d; HD 37605 c; HD 197037 b; HD 79498 b; HD 220773 b 2012-02-06 22:43:14 +00:00
Grant Hutchison 67a8b23369 Added RR Cae and Kepler-23 to -33 (except -27) 2012-02-06 22:41:10 +00:00
Grant Hutchison b3dc651306 Added single planets for HAT-P-31 to -37; WASP-32 & -34; Kepler-15, -34 & -35; SWEEPS-4 & -11; KOI-961 b,c&d; UZ For c,d 2012-01-15 00:10:13 +00:00
Grant Hutchison 544b5b24ef Added HAT-P-31 to -37; WASP-32 & -34; Kepler-15, -34 & -35; KOI-961; SWEEPS-4 & 11; UZ For 2012-01-15 00:06:59 +00:00
Chris Laurel 98538305e3 Backported quaternion slerp fix from Eigen 3.0 trunk. Corrects interpolation
between quaternions that are opposites (or nearly so.) 
See http://eigen.tuxfamily.org/bz/show_bug.cgi?id=398
2012-01-02 21:29:21 +00:00
Grant Hutchison 87368d2090 Added KOI-55 b&c; KOI-254 b; Kepler-20 b,c,d,e&f; Kepler-21 b; Kepler-22 b; CoRoT-24 b&c; Gliese 667C c; HD 156279 b; HD 100655 b; 71 CMa b; NY Vir b; replaced HU Aqr b&c 2012-01-01 00:35:14 +00:00
Grant Hutchison 2661dda7f1 Added CoRoT-24, Kepler-20, Kepler-22, KOI-55, KOI-254, NY Vir 2012-01-01 00:31:50 +00:00
Andrew Tribick dd3c34dc13 Fix for gcc-4.6 from Nils Larsson; pass --no-as-needed to g++ in order to allow building on Ubuntu 11.10 2011-11-24 21:26:25 +00:00
Andrew Tribick 6a20a09673 Update Eigen to 2.0.16 2011-11-24 21:24:38 +00:00
Grant Hutchison 50e444fabb Removed HD 16760 b and HU Aqr planets; added 13 planets from Qatar, Kepler, KOI, KIC, WASP and others 2011-11-05 22:37:36 +00:00
Grant Hutchison 328c24f364 Added BD+48 738, Qatar-2, Hip 114840, KIC 10905746, KIC 6185331, KOI-135, KOI-204, Kepler-18, WASP-36 2011-11-05 22:36:15 +00:00
Grant Hutchison ca4beb0610 Added Kepler-16 b; Hip 57274 b,c,d; HD 163607 b,c; HD 164509 b; HD 65216 b; HD 220689 b; HD 196067 b; HD 98649 b 2011-09-19 18:19:42 +00:00
Grant Hutchison 7344125250 Added Kepler-16 2011-09-19 18:15:26 +00:00
Grant Hutchison bef14c7a39 Added Kepler-12 b, Kepler-19 b; 41 new HARPS planets in 25 different systems 2011-09-18 14:39:17 +00:00
Grant Hutchison 62fef69d7f Added Kepler-12 and Kepler-19 2011-09-18 14:38:11 +00:00
Chris Laurel c8537e3fa6 Fixed compiler warnings for VSOP87 conversion tools. 2011-09-12 22:16:32 +00:00
Chris Laurel 321eab2717 Fixes for qttxf texture font file creation tool:
- Corrected glyph uv coordinates
- Show debug output indicating whether an exact font match was possible
2011-09-07 14:25:13 +00:00
Grant Hutchison 4ca7da71c1 35 new planets, including three in 82 Eri system 2011-09-05 22:24:58 +00:00
Grant Hutchison ebbd1c4376 Added KOI-196, Kepler-17, WASP-50, TrES-5 parent, HD 132563 B 2011-09-05 22:24:04 +00:00
Grant Hutchison ffe7fab029 Added two WISE brown dwarfs at ~5pc 2011-08-01 01:18:48 +00:00
Grant Hutchison c64f0bc877 Added WASP-44 b, -45 b, -46 b; CoRoT-17 b, -18 b, -19 b, -20 b, -23 b; Kepler-14 b, KOI-423 b, Kepler-10 c, HAT-P-13 d, Hip 5158 c 2011-07-06 21:34:44 +00:00
Grant Hutchison a631b4e22c Added WASP-44, -45, -46; CoRoT-17, -18, -19, -20, -23; Kepler-14 & KOI-423 2011-07-06 21:32:31 +00:00
Grant Hutchison c497b02f8f Added reference for Hip 85605 parallax problem 2011-05-13 16:16:02 +00:00
Grant Hutchison 60f79f34cc Rho1 Cnc e in closer orbit than originally thought 2011-05-04 15:55:55 +00:00
Grant Hutchison e9983a6237 Rho1 Cnc e transits; rest of system does not 2011-05-02 21:16:27 +00:00
Grant Hutchison 0fd1b7b818 Updated with most recent RECONS revision; corrected spelling of Rigil Kent 2011-05-02 21:14:56 +00:00
Grant Hutchison 03fb8bddba Correct spelling of Betelgeuze and Rigil Kent; remove aberrant spelling Alnasi; correct capitalization of variable double letters 2011-05-02 21:13:37 +00:00
Grant Hutchison ebf085409c Added WASP-23 b, WASP-35 b, WASP-43 b, WASP-48 b, HAT-P-30/WASP-51 b, HD 38283 b, Alf Ari b 2011-04-21 22:46:16 +00:00
Grant Hutchison 1211c4f63e Added WASP-23, WASP-35, WASP-43, WASP-48, HAT-P-30/WASP-51 2011-04-21 22:44:37 +00:00
Vincent Giangiulio 68479992e6 Added an infinite mouse feature to the Qt4 front end 2011-04-16 11:08:24 +00:00
Grant Hutchison e952114911 Added HAT-P-28 b, HAT-P-29 b, WASP-39 b, GJ 3634 b, HU Aqr b&c, HD 22781 b; removed HD 168443 c 2011-03-14 14:49:37 +00:00
Grant Hutchison b58d7ae1a6 Added HAT-P-28, HAT-P-29, WASP-39, GJ 3634, HU Aqr 2011-03-14 14:47:51 +00:00
Andrew Tribick 94d590e67f Fix for Unicode cel URLs from v1.6.1 branch.
Fix for Unicode URLs in KDE bookmarks menu.
2011-03-13 00:58:23 +00:00
Pat Suwalski d73c47c060 Set a default CONFIG_DATA_DIR if none is set. 2011-03-09 21:17:51 +00:00
Pat Suwalski e556481c98 Do not use "@DEFS@" in Makefile.am. 2011-03-09 04:21:22 +00:00
Andrew Tribick 893bde30cd Committed Nils Larsson's patch to enable Qt version to be executed from outside the source directory, added to list of contributors. 2011-03-07 22:18:22 +00:00
Andrew Tribick 2d73068c9a Add missing files from extras-standard to Makefiles. 2011-03-07 21:08:33 +00:00
Grant Hutchison a7c0121c2c Removed HD 149382 b; added Kepler-11 b,c,d,e,f&g 2011-02-06 17:17:12 +00:00
Grant Hutchison 83cdeb3f01 Added Kepler-11 2011-02-06 17:15:41 +00:00
Pat Suwalski 3319d13625 Set CXXFLAGS correctly (not to CFLAGS). 2011-01-24 17:52:38 +00:00
Pat Suwalski 56ecee7560 Add missing "-I" in Makefile. Update includes in "src/celestia" to be consistent with other includes. 2011-01-23 05:58:30 +00:00
Pat Suwalski 157ded3afa Remove executable property. 2011-01-21 22:47:09 +00:00
Pat Suwalski 3152634369 Don't hardcode the top-level include path. 2011-01-21 22:26:59 +00:00
Pat Suwalski 682371b85a Add missing ui_gtk=yes for GNOME. 2011-01-21 21:58:38 +00:00
Pat Suwalski 9a04249f30 Fix SPICELIB -> SPICE_LIBS instance. 2011-01-21 20:56:37 +00:00
Pat Suwalski 158393a7f7 Add --with-qt to build Qt4 front-end via autotools. 2011-01-21 18:20:34 +00:00
Chris Laurel a7301f0b08 Fixed smooth lines checkbox in Qt4 interface (fix from Nils Larsson) 2011-01-21 17:56:08 +00:00
Grant Hutchison 13b89acf4a Added Kepler-10 b, HAT-P-27 b, HD 102365 b; removed Rho CrB b, HD 74156 d, HD 156846 b, HD 131664 b 2011-01-20 22:49:24 +00:00
Grant Hutchison 72510522f4 Added Kepler-10, HAT-P-27 2011-01-20 22:47:38 +00:00
Pat Suwalski ee52176eef Re-implement handling of CFLAGS to be more modular. 2011-01-20 00:03:32 +00:00
Pat Suwalski 0aa603e0ee Update copyright year. 2011-01-12 18:32:20 +00:00
Vincent Giangiulio a5261af9d0 Updated Turkish translation 2011-01-12 11:43:01 +00:00
Pat Suwalski 2e8e6b3393 Add missing <cstdio> include. 2011-01-11 23:57:52 +00:00
Vincent Giangiulio 58c4815768 Fixed i18n bug with scripting messages 2011-01-10 22:39:27 +00:00
Grant Hutchison ccb163b5ee Added KOI-428 b, Tau Gem b, Nu Oph b&c 2011-01-05 17:18:26 +00:00
Grant Hutchison 118f9a6a32 Added KOI-428 2011-01-05 17:17:45 +00:00
Vincent Giangiulio 7031378a96 - Added Turkish translation 2011-01-05 10:06:10 +00:00
Grant Hutchison ce255932bc Added Qatar-1 b, WASP-41 b, HD 9826 e, Gliese 667 C b, HD 113538 b&c, HD 75898 b, HD 1690 b, HD 217786 b, HD 25171 b 2010-12-25 00:17:07 +00:00
Grant Hutchison d064e1d920 Added Qatar-1 b, WASP-41 b 2010-12-25 00:15:01 +00:00
Chris Laurel 88503bbb3b Fixed crash when display meshes on Intel GPUs. Vertex buffers were not unbound after being created, which could result in out of range vertex accesses later on. 2010-12-21 09:14:32 +00:00
Vincent Giangiulio e19d9b20ae - Added Norwegian translation from FreewareTips
- Updated translations
2010-12-08 09:06:58 +00:00
Grant Hutchison 63750c36ea Added Kepler-9 d and WASP-31 b 2010-11-30 23:34:04 +00:00
Grant Hutchison 3025d52157 Added WASP-31 2010-11-30 23:33:15 +00:00
Vincent Giangiulio f06b2cbb32 Updated Belarusian translation 2010-11-24 09:12:31 +00:00
Grant Hutchison 6756e48074 Added HD 97658 b, Hip 13044 b, 83 Leo B c, HD 192310 b, HD 177830 c, HD 218566 b, HD 31253 b 2010-11-23 23:48:13 +00:00
Grant Hutchison 2ef7403391 Added Hip 13044 2010-11-23 23:45:08 +00:00
Vincent Giangiulio 40016f7091 - Added Belarusian translation from Hleb Valoshka
- Updated Chinese simplified translation
2010-11-14 19:59:54 +00:00
Grant Hutchison 8a47c6be0f Removed Gliese 667 C b and Gliese 433 b; added HD 176051 b 2010-10-25 09:24:19 +00:00
Grant Hutchison e8663d452d Added NN Ser c&d 2010-10-15 17:10:40 +00:00
Grant Hutchison 6ec56d6744 Added NN Ser 2010-10-15 17:10:14 +00:00
Grant Hutchison ed065b30a3 Added HAT-P-26 b, WASP-38 b; removed HD 190228 b 2010-10-09 23:53:37 +00:00
Grant Hutchison 0bc7e60e72 Added HAT-P-26 and WASP-38 2010-10-09 23:52:21 +00:00
Grant Hutchison 22b4c0855f Added Gliese 581 f & g 2010-10-03 02:32:55 +00:00
Grant Hutchison 4cf85c3aa5 Added HAT-P-20 b, HAT-P-21 b, HAT-P-22 b, HAT-P-23 b 2010-09-26 23:28:20 +00:00
Grant Hutchison 6ccfb611e3 Added HAT-P-20, HAT-P-21, HAT-P-22, HAT-P-23 2010-09-26 23:27:42 +00:00
Chris Laurel 08ace926d8 Committed fixes from Nils Larsson:
- Updated call to png_set_gray_1_2_4_to_8 to png_set_expand_gray_1_2_4_to_8 (new PNG API)
- Eliminated unnecessary Color:: scope
2010-09-17 16:56:37 +00:00
Grant Hutchison 335467a5c9 Added HAT-P-17 b&c, HAT-P-25 b, Kepler-9 b&c 2010-09-12 23:36:51 +00:00
Grant Hutchison 8ef03a5d8b Added HAT-P-17, HAT-P-25, Kepler-9 2010-09-12 23:36:17 +00:00
Grant Hutchison 2e685f8fba More exoplanet host star designators from the Extrasolar Planets Encyclopaedia 2010-08-24 23:50:13 +00:00
Grant Hutchison 8ed6f913f3 Revised distance to UGPS 0722-05 2010-08-24 20:57:34 +00:00
Grant Hutchison a2cdf5223a Added HD 10180 b-h, HAT-P-24 b, WASP-37 b 2010-08-24 20:34:13 +00:00
Grant Hutchison 35041048a6 Added HAT-P-24, WASP-37 2010-08-24 20:33:25 +00:00
Chris Laurel 1c4e989a07 Added Windows build script for spice2xyzv tool and added missing return statement in convertSpkToXyzv() 2010-08-24 18:44:46 +00:00
Chris Laurel 30d4a40f4f Changed paths in qtbookmark.h and celestia.rc so that out of source tree
builds with Qt Creator will work.
2010-08-12 20:40:50 +00:00
Grant Hutchison 8d4849c6a8 Added HAT-P-18 b, HAT-P-19 b, HD 102956 b, HD 90043 b&c, HD 200964 b&c 2010-08-03 00:05:23 +00:00
Grant Hutchison 0de9905e0b Added HAT-P-18 and HAT-P-19 2010-08-03 00:03:31 +00:00
Andrew Tribick 5705194ae7 Removed SkyPlane frame: unclear this corresponds to sky plane frame as actually used in astronomical publications. 2010-07-25 18:38:48 +00:00
Chris Laurel 2704ad0dde Finished code in scattertable tool to write out precomputed atmospheric
scattering tables as DDS format texture files.
2010-07-06 01:08:53 +00:00
Chris Laurel d00fb03d6a Change ASCII cmod writing code to output null material index as -1 instead
of max unsigned int, which prevents read/write incompatibilities on 64-bit
systems. Moved some Doxygen comments from header to source file.
2010-07-05 22:53:06 +00:00
Grant Hutchison 3108cb842f Added CoRoT-7 d, WASP-3 c, Gliese 876 e 2010-07-02 23:49:07 +00:00
Chris Laurel dc32eedc9c Added functions to scattertable tool to write out atmospheric scattering
tables as half float textures in .dds files.
2010-07-02 00:08:40 +00:00
Grant Hutchison 672682b380 Added CoRoT-8 b, 10 b, 11 b, 12 b, 13 b & 14 b; removed Cha Ha 8 b 2010-06-18 23:56:38 +00:00
Grant Hutchison 243c78de97 Added CoRoT-8, 10, 11, 12, 13 & 14; removed Cha Ha 8 2010-06-18 23:55:50 +00:00
Chris Laurel 68ca6d6db5 Added a simple build script for scattertable. 2010-06-18 07:23:41 +00:00
Chris Laurel f1a96ee114 Added scattertable utility for generating tables for realistic rendering
of atmospheric scattering effects.
2010-06-18 07:17:41 +00:00
Chris Laurel aae2e0dc58 Added new Cassini xyzv file to Windows install script. 2010-06-03 16:50:18 +00:00
Grant Hutchison 3b4141c282 Improved radii for Methone, Pallene, Anthe, Aegaeon (May Icarus) 2010-06-01 00:17:28 +00:00
Grant Hutchison c120c17b88 Added HD 145457 b, HAT-P-15 b, HAT-P-16 b; removed QS Vir b 2010-05-31 22:42:58 +00:00
Grant Hutchison 21c41b8403 Added HAT-P-15, HAT-P-16; removed QS Vir 2010-05-31 22:41:54 +00:00
Chris Laurel 0ea1d68596 Fixes for spice2xyzv tool:
- Prevent extra samples from being generated at end of time window
- Fixed sampling outside of valid SPICE coverage window
- New search algorithm better respects requested approximation tolerance
2010-05-27 22:10:25 +00:00
Chris Laurel d31bb52221 Added Solstice Mission extension for Cassini. 2010-05-24 02:46:41 +00:00
Chris Laurel dcf48155a8 Fixed bug that made a solar system object invalid when Modify was used to
override properties of an object with a multiphase Timeline.
2010-05-17 16:56:04 +00:00
Andrew Tribick 1960b7c888 Added ability to specify temperature and bolometric correction in .stc files. 2010-04-28 18:59:44 +00:00
Grant Hutchison 6a44c13ca4 Added WASP-33 b, Kepler-5 b, Kepler-6 b, Kepler-7 b, Hip 57050 b 2010-04-28 18:37:07 +00:00
Grant Hutchison 0ba5d26c9b Added Kepler-5, Kepler-6, Kepler-7 2010-04-28 18:35:50 +00:00
Chris Laurel 5252211434 Eigenized particle system code and brought it up to date with model
changes.
2010-04-27 03:49:40 +00:00
Grant Hutchison 807e75a8c5 Added nearby brown dwarf UGPSJ 0722-05 2010-04-23 22:47:23 +00:00
Chris Laurel 52b1dccdff Fixed eclipse shadows on non-spherical planets (especially noticeable on
Saturn.) Fix affects the GLSL/OpenGL 2.0 render path only.
2010-04-23 22:14:44 +00:00
Grant Hutchison f357f2608b Added WASP-8 b, -21 b, -24 b, -25 b, -28 b, -29 b 2010-04-19 23:39:27 +00:00
Grant Hutchison ce00a4c2bf Added WASP-8, -21, -24, -25, -28, -29 2010-04-19 23:38:22 +00:00
Vincent Giangiulio 051f7034ee Fixed compilation error: added util.h include to identify the gettext macro 2010-04-18 14:13:42 +00:00
Grant Hutchison b57e5c2e49 Added WASP-22 b, WASP-26 b, HD 38801 b; removed BD+20 1790 b 2010-04-15 22:54:04 +00:00
Grant Hutchison 3cc6f6a66c Added WASP-22, WASP-26; removed BD+20 1790 2010-04-15 22:52:49 +00:00
Vincent Giangiulio 54892743b8 Added i18n support through gettext to the Qt4 version 2010-04-13 10:14:57 +00:00
Vincent Giangiulio f591ba4f55 - Added Galician translation by Xabier Cancela 2010-04-11 14:22:16 +00:00
Vincent Giangiulio 98974b73ee Updated translations 2010-03-27 09:42:32 +00:00
Grant Hutchison cab9d767c6 14 new planets, including HAT-P-14 b, CoRoT-9 b, 47 UMa d & HD 38529 d 2010-03-22 01:32:08 +00:00
Grant Hutchison 84681c7ae1 Added HAT-P-14 and CoRoT-9 2010-03-22 00:35:40 +00:00
Grant Hutchison dab2020c02 New IAU names on Mercury, Venus, Mars, Enceladus & Titan 2010-03-22 00:34:26 +00:00
Chris Laurel 031aeb1273 cmodview fixes:
- Add compile time controls for shadow buffer size and sampling
- Fixed flipped textures in Qt4.6
- Replaced stderr output with qWarning()
- Fixed shadow buffer debugging visualization
2010-03-10 20:49:52 +00:00
Chris Laurel 9c62cbdc38 Fixed broken #include in glframebuffer.cpp. 2010-03-10 06:03:26 +00:00
Chris Laurel 7db69edf74 Removed another Qt4.6 dependency from cmodview. 2010-03-10 01:46:49 +00:00
Chris Laurel a452539e60 Reduced shadow aliasing in cmodview by using 4-sample percentage closer filtering. 2010-03-10 01:04:26 +00:00
Chris Laurel 8fb1e59159 Added experimental shadow rendering to cmodview. 2010-03-09 08:29:15 +00:00
Vincent Giangiulio 38b6e23c6f - Fixed i18n issue about truncated labels with East Asian locales: 2010-03-07 20:19:17 +00:00
Chris Laurel c06c3092c9 Replaced Qt's QGLShaderProgram with custom class in cmodview in order to eliminate dependence
on version 4.6.
2010-03-07 18:44:38 +00:00
Chris Laurel 8b0347fe52 cmodview bug fixes:
- Corrected off-by-one error in assigment of materials to groups when
loading obj files.
- Force shader rebuild when switching between dxt5nm and uncompressed normal maps
2010-02-25 05:26:28 +00:00
Chris Laurel d18ac0758c cmodview enhancements:
- Draw translucent meshes after opaque ones in order to reduce depth ordering
artifacts.
- Alphabetize texture names in material editor
2010-02-24 02:17:21 +00:00
Chris Laurel 7fff956828 cmodview enhancements:
- Added setting to disable ambient light
- Added texture selection combo boxes to material editor
2010-02-24 01:17:22 +00:00
Vincent Giangiulio 473675c396 Fixed cmodview compilation errors and warnings on win32 2010-02-23 17:43:39 +00:00
Vincent Giangiulio 566679c187 Marked missing strings for gettext translation. 2010-02-22 19:41:10 +00:00
Chris Laurel f931f6c658 Fixed render path initialization in cmodview. 2010-02-22 19:19:03 +00:00
Chris Laurel f720ab378e cmodview updates:
- Enable OpenGL 2.0 path by default when shaders are available
- Use self-shadowing term when specular lighting or normal maps are enabled
2010-02-22 18:35:10 +00:00
Vincent Giangiulio 9c3f908446 Made celestia:runscript use relative file names 2010-02-22 14:01:22 +00:00
Chris Laurel 074ebf4e9c - Added dxt5nm support to cmodview
- Changed the normal map shaders to always normalize the vector fetched
  from the texture map. Texture interpolation can produce values that aren't
  normalized, resulting artificially faint specular highlights. We should
  probably make the same change to Celestia itself.
2010-02-21 03:03:09 +00:00
Chris Laurel 9f1229c4d3 Bug fixes and UI improvements for cmodview:
- Fixed background colors in material editor
- Correctly show opacity in OGL 2 path
- Fixed texturing problems that occurred when switching from OGL 2 to FF path
- Fixed highlight color in OGL 2 path
2010-02-21 00:42:30 +00:00
Chris Laurel 259477ae22 Improvements for cmodview:
- Save and restore window state between runs
- Changed material editor to a dockable widget
- Disable material editor when no mesh is selected
2010-02-19 21:23:26 +00:00
Fridger Schrempp 872bfa3ad6 Added src/modelview directory for building 2010-02-19 11:19:37 +00:00
Chris Laurel ac3e03b22e Added normal and specular map support to cmodview. 2010-02-19 02:35:57 +00:00
Chris Laurel 4f51011fae Added OpenGL 2.0 render path for cmodview utility. 2010-02-19 00:15:44 +00:00
Chris Laurel 96babc009b Added support for loading Wavefront OBJ format models to cmodview. 2010-02-17 19:52:51 +00:00
Chris Laurel c007352e69 Fixed texture loading for ASCII cmod files. 2010-02-17 16:51:30 +00:00
Chris Laurel 5cd4e9945d Added celmodel to list of subdirectories in automake file. 2010-02-17 02:27:35 +00:00
Chris Laurel e8928c86cc Updated cmodtools:
- Removed normal generation code from convert3ds.cpp; use the (better) normal
generator in cmodops.cpp instead.
- Removed nonfunctional code to use smoothing groups
- Added background color chooser for cmodview
- Enabled automatic uniquification and better normal generation when converting
3ds to cmod in cmodview and 3dstocmod utilities.
2010-02-17 00:48:17 +00:00
Chris Laurel faedefec0e Fixed 3ds conversion code to properly handle meshes without materials. 2010-02-16 20:40:23 +00:00
Chris Laurel 5706a6c81a Added libcelmodel.a to list of libraries linked in automake files. 2010-02-16 07:56:40 +00:00
Chris Laurel 17a93ec524 cmodview updates:
- Fixed crash bug
- Enabled material editor
2010-02-16 02:52:22 +00:00
Vincent Giangiulio 5ec40943cf - Made orbitPeriod field available for stars too from the object:getinfo celx method
- Added a celestia:runscript method to celx scripting
- Changed Windows version to save and restore location features setting from registry
2010-02-13 11:11:54 +00:00
Chris Laurel ad6bd44172 Removed obsolete files vertexlist.h and vertexlist.cpp. Removed them from Qt4,
automake, and MSVC project files.
2010-02-12 20:20:06 +00:00
Chris Laurel c83622222c Updates to cmodview:
- Use better values for near and far camera planes to prevent clipping
- Added selection capability
- Improved zoom function
2010-02-11 04:05:35 +00:00
Chris Laurel f9260386b2 celmodel fixes:
- Removed unused code in #if 0/#endif blocks
- Added non-const accessor for Mesh::PrimitiveGroup
- Return more information in pick result: mesh, primitive group, and primitive
index instead of just the distance to first intersection.
2010-02-10 20:52:43 +00:00
Chris Laurel 626e24d9f9 Fixed Eigen memory alignment assertions in cmodview with g++/Windows. 2010-02-06 04:00:12 +00:00
Chris Laurel c0b425c143 Fixed MeshManager to handle missing or corrupt model files gracefully. Solves crash with Selden's Hale add-on. 2010-02-06 02:27:36 +00:00
Chris Laurel f16b86fa9b Removed currently unused file from Qt4 project. 2010-02-05 21:14:47 +00:00
Chris Laurel 22dcd7c0e1 Updated MSVC++ project file and automake files for new celmodel module. 2010-02-05 20:38:46 +00:00
Chris Laurel b92930b79d - Updated automake file with celmodel changes
- Added geometry and modelgeometry files
2010-02-05 20:18:58 +00:00
Chris Laurel c76d2b0fb7 Added missing material files and automake file for celmodel module. 2010-02-05 20:12:37 +00:00
Chris Laurel ef146f24aa Added celmodel module. 2010-02-05 20:10:32 +00:00
Chris Laurel 31a31d4e2f - Moved cmod code into a separate module celmodel.
- Updated cmodtools to use celmodel.
- Improved 3ds file loader to support multiple materials per mesh.
2010-02-05 20:05:18 +00:00
Chris Laurel 7c0373af65 Updates to cmodview app:
- Added merge meshes operation
- Fixed bug that prevented z-buffer from getting cleared with some models
- Use SDK 10.5 for compatibility on older Mac OS X versions
2010-02-05 01:34:05 +00:00
Andrew Tribick 98183dc2e3 Add SkyPlane reference frame. 2010-02-04 22:31:36 +00:00
Chris Laurel 652bcb471c More work on cmodview app:
- Added ability to load base textures
- Support for opacity
- Added actions to uniquify vertices and generate normals
2010-02-04 04:58:21 +00:00
Chris Laurel 14fa908e52 Added new tool for viewing, converting, and manipulating 3DS and CMOD files. 2010-02-03 04:16:22 +00:00
Grant Hutchison d539fb575b Added HD 164604 b, HD 175167 b, HD 86226 b, HD 129445 b, HD 152079 b 2010-01-31 23:41:35 +00:00
Chris Laurel bfa2f5fb09 - Use adaptive sampling to calculate cubic splines for drawing orbits and trajectories
- Added capability to show fading orbit 'trails' (disabled by default)
- Added more parameters to control the appearance of orbits
2010-01-28 02:24:14 +00:00
Chris Laurel 6b6bdc4316 Fixed reversed comparison in curveplot module. 2010-01-25 02:48:14 +00:00
Grant Hutchison 42ba2575c0 Removed VB 10 b; added Kepler-4 b, Kepler-8 b, HD 156668 b, CoRot-6 b, HD 9446 b&c, Hip 79431 2010-01-18 14:09:00 +00:00
Grant Hutchison 4d809201cb Added Kepler-4, Kepler-8 2010-01-18 14:07:28 +00:00
Chris Laurel b0bd81c190 Updated curveplot library:
- Added Doxygen comments
- Implemented version of curve renderer that applies a linear fade effect over
  some section of the curve.
2010-01-14 01:00:51 +00:00
Chris Laurel 472416d880 Updated Eigen to version 2.0.11, which features precision fixes for quaternion slerp and
4x4 matrix inversion.
2010-01-14 00:13:51 +00:00
Pat Suwalski 25d8f6b8dc Regenerate Makefile when Rules-* change, clean extracted cpp files. 2010-01-07 00:20:27 +00:00
Pat Suwalski 231eec4dbd Auto-update translations when source files changed, account for new location of win32 sources. 2010-01-06 23:55:51 +00:00
Pat Suwalski f6752dd128 Forced regeration of data/data.cpp to get latest location translations. 2010-01-06 23:09:51 +00:00
Pat Suwalski 3e9b14f844 Updating list of source files and running update-po. 2010-01-04 16:59:02 +00:00
Pat Suwalski 975fdfc750 Running update-po in po2. 2010-01-04 16:58:12 +00:00
Grant Hutchison c1bc93d75e Added DP Leo b 2010-01-02 01:08:04 +00:00
Grant Hutchison 1d951ed7e6 Added DP Leo 2010-01-02 01:06:23 +00:00
Vincent Giangiulio 2736cf1e69 Updated translations. 2009-12-22 11:10:01 +00:00
Grant Hutchison aa96e6e4eb S/2003 J 17 now named Herse 2009-12-21 00:46:59 +00:00
Grant Hutchison 0095f36a94 12 new exoplanets; removed HD 136118 b 2009-12-20 23:57:21 +00:00
Grant Hutchison 3680e8f86e Added WASP-19 and BD +20 1790 2009-12-20 23:55:55 +00:00
Grant Hutchison 2bf3f6a989 Fixed colon typos 2009-12-19 16:05:09 +00:00
Chris Laurel 1055de068c Removed obsolete files solarsysxml.cpp and solarsysxml.h. 2009-12-16 20:41:42 +00:00
Andrew Tribick a2191a3650 Added units support to parser and tokenizer. Units are specified inside angle brackets after the property name. 2009-12-16 19:23:51 +00:00
Vincent Giangiulio 302d761daf - Added world-capitals names to localization
- Added Slovak translation
- Updated Chinese Simplified translation
2009-12-14 17:55:44 +00:00
Vincent Giangiulio 863f5fe1e6 Marked "Nebula" and "Open cluster" for gettext translation. 2009-12-12 10:06:28 +00:00
Chris Laurel 8e26b7c1da Added observer:orbit method for celx scripting. 2009-12-06 22:15:22 +00:00
Chris Laurel 083b9ac577 Integrated Boux's fixes for Win32 + ATI graphics configurations:
- Fixed invisible context menu in fullscreen mode
- Fixed menu bar overlapping top of 3D view
2009-12-06 21:40:14 +00:00
Chris Laurel db85fa0bb3 Reordered #includes in source files for Qt front-end so that most specialized
headers are included first.
2009-12-02 22:06:19 +00:00
Chris Laurel f6d47c7ab6 Added mousemove hook for Lua scripts. 2009-12-02 21:51:06 +00:00
Chris Laurel eede557acd Updated Eigen to version 2.0.10. 2009-12-02 08:02:15 +00:00
Chris Laurel 78b6a87d81 Eliminated OrthogonalUnitVector function because Eigen already offers
MatrixBase::unitOrthogonal to do the same thing.
2009-12-02 03:35:59 +00:00
Fridger Schrempp 38774d29a3 Fix compilation under Linux after addition of the subdirectory src/celephem 2009-11-28 11:55:35 +00:00
Chris Laurel 9c5155f716 Added celephem to list of linked libraries in makefiles. 2009-11-25 18:04:32 +00:00
Chris Laurel 37fe583af3 Updated configure.in and Makefiles for new directory structure. 2009-11-25 02:10:19 +00:00
Grant Hutchison 1a1d7714e0 Added Gam1 Leo b, QS Vir b 2009-11-16 00:39:19 +00:00
Grant Hutchison b5e806343d Added QS Vir 2009-11-16 00:38:40 +00:00
Chris Laurel 5aa91fc3e5 Fixed the 'half-star' bug. Star spheres were not being rendered correctly
because of precision problems in a matrix inversion. Using a coordinate system
scaled so that star radius = 1 corrects the problem.
2009-11-11 17:09:20 +00:00
Grant Hutchison e20c010f25 Added Aegaeon 2009-11-11 00:24:29 +00:00
Chris Laurel fe102d24fc Removed unused code from renderglsl.cpp 2009-11-10 02:13:43 +00:00
Vincent Giangiulio e02568b3f0 Added a copy of the Celestia icon file into the qt directory 2009-11-09 19:05:47 +00:00
Chris Laurel 9201acb02a Moved Win32 front-end source files into separate subdirectory. 2009-11-05 21:43:47 +00:00
Chris Laurel d3e5fe64d4 Modified spice2xyzv tool to allow numeric IDs instead of strings. This helps
with objects that don't have an official SPICE name.
2009-11-05 21:14:11 +00:00
Chris Laurel 2a201628a8 Added Makefile.am for celephem module. 2009-11-05 17:14:51 +00:00
Chris Laurel 31dcde9d73 Fixed inverted SPICE rotations. 2009-11-03 00:33:12 +00:00
Chris Laurel a62e39b722 - Updated Qt4 project file for reorganization of ephemeris source files.
- Modified Qt4 project file to copy files into app bundle on Mac OS X.
2009-11-02 22:16:27 +00:00
Chris Laurel 4a03b52617 Moved ephemeris files (subclasses of Orbit and RotationModel) into new celephem folder. 2009-11-02 20:30:18 +00:00
Vincent Giangiulio debc9f3965 Added new scripting command to set the text color:
- settextcolor / gettextcolor added to celestia object in CELX scripting
- settextcolor added to CEL scripting
2009-11-01 19:18:35 +00:00
Chris Laurel 0bc83a501a Added missing #includes of NewStdVector to rendcontext.cpp and shadermanager.cpp. 2009-10-27 22:29:41 +00:00
Chris Laurel dcf9232c08 Refactored some shadowing/eclipse code in the renderer
- Enabled ring shadows on moons and other objects that aren't themselves surrounded by
  ring systems.
- Use texture LOD bias to add blurriness to ring shadows (a result of the finite
  size of the light source.)
- Calculate ring phase function per-pixel instead of per-vertex
- Implemented more realistic rendering of unlit side of ring systems
- Used new Eigen's NewStdVector for vectors containing fixed-sized vectorizable
  objects.
2009-10-27 22:02:01 +00:00
Chris Laurel 7e9429ed45 Committed updated version of GLEW with many new OpenGL extensions. Of these,
ARB_shader_texture_lod is of the most immediate interest.
2009-10-27 20:46:19 +00:00
Grant Hutchison 93e5fda1a2 30 new planets 2009-10-25 23:43:27 +00:00
Grant Hutchison 1444ef57e2 Add Itokawa locations 2009-10-25 19:33:32 +00:00
Grant Hutchison 7d8400c030 Load Itokawa locations file 2009-10-25 19:32:28 +00:00
Vincent Giangiulio 7b84a504c5 Updated translations. 2009-10-25 18:16:28 +00:00
Vincent Giangiulio 6ab2e08c41 Fixed bug with constellation labels : row vectors were used while Eigen uses column vectors 2009-10-16 16:33:35 +00:00
Grant Hutchison 56cd9f8382 Orientate HW Vir planets' rotation plane to orbital plane 2009-10-14 21:58:54 +00:00
Grant Hutchison 6cd22acc1e Improved representation of HW Vir system 2009-10-12 19:48:59 +00:00
Grant Hutchison 1617ac944a Added CoRoT-5 b, HW Vir b&c; removed HD 150706 b, HD 43848 b 2009-10-09 23:57:50 +00:00
Grant Hutchison a3e5e92534 Added CoRoT-5 2009-10-09 23:56:24 +00:00
Grant Hutchison 3f77101a24 IAU updates to Mercury, Venus, Moon, Mars and Titan 2009-10-07 17:38:58 +00:00
Vincent Giangiulio 8b7d99afbe - Updated simplified Chinese font textures
- Updated traditional Chinese translation
- Removed r and R commands from localized control help files.
2009-10-07 16:04:41 +00:00
Vincent Giangiulio 287e044834 Replaced Japanese font textures set with a lighter version in which rarely used characters are omitted. 2009-10-04 18:00:21 +00:00
Chris Laurel 44e446b6e9 Added a log base 2 function the mathlib.h. 2009-10-04 16:54:35 +00:00
Chris Laurel 20b018c437 Updated Eigen to version 2.0.6. 2009-10-04 15:10:11 +00:00
Chris Laurel 1c89b0568f Cleaned up include files used by modules in celengine:
- Include files in order from most specialized to most general
- Use C++ versions of headers (e.g. cmath instead of math.h)
2009-10-04 14:12:59 +00:00
Chris Laurel 601bcd8a2f Updated Galileo mission:
- Much more accurate xyzv trajectory generated from SPICE kernels (details
  in trajectory file headers.)
- Improved Galileo model from Martin Charest
- Mission split into cruise and Jupiter orbit phases
2009-09-26 04:07:03 +00:00
Grant Hutchison 05551e2b48 Corrected radius of 2004 XR190 and linked InfoURL to discovery paper 2009-09-24 23:25:12 +00:00
Grant Hutchison 701eb85717 Added 2MASS 0939-2448 A&B, 2MASS 0136+0933, 2MASS 1507-1627 2009-09-24 23:22:18 +00:00
Grant Hutchison 2c25113b85 Added CoRoT-7 c; updated CoRoT-7 b 2009-09-18 14:05:44 +00:00
Chris Laurel d5dd361843 Fixed compiler warning for redefinition of UINT64_MAX 2009-09-18 00:45:14 +00:00
Chris Laurel bccf694deb Disabled the display of a planet's equilibrium temperature in the onscreen
info. The calculation is too simplistic to be useful, and it's not a
fundamental value on par with distance, size, etc.
2009-09-16 17:05:27 +00:00
Grant Hutchison 3379858e5f Added WASP-18 b 2009-09-15 15:37:09 +00:00
Grant Hutchison 29558e6c33 Added WASP-18 2009-09-15 15:36:30 +00:00
Chris Laurel f177424e43 Improved preloadtexture script command so it loads model textures as well as the geometry. 2009-09-15 04:55:03 +00:00
Vincent Giangiulio 02fc9009b9 Fixed overlay text misalignment with the display of movie capture window 2009-08-31 21:50:12 +00:00
Vincent Giangiulio 94da202bbd - Changed the label of 'Celestial' grid to 'Equatorial' 2009-08-27 10:13:05 +00:00
Chris Laurel 5e97b856cc Expanded glyph set generated by qttxf tool. 2009-08-27 01:52:26 +00:00
Chris Laurel 45d932a285 Added qttxf, a GUI based tool for creating txf font files. 2009-08-27 01:11:22 +00:00
Vincent Giangiulio 3575e39e08 Added Chinese Traditional translation files to Windows installer script 2009-08-26 12:42:44 +00:00
Vincent Giangiulio 9c4fa8e861 - Updated Chinese Traditional translation 2009-08-26 12:29:02 +00:00
Vincent Giangiulio 4febb0e579 - Added Chinese Traditional zh_TW translation
- Updated translations
2009-08-22 12:22:28 +00:00
cartrite 7f8d56bb9a removed an include statement for glext.h 2009-08-21 04:22:35 +00:00
Chris Laurel 7beecc93f9 Removed gl.h from Visual C++ project file. 2009-08-21 03:03:47 +00:00
Chris Laurel 1ae7019dd7 Redefined orientation of location objects so that they inherit the orientation
of their parent bodies. Fixes unexpected behavior that occurred when a user
would sync orbit a location.
2009-08-21 02:53:25 +00:00
Chris Laurel 236fc1f251 Deleted old GL extension handling code that has been replaced by GLEW. 2009-08-21 02:50:21 +00:00
Chris Laurel 62bf0b1ec7 Include glew in the prefix header on the Mac. Cleaned up all the glew_h
defines that were required to make the XCode build work before the change
to the prefix header.
2009-08-21 01:16:58 +00:00
Chris Laurel 46262ae434 Reverted to gcc 4.0 and SDK 10.4 in Mac project file so that XCode 2 will
still work.
2009-08-21 01:14:33 +00:00
Grant Hutchison a558c0b22b Added WASP-17 2009-08-19 23:16:34 +00:00
Grant Hutchison d67176a767 14 new exoplanets 2009-08-19 23:15:56 +00:00
cartrite d56ed7fab0 Builds a error window in case GLEW is not initialized to inform user. 2009-08-19 05:15:39 +00:00
Chris Laurel 62cbe88579 Updated XCode project to build with GLEW. 2009-08-19 00:41:22 +00:00
Chris Laurel c374f77f5a Enabled anisotropic filtering for planet textures (when supported by hardware.) 2009-08-17 23:45:45 +00:00
Chris Laurel 2b8f73b4af Fixed overlay text alignment problems with auto-completion and date display. 2009-08-17 20:03:54 +00:00
cartrite a1bcffce2b Fixed warning for unused variable "glewErr". All that was needed was "glewInit();" to initialize GLEW. An error message still needs to be created for failures. 2009-08-17 19:38:43 +00:00
cartrite 39959bb479 Changed error message if GLEW initialization fails. 2009-08-17 19:35:11 +00:00
cartrite 01e796b216 Runs glewInit to enable render modes. 2009-08-15 20:29:57 +00:00
cartrite 8609ef453a Modified to use glew.h 2009-08-15 20:28:55 +00:00
cartrite 42281e4a53 Replaced lines that refered to celengine/gl.h with GL/glew.h
Added code for glewinit so all render modes work in kde
updated makefile includes path to use GL/glew.h
Removed glext from kde and gtk builds
Removed celengine/gl.h from celestia.pro
2009-08-15 17:51:15 +00:00
Chris Laurel ba206096eb Fixed celx commands observer:setspeed() and observer:getspeed(). They hadn't been modified to account for the big microlightyear to kilometer conversion. 2009-08-15 17:23:08 +00:00
Chris Laurel 30799a7565 Removed glext module from VC++ project. 2009-08-15 01:02:00 +00:00
Chris Laurel f5d97be5c9 More GLEW-related cleanup.
- Added missing GLEW_STATIC define to VC++ project file
- Fixed Qt4 build to use GLEW
- Stripped out more references to old glext functions
- Fixed miscellaneous compiler warnings.
2009-08-15 00:48:42 +00:00
Chris Laurel 9d373fd041 Switched from using custom GL extension handling code to GLEW library. 2009-08-14 22:39:54 +00:00
Chris Laurel 78803c21e2 Text rendering fixes:
- Disabled multisampling when drawing the console. This should prevent text blurriness when running with antialiasing enabled (though it won't hep for supersampling modes)
- Reduce the number of calls to glTranslate() by tracking offset in software
2009-08-14 01:27:29 +00:00
Grant Hutchison a099b44674 Added HAT-P-13 b&c, WASP-16 b, HD 16760 b, Chi Vir b 2009-08-10 23:30:58 +00:00
Grant Hutchison 3e9b4965ba Added HAT-P-13 and WASP-16 2009-08-10 23:29:23 +00:00
Chris Laurel f734856120 - Simplified eclipse shadow calculations in Renderer
- Fixed drawing of small objects in non-point sprite paths
2009-08-07 17:22:42 +00:00
Chris Laurel 6a1b6b5ae8 More Eigenization:
- Fixed build break in render.cpp
- Converted code in parseobject.cpp and celestiacore.cpp to use Eigen
- Cleaned out unused code
2009-08-07 16:50:58 +00:00
Chris Laurel 0aabecd6d9 Eigenized code to draw selection cursor. 2009-08-07 04:37:50 +00:00
Chris Laurel 837c072f50 Added curveplot files to Mac OS X project file. 2009-08-07 03:40:26 +00:00
Chris Laurel c835491ddc Rewrote orbit drawing code to fix multiple shortcomings. New orbit code uses adaptively subdivided cubic curves to draw orbits more accurately and without numerical precision artifacts. The orbit rewrite uses Eigen throughout (instead of the Celestia vector classes.) 2009-08-07 03:15:26 +00:00
Chris Laurel 1843572c97 Enabled vertex buffer objects for planet rendering. 2009-08-06 02:54:03 +00:00
Chris Laurel afd7c78574 More Eigenization changes. 2009-08-06 00:41:24 +00:00
cartrite 6aa1046ae2 Added Includes thirdparty/Eigen folder to fix build error on linux automake systems 2009-08-05 22:07:57 +00:00
Chris Laurel 157b720854 Removed more code that used the old vector classes. 2009-08-05 21:13:29 +00:00
cartrite 1f47ed60e8 Changes to GUI's to bring them up to date with Eigen conversion and a bugfix gotoLong/Lat for gtk and kde. When goto Lon/Lat was used the observer ended up in the middle of the planet. 2009-08-05 21:00:15 +00:00
cartrite 206aa4e789 gcc 4.4 fixes submitted by John Van Vliet A slight change was made that changed stdio.h to cstdio 2009-08-05 20:56:49 +00:00
cartrite a11c2dd66b removed a redundant stars.dat It was getting installed twice and caused an error on newer automake version 2009-08-05 20:53:50 +00:00
Chris Laurel 731d442daf Removed references to old vector classes from vertexprog and fragmentprog
modules.
2009-08-05 20:19:28 +00:00
Chris Laurel c13040f280 Fixed Goto Location dialog for Mac OS X version. 2009-08-05 20:03:40 +00:00
Chris Laurel f9457d32a6 Fixed bugs in goto dialog. The latitude was not getting initialized correctly, and the distance was in the wrong units. 2009-08-05 17:58:53 +00:00
Chris Laurel 8021043b08 Removed 3dsmesh.h from VC++ project. Turned on SSE2 and -DEIGEN_NO_DEBUG for the release build. 2009-07-25 23:50:57 +00:00
Chris Laurel 69d44fa03a Removed obsolete files 3dsmesh.cpp and 3dsmesh.h. 2009-07-25 23:48:03 +00:00
Chris Laurel d1a7e7c3cb Eigenized comet rendering code. Moved OrthogonalUnitVector function to geomutil.h, where it can be shared by multiple modules. 2009-07-25 23:18:32 +00:00
Chris Laurel 9cf68b5169 Eigenized parser and app core code. 2009-07-25 22:18:51 +00:00
Chris Laurel e36646501b Eigenized more DSO code. 2009-07-25 00:28:19 +00:00
Chris Laurel abeb350f5b Eigen conversion:
- Eigenized locations and some cube map code in texture.cpp
- Removed eigenport.h include from completely converted modules
2009-07-24 23:02:23 +00:00
Chris Laurel 2f0103ec9f Made Eigen related fixes for Mac OS X build. 2009-07-24 20:10:14 +00:00
Chris Laurel d119b40ed5 Added typecast to fix compile error in starbrowser.cpp (gcc 4.3 only, apparently) 2009-07-24 19:02:37 +00:00
Chris Laurel dcfb117012 More Eigenization changes and fixes for UniversalCoord methods. 2009-07-24 06:59:54 +00:00
Chris Laurel adf40d6f55 Committed Steve's patch to fix KDE and Gtk front-ends for Eigen conversion. 2009-07-24 06:58:38 +00:00
Chris Laurel c26ea667f2 Eigenized old sphere mesh code (used only for handling .cms mesh files now.) 2009-07-23 23:19:26 +00:00
Chris Laurel 198df1561d Updated Mac version to compile with Eigen conversion. 2009-07-23 22:44:49 +00:00
Chris Laurel 80d0e02d3b Eigenized all rotation model code. 2009-07-23 21:09:12 +00:00
Chris Laurel 8af33028df Fixed Eigenization related compiler errors in qtinfopanel.cpp. 2009-07-23 20:33:00 +00:00
Chris Laurel 272a074544 Miscellaneous Eigenization; cleaned up obsolete functions in astro.cpp. 2009-07-23 03:51:42 +00:00
Chris Laurel db1ce7d79a Eigenized atmosphere code. 2009-07-23 03:11:40 +00:00
Chris Laurel c4aa846945 Eigenized 3ds and cmod mesh code. 2009-07-23 02:58:10 +00:00
Chris Laurel 89d0ef130a Eigenized all orbit and trajectory calculations. 2009-07-23 01:40:17 +00:00
Chris Laurel c25a4ec935 Added geomutil.h to Qt4 project file. 2009-07-23 01:32:02 +00:00
Chris Laurel 7493ffee40 Fixed principal axis rotation functions in geomutil.h. 2009-07-22 18:26:55 +00:00
Chris Laurel 9cca6b8c27 Eigenized Observer and Simulation classes. Fixed star picking bug. 2009-07-22 04:53:15 +00:00
Chris Laurel cffce863f2 Fixed Qt4 UI code that was broken during Eigen conversion. 2009-07-21 22:28:37 +00:00
Fridger Schrempp 8d8cc69b98 Steve's 3rd patch for Eigenization of celestialbrowser 2009-07-21 21:04:51 +00:00
Fridger Schrempp 889bfd9cb8 Steve's patch in the context of Eigenization of Celestia 2009-07-21 19:43:35 +00:00
Chris Laurel 479ef22e15 Eigenized reference mark, label, and marker code. 2009-07-21 04:04:26 +00:00
Chris Laurel 5a31a08df9 Eigenized galaxy rendering and more of the core renderer. 2009-07-21 03:14:29 +00:00
Vincent Giangiulio 47117439fc Added boolean occludable parameter to mark command in CEL scripting 2009-07-19 18:06:00 +00:00
Chris Laurel 5cafe7b161 Added Eigenized version of Ray-Point distance method. 2009-07-18 13:43:52 +00:00
Chris Laurel 5de792f64a Eigenized lighting and shadow calculations in renderer. 2009-07-18 05:50:56 +00:00
Pat Suwalski 1243bd1d9f Update to use UniversalCoord::toLy(). 2009-07-17 23:53:18 +00:00
Chris Laurel 07a8dd9aa7 Forced 16-byte alignment for some structures with fixed size Eigen structures as members. 2009-07-17 17:19:36 +00:00
Chris Laurel 40fade9aac Eigenized and cleaned up more of the renderer code. 2009-07-17 06:15:25 +00:00
Chris Laurel 5a241fe28c Eigenized reference frames. 2009-07-17 02:36:11 +00:00
Chris Laurel f81650c69a Cleaned up unused code in Qt4 star browser. Switch to using new
UniversalCoord::toLy() method for calculating relative star positions.
2009-07-17 02:35:24 +00:00
Chris Laurel a5511ac191 Added missing EIGEN_MAKE_ALIGNED_OPERATOR_NEW to Body; now that it contains an Eigen fixed-size structure, it needs to be 16-byte aligned. 2009-07-17 00:54:49 +00:00
Pat Suwalski 1dcb7ec266 Adding Eigen library include paths. 2009-07-17 00:36:55 +00:00
Pat Suwalski 99635c5a7a Removing some trivial warnings. 2009-07-17 00:36:11 +00:00
Pat Suwalski cf0e3b3ff2 Eigenize GTK front-end. 2009-07-17 00:23:41 +00:00
Chris Laurel 86d1808519 Eigenized Body and Selection classes; adapted dependent code. Removed some
miscellaneous compile warnings in other modules.
2009-07-16 23:37:48 +00:00
Chris Laurel b42accebaf More Eigenization of render.cpp. Changed a temporary variable in staroctree.cpp from double to float (back to the way it was in 1.6.0) 2009-07-16 20:18:48 +00:00
Chris Laurel 37a46a4eff Eigenized portions of the renderer that draw stars and DSOs. 2009-07-16 05:32:55 +00:00
Chris Laurel 24e5d575ab Updated Qt4 star browser for Eigenized star class. 2009-07-16 03:48:44 +00:00
Chris Laurel 78202393aa Eigenized star code. 2009-07-16 03:27:11 +00:00
Chris Laurel f73aad83f3 Eigenized picking code. Added new conversion methods to UniversalCoord that
abstract Celestia's internal units.
2009-07-16 02:28:00 +00:00
Chris Laurel 53e9049aa7 Fixed issues with Eigen on Windows:
- Define NOMINMAX before any file that includes windows.h to prevent Windows' min and max macros from interfering with the STL template functions of the same name.
- Renamed Celestia's Quaternion class to Quat so that it's name doesn't interfere with the Eigen structure during the port to Eigen (g++ doesn't seem to care...)
2009-07-15 19:54:20 +00:00
Chris Laurel 8bef7aa232 Added thirdparty/Eigen to list of directories to search for headers in Windows build. 2009-07-15 07:20:34 +00:00
Chris Laurel 5b2721e4db Ported terminator and all arrow reference marks to Eigen. 2009-07-15 04:00:22 +00:00
Chris Laurel 4ee7c9692e Added Eigen to header search path for Mac OS X project file. 2009-07-15 03:07:54 +00:00
Chris Laurel 7272945657 First round of Eigen-izing the core Celestia code. 2009-07-15 03:06:30 +00:00
Chris Laurel 2427fb8e81 Updated geometry functions to use Eigen instead of custom Celestia vector
and matrix classes.
2009-07-15 01:05:51 +00:00
Chris Laurel e2f6953dd2 Cleaned up gettext support for Mac build. 2009-07-15 01:02:36 +00:00
Chris Laurel 4f94a41a57 Fixes for the qmake project file:
- Added Eigen and GLEW to the header search paths
- Modified defines for Mac OS X build (should now work with g++ 4.2)
- Replaced tabs with spaces
2009-07-15 01:01:05 +00:00
Vincent Giangiulio 96445fa8a1 Added new commands to celestia object in celx scripting:
- seturl / geturl
- synchronizetime / istimesynchronized
2009-07-14 17:07:30 +00:00
Chris Laurel 3feb4b7ac7 Added Eigen and glew libraries to SVN repository. 2009-07-11 02:59:55 +00:00
1831 changed files with 301218 additions and 648171 deletions

108
.appveyor.yml 100644
View File

@ -0,0 +1,108 @@
version: 1.7.0-dev-{build}
only_commits:
files:
- src/
- .appveyor.yml
- CMakeLists.txt
pull_requests:
do_not_increment_build_number: true
# Start builds on tags only (GitHub and BitBucket)
skip_non_tags: false
# Do not build feature branch with open Pull Requests
skip_branch_with_pr: true
# Even with `skip_branch_with_pr: true` appveyor builds that branch
# for the first time.
branches:
only:
- master
artifacts:
- path: '**/celestia-*.7z'
name: win
# Build worker image (VM template)
image: "Visual Studio 2015"
# clone directory
clone_folder: c:\projects\celestia
# set clone depth
clone_depth: 1
# build platform, i.e. x86, x64, Any CPU. This setting is optional.
platform:
- x86
environment:
Qt5_DIR: 'C:\Qt\5.10\msvc2015'
PATH: '%Qt5_DIR%\bin;%PATH%'
# scripts that run after cloning repository
init:
- call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %platform%
install:
- cd c:\tools\vcpkg
- vcpkg install libpng:x86-windows
- vcpkg install gettext:x86-windows
- vcpkg install libjpeg-turbo:x86-windows
- vcpkg remove lua:x86-windows
- vcpkg install luajit:x86-windows
- vcpkg install fmt:x86-windows
- vcpkg install libepoxy:x86-windows
- vcpkg install eigen3:x86-windows
- vcpkg install freetype:x86-windows
- vcpkg install sdl2:x86-windows
- git pull
- git checkout 99cfc38036f330a035b57aa67f661526153e31c7
- .\bootstrap-vcpkg.bat
- vcpkg install cspice:x86-windows
- vcpkg integrate install
- cd %APPVEYOR_BUILD_FOLDER%
build_script:
- cmd: >-
git submodule update --init
mkdir build
cd build
cmake -DCMAKE_PREFIX_PATH=%Qt5_DIR% -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DENABLE_SPICE=ON -DENABLE_TOOLS=ON -DENABLE_TESTS=ON -DENABLE_SDL=OFF ..
cmake --build . --config RelWithDebInfo -- /maxcpucount:4 /nologo
set CTEST_OUTPUT_ON_FAILURE=1
copy src\celestia\RelWithDebInfo\*.dll test\unit\RelWithDebInfo\
ctest -C RelWithDebInfo
after_build:
- cmd: >-
cd c:\projects\celestia\build\src\celestia
7z a celestia-dep.x86.7z RelWithDebInfo\*
7z a celestia-win.x86.7z win32\RelWithDebInfo\*
windeployqt --no-angle --no-opengl-sw --no-translations --no-system-d3d-compiler qt\RelWithDebInfo\
7z a celestia-qt.x86.7z qt\RelWithDebInfo\*
cd ..\tools
7z a celestia-tools.x86.7z xyzv2bin\RelWithDebInfo\*.exe spice2xyzv\RelWithDebInfo\*.exe
#on_failure:
#- type "c:\projects\celestia\build\CMakeFiles\CMakeOutput.log"
#- type "c:\projects\celestia\build\CMakeFiles\CMakeError.log"
#- type "c:\projects\celestia\build\CMakeCache.txt"
# build cache to preserve files/folders between builds
cache: c:\tools\vcpkg\installed\

63
.clang-format 100644
View File

@ -0,0 +1,63 @@
---
AccessModifierOffset: '-4'
AlignAfterOpenBracket: AlwaysBreak
AlignConsecutiveMacros: 'true'
AlignConsecutiveAssignments: 'true'
AlignConsecutiveDeclarations: 'true'
AlignEscapedNewlines: Left
AlignOperands: 'true'
AlignTrailingComments: 'true'
AllowAllArgumentsOnNextLine: 'false'
AllowAllConstructorInitializersOnNextLine: 'false'
AllowAllParametersOfDeclarationOnNextLine: 'false'
AllowShortBlocksOnASingleLine: 'false'
AllowShortCaseLabelsOnASingleLine: 'false'
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: 'false'
AllowShortLambdasOnASingleLine: All
AllowShortLoopsOnASingleLine: 'true'
AlwaysBreakAfterReturnType: TopLevelDefinitions
AlwaysBreakBeforeMultilineStrings: 'false'
AlwaysBreakTemplateDeclarations: 'Yes'
BinPackArguments: 'false'
BinPackParameters: 'false'
BreakBeforeBinaryOperators: All
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: 'false'
BreakConstructorInitializers: AfterColon
BreakInheritanceList: AfterColon
BreakStringLiterals: 'true'
ColumnLimit: '100'
CompactNamespaces: 'false'
ConstructorInitializerAllOnOneLineOrOnePerLine: 'false'
Cpp11BracedListStyle: 'false'
FixNamespaceComments: 'true'
IncludeBlocks: Regroup
IndentCaseLabels: 'false'
IndentPPDirectives: None
IndentWidth: '4'
IndentWrappedFunctionNames: 'false'
KeepEmptyLinesAtTheStartOfBlocks: 'false'
Language: Cpp
MaxEmptyLinesToKeep: '1'
NamespaceIndentation: None
PointerAlignment: Right
ReflowComments: 'true'
SortIncludes: 'true'
SortUsingDeclarations: 'true'
SpaceAfterLogicalNot: 'false'
SpaceAfterTemplateKeyword: 'false'
SpaceBeforeAssignmentOperators: 'true'
SpaceBeforeCtorInitializerColon: 'true'
SpaceBeforeInheritanceColon: 'true'
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: 'true'
SpaceInEmptyParentheses: 'false'
SpacesBeforeTrailingComments: '1'
SpacesInAngles: 'false'
SpacesInParentheses: 'false'
SpacesInSquareBrackets: 'false'
Standard: c++17
TabWidth: '4'
UseTab: Never
UseCRLF: 'false'

View File

@ -0,0 +1,32 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. GNU/Linux, Windows, macOS]
- Frontend: [e.g. Qt, native Win, native Mac]
- Version: [e.g. 1.7.0]
**Additional context**
Add any other context about the problem here.

View File

@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@ -0,0 +1,8 @@
Closes #[issue number]
## Description
-
### Screenshots

248
.github/workflows/ci.yml vendored 100644
View File

@ -0,0 +1,248 @@
name: Celestia
on:
push:
branches: [ master ]
paths: [ src/**, test/**, .github/workflows/ci.yml, CMakeLists.txt ]
pull_request:
branches: [ master ]
paths: [ src/**, test/**, .github/workflows/ci.yml, CMakeLists.txt ]
env:
BUILD_TYPE: RelWithDebInfo
CTEST_OUTPUT_ON_FAILURE: 1
VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite'
jobs:
build-windows:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
platform: [x64, x86]
generator_platform: [x64, Win32]
include:
- platform: x64
generator_platform: x64
- platform: x86
generator_platform: Win32
exclude:
- platform: x64
generator_platform: Win32
- platform: x86
generator_platform: x64
steps:
- name: 'Setup NuGet Credentials'
shell: 'bash'
run: >
$(c:/vcpkg/vcpkg fetch nuget | tail -n 1)
sources add
-source "https://nuget.pkg.github.com/CelestiaProject/index.json"
-storepasswordincleartext
-name "GitHub"
-username "CelestiaProject"
-password "${{ secrets.GITHUB_TOKEN }}"
- name: 'Install dependencies'
run: vcpkg --triplet=${{matrix.platform}}-windows install --recurse libpng libjpeg-turbo gettext luajit fmt libepoxy eigen3 freetype cspice qt5-base
- name: 'Checkout source code'
uses: actions/checkout@v2
with:
submodules: true
- name: 'Configure CMake'
run: cmake -B ${{github.workspace}}/build -DCMAKE_TOOLCHAIN_FILE=c:/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=${{matrix.platform}}-windows -DCMAKE_GENERATOR_PLATFORM=${{matrix.generator_platform}} -DENABLE_SPICE=ON -DENABLE_TOOLS=ON -DENABLE_TESTS=ON -DENABLE_SDL=OFF -DENABLE_QT=ON
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} -- /maxcpucount:2 /nologo
- name: 'Copy DLL for tests'
working-directory: ${{github.workspace}}/build
run: |
copy src\celestia\${{env.BUILD_TYPE}}\*.dll test\unit\${{env.BUILD_TYPE}}\
copy src\celestia\${{env.BUILD_TYPE}}\*.dll test\integration\${{env.BUILD_TYPE}}\
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest -C ${{env.BUILD_TYPE}}
- name: Package artifacts
working-directory: ${{github.workspace}}/build/src/celestia
run: |
7z a celestia-dep.${{matrix.platform}}.7z ${{env.BUILD_TYPE}}\*
7z a celestia-win.${{matrix.platform}}.7z win32\${{env.BUILD_TYPE}}\* win32\res\${{env.BUILD_TYPE}}\res_*.dll
c:\vcpkg\ports\qt5-base\qtdeploy.ps1 qt\${{env.BUILD_TYPE}}\
7z a celestia-qt.${{matrix.platform}}.7z qt\${{env.BUILD_TYPE}}\*
cd ..\tools
7z a celestia-tools.${{matrix.platform}}.7z xyzv2bin\${{env.BUILD_TYPE}}\*.exe spice2xyzv\${{env.BUILD_TYPE}}\*.exe
- name: Upload artifacts
uses: actions/upload-artifact@v2
if: success()
with:
name: celestia-${{matrix.platform}}
path: ${{github.workspace}}/build/src/*/*.7z
build-ubuntu-old:
strategy:
fail-fast: false
matrix:
platform: [ ubuntu-18.04 ]
runs-on: ${{matrix.platform}}
steps:
- name: 'Install dependencies'
run: |
sudo apt update
sudo apt install -y libeigen3-dev \
libepoxy-dev \
libavcodec-dev \
libavformat-dev \
libavutil-dev \
libswscale-dev \
libjpeg-dev \
libpng-dev \
libglu1-mesa-dev \
qtbase5-dev \
qtbase5-dev-tools \
libqt5opengl5-dev \
libgtk-3-dev \
libfreetype6-dev \
libsdl2-dev \
libluajit-5.1-dev \
libfmt-dev \
ninja-build
- name: 'Checkout source code'
uses: actions/checkout@v2
with:
submodules: true
- name: 'Configure CMake'
run: |
cmake -B ${{github.workspace}}/build \
-G Ninja \
-DENABLE_GLES=ON \
-DENABLE_SPICE=ON \
-DENABLE_TOOLS=OFF \
-DENABLE_TESTS=ON \
-DENABLE_SDL=ON \
-DENABLE_GTK=ON \
-DUSE_GTK3=ON \
-DENABLE_FFMPEG=ON
- name: Build
working-directory: ${{github.workspace}}/build
run: ninja
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest
gnulinux-arm64:
runs-on: self-hosted
steps:
- name: 'Install dependencies'
run: |
#sudo dnf config-manager --set-enabled ol8_codeready_builder
sudo yum install -y eigen3-devel \
libepoxy-devel \
libpng-devel \
libjpeg-turbo-devel \
freetype-devel \
SDL2-devel \
lua-devel \
gtk3-devel \
gettext-devel \
cmake \
ninja-build \
gcc-toolset-11-gcc-c++
- name: 'Checkout source code'
uses: actions/checkout@v2
with:
submodules: true
- name: 'Configure CMake'
run: |
cmake -B ${{github.workspace}}/build \
-G Ninja \
-DENABLE_GLES=ON \
-DENABLE_SPICE=ON \
-DENABLE_TOOLS=ON \
-DENABLE_TESTS=ON \
-DENABLE_SDL=ON \
-DENABLE_GTK=ON \
-DUSE_GTK3=ON \
-DENABLE_QT=OFF \
-DENABLE_FFMPEG=OFF
env:
CC: /opt/rh/gcc-toolset-11/root/usr/bin/gcc
CXX: /opt/rh/gcc-toolset-11/root/usr/bin/g++
- name: Build
working-directory: ${{github.workspace}}/build
run: ninja
- name: Test
working-directory: ${{github.workspace}}/build
run: ctest
sonarscanner:
runs-on: sonarscanner
steps:
- name: 'Install dependencies'
run: |
sudo apt update
sudo apt install -y libeigen3-dev \
libepoxy-dev \
libavcodec-dev \
libavformat-dev \
libavutil-dev \
libswscale-dev \
libjpeg-dev \
libpng-dev \
libglu1-mesa-dev \
qtbase5-dev \
qtbase5-dev-tools \
libqt5opengl5-dev \
libfreetype6-dev \
libsdl2-dev \
libluajit-5.1-dev \
cmake
- name: 'Checkout source code'
uses: actions/checkout@v2
with:
submodules: true
# Disabling shallow clone is recommended for improving relevancy of reporting
fetch-depth: 0
- name: 'Configure CMake'
run: |
cmake -B ${{github.workspace}}/build \
-G Ninja \
-DENABLE_GLES=ON \
-DENABLE_SPICE=OFF \
-DENABLE_TOOLS=OFF \
-DENABLE_TESTS=OFF \
-DENABLE_SDL=ON \
-DENABLE_GTK=OFF \
-DENABLE_QT=ON \
-DENABLE_FFMPEG=ON \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON
- name: Analyze
run: |
sonar-scanner \
-Dsonar.cfamily.compile-commands=build/compile_commands.json \
-Dsonar.organization=celestiaproject \
-Dsonar.projectKey=CelestiaProject_Celestia \
-Dsonar.sources=src/ \
-Dsonar.exclusions=src/celestia/win32/**,src/celestia/win32/gtk/**,src/celestia/glut/** \
-Dsonar.test.exclusions=test/** \
-Dsonar.tests=test/
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -0,0 +1,29 @@
name: Celestia
on:
push:
branches: [ master ]
paths: [ po/**, .github/workflows/translations.yml ]
pull_request:
branches: [ master ]
paths: [ po/**, .github/workflows/translations.yml ]
jobs:
gettext:
strategy:
fail-fast: true
matrix:
platform: [ ubuntu-latest ]
runs-on: ubuntu-latest
steps:
- name: 'Install dependencies'
run: |
sudo apt update
sudo apt install -y gettext
- name: 'Checkout source code'
uses: actions/checkout@v2
- name: 'Validate translations'
working-directory: ${{github.workspace}}/po
run: for i in *.po; do msgfmt --statistics --verbose $i; done

27
.gitignore vendored 100644
View File

@ -0,0 +1,27 @@
*.user
Debug/
Release/
.vs/
.vscode/
*~
*.o
*.a
*.la
*.exe
*.dll
*.swp
.DS_Store
po*/*.gmo
po*/POTFILES
build*/
src/celestia/win32/res/resource_strings.cpp
src/celestia/qt/rc.cpp
locale/*/LC_MESSAGES/
data/
extras/
extras-standard/
models/
textures/
mingw/
content/
CMakeSettings.json

9
.gitmodules vendored 100644
View File

@ -0,0 +1,9 @@
[submodule "thirdparty/Spice"]
path = thirdparty/Spice
url = https://github.com/OpenSpace/Spice.git
[submodule "thirdparty/fmt"]
path = thirdparty/fmt
url = https://github.com/fmtlib/fmt.git
[submodule "src/tools/celestia-gaia-stardb"]
path = src/tools/celestia-gaia-stardb
url = https://github.com/ajtribick/celestia-gaia-stardb.git

68
.travis.yml 100644
View File

@ -0,0 +1,68 @@
dist: xenial
osx_image: xcode12.2
language: cpp
sudo: true
git:
depth: 1
quiet: true
notifications:
email: false
os:
- linux
- osx
env:
- LUA=jit-5.1
- LUA=5.2
- LUA=5.3
matrix:
exclude:
- os: osx
env: LUA=jit-5.1
- os: osx
env: LUA=5.2
- os: linux
env: LUA=5.2
before_script:
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then sudo apt install -y liblua${LUA}-dev; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ] ; then brew link gettext --force; fi
- mkdir build
- cd build
script:
- cmake -DENABLE_SPICE=ON -DENABLE_TOOLS=ON -DENABLE_TESTS=ON -DENABLE_SDL=ON ..
- make -j $(nproc || echo 4)
- CTEST_OUTPUT_ON_FAILURE=1 ctest
addons:
apt:
packages:
- libeigen3-dev
- libepoxy-dev
- libtheora-dev
- libjpeg-dev
- libpng-dev
- libglu1-mesa-dev
- qtbase5-dev
- qtbase5-dev-tools
- libqt5opengl5-dev
- libfreetype6-dev
- libsdl2-dev
homebrew:
packages:
- eigen
- cspice
- fmt
- jpeg
- gettext
- libpng
- lua
- qt5
- freetype
- libepoxy
- sdl2

768
ABOUT-NLS
View File

@ -1,768 +0,0 @@
Notes on the Free Translation Project
*************************************
Free software is going international! The Free Translation Project is
a way to get maintainers of free software, translators, and users all
together, so that will gradually become able to speak many languages.
A few packages already provide translations for their messages.
If you found this `ABOUT-NLS' file inside a distribution, you may
assume that the distributed package does use GNU `gettext' internally,
itself available at your nearest GNU archive site. But you do _not_
need to install GNU `gettext' prior to configuring, installing or using
this package with messages translated.
Installers will find here some useful hints. These notes also
explain how users should proceed for getting the programs to use the
available translations. They tell how people wanting to contribute and
work at translations should contact the appropriate team.
When reporting bugs in the `intl/' directory or bugs which may be
related to internationalization, you should tell about the version of
`gettext' which is used. The information can be found in the
`intl/VERSION' file, in internationalized packages.
Quick configuration advice
==========================
If you want to exploit the full power of internationalization, you
should configure it using
./configure --with-included-gettext
to force usage of internationalizing routines provided within this
package, despite the existence of internationalizing capabilities in the
operating system where this package is being installed. So far, only
the `gettext' implementation in the GNU C library version 2 provides as
many features (such as locale alias, message inheritance, automatic
charset conversion or plural form handling) as the implementation here.
It is also not possible to offer this additional functionality on top
of a `catgets' implementation. Future versions of GNU `gettext' will
very likely convey even more functionality. So it might be a good idea
to change to GNU `gettext' as soon as possible.
So you need _not_ provide this option if you are using GNU libc 2 or
you have installed a recent copy of the GNU gettext package with the
included `libintl'.
INSTALL Matters
===============
Some packages are "localizable" when properly installed; the programs
they contain can be made to speak your own native language. Most such
packages use GNU `gettext'. Other packages have their own ways to
internationalization, predating GNU `gettext'.
By default, this package will be installed to allow translation of
messages. It will automatically detect whether the system already
provides the GNU `gettext' functions. If not, the GNU `gettext' own
library will be used. This library is wholly contained within this
package, usually in the `intl/' subdirectory, so prior installation of
the GNU `gettext' package is _not_ required. Installers may use
special options at configuration time for changing the default
behaviour. The commands:
./configure --with-included-gettext
./configure --disable-nls
will respectively bypass any pre-existing `gettext' to use the
internationalizing routines provided within this package, or else,
_totally_ disable translation of messages.
When you already have GNU `gettext' installed on your system and run
configure without an option for your new package, `configure' will
probably detect the previously built and installed `libintl.a' file and
will decide to use this. This might be not what is desirable. You
should use the more recent version of the GNU `gettext' library. I.e.
if the file `intl/VERSION' shows that the library which comes with this
package is more recent, you should use
./configure --with-included-gettext
to prevent auto-detection.
The configuration process will not test for the `catgets' function
and therefore it will not be used. The reason is that even an
emulation of `gettext' on top of `catgets' could not provide all the
extensions of the GNU `gettext' library.
Internationalized packages have usually many `po/LL.po' files, where
LL gives an ISO 639 two-letter code identifying the language. Unless
translations have been forbidden at `configure' time by using the
`--disable-nls' switch, all available translations are installed
together with the package. However, the environment variable `LINGUAS'
may be set, prior to configuration, to limit the installed set.
`LINGUAS' should then contain a space separated list of two-letter
codes, stating which languages are allowed.
Using This Package
==================
As a user, if your language has been installed for this package, you
only have to set the `LANG' environment variable to the appropriate
`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code,
and `CC' is an ISO 3166 two-letter country code. For example, let's
suppose that you speak German and live in Germany. At the shell
prompt, merely execute `setenv LANG de_DE' (in `csh'),
`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
This can be done from your `.login' or `.profile' file, once and for
all.
You might think that the country code specification is redundant.
But in fact, some languages have dialects in different countries. For
example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The
country code serves to distinguish the dialects.
The locale naming convention of `LL_CC', with `LL' denoting the
language and `CC' denoting the country, is the one use on systems based
on GNU libc. On other systems, some variations of this scheme are
used, such as `LL' or `LL_CC.ENCODING'. You can get the list of
locales supported by your system for your country by running the command
`locale -a | grep '^LL''.
Not all programs have translations for all languages. By default, an
English message is shown in place of a nonexistent translation. If you
understand other languages, you can set up a priority list of languages.
This is done through a different environment variable, called
`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG'
for the purpose of message handling, but you still need to have `LANG'
set to the primary language; this is required by other parts of the
system libraries. For example, some Swedish users who would rather
read translations in German than English for when Swedish is not
available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
Special advice for Norwegian users: The language code for Norwegian
bokma*l changed from `no' to `nb' recently (in 2003). During the
transition period, while some message catalogs for this language are
installed under `nb' and some older ones under `no', it's recommended
for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
older translations are used.
In the `LANGUAGE' environment variable, but not in the `LANG'
environment variable, `LL_CC' combinations can be abbreviated as `LL'
to denote the language's main dialect. For example, `de' is equivalent
to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
(Portuguese as spoken in Portugal) in this context.
Translating Teams
=================
For the Free Translation Project to be a success, we need interested
people who like their own language and write it well, and who are also
able to synergize with other translators speaking the same language.
Each translation team has its own mailing list. The up-to-date list of
teams can be found at the Free Translation Project's homepage,
`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
area.
If you'd like to volunteer to _work_ at translating messages, you
should become a member of the translating team for your own language.
The subscribing address is _not_ the same as the list itself, it has
`-request' appended. For example, speakers of Swedish can send a
message to `sv-request@li.org', having this message body:
subscribe
Keep in mind that team members are expected to participate
_actively_ in translations, or at solving translational difficulties,
rather than merely lurking around. If your team does not exist yet and
you want to start one, or if you are unsure about what to do or how to
get started, please write to `translation@iro.umontreal.ca' to reach the
coordinator for all translator teams.
The English team is special. It works at improving and uniformizing
the terminology in use. Proven linguistic skill are praised more than
programming skill, here.
Available Packages
==================
Languages are not equally supported in all packages. The following
matrix shows the current state of internationalization, as of January
2004. The matrix shows, in regard of each package, for which languages
PO files have been submitted to translation coordination, with a
translation percentage of at least 50%.
Ready PO files af am ar az be bg bs ca cs da de el en en_GB eo es
+----------------------------------------------------+
a2ps | [] [] [] [] |
aegis | () |
ant-phone | () |
anubis | |
ap-utils | |
aspell | [] |
bash | [] [] [] [] |
batchelor | |
bfd | [] [] |
binutils | [] [] |
bison | [] [] [] |
bluez-pin | [] [] [] |
clisp | |
clisp | [] [] [] |
console-tools | [] [] |
coreutils | [] [] [] [] |
cpio | [] [] [] |
darkstat | [] () [] |
diffutils | [] [] [] [] [] [] [] |
e2fsprogs | [] [] [] |
enscript | [] [] [] [] |
error | [] [] [] [] [] |
fetchmail | [] () [] [] [] [] |
fileutils | [] [] [] |
findutils | [] [] [] [] [] [] [] |
flex | [] [] [] [] |
fslint | |
gas | [] |
gawk | [] [] [] [] |
gbiff | [] |
gcal | [] |
gcc | [] [] |
gettext | [] [] [] [] [] |
gettext-examples | [] [] [] [] |
gettext-runtime | [] [] [] [] [] |
gettext-tools | [] [] [] |
gimp-print | [] [] [] [] [] |
gliv | |
glunarclock | [] [] |
gnubiff | [] |
gnucash | [] () [] [] |
gnucash-glossary | [] () [] |
gnupg | [] () [] [] [] [] |
gpe-aerial | [] |
gpe-beam | [] [] |
gpe-calendar | [] [] |
gpe-clock | [] [] |
gpe-conf | [] [] |
gpe-contacts | [] [] |
gpe-edit | [] |
gpe-go | [] |
gpe-login | [] [] |
gpe-ownerinfo | [] [] |
gpe-sketchbook | [] [] |
gpe-su | [] [] |
gpe-taskmanager | [] [] |
gpe-timesheet | [] |
gpe-today | [] [] |
gpe-todo | [] [] |
gphoto2 | [] [] [] [] |
gprof | [] [] [] |
gpsdrive | () () () |
gramadoir | [] |
grep | [] [] [] [] [] [] |
gretl | [] |
gtick | [] () |
hello | [] [] [] [] [] [] |
id-utils | [] [] |
indent | [] [] [] [] |
iso_3166 | [] [] [] [] [] [] [] [] [] [] |
iso_3166_1 | [] [] [] [] [] [] |
iso_3166_2 | |
iso_3166_3 | [] |
iso_4217 | [] [] [] [] |
iso_639 | |
jpilot | [] [] [] |
jtag | |
jwhois | [] |
kbd | [] [] [] [] [] |
latrine | () |
ld | [] [] |
libc | [] [] [] [] [] [] |
libgpewidget | [] [] |
libiconv | [] [] [] [] [] |
lifelines | [] () |
lilypond | [] |
lingoteach | |
lingoteach_lessons | () () |
lynx | [] [] [] [] |
m4 | [] [] [] [] |
mailutils | [] [] |
make | [] [] [] |
man-db | [] () [] [] () |
minicom | [] [] [] |
mysecretdiary | [] [] [] |
nano | [] () [] [] [] |
nano_1_0 | [] () [] [] [] |
opcodes | [] |
parted | [] [] [] [] [] |
ptx | [] [] [] [] [] |
python | |
radius | [] |
recode | [] [] [] [] [] [] [] |
rpm | [] [] |
screem | |
scrollkeeper | [] [] [] [] [] [] |
sed | [] [] [] [] [] [] |
sh-utils | [] [] [] |
shared-mime-info | |
sharutils | [] [] [] [] [] [] |
silky | () |
skencil | [] () [] |
sketch | [] () [] |
soundtracker | [] [] [] |
sp | [] |
tar | [] [] [] [] |
texinfo | [] [] [] |
textutils | [] [] [] [] |
tin | () () |
tp-robot | |
tuxpaint | [] [] [] [] [] [] [] |
unicode-han-tra... | |
unicode-transla... | |
util-linux | [] [] [] [] [] |
vorbis-tools | [] [] [] [] |
wastesedge | () |
wdiff | [] [] [] [] |
wget | [] [] [] [] [] [] |
xchat | [] [] [] [] |
xfree86_xkb_xml | [] [] |
xpad | [] |
+----------------------------------------------------+
af am ar az be bg bs ca cs da de el en en_GB eo es
4 0 0 1 9 4 1 40 41 60 78 17 1 5 13 68
et eu fa fi fr ga gl he hr hu id is it ja ko lg
+-------------------------------------------------+
a2ps | [] [] [] () () |
aegis | |
ant-phone | [] |
anubis | [] |
ap-utils | [] |
aspell | [] [] |
bash | [] [] |
batchelor | [] [] |
bfd | [] |
binutils | [] [] |
bison | [] [] [] [] |
bluez-pin | [] [] [] [] [] |
clisp | |
clisp | [] |
console-tools | |
coreutils | [] [] [] [] [] [] |
cpio | [] [] [] [] |
darkstat | () [] [] [] |
diffutils | [] [] [] [] [] [] [] |
e2fsprogs | |
enscript | [] [] |
error | [] [] [] [] |
fetchmail | [] |
fileutils | [] [] [] [] [] [] |
findutils | [] [] [] [] [] [] [] [] [] [] [] |
flex | [] [] [] |
fslint | [] |
gas | [] |
gawk | [] [] [] |
gbiff | [] |
gcal | [] |
gcc | [] |
gettext | [] [] [] |
gettext-examples | [] [] |
gettext-runtime | [] [] [] [] [] |
gettext-tools | [] [] [] |
gimp-print | [] [] |
gliv | () |
glunarclock | [] [] [] [] |
gnubiff | [] |
gnucash | () [] |
gnucash-glossary | [] |
gnupg | [] [] [] [] [] [] [] |
gpe-aerial | [] |
gpe-beam | [] |
gpe-calendar | [] [] [] |
gpe-clock | [] |
gpe-conf | [] |
gpe-contacts | [] [] |
gpe-edit | [] [] |
gpe-go | [] |
gpe-login | [] [] |
gpe-ownerinfo | [] [] [] |
gpe-sketchbook | [] |
gpe-su | [] |
gpe-taskmanager | [] |
gpe-timesheet | [] [] [] |
gpe-today | [] [] |
gpe-todo | [] [] |
gphoto2 | [] [] [] |
gprof | [] [] |
gpsdrive | () () () |
gramadoir | [] [] |
grep | [] [] [] [] [] [] [] [] [] [] [] |
gretl | [] [] |
gtick | [] [] [] |
hello | [] [] [] [] [] [] [] [] [] [] [] [] [] |
id-utils | [] [] [] [] |
indent | [] [] [] [] [] [] [] [] [] |
iso_3166 | [] [] [] [] [] [] [] |
iso_3166_1 | [] [] [] [] [] |
iso_3166_2 | |
iso_3166_3 | |
iso_4217 | [] [] [] [] [] [] |
iso_639 | |
jpilot | [] () |
jtag | [] |
jwhois | [] [] [] [] |
kbd | [] |
latrine | [] |
ld | [] |
libc | [] [] [] [] [] [] |
libgpewidget | [] [] [] [] |
libiconv | [] [] [] [] [] [] [] [] [] |
lifelines | () |
lilypond | [] |
lingoteach | [] [] |
lingoteach_lessons | |
lynx | [] [] [] [] |
m4 | [] [] [] [] |
mailutils | |
make | [] [] [] [] [] [] |
man-db | () () |
minicom | [] [] [] [] |
mysecretdiary | [] [] |
nano | [] [] [] [] |
nano_1_0 | [] [] [] [] |
opcodes | [] |
parted | [] [] [] |
ptx | [] [] [] [] [] [] [] |
python | |
radius | [] |
recode | [] [] [] [] [] [] |
rpm | [] [] |
screem | |
scrollkeeper | [] |
sed | [] [] [] [] [] [] [] [] [] |
sh-utils | [] [] [] [] [] [] [] |
shared-mime-info | [] [] [] |
sharutils | [] [] [] [] [] |
silky | () [] () () |
skencil | [] |
sketch | [] |
soundtracker | [] [] |
sp | [] () |
tar | [] [] [] [] [] [] [] [] [] |
texinfo | [] [] [] [] |
textutils | [] [] [] [] [] [] |
tin | [] () |
tp-robot | [] |
tuxpaint | [] [] [] [] [] [] [] [] [] |
unicode-han-tra... | |
unicode-transla... | [] [] |
util-linux | [] [] [] [] () [] |
vorbis-tools | [] |
wastesedge | () |
wdiff | [] [] [] [] [] [] |
wget | [] [] [] [] [] [] [] |
xchat | [] [] [] |
xfree86_xkb_xml | [] [] |
xpad | [] [] |
+-------------------------------------------------+
et eu fa fi fr ga gl he hr hu id is it ja ko lg
22 2 1 26 106 28 24 8 10 41 33 1 26 33 12 0
lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru
+-----------------------------------------------------+
a2ps | [] [] () () [] [] [] |
aegis | () () () |
ant-phone | [] [] |
anubis | [] [] [] [] [] [] |
ap-utils | [] () [] |
aspell | [] |
bash | [] [] [] |
batchelor | [] |
bfd | [] |
binutils | [] |
bison | [] [] [] [] [] |
bluez-pin | [] [] [] |
clisp | |
clisp | [] |
console-tools | [] |
coreutils | [] [] |
cpio | [] [] [] [] [] |
darkstat | [] [] [] [] |
diffutils | [] [] [] [] [] [] |
e2fsprogs | [] |
enscript | [] [] [] [] |
error | [] [] [] |
fetchmail | [] [] () [] |
fileutils | [] [] [] |
findutils | [] [] [] [] [] |
flex | [] [] [] [] |
fslint | [] [] |
gas | |
gawk | [] [] [] |
gbiff | [] [] |
gcal | |
gcc | |
gettext | [] [] [] |
gettext-examples | [] [] [] |
gettext-runtime | [] [] [] [] |
gettext-tools | [] [] |
gimp-print | [] |
gliv | [] [] [] |
glunarclock | [] [] [] [] |
gnubiff | [] |
gnucash | [] [] () [] |
gnucash-glossary | [] [] |
gnupg | [] |
gpe-aerial | [] [] [] [] |
gpe-beam | [] [] [] [] |
gpe-calendar | [] [] [] [] |
gpe-clock | [] [] [] [] |
gpe-conf | [] [] [] [] |
gpe-contacts | [] [] [] [] |
gpe-edit | [] [] [] [] |
gpe-go | [] [] [] |
gpe-login | [] [] [] [] |
gpe-ownerinfo | [] [] [] [] |
gpe-sketchbook | [] [] [] [] |
gpe-su | [] [] [] [] |
gpe-taskmanager | [] [] [] [] |
gpe-timesheet | [] [] [] [] |
gpe-today | [] [] [] [] |
gpe-todo | [] [] [] [] |
gphoto2 | [] |
gprof | [] [] |
gpsdrive | () () [] |
gramadoir | () [] |
grep | [] [] [] [] [] |
gretl | |
gtick | [] [] [] |
hello | [] [] [] [] [] [] [] [] [] [] |
id-utils | [] [] [] [] |
indent | [] [] [] [] |
iso_3166 | [] [] [] |
iso_3166_1 | [] [] |
iso_3166_2 | |
iso_3166_3 | [] |
iso_4217 | [] [] [] [] [] [] [] [] |
iso_639 | [] |
jpilot | () () |
jtag | |
jwhois | [] [] [] [] () |
kbd | [] [] [] |
latrine | [] |
ld | |
libc | [] [] [] [] |
libgpewidget | [] [] [] |
libiconv | [] [] [] [] [] |
lifelines | |
lilypond | |
lingoteach | |
lingoteach_lessons | |
lynx | [] [] [] |
m4 | [] [] [] [] [] |
mailutils | [] [] [] |
make | [] [] [] [] |
man-db | [] |
minicom | [] [] [] [] |
mysecretdiary | [] [] [] |
nano | [] [] [] [] [] |
nano_1_0 | [] [] [] [] [] [] |
opcodes | [] [] |
parted | [] [] [] [] |
ptx | [] [] [] [] [] [] [] [] |
python | |
radius | [] [] |
recode | [] [] [] [] |
rpm | [] [] [] |
screem | |
scrollkeeper | [] [] [] [] [] |
sed | [] [] [] |
sh-utils | [] [] |
shared-mime-info | [] [] |
sharutils | [] [] |
silky | () |
skencil | [] [] |
sketch | [] [] |
soundtracker | |
sp | |
tar | [] [] [] [] [] [] |
texinfo | [] [] [] [] |
textutils | [] [] |
tin | |
tp-robot | [] |
tuxpaint | [] [] [] [] [] [] [] [] |
unicode-han-tra... | |
unicode-transla... | |
util-linux | [] [] [] |
vorbis-tools | [] [] [] |
wastesedge | |
wdiff | [] [] [] [] [] |
wget | [] [] [] |
xchat | [] [] [] |
xfree86_xkb_xml | [] [] |
xpad | [] [] |
+-----------------------------------------------------+
lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru
1 2 0 3 12 0 10 69 6 7 1 40 26 36 76 63
sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu
+-----------------------------------------------------+
a2ps | [] [] [] [] | 16
aegis | | 0
ant-phone | | 3
anubis | [] [] | 9
ap-utils | () | 3
aspell | | 4
bash | | 9
batchelor | | 3
bfd | [] [] | 6
binutils | [] [] [] | 8
bison | [] [] | 14
bluez-pin | [] [] [] | 14
clisp | | 0
clisp | | 5
console-tools | | 3
coreutils | [] [] [] [] | 16
cpio | [] [] | 14
darkstat | [] [] [] () () | 12
diffutils | [] [] [] | 23
e2fsprogs | [] [] | 6
enscript | [] [] | 12
error | [] [] [] | 15
fetchmail | [] [] | 11
fileutils | [] [] [] [] [] | 17
findutils | [] [] [] [] [] [] | 29
flex | [] [] | 13
fslint | | 3
gas | [] | 3
gawk | [] [] | 12
gbiff | | 4
gcal | [] [] | 4
gcc | [] | 4
gettext | [] [] [] [] [] | 16
gettext-examples | [] [] [] [] [] | 14
gettext-runtime | [] [] [] [] [] [] [] [] | 22
gettext-tools | [] [] [] [] [] [] | 14
gimp-print | [] [] | 10
gliv | | 3
glunarclock | [] [] [] | 13
gnubiff | | 3
gnucash | [] [] | 9
gnucash-glossary | [] [] [] | 8
gnupg | [] [] [] [] | 17
gpe-aerial | [] | 7
gpe-beam | [] | 8
gpe-calendar | [] [] [] [] | 13
gpe-clock | [] [] [] | 10
gpe-conf | [] [] | 9
gpe-contacts | [] [] [] | 11
gpe-edit | [] [] [] [] [] | 12
gpe-go | | 5
gpe-login | [] [] [] [] [] | 13
gpe-ownerinfo | [] [] [] [] | 13
gpe-sketchbook | [] [] | 9
gpe-su | [] [] [] | 10
gpe-taskmanager | [] [] [] | 10
gpe-timesheet | [] [] [] [] | 12
gpe-today | [] [] [] [] [] | 13
gpe-todo | [] [] [] [] | 12
gphoto2 | [] [] [] | 11
gprof | [] [] | 9
gpsdrive | [] [] | 3
gramadoir | [] | 5
grep | [] [] [] [] | 26
gretl | | 3
gtick | | 7
hello | [] [] [] [] [] | 34
id-utils | [] [] | 12
indent | [] [] [] [] | 21
iso_3166 | [] [] [] [] [] [] [] | 27
iso_3166_1 | [] [] [] | 16
iso_3166_2 | | 0
iso_3166_3 | | 2
iso_4217 | [] [] [] [] [] [] | 24
iso_639 | | 1
jpilot | [] [] [] [] [] | 9
jtag | [] | 2
jwhois | () [] [] | 11
kbd | [] [] | 11
latrine | | 2
ld | [] [] | 5
libc | [] [] [] [] | 20
libgpewidget | [] [] [] [] | 13
libiconv | [] [] [] [] [] [] [] [] | 27
lifelines | [] | 2
lilypond | [] | 3
lingoteach | | 2
lingoteach_lessons | () | 0
lynx | [] [] [] | 14
m4 | [] [] | 15
mailutils | | 5
make | [] [] [] | 16
man-db | [] | 5
minicom | | 11
mysecretdiary | [] [] | 10
nano | [] [] [] [] | 17
nano_1_0 | [] [] [] | 17
opcodes | [] [] | 6
parted | [] [] [] | 15
ptx | [] [] | 22
python | | 0
radius | | 4
recode | [] [] [] | 20
rpm | [] [] | 9
screem | [] [] | 2
scrollkeeper | [] [] [] | 15
sed | [] [] [] [] [] [] | 24
sh-utils | [] [] | 14
shared-mime-info | [] [] | 7
sharutils | [] [] [] [] | 17
silky | () | 3
skencil | [] | 6
sketch | [] | 6
soundtracker | [] [] | 7
sp | [] | 3
tar | [] [] [] [] [] | 24
texinfo | [] [] [] | 14
textutils | [] [] [] [] | 16
tin | | 1
tp-robot | | 2
tuxpaint | [] [] [] [] [] | 29
unicode-han-tra... | | 0
unicode-transla... | | 2
util-linux | [] [] | 15
vorbis-tools | | 8
wastesedge | | 0
wdiff | [] [] [] | 18
wget | [] [] [] [] [] [] [] [] | 24
xchat | [] [] [] [] [] | 15
xfree86_xkb_xml | [] [] [] [] [] | 11
xpad | | 5
+-----------------------------------------------------+
63 teams sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu
131 domains 47 19 28 83 0 0 59 13 1 1 11 0 22 22 0 1373
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
used for implementing regional variants of languages, or language
dialects.
For a PO file in the matrix above to be effective, the package to
which it applies should also have been internationalized and
distributed as such by its maintainer. There might be an observable
lag between the mere existence a PO file and its wide availability in a
distribution.
If January 2004 seems to be old, you may fetch a more recent copy of
this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
matrix with full percentage details can be found at
`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
Using `gettext' in new packages
===============================
If you are writing a freely available program and want to
internationalize it you are welcome to use GNU `gettext' in your
package. Of course you have to respect the GNU Library General Public
License which covers the use of the GNU `gettext' library. This means
in particular that even non-free programs can use `libintl' as a shared
library, whereas only free software can use `libintl' as a static
library or use modified versions of `libintl'.
Once the sources are changed appropriately and the setup can handle
the use of `gettext' the only thing missing are the translations. The
Free Translation Project is also available for packages which are not
developed inside the GNU project. Therefore the information given above
applies also for every other Free Software Project. Contact
`translation@iro.umontreal.ca' to make the `.pot' files available to
the translation teams.

View File

@ -10,3 +10,7 @@ Toti <>
Da Woon Jung <dirkpitt2050@users.sf.net>
Vincent Giangiulio <vince.gian@free.fr>
Andrew Tribick
Hleb Valoshka
Levin Li
Dmitry Brant
Łukasz Buczyński

421
CMakeLists.txt 100644
View File

@ -0,0 +1,421 @@
cmake_minimum_required(VERSION 3.8)
option(LEGACY_OPENGL_LIBS "Use legacy OpenGL libraries instead of glvnd library (Default: off)" OFF)
# Plain and keyword target_link_libraries() signatures cannot be mixed
if (POLICY CMP0023)
cmake_policy(SET CMP0023 NEW)
endif()
# Honor link flags in try_compile()
if (POLICY CMP0056)
cmake_policy(SET CMP0056 NEW)
endif()
# only use the additional link flags when linking executables if the
# ENABLE_EXPORTS target property is set to True
if(POLICY CMP0065)
cmake_policy(SET CMP0065 NEW)
endif()
# Honor language standard (CMAKE_CXX_STANDARD) in try_compile()
if(POLICY CMP0067)
cmake_policy(SET CMP0067 NEW)
endif()
# Ignore generated source files in AUTOMOC and AUTOUIC
if(POLICY CMP0071)
cmake_policy(SET CMP0071 OLD)
endif()
# Prefer GLVND or "legacy" OpenGL library (libOpenGL.so vs libGL.so)
if(POLICY CMP0072)
if(LEGACY_OPENGL_LIBS)
cmake_policy(SET CMP0072 OLD)
else()
cmake_policy(SET CMP0072 NEW)
endif()
endif()
# Remove leading and trailing whitespace from libraries linked
if(POLICY CMP0004)
cmake_policy(SET CMP0004 NEW)
endif()
project(celestia VERSION 1.7.0 LANGUAGES C CXX)
set(DISPLAY_NAME "Celestia")
#
#
#
option(ENABLE_CELX "Enable celx scripting, requires Lua library? (Default: on)" ON)
option(ENABLE_SPICE "Use spice library? (Default: off)" OFF)
option(ENABLE_NLS "Enable interface translation? (Default: on)" ON)
option(ENABLE_GLUT "Build simple Glut frontend? (Default: off)" OFF)
option(ENABLE_GTK "Build GTK2 frontend (Unix only)? (Default: off)" OFF)
option(ENABLE_QT "Build Qt frontend? (Default: on)" ON)
option(ENABLE_SDL "Build SDL frontend? (Default: off)" OFF)
option(ENABLE_WIN "Build Windows native frontend? (Default: on)" ON)
option(ENABLE_FFMPEG "Support video capture using FFMPEG (Default: off)" OFF)
option(ENABLE_TOOLS "Build different tools? (Default: off)" OFF)
option(NATIVE_OSX_APP "Support native OSX paths read data from (Default: off)" OFF)
option(FAST_MATH "Build with unsafe fast-math compiller option (Default: off)" OFF)
option(ENABLE_TESTS "Enable unit tests? (Default: off)" OFF)
option(ENABLE_GLES "Build for OpenGL ES 2.0 instead of OpenGL 2.1 (Default: off)" OFF)
option(USE_GTKGLEXT "Use libgtkglext1 for GTK2 frontend (Default: on)" ON)
option(USE_QT6 "Use Qt6 in Qt frontend (Default: off)" OFF)
option(USE_GTK3 "Use Gtk3 in GTK2 frontend (Default: off)" OFF)
if(ENABLE_GLES)
add_definitions(-DGL_ES)
# Disable USE_GTKGLEXT if using OpenGL ES
set(USE_GTKGLEXT OFF)
endif()
if(USE_GTK3)
# Disable USE_GTKGLEXT if using Gtk+3
set(USE_GTKGLEXT OFF)
endif()
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type." FORCE)
endif()
set(CMAKE_INCLUDE_CURRENT_DIR ON)
if(UNIX AND (NOT CYGWIN))
set(_UNIX true)
endif()
# _USE_MATH_DEFINES enables use of math constants like M_PI,
# which are by default disabled in standard C++ mode (like std=c++11 instead of std=gnu11)
add_definitions(-D_USE_MATH_DEFINES)
# Let CMake handle setting C++11 (since 3.1)
if(NOT CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD 17)
endif()
set(CMAKE_C_STANDARD 11)
# Use our cmake files
list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
if((NOT WIN32) AND (NOT NATIVE_OSX_APP))
include(GNUInstallDirs)
include(rpath)
endif()
include(CheckIncludeFiles)
include(CheckIncludeFileCXX)
include(FastMath)
#
# Compile options
#
if(MSVC)
# CMake 3.14 and below set warning flags by default, remove them to prevent conflicts
string(REGEX REPLACE "/W[3|4]" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
string(REGEX REPLACE "/W[3|4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
# Disabled warnings
# C4244, C4267, C4503: implicit type conversion to a smaller type
# C4786: long names in templates
# C4800: forcing value to bool
# C4455: reserved literals (no undescore at the beginning)
# C5030: not recognized attribute
# C5105: macro expansion producing 'defined' has undefined behavior
# Additional options
# bigobj: generate more object sections than allowed by default
# Promoted to errors
# C4316: object allocated on the heap may not be aligned 16
add_compile_options("/wd4244" "/wd4267" "/wd4503" "/wd4800" "/wd4455" "/wd5030" "/wd5105" "/bigobj" "/we4316")
if(MSVC_VERSION GREATER_EQUAL 1914)
# /Zc:__cplusplus: correctly set __cplusplus macro value
add_compile_options("/Zc:__cplusplus")
endif()
endif()
if(NOT WIN32)
# Qt requires -fPIC, so build all code with it
# It's always set on windows
add_compile_options(-fPIC)
endif()
if(MINGW)
# MinGW has a bug which causes too many false-positive warnings
# for 'operator!='
add_compile_options(-Wno-attributes)
endif()
EnableFastMath(${FAST_MATH})
#
# NLS (Gettext) support
#
if(ENABLE_NLS)
find_package(Gettext)
if(NOT GETTEXT_FOUND)
message(WARNING "Gettext is not found, traslations won't be created.")
endif()
include(FixGettext)
find_package(Intl REQUIRED)
include_directories(${Intl_INCLUDE_DIRS})
link_libraries(${Intl_LIBRARIES})
add_definitions(-DENABLE_NLS)
else()
message(STATUS "NLS is disabled. Not looking for gettext and libintl.")
endif()
if(ENABLE_SPICE)
find_package(CSPICE)
if(NOT CSPICE_FOUND)
message(STATUS "Using cspice submodule")
add_subdirectory("${CMAKE_SOURCE_DIR}/thirdparty/Spice")
get_target_property(SPICE_INCLUDE_DIR spice INCLUDE_DIRECTORIES)
include_directories(${SPICE_INCLUDE_DIR})
message(STATUS "Spice include directories: ${SPICE_INCLUDE_DIR}")
add_library(CSPICE::CSPICE ALIAS spice)
else()
include_directories(${CSPICE_INCLUDE_DIR})
endif()
add_definitions(-DUSE_SPICE)
else()
message(STATUS "NAIF SPICE is disabled. Not looking for cspice library.")
endif()
if(ENABLE_FFMPEG)
include(FindFFMPEG)
find_package(FFMPEG REQUIRED COMPONENTS avcodec avutil avformat swscale)
include_directories(${FFMPEG_INCLUDE_DIRS})
add_definitions(-DUSE_FFMPEG)
endif()
if(ENABLE_LIBAVIF)
find_package(Libavif REQUIRED)
link_libraries(libavif::libavif)
include_directories(${LIBAVIF_INCLUDE_DIR})
add_definitions(-DUSE_LIBAVIF)
endif()
if(_UNIX)
find_package(PkgConfig)
endif()
if(WIN32)
link_libraries("vfw32" "comctl32" "winmm")
endif()
if(NOT ENABLE_GLES)
find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIRS})
link_libraries(${OPENGL_LIBRARIES})
endif()
find_package(Libepoxy REQUIRED)
link_libraries(libepoxy::libepoxy)
include_directories(${LIBEPOXY_INCLUDE_DIR})
find_package(Eigen3 3.3 REQUIRED NO_MODULE) # -DEigen3_DIR=...
message(STATUS "Found Eigen3 ${EIGEN3_VERSION_STRING}")
link_libraries(Eigen3::Eigen)
find_package(fmt 6.1.0 CONFIG QUIET)
if(NOT fmt_FOUND)
message(STATUS "Using fmt submodule")
add_subdirectory("${CMAKE_SOURCE_DIR}/thirdparty/fmt")
endif()
link_libraries(fmt::fmt)
find_package(PNG REQUIRED)
add_definitions(${PNG_DEFINITIONS})
link_libraries(PNG::PNG)
find_package(JPEG REQUIRED) # -DJPEG_LIBRARY=...
include_directories(${JPEG_INCLUDE_DIRS})
link_libraries(${JPEG_LIBRARIES})
if(ENABLE_CELX)
add_definitions(-DCELX)
find_package(LuaJIT)
if(NOT LUAJIT_FOUND)
find_package(Lua REQUIRED)
endif()
include_directories(${LUA_INCLUDE_DIR})
link_libraries(${LUA_LIBRARIES})
else()
message(STATUS "CELX is disabled. Not looking for LUA libraries.")
endif()
find_package(Freetype REQUIRED)
link_libraries(Freetype::Freetype)
find_package(meshoptimizer CONFIG QUIET)
if(meshoptimizer_FOUND)
message(STATUS "Found meshoptimizer library")
set(HAVE_MESHOPTIMIZER 1)
else()
message(STATUS "meshoptimizer library is missing")
endif()
#[[
get_cmake_property(_variableNames VARIABLES)
list (SORT _variableNames)
foreach (_variableName ${_variableNames})
message(STATUS "${_variableName}=${${_variableName}}")
endforeach()
]]#
# macOS Bundling
if(NATIVE_OSX_APP)
message(STATUS "Generating Info.plist for macOS Bundle")
configure_file(${CMAKE_SOURCE_DIR}/Info.plist.in ${CMAKE_BINARY_DIR}/Info.plist @ONLY)
endif()
if(NATIVE_OSX_APP)
set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.app/Contents")
set(CMAKE_INSTALL_FULL_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/Resources/locale")
set(CMAKE_INSTALL_BINDIR "MacOS")
set(DATADIR "${CMAKE_INSTALL_PREFIX}/Resources")
set(FULL_DATADIR "${CMAKE_INSTALL_PREFIX}/Resources")
elseif(WIN32)
set(CMAKE_INSTALL_BINDIR ".")
set(CMAKE_INSTALL_DATAROOTDIR ".")
set(CMAKE_INSTALL_DATADIR ".")
set(CMAKE_INSTALL_FULL_LOCALEDIR "locale")
set(DATADIR "${CMAKE_INSTALL_DATADIR}")
set(FULL_DATADIR ".")
else()
set(DATADIR "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}")
set(FULL_DATADIR "${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}")
endif()
if(NOT GIT_COMMIT)
find_program(GIT_FOUND git)
if(GIT_FOUND)
execute_process(
COMMAND git log --pretty=format:%h -1
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
OUTPUT_VARIABLE GIT_COMMIT
)
if("${GIT_COMMIT}" STREQUAL "")
set(GIT_COMMIT "unknown")
endif()
else()
set(GIT_COMMIT "unknown")
endif()
endif()
#
# Compile definitions
#
add_definitions(
-DVERSION="${PROJECT_VERSION}"
-DPACKAGE="celestia"
-DGIT_COMMIT="${GIT_COMMIT}"
)
if(NOT NATIVE_OSX_APP)
add_definitions(
-DLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}"
-DCONFIG_DATA_DIR="${FULL_DATADIR}"
-DHIP_DATA_DIR="${FULL_DATADIR}"
-DSPLASH_DIR="${FULL_DATADIR}/splash"
)
endif()
if(WIN32)
add_definitions(
-D_CRT_SECURE_NO_WARNINGS
-D_SCL_SECURE_NO_WARNINGS
-DNOMINMAX
-DWIN32_LEAN_AND_MEAN
-DWINVER=0x0601
-D_WIN32_WINNT=0x0601
)
# Fix the issue: https://github.com/CelestiaProject/Celestia/issues/364
add_definitions(-D_ENABLE_EXTENDED_ALIGNED_STORAGE)
endif()
if(APPLE)
if(NATIVE_OSX_APP)
add_definitions(-DNATIVE_OSX_APP)
endif()
add_definitions(-DGL_SILENCE_DEPRECATION)
endif()
string(TOLOWER "${CMAKE_BUILD_TYPE}" build_type_lc)
if("${build_type_lc}" STREQUAL "debug")
add_definitions(-D_DEBUG -DDEBUG)
else()
add_definitions(-DNO_DEBUG -DEIGEN_NO_DEBUG)
if(NOT MSVC)
add_compile_options(
$<$<COMPILE_LANGUAGE:CXX>:-fno-rtti>
$<$<COMPILE_LANGUAGE:CXX>:-fno-exceptions>
)
endif()
endif()
# Turning all debug on dramatically decreases performance
if(OCTREE_DEBUG)
add_definitions(-DOCTREE_DEBUG)
endif()
include_directories("${CMAKE_SOURCE_DIR}/src" ${CMAKE_BINARY_DIR})
# configure a header file to pass some of the CMake settings
# to the source code
include(CheckSymbolExists)
check_symbol_exists(wordexp wordexp.h HAVE_WORDEXP)
check_include_files(byteswap.h HAVE_BYTESWAP_H)
find_package(Filesystem REQUIRED COMPONENTS Final Experimental)
if(CXX_FILESYSTEM_IS_EXPERIMENTAL)
message(WARNING "C++ lacks header <filesystem>, using <experimental/filesystem> instead.")
else()
set(HAVE_STD_FILESYSTEM ON)
endif()
link_libraries(std::filesystem)
try_compile(HAVE_CHARCONV ${CMAKE_BINARY_DIR} "${CMAKE_SOURCE_DIR}/checks/cxxccint.cpp")
if(HAVE_CHARCONV)
try_compile(HAVE_FLOAT_CHARCONV ${CMAKE_BINARY_DIR} "${CMAKE_SOURCE_DIR}/checks/cxxccfloat.cpp")
if(NOT HAVE_FLOAT_CHARCONV)
message(WARNING "C++ charconv lacks floating point support!\nWill use own implementation.")
endif()
else()
message(WARNING "C++ charconv is unusable!\nWill use own implementation.")
endif()
include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)
configure_file("config.h.in" "config.h")
set(BASE_DATA_SOURCES
demo.cel
guide.cel
start.cel
celestia.cfg
controls.txt
)
install(FILES ${BASE_DATA_SOURCES} DESTINATION ${DATADIR})
install(FILES "splash.png" DESTINATION "${DATADIR}/splash")
if(NATIVE_OSX_APP)
install(FILES ${CMAKE_BINARY_DIR}/Info.plist DESTINATION .)
endif()
add_subdirectory(src)
add_subdirectory(po)
add_subdirectory(fonts)
add_subdirectory(images)
add_subdirectory(locale)
add_subdirectory(scripts)
add_subdirectory(shaders)
if(ENABLE_TESTS)
enable_testing()
add_subdirectory(test)
endif()

9
CONTRIBUTING.md 100644
View File

@ -0,0 +1,9 @@
### Contributing
**We welcome feedback, bug reports, and pull requests!**
For pull requests, please stick to the following guidelines:
* Be sure to test your code changes.
* Follow the existing code style (e.g., indents).
* Put a lot of comments into the code, if necessary.
* Separate unrelated changes into multiple pull requests.

185
ChangeLog
View File

@ -246,7 +246,7 @@ Code:
* Windows version: InstallShield setup
* Windows version: added controls help dialog
* UNIX version: implemented find object and about dialogs (Gnome/Gtk only)
Code:
* Moved star browser and solar system browser code into separate modules
* Fixed DPRINTF macro so it's not broken in g++
@ -276,7 +276,7 @@ Code:
textures added to OpenGL Info dialog.
* New objects: Comet Borrelly, the giant Kuiper Belt object 2001 KX76,
and the Hubble Space Telescope
Code:
* Rewrote texture and model managers
* Cleaned up simulation.cpp to use frames of reference and eliminated a lot
@ -393,7 +393,7 @@ Code:
a single modeless dialog.
* Fixed period and rotation of Phoebe
1.2.1
* Unix: configure.in changes to better find OpenGL libraries by Bruckner.
* Added accurate orbital calculations for Galilean satellites.
@ -404,7 +404,7 @@ Code:
* Windows: Fixed crash that occurred when recalling a location with
no selection
1.2.2
* Improved find algorithm for starnames, and combined names from hdnames.dat
into starnames.dat. Also added several additional names and variant spellings
@ -557,7 +557,7 @@ Code:
* New colors for celestial grid and constellation figures
* Tuning of Gnome GUI: underlined key accelerators, enabled operation of all
dialogs and menus with ALT <key>, arrow keys, and Tab
* Linux: GUI now synced with current state of pixel/vertex shaders
* Linux: GUI now synced with current state of pixel/vertex shaders
* New keyboard bindings:
Ctrl+Y : automag toggle
Ctrl+T : toggle display of comet tails
@ -572,16 +572,16 @@ Code:
when building with VS.NET
* Cleaned up OpenGL extension initialization
* Significantly improved the reliability of object selection via mouse
click, notably for small fields of view in the arcsec range.
click, notably for small fields of view in the arcsec range.
* Fixed the 'move' script command
* New script commands: setfaintestautomag45deg {magnitude float},
lookback {}
* [,] keys now adjust the limiting magnitude at 45 degrees
field of view, if automag is ON. Values displayed via flash messages
* New script commands: setfaintestautomag45deg {magnitude float},
lookback {}
* [,] keys now adjust the limiting magnitude at 45 degrees
field of view, if automag is ON. Values displayed via flash messages
* Associated the 'looking back' operation with the '*' key shortcut
* Fixed bug in orbits of Galilean moons
* Corrected equatorial planes and rotation offsets for the major planets
* Linux: Added KDE interface, all features of the GTK interface are
* Linux: Added KDE interface, all features of the GTK interface are
available (except for the Tour Guide), new features include:
- Bookmarks / URLs;
- History navigation;* Improved drag and drop of cel:// URLs on Windows
@ -632,8 +632,8 @@ Code:
- Markers may also be set on objects using the right-click context menu
- Added mark/unmark commands for scripts
- Bound Ctrl+K to toggle display of markers
- Added flash messages indicating on|off status of markers
- Implemented markers into KDE interface
- Added flash messages indicating on|off status of markers
- Implemented markers into KDE interface
* Added triangle-accurate picking of mesh objects
* Multiview
- Ctrl+R : split view vertically
@ -664,7 +664,7 @@ Code:
* Updated configuration files for new versions of autoconf
1.3.1
* Improved inclusion of light travel delay, also in KDE time setting dialog
* Improved inclusion of light travel delay, also in KDE time setting dialog
* Fixed lookback command for subsequent changes of target speed
* Allow wildcard character * inplace of extension for texture filenames
* Fix bump mapping (again)
@ -706,7 +706,7 @@ Code:
* Made cancel script command stop motion, tracking, and any object-relative
coordinate system.
* Adjusted estimates for radii and rotation periods of extrasolar planets;
rotation rates account (somewhat) for the effects of tidal despinning.
rotation rates account (somewhat) for the effects of tidal despinning.
* Fixed a bug that was causing precision loss in orientation values; this fixes
some of the jerkiness apparent at very low fields of view.
* Corrected radii of Uranus's rings
@ -739,7 +739,7 @@ Code:
* Eliminated obscuring of location labels that occurred low view aspect ratios
* Added models of comet Halley and the small moons Pandora and Larissa
* Added limit of knowledge masks for the Galilean moons
* Changed spectral class of carbon stars to C, which supercedes and combines
* Changed spectral class of carbon stars to C, which supersedes and combines
R and N
* Lua scripting additions
* View management commands
@ -760,7 +760,7 @@ Code:
* Implemented an algorithm for importance weights to avoid overlapping or
too crowded location labels for Mars, Venus and the Moon
* Added new textures for Titan based on recent imaging from the Cassini
mission
mission
* Improved depth sorting so that hidden surface removal works properly for
overlapping objects
* Added theoretical estimates of oblateness and rotation rate for extrasolar
@ -805,16 +805,16 @@ Code:
* Implemented new GLSL render path; NVIDIA combiners and GeForceFX paths
deprecated.
* Display UTF-8 superscript digits in some star names
* Updated the Titan texture. It accomodates all published high resolution
imaging from the Cassini mission until and including the flyby of 03/31/05.
* Updated the Titan texture. It accomodates all published high resolution
imaging from the Cassini mission until and including the flyby of 03/31/05.
* Updated the Iapetus texture. It accomodates all published high resolution
imaging from the Cassini mission, including also a unique hires photo taken
in "Saturn shine".
imaging from the Cassini mission, including also a unique hires photo taken
in "Saturn shine".
* Added catalogs of 163 visual and 39 spectroscopic binary orbits,
respectively, (S<>erhjelm 1999, Pourbaix 2000) with known primary/secondary
mass ratios.
* Added an extended and precise data base of 942 galaxies
(Steinicke's rev. NGC/IC, 2005) with a magnitude cutoff Bmag < 12.
* Added an extended and precise data base of 942 galaxies
(Steinicke's rev. NGC/IC, 2005) with a magnitude cutoff Bmag < 12.
* Included the commented PERL scripts used to extract and adapt the binary
orbit and galaxy data from published professional catalogs.
* Added --extrasdir command line option for specifying additional directories
@ -843,13 +843,13 @@ Code:
- fixed automake bug where GConf schema would always install
- removed linking against glut for no reason
* Implemented complete precision catalog (Steinicke's revised NGC/IC, 2005) of
10610 galaxies with
- distance information from four catalogs ( 6 methods ),
- <= 4 alternate names,
- info-URLs,
- absolute magnitudes and
10610 galaxies with
- distance information from four catalogs ( 6 methods ),
- <= 4 alternate names,
- info-URLs,
- absolute magnitudes and
- correct sizes & orientations in space, as calculated from catalog
parameters.
parameters.
* Included well commented Perl script (deepsky.pl) as documentation. The used distance determination method is indicated in catalog for each galaxy.
* Updated binary star data base (visualbins.stc, spectbins.dsc) and respective
PERL catalog extraction scripts (visualbins.pl, spectbins.pl), such as to eliminate double occurences wrto nearstars.stc (, which remained unaffected).
@ -890,7 +890,7 @@ Code:
template from S0 disk template via rescaling by (1.0f, 3.8f, 1.0f);
- fixed wrong x,y alignment of elliptical rescaling.
* Added code to ease compilation with newer Xcode versions (Macintosh).
* Updated src/celengine/Makefile.am for Linux building.
* Updated src/celengine/Makefile.am for Linux building.
* Introduced a new cel function => renderflags {set "nebulae"}.
* Reduced the default value of 'faintestAutoMag45deg' from 8.5 to 7.0.
* Fixed the visibility of the Milky Way during day-time and the abrupt
@ -904,10 +904,10 @@ Code:
* Deleted various source code files that became superfluous.
* Improved comet display. Introduced a neat scheme implementing comet tail
fading (between 4 and 6 AU for Sol). Systems with several suns and
luminosities different from the solar one are accounted for.
* Implemented a new, simple scheme avoiding overcrowded galaxy labels.
luminosities different from the solar one are accounted for.
* Implemented a new, simple scheme avoiding overcrowded galaxy labels.
Their "importance" is sorted according to apparent magnitude! Thus the
labels of the brightest galaxies pop up first upon zooming in...
labels of the brightest galaxies pop up first upon zooming in...
* Fixes/workarounds for OpenGL 2.0 render paths on both nVidia and ATI cards.
@ -932,7 +932,7 @@ Code:
located inside the galaxy (Milky Way...).
* Eliminated various incorrect Hubble type acronyms in deepsky.dsc that had
penetrated the PERL filter.
* Add the corrected PERL script deepsky.pl.
* Add the corrected PERL script deepsky.pl.
* Mac: Universal binary - runs natively on Intel and PPC
* Mac: OpenGL 2.0 render path should now work on many configurations
(requires OS X 10.4.3 or later)
@ -948,7 +948,7 @@ Code:
* Mac: Fixed crash when LANG or LC environment variables are set
* Mac: Added bona fide English and French help menu
* Mac: Cleaned up README in general
* Added Phoebe textures in medres and lores directories from recent published
* Added Phoebe textures in medres and lores directories from recent published
Ciclops cylindrical maps
* Updated Titan and Iapetus textures in lores directory
* Windows: save and restore the last used GL render path
@ -959,10 +959,10 @@ Code:
* KDE: Reverted mouse wheel action to be compatible with the other interfaces.
* KDE: New configurable splash screen
(http://celestia.teyssier.org/splash_spec.html)
* Updated/added Tethys textures in lores, medres and hires directories.
* Updated/added Tethys textures in lores, medres and hires directories.
* Added locations on Phoebe in satmoons2.ssc, as extracted from USGS/IAU
official data.
* Added Mesh for Phoebe texture.
* Added Mesh for Phoebe texture.
* Updated Iapetus texture.
* Moved locations files from extras into data directory for inclusion in
standard package.
@ -1002,7 +1002,7 @@ Code:
- HIP 14810 c, HD 185269 b, Gliese 849 b
- Mu Ara e
- Gliese 581 c & d, HD 175541 b, HD 210702 b, HD192699 b
- HD 47536 c, XO-2 b, HD 147506 (HAT-P-2), HD 17092 b
- HD 47536 c, XO-2 b, HD 147506 (HAT-P-2), HD 17092 b
* Revised orbits of many extrasolar planets to reflect new data
* Added stars for new extrasolar planets: GSC 92941-01657
* Mac: Show menu bar when moving mouse to top of screen in full screen
@ -1067,7 +1067,7 @@ Code:
* Added cmodsphere, a utility for producing cmod meshes from height samples
regularly spaced in longitude and latitude.
* COPYING, controls.txt, start script, and guide can all be localized
* cel and celx scripting:
* cel and celx scripting:
- added openclusters and cloudshadows render flags
- added location, nebulae, openclusers, and i18nconsteallations label flags
* Established Barycentric Dynamical Time (TDB) as the time scale used
@ -1090,12 +1090,12 @@ Code:
spectra
* Made star orbit paths visible
* galaxies:
-changed galaxy template format to standard (grayscale) PNG
-changed galaxy template format to standard (grayscale) PNG
-allow a custom template for each galaxy in deepsky.dsc
-new approach to thickness of galaxy (arms): assumed proportional to read-in
brightness values
brightness values
-emulate dust lanes around galactic plane (y=0)
-considerable improvement of Milky Way appearance as seen from Earth
-considerable improvement of Milky Way appearance as seen from Earth
-implement galaxy labels of transparency increasing with distance, thus
providing a neat 3d effect
* galaxy templates:
@ -1114,10 +1114,10 @@ Code:
- Guarded against crash when the JPL ephemeris file can't be found
* Generalized rotations
- Clear syntax for ssc files
- UniformRotation
- UniformRotation
- PrecessingOrientation
- SampledOrientation - interpolated sequence of quaternion key frames
* Scripting improvements
* Scripting improvements
- New celx scripting commands:
- utctotdb and tdbtoutc
- gl commands
@ -1125,7 +1125,7 @@ Code:
- iterators: celestia:stars and celestia:dsos
- get/setaltazimuthmode
- Lua hooks for script extensions to Celestia
- Script interfaces for orbits and rotation models (ScriptedOrbit and
- Script interfaces for orbits and rotation models (ScriptedOrbit and
ScriptedRotation)
- Support Lua 5.1 (5.0 compatibility retained)
- Made celestia:loadtexture use relative file names
@ -1148,7 +1148,7 @@ Code:
* Corrected kilometers per light year constant
* Added various improvements to the MilkyWay & other galaxy template display.
* Added E0.png galaxy template that allows for better En, n=1..7 elliptical
shapes.
shapes.
* Fixed sizes of irregular galaxies (factor of 2!).
* Prevented galaxy code from crashing if a template is missing.
* Improved selection of galaxies by taking into account their 3d shape
@ -1163,11 +1163,11 @@ Code:
* Windows: Fixed crash that occurred when star browser was closed
* Fixed bug that made moons disappear as a planet approached stellar transit
* Added a major update of the galaxy database such that close to 100% of the
galaxies now involve distance measurements
* Included the complete local group of galaxies
galaxies now involve distance measurements
* Included the complete local group of galaxies
* Added varying label transparency also for stars
* Added the PERL scripts used for extraction of galaxy and binary orbit data
from scientific sources. They both are useful tools and a concise
from scientific sources. They both are useful tools and a concise
documentation of Celestia's data
* updated binary orbit data (visualbins.stc and spectbins.stc) along with
respective PERL scripts (visualbins.pl and spectbins.pl)
@ -1220,7 +1220,7 @@ Code:
HD 167042 b, HD 74156 d, HD 285968 b, V391 Peg b,
HD 132406 b, HD 43691 b, NGC 2423 3 b, Gliese 317 b & c,
TrES-3, HD 155358 b&c, HD 5319 b, HD 75898 b, OGLE-TR-182 b, WASP-3 b,
55 Cnc f, Lupus-TR-3 b, OGLE-TR-211 b, HD 156846 b, HD 4113 b, Kap CrB b,
55 Cnc f, Lupus-TR-3 b, OGLE-TR-211 b, HD 156846 b, HD 4113 b, Kap CrB b,
GD 66 b, XO-3 b, WASP-4 b TW Hya b
removed HD 33636 b
* Set up transit of Gliese 436
@ -1383,7 +1383,7 @@ Bug fixes
* Fixed search path for Lua scripts
* Fixed numerous bugs that occurred when an object's orbit center was different
* Fixed a bug in the celx function celestia:getscreendimension
* Fixed bug with returning Hubble type for galaxies
* Fixed bug with returning Hubble type for galaxies
* Eliminated error-prone min/max macros; use STL functions instead
* Fixed discrepancy between apparent magnitudes shown in the 3D view and
the star browser.
@ -1424,9 +1424,9 @@ Data file updates
* Changed class of small outer planet moons to minormoon
* Included new and updated solar system body features from the IAU
* Added provisional rotation period for Eris
Tools
* Added Perl script globulars.pl used to extract the globular data from scientific publications and as documentation
* Added Perl script globulars.pl used to extract the globular data from scientific publications and as documentation
* Added spice2xyzv tool for extracting xyzv files from a pool of SPICE kernels
* Added Perl script to build cross-indices
* Added Perl script to generate CHARM2 catalog
@ -1557,7 +1557,7 @@ Scripting
- windowbordersvisible, setwindowbordersvisible
* Split celx scripting support into several modules
* Cel scripting
- splitview, deleteview, singleview, setactiveview
- splitview, deleteview, singleview, setactiveview
- setgalaxylightgain
- setradius
- setlinecolor
@ -1584,3 +1584,80 @@ Cleanup:
information application to 1.6.0
* Purged out of date controls documentation
* Reorganized spacecraft add-ons in standard package
1.6.1
Bug fixes
* Removed extraneous colons from nearstars.stc
* Fixed truncation of long label strings in East Asian locales
* Increased size of Goto Object dialog to prevent translated strings from being
truncated
* Fixed i18n bug with scripting message
* Removed duplicate install of stars.dat.
* Fix code taking address of a temporary result.
* Fixed compile warnings in 1.6.1 caused by redefinition of UINT64_MAX
* Corrected encoding of cel URLs with non-ASCII characters
* Added check to prevent a crash when string decoding fails
* Added Nils Larsson's patch for libpng-1.4
Data file updates:
* Updated extrasolar planets data files.
* Updated solar system locations files.
* Updated numberedmoons.ssc file.
* Updated Galileo add-on.
* Updated starnames.dat file.
Platform-specific changes:
* Linux: Add missing files from extras-standard to Makefiles.
* Linux: fix for Unicode URLs in KDE bookmarks menu.
* Windows: Fixed i18n bug [2753461]
* Windows: Save FoV value in bookmarks
* Windows: Added ecliptic line setting to View Options dialog box
* Windows: Fixed i18n bug in Windows Script menu
* Windows: Added link to new HTML help files to Help menu
* Windows: Fixed invisible context menu in fullscreen mode (ATI cards)
* Windows: Fixed menu bar overlapping top of 3D view (ATI cards)
* Windows: Save and restore locations to/from registry
* Windows: Fixed startup crash when using fullwidth utf-8 characters
* Windows: Increased Inno Setup compression settings
* Windows: Allow installer to be run without administrator privileges.
Internationalization:
* Additional string translations
- Globular clusters
- "Nebula" and "Open cluster"
- World capitals
* Removed r and R commands from localized help files
* Updated translations
* Additional languages
- Added Chinese Traditional translation
- Added Slovak translation
- Added Galician translation by Xabier Cancela
- Added Belarusian translation from <375gnu@gmail.com>
- Added Norwegian translation from FreewareTips
- Added Turkish translation
* Fonts
- Lighter weight Japanese fonts
- Updated simplified Chinese fonts
- Added Belarusian fonts
Features
* Changed the name of 'Celestial' grid to 'Equatorial'
* Added Runar and Christian's HTML help files
* Added Solstice Mission extension for Cassini in 1.6.1 branch.
Scripting
* Celx scripting functions:
- Added seturl / geturl commands
- Added synchronizetime / istimesynchronized commands
- Added settextcolor / gettextcolor commands
- Added observer:orbit method
- Added celestia:runscript method
- Made orbitPeriod field available for stars via object:getinfo
* Cel scripting:
- Added boolean occludable parameter to mark command
- Added settextcolor command
* Added mousemove Lua hook
Code optimization and reorganization
* Fixes for gcc-4.5, and include -ldl for systems that need it.
* More granular setting of CFLAGS.

88
INSTALL
View File

@ -1,88 +0,0 @@
Celestia Install instructions for UNIX
--------------------------------------
You need to have the following components installed before Celestia
will build: OpenGL (tested with Mesa 3.4), glu, libjpeg, and libpng.
Should you have a package based installation (most Linux distributions these
days are), you will also need to install the devel packages for your OpenGL,
glu and glibc packages.
OK, assuming you've collected all the necessary libraries, here's
what you need to do to build and run Celestia:
./configure --with-INTERFACE [*]
make
make install
[*] INTERFACE must be replaced with one of "kde", "gtk", "gnome", or "glut".
Four interfaces are available for Celestia:
- glut: minimal interface, barebone Celestia core with no toolbar or menu...
- GTK: A full interface with minimal dependencies, adds a menu, a configuration
dialog some other utilities.
- Gnome: The full GTK interface plus a few Gnome integration goodies, such as
preference saving in GConf. This looks and works very much like the
Windows interface.
- KDE3: brings contextual menus, toolbars, KDE integration,
internationalization, bookmarks...
To build the KDE interface (requires various kde-devel packages):
configure --with-kde
To build the Gnome interface (requires gnome-devel and all GTK requirements):
configure --with-gnome
To build the GTK interface (requires gtkglext and gtkglext-devel):
configure --with-gtk
To build the GLUT interface (requires glut and glut-devel):
configure --with-glut
At the end of the configure output shows which interface has been selected, you
should check it is correct before running make.
Starting with version 1.3.1, Lua is the new scripting engine for Celestia,
the old homegrown scripting engine is still available. By default Lua support
will NOT be compiled in, to enable it you need to download the Lua library
from:
http://www.lua.org/
Version 5.0 or newer is required.
Once Lua has been installed on your system, you need to run:
configure --with-lua=/path/to/lua
To check wether your Celestia has been compiled with Lua support, go to File
-> Open. If you have '*.cel *.celx' in the filter box, then Lua is available
otherwise the filter will contain only '*.cel'.
The GtkGLExt widget that is required in order to build Celestia with Gtk+ may
be downloaded from http://gtkglext.sf.net. Note that depending in your
distribution you may also need other packages containing various files needed
by the build process. For instance, to build under SUSE Linux, you will also
need to have the gtk-devel package installed.
Celestia will be installed into /usr/local by default, with data files landing
in /usr/local/share/celestia , but you may specify a new location with the
--prefix option to configure:
configure --prefix=/home/my_directory
All the other usual configure parameters apply; you may see which options
are available using 'configure --help'
If while running configure you see an error reporting that gl.h,
is missing, you either don't have OpenGL installed on your system,
or you don't have the corresponding devel package installed. If for
instance you have Mesa installed, you will also have to install the
mesa-devel package (or something named similarly). Missing glu.h or glut.h
means that you don't have GLU, GLUT, or their devel pacakges installed.
Chris Laurel & Deon Ramsey
claurel@.shatters.net dramsey@users.sourceforge.net
Updated 2003-06-10 by
Christophe Teyssier
chris@teyssier.org
Updated 2004-04-28 by pat@suwalski.net

389
INSTALL.md 100644
View File

@ -0,0 +1,389 @@
# Basic installation instructions
Stable version installation on Unix-like systems (e.g. GNU/Linux or *BSD):
* Check your OS repository for already built packages.
* Check https://celestia.space/download.html.
Stable version installation on Windows and OSX:
* Check https://celestia.space/download.html.
Development snapshots installation on Unix-like systems:
### On Debian 10 (buster) and derived systems:
```
curl -fsSL -o celestia.gpg https://download.opensuse.org/repositories/home:/munix9:/unstable/Debian_10/Release.key
gpg --keyid-format long celestia.gpg
gpg: WARNING: no command supplied. Trying to guess what you mean ...
pub rsa2048/BDF3F6ACD4D81407 2014-06-09 [SC] [expires: 2023-02-14]
3FE0C0AC1FD6F1034B818A14BDF3F6ACD4D81407
uid home:munix9 OBS Project <home:munix9@build.opensuse.org>
sudo mv celestia.gpg /usr/share/keyrings/celestia.asc
echo "deb [signed-by=/usr/share/keyrings/celestia.asc] https://download.opensuse.org/repositories/home:/munix9:/unstable/Debian_10/ ./" | sudo tee /etc/apt/sources.list.d/celestia-obs.list
sudo apt update && sudo apt install celestia
```
### On Ubuntu 18.04/20.04 and derived systems:
```
curl https://download.opensuse.org/repositories/home:/munix9:/unstable/Ubuntu_${VERSION}/Release.key | sudo apt-key add -
echo "deb https://download.opensuse.org/repositories/home:/munix9:/unstable/Ubuntu_${VERSION}/ ./" | sudo tee /etc/apt/sources.list.d/celestia-obs.list
sudo apt update && sudo apt install celestia
```
Where VERSION is 18.04 or 20.04.
### On openSUSE Leap/Tumbleweed:
```
sudo zypper addrepo https://download.opensuse.org/repositories/home:munix9:unstable/openSUSE_${VERSION}/home:munix9:unstable.repo
sudo zypper refresh
sudo zypper install celestia
```
Where VERSION is 'Leap_15.2', 'Leap_15.3' or 'Tumbleweed'.
See also the download package sites on OBS for [celestia](https://software.opensuse.org/download.html?project=home:munix9:unstable&package=celestia) and [celestia-data](https://software.opensuse.org/download.html?project=home:munix9:unstable&package=celestia-data).
### On other GNU/Linux distributions:
Try experimental portable AppImage (see https://github.com/CelestiaProject/Celestia/issues/333):
```
wget https://download.opensuse.org/repositories/home:/munix9:/unstable/AppImage/celestia-1.7.0-git-x86_64.AppImage
chmod 755 celestia-1.7.0-git-x86_64.AppImage
```
Optionally create a portable, main version-independent `$HOME` directory in the same folder as the AppImage file:
```
mkdir celestia-1.7.home
```
To build from sources please follow instructions below.
## Common building instructions
We recommend using a copy of our git repository to build your own installation
as it contains some dependencies required for building.
To create the copy install git from your OS distribution repository or from
https://git-scm.com/ and then execute the following commands:
```
git clone https://github.com/CelestiaProject/Celestia
cd Celestia
git submodule update --init
```
## Celestia Install instructions for UNIX
First you need a C++ compiler able to compile C++11 code (GCC 4.8.1 or later,
Clang 3.3 or later), CMake, GNU Make or Ninja.
Then you need to have the following devel components installed before Celestia
will build: OpenGL, libepoxy, fmtlib, Eigen3, freetype, libjpeg, and libpng.
Optional packages are gettext, Qt5, Gtk2 or Gtk3, sdl2, ffmpeg, libavif, glu and glut.
For example on modern Debian-derived system you need to install the following
packages: libepoxy-dev, libjpeg-dev, libpng-dev, libgl1-mesa-dev,
libeigen3-dev, libfmt-dev, libfreetype6-dev. Then you may want to install
libglu1-mesa-dev, required by some tools; qtbase5-dev, qtbase5-dev-tools and
libqt5opengl5-dev if you want to build with Qt5 interface; libgtk2.0-dev and
libgtkglext1-dev to build with legacy Gtk2 interface; libgtk3.0-dev to build
Gtk3 interface, libsdl2-dev to build SDL interface or freeglut3-dev to build
with glut interface. libavcodec-dev, libavformat-dev, libavutil-dev and
libswscale-dev are required to build with video capture support. libavif-dev
is required to build to AVIF texture support.
OK, assuming you've collected all the necessary libraries, here's
what you need to do to build and run Celestia:
```
mkdir build
cd build
cmake .. -DENABLE_DATA=ON -DENABLE_INTERFACE=ON [*]
make
sudo make install
```
[*] `INTERFACE` must be replaced with one of "`QT`", "`GTK`", "`SDL`" or
"`GLUT`".
Four interfaces are available for Celestia on Unix-like systems:
- GLUT: minimal interface, barebone Celestia core with no toolbar or menu...
Disabled by default.
- SDL: minimal interface, barebone Celestia core with no toolbar or menu...
Disabled by default.
- GTK: A full interface with minimal dependencies, adds a menu, a configuration
dialog some other utilities. Legacy interface, may lack some new
features. Disabled by default.
- QT: A full interface with minimal dependencies, adds a menu, a configuration
dialog some other utilities, bookmarks... A preferred option. Enabled by
default, No need to pass -DENABLE_QT=ON.
Starting with version 1.3.1, Lua is the new scripting engine for Celestia,
the old homegrown scripting engine is still available. By default Lua support
is enabled, it can be disabled passing -DENABLE_CELX=OFF to cmake. Supported
Lua versions are 5.1 - 5.4. On Debian-based systems install liblua5.x-dev
package (replace `x` with 1, 2, 3 or 4) or libluajit-5.1-dev. The latter is
preferred.
To check wether your Celestia has been compiled with Lua support, go to File
-> Open. If you have '*.cel *.celx' in the filter box, then Lua is available
otherwise the filter will contain only '*.cel'.
The GtkGLExt widget that is required in order to build Celestia with Gtk+ may
be downloaded from http://gtkglext.sf.net. Note that depending in your
distribution you may also need other packages containing various files needed
by the build process. For instance, to build under SUSE Linux, you will also
need to have the gtk-devel package installed. GtkGLExt widget support is
optional and own EGL-based implementation of GL widget can be used instead.
It also required only if Gtk2 used, with Gtk3 own implementation used always.
Celestia will be installed into /usr/local by default, with data files landing
in /usr/local/share/celestia, but you may specify a new location with the
following option to cmake: -DCMAKE_INSTALL_PREFIX=/another/path.
## Celestia Install instructions for Windows (MSVC)
Currently to build on Windows you need Visual Studio 2015 or later, CMake
and vcpkg (*).
Install required packages:
```
vcpkg --triplet=TRIPLET install --recurse libpng libjpeg-turbo gettext luajit fmt libepoxy eigen3 freetype
```
Install optional packages:
```
vcpkg --triplet=TRIPLET install --recurse qt5-base ffmpeg cspice libavif
```
Replace TRIPLET with `x86-windows` to build 32-bit versions or `x64-windows`
for 64-bit versions.
Instead of `luajit` `lua` can be used.
Use `vcpkg list` to ensure that all packages have actually been installed.
If not, try installing them one at a time.
Configure and build 32-bit version:
```
md build32
cd build32
cmake -DCMAKE_GENERATOR_PLATFORM=Win32 -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x86-windows ..
cmake --build . -- /maxcpucount:N /nologo
```
Configure and build 64-bit version:
```
md build64
cd build64
cmake -DCMAKE_GENERATOR_PLATFORM=x64 -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows ..
cmake --build . -- /maxcpucount:N /nologo
```
Instead of N in /maxcpucount pass the number of CPU cores you want to use during
the build.
This example assumes that `vcpkg` is installed into `c:/tools/vcpkg`. Update
the path to `vcpkg.cmake` according to your installation.
If you have Qt5 installed using official Qt installer, then pass parameter
CMAKE_PREFIX_PATH to cmake call used to configure Celestia, e.g.
```
cmake -DCMAKE_PREFIX_PATH=C:\Qt\5.10.1\msvc2015 ..
```
Not supported yet:
- automatic installation using cmake
- using Ninja instead of MSBuild
Notes:
* vcpkg installation instructions are located on
https://github.com/Microsoft/vcpkg
## Celestia Install instructions for Windows (MINGW64), qt-only
NOTE: this part is not up to date!
It is recommended to build the source with MSYS2
https://www.msys2.org/ .
Do the following in the MINGW64 shell (mingw64.exe).
Install required packages:
```
pacman -S mingw-w64-x86_64-toolchain
pacman -S base-devel
pacman -S git
pacman -S mingw-w64-x86_64-cmake
pacman -S mingw-w64-x86_64-qt5
pacman -S mingw-w64-x86_64-freeglut mingw-w64-x86_64-libepoxy mingw-w64-x86_64-lua
pacman -S mingw-w64-x86_64-mesa
```
Install optional packages:
```
pacman -S mingw-w64-x86_64-fmt mingw-w64-x86_64-eigen3 mingw-w64-x86_64-luajit
pacman -S mingw-w64-x86_64-sdl2
```
Clone the source and go to the source directory.
Configure and build:
```
mkdir build
cd build
cmake .. -G"MSYS Makefiles" -DENABLE_WIN=OFF
mingw32-make.exe -jN
```
Instead of N, pass a number of CPU cores you want to use during a build.
To build in debug configuration, you have to use lld linker instead of the
default linker in gcc.
```
pacman -S mingw-w64-x86_64-lld mingw-w64-x86_64-lldb
```
Follow by:
```
cmake .. -G "MSYS Makefiles" -DENABLE_WIN=OFF -DCMAKE_CXX_FLAGS='-fuse-ld=lld' -DCMAKE_BUILD_TYPE=Debug
```
Then do `mingw32-make.exe`.
## Celestia Install instructions for macOS, qt-only
Currently Qt frontend is the only available option for macOS users building
Celestia from source.
Install the latest Xcode:
You should be able to get Xcode from the Mac App Store.
Install Homebrew
Follow the instructions on https://brew.sh/
Install required packages:
```
brew install pkg-config cmake fmt gettext libepoxy libpng lua qt5 jpeg eigen freetype
```
Install optional packages:
```
brew install cspice ffmpeg libavif
```
Follow common building instructions to fetch the source.
Configure and build:
```
mkdir build
cd build
cmake ..
make -jN
```
Instead of N, pass a number of CPU cores you want to use during a build.
Install:
```
make install
```
Celestia will be installed into /usr/local by default, with data files landing
in /usr/local/share/celestia, but you may want to specify a new location with
the following option to cmake: `-DCMAKE_INSTALL_PREFIX=/another/path`.
To build the application bundle, pass -DNATIVE_OSX_APP=ON to the cmake command,
the application bundle will be located in the "build" folder that you previously
created.
## Supported CMake parameters
List of supported parameters (passed as `-DPARAMETER=VALUE`):
Parameter | TYPE | Default | Description
----------------------| ------|---------|--------------------------------------
| CMAKE_INSTALL_PREFIX | path | \* | Prefix where to install Celestia
| CMAKE_PREFIX_PATH | path | | Additional path to look for libraries
| LEGACY_OPENGL_LIBS | bool | \*\*OFF | Use OpenGL libraries not GLvnd
| ENABLE_CELX | bool | ON | Enable Lua scripting support
| ENABLE_SPICE | bool | OFF | Enable NAIF kernels support
| ENABLE_NLS | bool | ON | Enable interface translation
| ENABLE_GLUT | bool | OFF | Build simple Glut frontend
| ENABLE_GTK | bool | \*\*OFF | Build legacy GTK2 frontend
| ENABLE_QT | bool | ON | Build Qt frontend
| ENABLE_SDL | bool | OFF | Build SQL frontend
| ENABLE_WIN | bool | \*\*\*ON | Build Windows native frontend
| ENABLE_FFMPEG | bool | \*\*ON | Support video capture using ffmpeg
| ENABLE_LIBAVIF | bool | OFF | Support AVIF texture using libavif
| ENABLE_TOOLS | bool | OFF | Build tools for Celestia data files
| ENABLE_DATA | bool | OFF | Use CelestiaContent submodule for data
| ENABLE_GLES | bool | OFF | Use OpenGL ES 2.0 in rendering code
| NATIVE_OSX_APP | bool | OFF | Support native OSX data paths
| USE_GTKGLEXT | bool | ON | Use libgtkglext1 in GTK2 frontend
| USE_GTK3 | bool | OFF | Use Gtk3 instead of Gtk2 in GTK2 frontend
Notes:
\* /usr/local on Unix-like systems, c:\Program Files or c:\Program Files (x86)
on Windows depending on OS type (32 or 64 bit) and build configuration.
This option effect is overriden by NATIVE_OSX_APP.
\*\* Ignored on Windows systems.
\*\*\* Ignored on Unix-like systems.
`USE_GTK3` requires `ENABLE_GTK`
Parameters of type "bool" accept ON or OFF value. Parameters of type "path"
accept any directory.
On Windows systems two additonal options are supported:
- `CMAKE_GENERATOR_PLATFORM` - can be set to `x64` on 64-bit Windows to build
64-bit Celestia. To build 32-bit Celestia it should be `Win32`.
- `CMAKE_TOOLCHAIN_FILE` - location of vcpkg.cmake if vcpkg is used.
Please note that not all options are compatible:
- `USE_GTKGLEXT` is not compatible with `ENABLE_GLES` and `USE_GTK3` and will
be disabled if any of this is set.
- `ENABLE_GLES` is not compatible with `ENABLE_GLUT` and with `ENABLE_QT` if
your `glut` or Qt5 installation don't support OpenGL ES.
Executable files
----------------
As said prevously Celestia provides several user interfaces, accordingly with
interfaces it's built with it has different executable files installed to
${CMAKE_INSTALL_PREFIX}/bin (e.g. with default CMAKE_INSTALL_PREFIX on
Unix-like systems they are installed into `/usr/local/bin`).
Here's the table which provides executable file names accordingly to interface:
Interface | Executable name
|-----------|----------------|
| Qt5 | celestia-qt
| GTK | celestia-gtk
| GLUT | celestia-glut
| SDL | celestia-sdl
| WIN | celestia-win

36
Info.plist.in 100644
View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>celestia-qt</string>
<key>CFBundleIconFile</key>
<string>celestia</string>
<key>CFBundleIdentifier</key>
<string>org.celestia.Celestia</string>
<key>CFBundleName</key>
<string>Celestia</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>@VERSION@</string>
<key>CFBundleShortVersionString</key>
<string>@VERSION@</string>
<key>LSMinimumSystemVersion</key>
<string>@CMAKE_OSX_DEPLOYMENT_TARGET@</string>
<key>CFBundleDisplayName</key>
<string>@DISPLAY_NAME@</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHighResolutionCapable</key>
<string>true</string>
<key>Application Category</key>
<string>Education</string>
</dict>
</plist>

View File

@ -1,80 +0,0 @@
ACLOCAL_AMFLAGS = -I macros
pkgdatadir = @datadir@/@PACKAGE@
dosstuff = \
celestia.mak \
celestia.iss \
celestia.sln \
celestia.vcproj \
$(wildcard *.bat)
noinst_DATA = \
coding-standards.html \
devguide.txt \
$(dosstuff)
pkgdata_DATA = \
celestia.cfg \
controls.txt \
COPYING \
$(wildcard *.cel)
EXTRA_DIST = \
$(pkgdata_DATA) \
$(noinst_DATA) \
splash.png \
po/extract_resource_strings.pl \
po/translate_resources.pl \
TRANSLATORS
splashdir = $(pkgdatadir)/splash
splash_DATA = splash.png
SUBDIRS = src data extras extras-standard textures models shaders fonts po po2 locale scripts
# Non-automake directories
NONAUTO = admin macosx windows
# From KDE app template
# We already have a configure.in file, we don't build it from configure.in.in
#$(top_srcdir)/configure.in: configure.in.in $(top_srcdir)/subdirs
# cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in ;
$(top_srcdir)/subdirs:
cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs
# This is just silly
#$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in
# @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in > acinclude.m4
MAINTAINERCLEANFILES = subdirs configure.in acinclude.m4
package-messages:
$(MAKE) -f admin/Makefile.common package-messages
$(MAKE) -C po merge
dist-hook:
( \
cd $(srcdir) && \
( \
for dir in $(NONAUTO) ; do \
find $$dir -depth -print | egrep -v '(~$$)|(/CVS)|(/\.svn)|(/\.#)|(/\.deps)' \
| cpio -pdum $(distdir) 2>/dev/null ; \
done \
) \
)
cd $(top_distdir) && perl admin/am_edit -padmin
cd $(top_distdir) && $(MAKE) -f admin/Makefile.common subdirs
install-data-hook:
if [ "$(kde_datadir)" -a -d $(DESTDIR)/$(kde_datadir)/@PACKAGE@ -a ! -h $(DESTDIR)/$(kde_datadir)/@PACKAGE@ ] ; then \
mv -f -b $(DESTDIR)/$(kde_datadir)/@PACKAGE@/* $(DESTDIR)/$(datadir)/@PACKAGE@/ ; \
rmdir $(DESTDIR)/$(kde_datadir)/@PACKAGE@ ; \
fi
if [ "$(kde_datadir)" -a ! -h $(DESTDIR)/$(kde_datadir)/@PACKAGE@ ] ; then \
ln -s $(datadir)/@PACKAGE@ $(DESTDIR)/$(kde_datadir)/@PACKAGE@ ; \
fi

View File

@ -1,10 +0,0 @@
all:
@echo "This Makefile is only for the CVS repository"
@echo "This will be deleted before making the distribution"
@echo ""
$(MAKE) -f admin/Makefile.common cvs
dist:
$(MAKE) -f admin/Makefile.common dist
.SILENT:

0
NEWS
View File

View File

@ -1,490 +1,309 @@
***************************************************************************
* Celestia *
* *
* A real-time space simulation that lets you experience our universe in *
* three dimensions. *
* *
* Copyright (c) 2001-2009, Celestia Development Team *
* *
*-------------------------------------------------------------------------*
* Celestia web site: http://www.shatters.net/celestia/ *
* *
* Celestia documentation: *
* http://www.shatters.net/celestia/documentation.html *
* Celestia WikiBook: http://en.wikibooks.org/wiki/Celestia *
* *
* Celestia forums: http://www.shatters.net/forum/ *
* *
***************************************************************************
CONTENTS
--------
License
Installing in Unix and Linux
Getting Started
Mouse, Keyboard & Joystick Controls
Star & Solar System Browser
Selecting Objects by Name
Known Issues
User Modifiable Elements
Celestia Resources
Contributions
Acknowledgements
LICENSE
-------
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details, which you should have received along with this program (filename:
COPYING). If not, request a copy from:
Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307
USA
INSTALLING IN UNIX AND LINUX
----------------------------
Type "./configure --help" for a list of options. The basic commands are shown
below. For more detailed information, refer to the INSTALL file.
The GTK version is built with...
./configure --with-gtk
make
make install
The KDE3 version is built with...
./configure --with-kde
make
make install
Note: some systems may require configure to be executed with
--with-qt-includes=/usr/include/qt3
The Gnome version is built with...
./configure --with-gnome
make
make install
If all else fails, try the gui-less version with...
./configure --with-glut
make
make install
GETTING STARTED
---------------
Celestia will start up in a window, and if everything is working correctly,
you'll see Earth in front of a field of stars. Displayed on-screen, is some
information about your target (Earth), your speed, and the current time
(Universal Time, so it'll probably be a few hours off from your computer's
clock).
Right drag the mouse to orbit Earth and you might see the Moon and some
familiar constellations. Left dragging the mouse changes your orientation
also, but the camera rotates about its center instead of rotating around
Earth. Rolling the mouse wheel will change your distance to Earth--you can
move light years away, then roll the wheel in the opposite direction to get
back to your starting location. If your mouse lacks a wheel, you can use the
Home and End keys instead.
When running Celestia, you will usually have some object selected. Currently,
it's Earth, but it could also be a star, moon, spacecraft, galaxy, or some
other object. The simplest way to select an object is to click on it. Try
clicking on a star to select it. The information about Earth is replaced with
some details about the star. Press G (or use the Navigation menu), and you'll
zoom through space toward the selected star. If you press G again, you'll
approach the star even closer.
Press H to select our Sun, and then G to go back to our Sun. Right click on
the sun to bring up a menu of planets and other objects in the solar system.
After selecting a planet from the menu, hit G again to travel toward it. Once
there, hold down the right mouse button and drag to orbit the planet.
The Tour Guide is a list of some of the more interesting objects you can visit
in Celestia. Select the Tour Guide option in the Navigation menu to display
the Tour Guide window. Choose a destination from the list, click the Goto
button, and you're off.
That covers the very basics. For a more in-depth look at Celestia and the
controls available to you, download the "Celestia User's Guide" (written by
Frank Gregorio), available in several languages, from:
http://www.shatters.net/celestia/documentation.html
This web page also includes links to the Celestia README file translated into
Japanese.
MOUSE, KEYBOARD & JOYSTICK CONTROLS
-----------------------------------
See the included file: controls.txt OR use the Help menu to display the Controls
list.
STAR & SOLAR SYSTEM BROWSER
-------------------------------------------
The Navigation menu contains 'Solar System Browser' and 'Star Browser'
options.
STAR BROWSER
By default, the Star Browser window displays a table of the 100 nearest stars,
along with their Distance, Apparent and Absolute Magnitude, and Type. Clicking
on the column headers will sort the stars. The table is not continuously
updated, so if you travel to another star, you should press the Refresh button
to update the table for your current position. The radio buttons beneath the
table let you switch between viewing a list of Nearest, Brightest, or 'With
planets' stars. As with the solar system browser, clicking on any star name
in the table will select it. Use this feature along with the Center and Go
To buttons to tour the stars visible from any night sky in the galaxy.
SOLAR SYSTEM BROWSER
The Solar System Browser displays a window with a tree view of all the objects
in the nearest solar system (if there is one within a light year of your current
position.) Clicking on the name of any object in the window will select it.
You can then use the Center or Go To buttons to display that object in the main
Celestia window.
SELECTING OBJECTS BY NAME
-------------------------
Celestia provides several ways to select an object by name...
1. Choose 'Select Object' from the Navigation menu, type in the object
name, and click OK.
2. Press Enter, type in the entire object name, and press Enter again.
3. Press Enter, type in the first few characters of the object name,
press the Tab key to move through the displayed listing until the
object is highlighted, then press Enter again.
You can use common names, Bayer designations or catalog numbers for stars.
Celestia currently supports the HIP, HD and SAO catalogs. Catalog numbers must
be entered with a space between the prefix and the catalog number.
KNOWN ISSUES
------------
For up-to-the-minute answers to some common problems encountered when running
Celestia, please view either the FAQ in the Help menu or take a look at the
"Celestia User's FAQ" located on the Celestia User's Forum:
http://www.shatters.net/forum/
USER MODIFIABLE ELEMENTS
------------------------
You can modify how Celestia starts up each time you run it, by defining your
own start-up settings. Simply open the file "start.cel" in a plain text
editor and follow the in-file instructions. Also, view the celestia.cfg file
in a plain text editor to see additional settings.
Celestia allows you to easily add real, hypothetical, or fictional objects
by creating new catalog files. It is *not* recommended that you alter the
built-in data files; nearly all desired modifications and additions can be
made by placing new catalog files in Celestia's extras folders. There are three
types of catalog files:
- ssc (solar system catalog: planets, moons, spacecraft, etc.)
- stc (star catalog)
- dsc (deep sky catalog: galaxies, star clusters, and nebulae)
All three types of catalog file are text files that can be updated with your
favorite text editing program.
CELESTIA RESOURCES
------------------
Celestia Web Site:
http://www.shatters.net/celestia/
Celestia User Forums:
http://www.shatters.net/forum/
Selden's List of Resources for Celestia :
http://www.lepp.cornell.edu/~seb/celestia/
Celestia WikiBook:
http://en.wikibooks.org/wiki/Celestia
Celestial Matters Website and Forums:
http://www.celestialmatters.org/
http://forum.celestialmatters.org/
Celestia Motherlode:
http://www.celestiamotherlode.net/
Celestia Source Code (SourceForge.net):
http://sourceforge.net/projects/celestia/
Celestia Bug Tracking (SourceForge.net):
http://sourceforge.net/tracker/?atid=121302&group_id=21302&func=browse
Celestia Feature Requests (SourceForge.net):
http://sourceforge.net/tracker/?atid=371302&group_id=21302&func=browse
CONTRIBUTIONS
-------------
Authors
-------
Chris Laurel <claurel@gmail.com>
Clint Weisbrod <cweisbrod@cogeco.ca>
Fridger Schrempp <t00fri@mail.desy.de>
Bob Ippolito <bob@redivi.com>
Christophe Teyssier <chris@teyssier.org>
Hank Ramsey <hramsey@users.sourceforge.net>
Grant Hutchison <grant.celestia@xemaps.com>
Pat Suwalski <pat@suwalski.net>
Toti
Da Woon Jung <dirkpitt2050@users.sf.net>
Vincent Giangiulio <vince.gian@free.fr>
Andrew Tribick
Contributors
------------
Deon Ramsey ........... original GTK1 interface
Christopher ANDRE ..... Eclipse Finder
Colin Walters ......... Endianness fixes
Peter Chapman ......... Orbit path rendering changes
James Holmes ..........
Harald Schmidt ........ Lua scripting enhancements, bug fixes
Documentation
-------------
Frank Gregorio ........ Celestia User's Guide
Hitoshi Suzuki ........ Japanese README translation
Christophe Teyssier ... DocBook and HTML conversion of User's Guide
Diego Rodriguez ....... Acrobat conversion of User's Guide
Don Goyette ........... CEL Scripting Guide
Harald Schmidt ........ Celx/Lua Scripting Guide
Scientific Data Base
--------------------
# Grant Hutchison
Supplied the correct orientations for the major planets, their moons, and a
number of asteroids and also worked on these data files:
Solarsys.ssc, nearstars.stc, extrasolar.ssc, extrasolar.stc, earth_locs.ssc
# Fridger Schrempp
Complete NGC/IC galaxy database + local group galaxies (galaxies.dsc)
Data base on globular clusters (globulars.dsc)
Data base on visual and spectroscopic binaries (visualbins.stc,
spectbins.stc)
World-capitals.ssc
Asterisms.dat
# Andrew Tribick
Significant update of the star.dat base based on new HIP Reduction of the
Raw data, Floor van Leeuwen, 2007.
CHARM2 stellar radii (charm2.stc)
Texture maps
------------
# Most of the planet maps are from David Seal's site:
http://maps.jpl.nasa.gov/.
A few of these maps were modified by me, with fictional terrain added to fill
in gaps. The model of the Galileo spacecraft is also from David Seal's site
(though it was converted from Inventor to 3DS format.)
# The Mars, Neptune, and Uranus textures and Mars bump maps are all from James
Hastings-Trew's collection. His maps may be found here:
http://gw.marketingden.com/planets/planets.html
# Grant Hutchison
Saturn's rings were built by Grant Hutchison from Cassini imaging, with
transparency information derived from stellar transit data obtained from:
http://pds-rings.arc.nasa.gov/ringocc/ringocc.html
The Eros map is a shaded relief generated from the NEAR laser rangefinder
shape model at:
http://pdssbn.astro.umd.edu/NEARdb/nlr/#shape
# Jens Meyer
Dione and Rhea are USGS maps colored and modified by Jens Meyer.
The Moon map is based on data from PDS Map-A-Planet at
http://pdsmaps.wr.usgs.gov/maps.html with colors from Mark Robinson at
http://www.earth.northwestern.edu/research/robinson/MOON/clem_color.html.
# Fridger Schrempp
'Available data' Pluto and Charon textures using maps created by Marc Buie
at Lowell Observatory. Buie's maps were generated from photometric data
gathered during six years of mutual occultations of Pluto and Charon.
Titan's cloud texture in natural colors and its surface map at near-infrared
wavelength. They are based on resources available from the imaging site
(Ciclops) of the Cassini mission
(http://ciclops.lpl.arizona.edu/index.php)
The Phoebe base texture was created from the cylindrical map published by
the Cassini imaging team
(http://photojournal.jpl.nasa.gov/catalog/PIA07775)
The Tethys textures are based on the Oct 2008 Ciclops map
(http://photojournal.jpl.nasa.gov/catalog/PIA11116)
The Iapetus texture was created from the Oct 2008 Ciclops map
(http://photojournal.jpl.nasa.gov/catalog/PIA11116)
The Lunar topography and bump maps, using Clementine laser altimeter data,
merged in the polar regions with topographic data from Clementine 750 nm
oblique and nadir images
(ftp://ftpflag.wr.usgs.gov/dist/pigpen/moon/usgs/topo/global/)
The Mercury map was created from a combination of Mariner 10 imaging
with recent MESSENGER WAC images from the first two flybys, as collected
and reprojected by Steve Albers:
See http://laps.noaa.gov/albers/sos/sos.html.
# Phil Stooke
Proteus, Janus, Prometheus and Epimetheus maps are from Phil Stooke.
The Ida and Gaspra photomosaic maps are by Phil Stooke.
# Venus's clouds and the textures for Ganymede, Callisto and Saturn are from
Bj<42>rn J<>nsson. His site at http://www.mmedia.is/~bjj/ is an excellent
resource for solar system rendering.
# Venus's surface is a copyright-free NASA image, prepared from Magellan radar
data. The original is available at
http://www.solarviews.com/cap/venus/venmap.htm
# The Earth texture was created by NASA using data from the MODIS instrument
aboard the Terra satellite. Further information is available from:
http://earthobservatory.nasa.gov/Newsroom/BlueMarble/
# Steve Albers
The Io and Europa maps are by Steve Albers. His planetary maps are at:
http://laps.noaa.gov/albers/sos/sos.html
# The textures for the Uranian satellites were created by Ivan Rivera from JPL
data. His Celestia page is: http://bruckner.homelinux.net/celestia.html
# The Hyperion map is a photomosaic assembled by Phil Stooke and
colored by Jens Meyer.
# Amalthea is a shaded relief map by Phil Stooke, colored by Wm. Robert Johnston
(http://www.johnstonsarchive.net/spaceart/cylmaps.html), and further modified
by Jens Meyer and Grant Hutchison.
# The asteroid.jpg texture was created by Paul Roberts.
# The textures for the five classes of extrasolar giant planet were created by
Andrew Tribick.
# CICLOPS
The map of Enceladus is derived from the December 2008 CICLOPS map:
http://ciclops.org/view/5447/Map_of_Enceladus_December_2008
3D Models
---------
# Models of Mars Global Surveyor and Mars Odyssey were created by Shrox:
http://www.shrox.com/
# The Cassini and Huygens models are by Jack Higgins:
http://homepage.eircom.net/~jackcelestia/
# The 3D model of ISS is a deconstruction of Andrew Farnaby's
complete ISS model with textures by Bob Hundley. The model
represents the ISS as of June 2008 and is a modification of
the model that can be found here:
http://www.celestiamotherlode.net/catalog/show_addon_details.php?addon_id=1199
ISS model of June 2008 (with Kibo) by krisci3 (modified and
converted in order to work with JPG by Ulrich Dickmann, a.k.a.
Adirondack)
# 3D asteroid models of Toutatis, Kleopatra, Geographos, 1998 KY26, Bacchus,
Castalia and Golevka are courtesy of Scott Hudson, Washington State
University. His site is:
http://www.eecs.wsu.edu/~hudson/Research/Asteroids/models.html
# 3D models of Phobos, Deimos, Amalthea, Janus, Epimetheus, Prometheus, Pandora,
Hyperion, Larissa, Proteus, Vesta, Ida, Gaspra and Halley are derived from
Phil Stooke's Cartography of Non-Spherical Worlds at:
http://publish.uwo.ca/~pjstooke/plancart.htm
and optical shape model dataset at:
http://pdssbn.astro.umd.edu/SBNast/holdings/EAR-A-5-DDR-STOOKE-SHAPE-MODELS-
V1.0.html
# The 3D model of Eros was prepared from the NEAR laser rangefinder shape model
at: http://pdssbn.astro.umd.edu/NEARdb/nlr/#shape
# The Phoebe mesh was designed by Jerry Gardner aka Jestr, jestr@ntlworld.com,
based on Phoebe's bumpy topography display from Cassini,
http://photojournal.jpl.nasa.gov/catalog/PIA06070
Libraries
---------
# This software is based in part on the work of the Independent JPEG Group.
# Some versions of Celestia may use the SPICE system for spacecraft and
planetary information, developed by Caltech/JPL under contract to NASA.
# Many cylindrical projections of photographs were performed by Fridger
Schrempp with Matthew Arcus 'mmps' software,
http://www.users.globalnet.co.uk/~arcus/mmps/
# The lower resolution textures were all converted from their higher resolution
versions using Gimp.
# The star database (stars.dat) was derived from the ESA's HIPPARCOS data set.
# Constellation boundaries are drawn from Davenhall & Leggett's "Catalogue of
Constellation Boundary Data":
http://cdsweb.u-strasbg.fr/viz-bin/ftp-index?/ftp/cats/VI/49
Other work
----------
# Selden Ball deserves a special mention for suffering more prerelease versions
finding more bugs, and giving more feedback than anyone else.
# Christophe Campos aka ElChristou created the splash screen for Celestia.
# The MacOS X icon was designed by Chris Alford: http://www.chrisalford.com/
# The txf font format used by Celestia was devised by Mark Kilgard.
ACKNOWLEDGEMENTS
----------------
A very big thank you for creating Celestia goes to Chris Laurel who started this
program in the year 2001.
<claurel@gmail.com>
http://www.shatters.net/~claurel/
http://www.shatters.net/celestia/
Special thanks go to all Celestia users who submit bug reports, suggestions, and
fixes. Celestia wouldn't be the program it is today, without their help.
The Celestia Development Team
***************************************************************************
* Celestia *
* *
* A real-time space simulation that lets you experience our universe in *
* three dimensions. *
* *
* Copyright (c) 2001-2021, Celestia Development Team *
* *
*-------------------------------------------------------------------------*
* Celestia web site: https://celestia.space/ *
* *
* Celestia documentation: *
* https://celestia.space/guides.html *
* Celestia WikiBook: https://en.wikibooks.org/wiki/Celestia *
* *
* Celestia forums: https://celestia.space/forum/ *
* *
***************************************************************************
CONTENTS
--------
License
Getting Started
Mouse, Keyboard & Joystick Controls
Star & Solar System Browser
Selecting Objects by Name
Known Issues
User Modifiable Elements
Celestia Resources
Building From Sources
Contributions
Acknowledgements
LICENSE
-------
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details, which you should have received along with this program (filename:
COPYING). If not, request a copy from:
Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307
USA
GETTING STARTED
---------------
Celestia will start up in a window, and if everything is working correctly,
you'll see Earth in front of a field of stars. Displayed on-screen, is some
information about your target (Earth), your speed, and the current time
(Universal Time, so it'll probably be a few hours off from your computer's
clock).
Right drag the mouse to orbit Earth and you might see the Moon and some
familiar constellations. Left dragging the mouse changes your orientation
also, but the camera rotates about its center instead of rotating around
Earth. Rolling the mouse wheel will change your distance to Earth--you can
move light years away, then roll the wheel in the opposite direction to get
back to your starting location. If your mouse lacks a wheel, you can use the
Home and End keys instead.
When running Celestia, you will usually have some object selected. Currently,
it's Earth, but it could also be a star, moon, spacecraft, galaxy, or some
other object. The simplest way to select an object is to click on it. Try
clicking on a star to select it. The information about Earth is replaced with
some details about the star. Press G (or use the Navigation menu), and you'll
zoom through space toward the selected star. If you press G again, you'll
approach the star even closer.
Press H to select our Sun, and then G to go back to our Sun. Right click on
the sun to bring up a menu of planets and other objects in the solar system.
After selecting a planet from the menu, hit G again to travel toward it. Once
there, hold down the right mouse button and drag to orbit the planet.
The Tour Guide is a list of some of the more interesting objects you can visit
in Celestia. Select the Tour Guide option in the Navigation menu to display
the Tour Guide window. Choose a destination from the list, click the Goto
button, and you're off.
That covers the very basics. For a more in-depth look at Celestia and the
controls available to you, download the "Celestia User's Guide" (written by
Frank Gregorio), available in several languages, from:
https://celestia.space/guides.html
This web page also includes links to the Celestia README file translated into
Japanese.
MOUSE, KEYBOARD & JOYSTICK CONTROLS
-----------------------------------
See the included file: controls.txt OR use the Help menu to display the Controls
list.
STAR & SOLAR SYSTEM BROWSER
-------------------------------------------
The Navigation menu contains 'Solar System Browser' and 'Star Browser'
options.
STAR BROWSER
By default, the Star Browser window displays a table of the 100 nearest stars,
along with their Distance, Apparent and Absolute Magnitude, and Type. Clicking
on the column headers will sort the stars. The table is not continuously
updated, so if you travel to another star, you should press the Refresh button
to update the table for your current position. The radio buttons beneath the
table let you switch between viewing a list of Nearest, Brightest, or 'With
planets' stars. As with the solar system browser, clicking on any star name
in the table will select it. Use this feature along with the Center and Go
To buttons to tour the stars visible from any night sky in the galaxy.
SOLAR SYSTEM BROWSER
The Solar System Browser displays a window with a tree view of all the objects
in the nearest solar system (if there is one within a light year of your current
position.) Clicking on the name of any object in the window will select it.
You can then use the Center or Go To buttons to display that object in the main
Celestia window.
SELECTING OBJECTS BY NAME
-------------------------
Celestia provides several ways to select an object by name...
1. Choose 'Select Object' from the Navigation menu, type in the object
name, and click OK.
2. Press Enter, type in the entire object name, and press Enter again.
3. Press Enter, type in the first few characters of the object name,
press the Tab key to move through the displayed listing until the
object is highlighted, then press Enter again.
You can use common names, Bayer designations or catalog numbers for stars.
Celestia currently supports the HIP, HD and SAO catalogs. Catalog numbers must
be entered with a space between the prefix and the catalog number.
KNOWN ISSUES
------------
For up-to-the-minute answers to some common problems encountered when running
Celestia, please view either the FAQ in the Help menu or take a look at the
"Celestia User's FAQ" located on the Celestia User's Forum:
https://celestia.space/forum/
USER MODIFIABLE ELEMENTS
------------------------
You can modify how Celestia starts up each time you run it, by defining your
own start-up settings. Simply open the file "start.cel" in a plain text
editor and follow the in-file instructions. Also, view the celestia.cfg file
in a plain text editor to see additional settings.
Celestia allows you to easily add real, hypothetical, or fictional objects
by creating new catalog files. It is *not* recommended that you alter the
built-in data files; nearly all desired modifications and additions can be
made by placing new catalog files in Celestia's extras folders. There are three
types of catalog files:
- ssc (solar system catalog: planets, moons, spacecraft, etc.)
- stc (star catalog)
- dsc (deep sky catalog: galaxies, star clusters, and nebulae)
All three types of catalog file are text files that can be updated with your
favorite text editing program.
CELESTIA RESOURCES
------------------
Celestia Web Site:
https://celestia.space/
Celestia User Forums:
https://celestia.space/forum/
Selden's List of Resources for Celestia:
https://www.classe.cornell.edu/~seb/celestia/
Celestia Wikibook:
https://en.wikibooks.org/wiki/Celestia
Celestial Matters Website and Forums:
http://www.celestialmatters.org/
http://forum.celestialmatters.org/
Celestia Motherlode:
http://www.celestiamotherlode.net/
Celestia Source Repository:
https://github.com/CelestiaProject/Celestia
Celestia Bug Tracking:
https://github.com/CelestiaProject/Celestia/issues
Celestia Feature Requests:
https://github.com/CelestiaProject/Celestia/issues
Celestia Discord Server:
https://discordapp.com/invite/WEWDcJh
Celestia Subreddit:
https://www.reddit.com/r/Celestiasoftware/
Celestia Archive Repository:
https://github.com/Anthony-B-Russo10/Celestia-Archive
BUILDING FROM SOURCES
---------------------
See file INSTALL for building instructions.
CONTRIBUTIONS
-------------
Authors
-------
Chris Laurel <claurel@gmail.com>
Clint Weisbrod <cweisbrod@cogeco.ca>
Fridger Schrempp <t00fri@mail.desy.de>
Bob Ippolito <bob@redivi.com>
Christophe Teyssier <chris@teyssier.org>
Hank Ramsey <hramsey@users.sourceforge.net>
Grant Hutchison <grant.celestia@xemaps.com>
Pat Suwalski <pat@suwalski.net>
Toti
Da Woon Jung <dirkpitt2050@users.sf.net>
Vincent Giangiulio <vince.gian@free.fr>
Andrew Tribick
Hleb Valoshka
Li Linfeng
Contributors
------------
Deon Ramsey ........... Original GTK1 interface
Christopher Andre ..... Eclipse Finder
Colin Walters ......... Endianness fixes
Peter Chapman ......... Orbit path rendering changes
James Holmes ..........
Harald Schmidt ........ Lua scripting enhancements, bug fixes
Nils Larsson .......... Qt enhancements
Documentation
-------------
Frank Gregorio ........ Celestia User's Guide
Hitoshi Suzuki ........ Japanese README translation
Christophe Teyssier ... DocBook and HTML conversion of User's Guide
Diego Rodriguez ....... Acrobat conversion of User's Guide
Don Goyette ........... CEL Scripting Guide
Harald Schmidt ........ Celx/Lua Scripting Guide
Content
-------
Please see the README file in the CelestiaContent repository.
Libraries
---------
# This software is based in part on the work of the Independent JPEG Group.
# Some versions of Celestia may use the SPICE system for spacecraft and
planetary information, developed by Caltech/JPL under contract to NASA.
# Many cylindrical projections of photographs were performed by Fridger
Schrempp with Matthew Arcus 'mmps' software,
http://www.users.globalnet.co.uk/~arcus/mmps/
# The lower resolution textures were all converted from their higher resolution
versions using Gimp.
# The star database (stars.dat) was derived from the ESA's HIPPARCOS data set.
# Constellation boundaries are drawn from Davenhall & Leggett's "Catalogue of
Constellation Boundary Data":
http://cdsweb.u-strasbg.fr/viz-bin/ftp-index?/ftp/cats/VI/49
Other work
----------
# Selden Ball deserves a special mention for suffering more prerelease versions
finding more bugs, and giving more feedback than anyone else.
# Christophe Campos aka ElChristou created the splash screen for Celestia.
# The MacOS X icon was designed by Chris Alford: http://www.chrisalford.com/
# The txf font format used by Celestia was devised by Mark Kilgard.
ACKNOWLEDGEMENTS
----------------
A very big thank you for creating Celestia goes to Chris Laurel who started this
program in the year 2001.
<claurel@gmail.com>
https://celestia.space/
Special thanks go to all Celestia users who submit bug reports, suggestions, and
fixes. Celestia wouldn't be the program it is today, without their help.
The Celestia Development Team

142
README-upstream.md 100644
View File

@ -0,0 +1,142 @@
| **`Release`** | **`Localized`** | **`License`** | **`Contribute`** |
|-------------------|---------------|---------------|---------------|
|[![GitHub release](https://img.shields.io/github/v/release/CelestiaProject/Celestia?label=Release)](https://celestia.space/download.html) | [![Localization](https://img.shields.io/badge/Localized-85%25-green.svg)](#) | [![License](https://img.shields.io/github/license/CelestiaProject/Celestia?label=License)](https://github.com/CelestiaProject/Celestia/blob/master/COPYING) | [![Contribute](https://img.shields.io/badge/PRs-Welcome-brightgreen.svg)](#contributing) |
# Celestia
![Celestia](celestia-logo.png)<br>
**A real-time space simulation that lets you experience our universe in three dimensions.**
**Copyright © 2001-2021, Celestia Development Team**<br>
**Celestia website: https://celestia.space**<br>
**Celestia Wikibook: https://en.wikibooks.org/wiki/Celestia**<br>
**Celestia forums: https://celestia.space/forum/**<br>
**Celestia Subreddit: https://www.reddit.com/r/Celestiasoftware/**<br>
**Celestia Archive Repository: https://github.com/Anthony-B-Russo10/Celestia-Archive**
## License
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software Foundation;
either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details,
which you should have received along with this program (filename: COPYING).
If not, request a copy from:<br>
Free Software Foundation, Inc.<br>
59 Temple Place - Suite 330<br>
Boston, MA 02111-1307<br>
USA
## Getting started
Celestia will start up in a window, and if everything is working correctly,
you'll see Earth in front of a field of stars. Displayed on-screen, is some
information about your target (Earth), your speed, and the current time
(Universal Time, so it'll probably be a few hours off from your computer's
clock).
Right drag the mouse to orbit Earth and you might see the Moon and some
familiar constellations. Left dragging the mouse changes your orientation
also, but the camera rotates about its center instead of rotating around
Earth. Rolling the mouse wheel will change your distance to Earth--you can
move light years away, then roll the wheel in the opposite direction to get
back to your starting location. If your mouse lacks a wheel, you can use the
Home and End keys instead.
When running Celestia, you will usually have some object selected. Currently,
it's Earth, but it could also be a star, moon, spacecraft, galaxy, or some
other object. The simplest way to select an object is to click on it. Try
clicking on a star to select it. The information about Earth is replaced with
some details about the star. Press G (or use the Navigation menu), and you'll
zoom through space toward the selected star. If you press G again, you'll
approach the star even closer.
Press H to select our Sun, and then G to go back to our Sun. Right click on
the sun to bring up a menu of planets and other objects in the solar system.
After selecting a planet from the menu, hit G again to travel toward it. Once
there, hold down the right mouse button and drag to orbit the planet.
The Tour Guide is a list of some of the more interesting objects you can visit
in Celestia. Select the Tour Guide option in the Navigation menu to display
the Tour Guide window. Choose a destination from the list, click the Goto
button, and you're off.
That covers the very basics. For a more in-depth look at Celestia and the
controls available to you, download the "Celestia User's Guide" (written by
Frank Gregorio), available in several languages, from:<br>
https://celestia.space/guides.html<br>
This web page also includes links to the Celestia README file translated into
Japanese.
### Star browser
By default, the Star Browser window displays a table of the 100 nearest stars,
along with their Distance, Apparent and Absolute Magnitude, and Type. Clicking
on the column headers will sort the stars. The table is not continuously
updated, so if you travel to another star, you should press the Refresh button
to update the table for your current position. The radio buttons beneath the
table let you switch between viewing a list of Nearest, Brightest, or 'With
planets' stars. As with the solar system browser, clicking on any star name
in the table will select it. Use this feature along with the Center and Go
To buttons to tour the stars visible from any night sky in the galaxy.
### Solar system browser
The Solar System Browser displays a window with a tree view of all the objects
in the nearest solar system (if there is one within a light year of your current
position.) Clicking on the name of any object in the window will select it.
You can then use the Center or Go To buttons to display that object in the main
Celestia window.
### Selecting objects by name
Celestia provides several ways to select an object by name...
1. Choose 'Select Object' from the Navigation menu, type in the object name, and click OK.
2. Press Enter, type in the entire object name, and press Enter again.
3. Press Enter, type in the first few characters of the object name,
press the Tab key to move through the displayed listing until the object is highlighted,
then press Enter again.
You can use common names, Bayer designations or catalog numbers for stars.
Celestia currently supports the HIP, HD and SAO catalogs. Catalog numbers must
be entered with a space between the prefix and the catalog number.
### Known issues
For up-to-the-minute answers to some common problems encountered when running
Celestia, please view either the FAQ in the Help menu or take a look at the
"Celestia User's FAQ" located on the Celestia User's Forum:
https://celestia.space/forum/
### User modifiable elements
You can modify how Celestia starts up each time you run it, by defining your
own start-up settings. Simply open the file "start.cel" in a plain text
editor and follow the in-file instructions. Also, view the celestia.cfg file
in a plain text editor to see additional settings.
Celestia allows you to easily add real, hypothetical, or fictional objects
by creating new catalog files. It is *not* recommended that you alter the
built-in data files; nearly all desired modifications and additions can be
made by placing new catalog files in Celestia's extras folders. There are three
types of catalog files:
* ssc (solar system catalog: planets, moons, spacecraft, etc.)
* stc (star catalog)
* dsc (deep sky catalog: galaxies, star clusters, and nebulae)
All three types of catalog file are text files that can be updated with your
favorite text editing program.
### Building from sources
See instructions in file [INSTALL.md](INSTALL.md).
## Contributions
| **`Authors`** | **`Contributors`** | **`Documentation`** | **`Other`** |
|-----------------|---------------------|------------------|-------------------|
| Chris Laurel, Clint Weisbrod, Fridger Schrempp, Bob Ippolito, Christophe Teyssier, Hank Ramsey, Grant Hutchison, Pat Suwalski, Toti, Da Woon Jung, Vincent Giangiulio, Andrew Tribick, Hleb Valoshka, Łukasz Buczyński, Li Linfeng | Deon Ramsey, Christopher Andre, Colin Walters, Peter Chapman, James Holmes, Harald Schmidt, Nils Larsson, Sergey Leonov, Alexell, Dmitry Brant, Janus | Selden Ball, Frank Gregorio, Hitoshi Suzuki, Christophe Teyssier, Diego Rodriguez, Don Goyette, Harald Schmidt | Creators of scientific database, texture maps, 3D models and used libraries, you can see in full README.|
### Contributing
**We welcome feedback, bug reports, and pull requests!**
For pull requests, please stick to the following guidelines:
* Be sure to test your code changes.
* Follow the existing code style (e.g., indents).
* Put a lot of comments into the code, if necessary.
* Separate unrelated changes into multiple pull requests.

110
README.md 100644
View File

@ -0,0 +1,110 @@
# Celestia
Celestia is a "real-time space simulation that lets you experience
our universe in three dimensions".
![celestia-screenshot](pics/celestia-screenshot.png)
# Upstream
This repo is a lesser fork of the upstream project,
which has been revived.
* https://celestia.space/
* https://github.com/CelestiaProject/Celestia
See also: `README-upstream`, `README-upstream.md`.
## License/Copyright
GPLv2+
Copyright © 2001-2021, Celestia Development Team
# Debian
Package was removed from Debian in the ancient days due to bitrot.
The upstream code has a new team and active development, using
recent libraries. The package can be built under Debian Ok, except
for the `data/` files.
Debian upstream bug:
* https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809916
```
Upstream has not produced any new releases in the last 4 years. In the
mean time, the package is accumulating bugs due to bitrot. It already
wasn't a trouble-free package, due to some quite important resources not
being DFSG compliant.
```
I do see some of the resources now are CC-by-SA 4.0, a license which
didn't exist when the Debian bug was created. So it may be that it
can be built happily without DFSG issues using new data files.
Celestia depending on NASA's Spice/NAIF may be afoul of Debian's
DFSG because the terms are unique. It isn't really a standard license.
Debian tracker link:
* https://tracker.debian.org/pkg/celestia
# Build
Mini Debian package build howto.
```
# Install deps
sudo apt update
sudo apt install build-essential ccache devscripts \
debhelper chrpath cmake freeglut3-dev libeigen3-dev libfmt-dev \
libfreetype6-dev libepoxy-dev libglu1-mesa-dev libgtk2.0-dev \
libgtkglext1-dev libjpeg62-turbo-dev libluajit-5.1-dev libpng-dev \
libqt5opengl5-dev libtheora-dev qtbase5-dev qtbase5-dev-tools
# Add ccache to PATH in ~/.bashrc, and log back in
PATH=/usr/lib/ccache:$PATH
# Make dirs to put it all, as it writes packages to the *parent* dir.
mkdir celestia-deb
cd celestia-deb
git clone https://spacecruft.org/spacecruft/CelestiaContent
cd CelestiaContent
# Build the source package, writes to parent dir
dpkg-buildpackage -rfakeroot -S -uc -us -sa
# Build Debian Packages
dpkg-buildpackage -rfakeroot -b -uc
cd ..
# Install the data package
sudo dpkg -i celestia-data_1.7.0~git20211202+668347e9+0_all.deb
# Make sure apt is happy
sudo apt -f install
git clone --recursive https://spacecruft.org/spacecruft/celestia
cd celestia
# Build the source package, writes to parent dir
dpkg-buildpackage -rfakeroot -S -uc -us -sa
# Build Debian Packages
dpkg-buildpackage -rfakeroot -b -uc
cd ..
# Install
sudo dpkg -i celestia_1.7.0~git20220520+1_all.deb \
celestia-common_1.7.0~git20220520+1_all.deb \
celestia-qt_1.7.0~git20220520+1_amd64.deb \
celestia-tools_1.7.0~git20220520+1_amd64.deb \
libcelestia1.7_1.7.0~git20220520+1_amd64.deb
# Make sure apt is happy
sudo apt -f install
```

View File

@ -1,31 +1,37 @@
AR: Ali Al-Khudair <saudilink@lycos.com>
BG: Atanas Kumbarov <kumbarov@gmail.com>
Georgi Georgiev <georgiev_1994@abv.bg>
DE: German Translator Team <celestia-deutsch@gmx.net>
U. Dickmann / C. Lenz / S. Schreiber / A. Wagner
EL: ironhell3 <ironhell3@hotmail.com>
Charis Kouzinopoulos <ckouz@uom.gr>
U. Dickmann / C. Lenz / S. Schreiber / A. Wagner
EL: Charis Kouzinopoulos <ckouz@uom.gr>
ES: Guillermo Abramson <abramson@cab.cnea.gov.ar>
FR: Christophe Teyssier <chris@teyssier.org>
Vincent Giangiulio <vince.gian@free.fr>
Vincent Giangiulio <gvince@sfr.fr>
GL: Xabier Cancela <xabiercs@terra.es>
HU: Székely Zoltán <zoltanszekely@hotmail.com>
IT: Paolo Angeli <pangeli70@virgilio.it>
Mauro Santandrea <mausan66@tiscali.it>
Andrea Pelloni <mc3657@mclink.it>
Mauro Santandrea <mausan66@tiscali.it>
Andrea Pelloni <mc3657@mclink.it>
Vincent Giangiulio <gvince@sfr.fr>
JA: Sui Ota <aqua@aqsp.net>
KO: Jacob Lee <jaeuck@gmail.com>
Seung-Bum Lee <blcktgr73@gmail.com>
Seung-Bum Lee <blcktgr73@gmail.com>
LT: Marius Mikalainis <neoromancer@gmail.com>
LV: Jānis Jātnieks <sg30022@lanet.lv>
NL: Myckel Habets <myckel@sdf.lonestar.org>
PL: Michał Trzebiatowski <hippie_1968@hotmail.com>
PT: José Raeiro <zeraeiro@gmail.com>
PT_BR: Luis Gabriel <lgabriel@brazilmail.com>
Igor Borgo <igorborgo@gmail.com>
Igor Borgo <igorborgo@gmail.com>
RO: Oana Radu <oanaradu32@queeq.com>
RU: Sergey Leonov <leserg@ua.fm>
SV: Daniel Nylander <po@danielnylander.se>
Anders Pamdal <anders@pamdal.se>
Anders Pamdal <anders@pamdal.se>
UK: Serhij Dubyk <dubyk@library.lviv.ua>
Yuri Chornoivan <yurchor@ukr.net>
Yuri Chornoivan <yurchor@ukr.net>
ZH_CN: Markerz Li <markerzli@gmail.com>
ZH_TW: An-Li Chen<alchen@tam.gov.tw>
I-Yuan Chiang <iychiangg1809@gmail.com>
Lung-Chin Hsieh<lungchin@gmail.com>
Frank Weng<franklin@goodhorse.idv.tw>
Shan-wun Yang<oiseaumer@gmail.com>

File diff suppressed because it is too large Load Diff

View File

@ -1,102 +0,0 @@
## generate API documentation with doxygen
apidox-am-yes:
@if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$DOXDATA" ; then \
export DOXDATA=$(kde_libs_htmldir)/en/common ; \
fi ; \
abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\
test -d $(top_builddir)/apidocs || \
( cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \
--no-modulename --installdir=$(kde_libs_htmldir)/en \
--no-recurse $(abs_top_srcdir) . ) ; \
cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \
--recurse --no-modulename --installdir=$(kde_libs_htmldir)/en \
$$abs_top_srcdir $(subdir)
apidox-am-toplevel-yes:
@if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$ADMIN" ; then \
export DOXDATA=$(kde_libs_htmldir)/en/common ; \
fi ; \
abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\
cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \
--no-modulename --installdir=$(kde_libs_htmldir)/en \
$$abs_top_srcdir
## Don't generate API documentation without doxygen
apidox-am-no:
apidox-am-toplevel-no:
apidox:
@if test "$(subdir)" != "."; then \
$(MAKE) apidox-am-@KDE_HAS_DOXYGEN@ ;\
else \
$(MAKE) apidox-am-toplevel-@KDE_HAS_DOXYGEN@ ;\
fi
install-data-local: install-apidox
## install API documentation
install-apidox:
@if test "$(subdir)" != "."; then \
$(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html ; \
if test -f $(top_builddir)/apidocs/$(subdir)/$(subdir).tag; then \
echo $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
$(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
fi; \
if test -d $(top_builddir)/apidocs/$(subdir)/html; then \
list=`ls $(top_builddir)/apidocs/$(subdir)/html`; \
echo "installing $(top_builddir)/apidocs/$(subdir)/html" ;\
for file in $$list; do \
$(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/html/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html; \
done; \
fi; \
else\
if test -d $(top_builddir)/apidocs; then \
$(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs ;\
list=`cd $(top_builddir)/apidocs && ls -1`; \
echo "installing $(top_builddir)/apidocs/$$file" ;\
echo "target directory $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs" ; \
for file in $$list; do \
if test -f $(top_builddir)/apidocs/$$file; then \
$(INSTALL_DATA) $(top_builddir)/apidocs/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \
fi; \
done ; fi; \
fi
uninstall-local: uninstall-apidox
## uninstall API documentation
uninstall-apidox:
@if test "$(subdir)" != "."; then \
if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); then \
rm -rf $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \
fi \
else \
if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; then \
rm -rf $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \
fi \
fi
install-apidox-recurse: install-apidox
@set fnord $(MAKEFLAGS); amf=$$2; if test -n '$(SUBDIRS)'; then \
list='$(SUBDIRS)'; \
for subdir in $$list; do \
if grep '^include .*Doxyfile.am' $(srcdir)/$$subdir/Makefile.am > /dev/null ; then \
echo "Installing apidox from $$subdir"; \
if test "$$subdir" != "."; then \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) GENERATE_FLAG=no install-apidox-recurse) || exit 1; \
fi ; fi ;\
done; \
fi
.PHONY: apidox-am-yes apidox-am-no install-data-local install-apidox install-apidox uninstall-local uninstall-apidox uninstall-apidox apidox apidox-am-toplevel-no apidox-am-toplevel-yes
# Local Variables:
# mode: makefile
# End:

View File

@ -1,192 +0,0 @@
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = NO
BRIEF_MEMBER_DESC = NO
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF =
ALWAYS_DETAILED_SEC = YES
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = YES
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
DISTRIBUTE_GROUP_DOC = NO
TAB_SIZE = 4
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
SUBGROUPING = YES
EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = NO
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = YES
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = YES
INLINE_INFO = YES
SORT_BRIEF_DOCS = NO
SORT_BY_SCOPE_NAME = NO
GENERATE_TESTLIST = NO
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
QUIET = YES
WARNINGS = NO
WARN_IF_UNDOCUMENTED = NO
WARN_IF_DOC_ERROR = YES
WARN_FORMAT =
WARN_LOGFILE =
INPUT =
FILE_PATTERNS = *.h \
*.cpp \
*.cc \
*.hpp \
*.dox \
*.c++ \
*.cxx \
*.h++ \
*.hh
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS = *.moc.* \
moc* \
*.all_cpp.* \
*unload.* \
*/test/* \
*/tests/* \
*_p.h
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_SOURCE_FILES = NO
SOURCE_BROWSER = YES
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
VERBATIM_HEADERS = YES
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 3
HTML_OUTPUT =
HTML_FILE_EXTENSION = .html
HTML_HEADER = ../apidocs/common/header.html
HTML_FOOTER = ../apidocs/common/footer.html
HTML_STYLESHEET = ../apidocs/common/doxygen.css
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = NO
DISABLE_INDEX = YES
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NO
TREEVIEW_WIDTH = 250
GENERATE_LATEX = NO
LATEX_OUTPUT =
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
GENERATE_RTF = NO
RTF_OUTPUT =
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
GENERATE_MAN = NO
MAN_OUTPUT =
MAN_EXTENSION = .kde3
MAN_LINKS = YES
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = NO
GENERATE_AUTOGEN_DEF = NO
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
ENABLE_PREPROCESSING = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED = QT_VERSION=320 \
__cplusplus \
Q_WS_X11
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = NO
PERL_PATH =
CLASS_DIAGRAMS = YES
HIDE_UNDOC_RELATIONS = NO
HAVE_DOT = NO
UML_LOOK = NO
TEMPLATE_RELATIONS = YES
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DOT_IMAGE_FORMAT = png
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 800
MAX_DOT_GRAPH_HEIGHT = 1024
MAX_DOT_GRAPH_DEPTH = 0
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
SEARCHENGINE = NO
### KDE Settings
ALIASES = \
"intern=\par<b>Internal use only.</b>" \
"reimp=\par<b>Reimplemented from superclass.</b>" \
"obsolete=@deprecated" \
"feature=\xrefitem features \"Feature(s)\" \"Features\"" \
"maintainer=\xrefitem maintainers \"Maintainer(s)\" \"Maintainers\"" \
"unmaintained=\xrefitem unmaintained \"Unmaintained\" \"Unmaintained\"" \
"requirement=\xrefitem requirements \"Requirement(s)\" \"Requirements\"" \
"faq=\xrefitem FAQ \"F.A.Q.\" \"F.A.Q.\"" \
"authors=\xrefitem authors \"Author(s)\" \"Authors\"" \
"FIXME=\xrefitem fixme \"Fixme\" \"Fixme\""
HTML_ALIGN_MEMBERS = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
VERBATIM_HEADERS = NO
GENERATE_HTML = YES
SOURCE_BROWSER = YES
GENERATE_AUTOGEN_DEF = NO
DETAILS_AT_TOP = YES
SORT_MEMBER_DOCS = YES
GENERATE_TODOLIST = YES
IGNORE_PREFIX = K
GENERATE_HTML = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = NO
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES

View File

@ -1,12 +0,0 @@
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(kde_datadir)/kapptemplate/admin
for file in $(srcdir)/*; do \
if [ -f $$file -a $$file != 'Makefile' -a $$file != 'Makefile.in' -a $$file != 'Makefile.am' ]; then \
destfile=`basename $$file` \
$(INSTALL_DATA) $$file \
$(DESTDIR)$(kde_datadir)/kapptemplate/admin/$$destfile; \
fi \
done
uninstall-local:
-/bin/rm -rf $(DESTDIR)$(kde_datadir)/kapptemplate/admin

View File

@ -1,37 +0,0 @@
### Makefile.common
###
### Copyright (C) 2002 by the KDE developers
### All the real work is done by the shellscript cvs.sh
SHELL=/bin/sh
cvs dist configure configure.in configure.files subdirs package-messages package-merge Makefile.am acinclude.m4 extract-messages:
@admindir=$(admindir); \
if test "x$$admindir" = x; then \
admindir=.; until test -f $$admindir/admin/cvs.sh; do \
admindir=$$admindir/..; \
if test `cd $$admindir && pwd` = / ; then break; fi; \
done; \
admindir=$$admindir/admin; \
if test -f $$admindir/cvs.sh; then :; else \
echo "Can't find the admin/ directory in any parent of the"; \
echo "current directory. Please set it with admindir=..."; \
exit 1; \
fi; \
fi; \
if test "$@" = "package-merge"; then \
MAKE="$(MAKE)" POFILES="$(POFILES)" PACKAGE="$(PACKAGE)" \
$(SHELL) $$admindir/cvs.sh package-merge ;\
else \
MAKE="$(MAKE)" $(SHELL) $$admindir/cvs.sh $@ ;\
fi
configure.in: configure.files subdirs
configure.files: subdirs
svn: cvs
.SILENT:
.PHONY: svn cvs dist package-merge package-messages

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,157 +0,0 @@
#!/usr/bin/perl -w
use DB_File;
use Fcntl ':flock';
if (!defined($ARGV[0])) {
print "usage: requires .class dump as parameter!\n";
exit;
}
sub bailout
{
untie %bcheckdb if(defined(%bcheckdb));
if(defined(MYLOCK)) {
flock MYLOCK, LOCK_UN;
close(MYLOCK);
}
print @_;
exit 5;
}
sub ask_user
{
my ($dbkey, $dbchunk) = @_;
if (defined($ENV{"BCHECK_UPDATE"})) {
$bcheckdb{$dbkey} = $dbchunk;
return;
}
&bailout("BC problem detected") if (! -t STDIN);
print "(I)gnore / (Q)uit / (U)pdate: ";
my $key;
while(defined(read STDIN, $key, 1)) {
$key = lc($key);
print "got: >$key<\n";
return if ($key eq 'i');
&bailout("BC problem. aborted") if ($key eq 'q');
if ($key eq 'u') {
$bcheckdb{$dbkey} = $dbchunk;
return;
}
print "\n(I)gnore / (Q)uit / (U)pdate: ";
}
}
sub diff_chunk($$)
{
my ($oldl, $newl) = @_;
my @old = split /^/m, $oldl;
my @new = split /^/m, $newl;
my $haschanges = 0;
my $max = $#old > $#new ? $#old : $#new;
die "whoops. key different" if ($old[0] ne $new[0]);
if ($#old != $#new) {
warn ("Structural difference.\n");
print @old;
print "-----------------------------------------------\n";
print @new;
$haschanges = 1;
return $haschanges;
}
print $old[0];
my ($class) = ($old[0] =~ /^(?:Class |Vtable for )(\S+)/);
my $c = 1;
while ($c < $max) {
my ($o, $n) = ($old[$c], $new[$c]);
chomp $o;
chomp $n;
$c++;
next if ($o eq $n);
if(defined($class) and $n =~ /^(\d+\s+)\w+(::\S+\s*.*)$/) {
next if ($n eq "$1$class$2");
}
$haschanges = 1;
print "-$o\n+$n\n\n";
}
return $haschanges;
}
local $dblock = $ENV{"HOME"} . "/bcheck.lock";
my $dbfile = $ENV{"HOME"} . "/bcheck.db";
my $cdump = $ARGV[0];
die "file $cdump is not readable: $!" if (! -f $cdump);
# make sure the advisory lock exists
open(MYLOCK, ">$dblock");
print MYLOCK "";
flock MYLOCK, LOCK_EX;
tie %bcheckdb, 'DB_File', $dbfile;
my $chunk = "";
open (IN, "<$cdump") or die "cannot open $cdump: $!";
while (<IN>) {
chop;
s/0x[0-9a-fA-F]+/0x......../g;
s/base size=/size=/g;
s/\(\)\s*$//g;
s/base align=/align=/g;
$chunk .= $_ . "\n";
if(/^\s*$/) {
my @lines = split /^/m, $chunk;
my $key = $lines[0];
chomp $key;
if($key !~ /<anonymous struct>/ &&
$key !~ /<anonymous union>/) {
if(defined($bcheckdb{$key})) {
my $dbversion = $bcheckdb{$key};
if($dbversion ne $chunk) {
&ask_user($key, $chunk) if(&diff_chunk($dbversion, $chunk));
}
}
else {
$bcheckdb{$key} = $chunk;
print "NEW: $key\n";
}
}
$chunk = "";
next;
}
}
close(IN);
untie %bcheckdb;
flock MYLOCK, LOCK_UN;
close(MYLOCK);
exit 0;

View File

@ -1,142 +0,0 @@
#! /bin/sh
# Wrapper for compilers which do not understand `-c -o'.
scriptversion=2005-05-14.22
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand `-c -o'.
Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file `INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
esac
ofile=
cfile=
eat=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as `compile cc -o foo foo.c'.
# So we strip `-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no `-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# `.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
# Create the lock directory.
# Note: use `[/.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -1,191 +0,0 @@
#!/usr/bin/env perl
# this script patches a config.status file, to use our own perl script
# in the main loop
# we do it this way to circumvent hacking (and thereby including)
# autoconf function (which are GPL) into our LGPL acinclude.m4.in
# written by Michael Matz <matz@kde.org>
# adapted by Dirk Mueller <mueller@kde.org>
#
# This file is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
# This library 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
# Library General Public License for more details.
# You should have received a copy of the GNU Library General Public License
# along with this library; see the file COPYING.LIB. If not, write to
# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
# we have to change two places
# 1. the splitting of the substitutions into chunks of 90 (or even 48 in
# later autoconf's
# 2. the big main loop which patches all Makefile.in's
use strict;
use File::Basename;
my $ac_aux_dir = dirname($0);
my ($flag);
my $ac_version = 0;
my $vpath_seen = 0;
$flag = 0;
while (<>) {
# usage of $flag: 0 -- we have seen nothing yet
# 1 -- we are in (1)
# 2 -- we have ended (1)
# 3 -- we are in (2)
# 4 -- we ended (2)
if ($flag == 4) {
print;
} elsif ($flag == 0) {
# 1. begins with (including): "ac_max_sed_\S+\s*=\s*[0-9]+..."
# ends with (excluding) "CONFIG_FILE=..."
# in later autoconf (2.14.1) there is no CONFIG_FILES= line,
# but instead the (2) directly follow (1)
if (/^\s*ac_max_sed_([a-z]+).*=\s*([0-9]+)/ ) {
$flag = 1;
if ($1 eq 'lines') {
# lets hope its different with 2141,
# wasn't able to verify that
if ($2 eq '48') {
$ac_version = 250;
}
else {
$ac_version = 2141;
}
} elsif ($1 eq 'cmds') {
$ac_version = 213;
}
# hmm, we don't know the autoconf version, but we try anyway
} else {
print;
}
} elsif ($flag == 1) {
if (/^\s*CONFIG_FILES=/ && ($ac_version != 250)) {
print;
$flag = 2;
} elsif (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) {
$flag = 3;
}
} elsif ($flag == 2) {
# 2. begins with: "for ac_file in.*CONFIG_FILES" (the next 'for' after (1))
# end with: "rm -f conftest.s\*"
# on autoconf 250, it ends with '# CONFIG_HEADER section'
#
# gg: if a post-processing commands section is found first,
# stop there and insert a new loop to honor the case/esac.
# (pattern: /^\s+#\sRun the commands associated with the file./)
if (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) {
$flag = 3;
} else {
print;
}
} elsif ($flag == 3) {
if (/^\s*rm\s+-f\s+conftest/ ) {
$flag = 4;
&insert_main_loop();
} elsif (/^\s*rm\s+-f\s+.*ac_cs_root/ ) {
$flag = 4;
&insert_main_loop();
#die "hhhhhhh";
if ($ac_version != 2141) {
print STDERR "hmm, don't know autoconf version\n";
}
} elsif (/^\#\s*CONFIG_(HEADER|COMMANDS) section.*|^\s+#\s(Run) the commands associated/) {
$flag = 4;
my $commands = defined $2;
&insert_main_loop();
$commands && insert_command_loop();
if($ac_version != 250) {
print STDERR "hmm, something went wrong :-(\n";
}
} elsif (/VPATH/ ) {
$vpath_seen = 1;
}
}
}
die "wrong input (flag != 4)" unless $flag == 4;
print STDERR "hmm, don't know autoconf version\n" unless $ac_version;
sub insert_main_loop {
if ($ac_version == 250) {
&insert_main_loop_250();
}
else {
&insert_main_loop_213();
}
}
sub insert_main_loop_250 {
print <<EOF;
#echo Doing the fast build of Makefiles -- autoconf $ac_version
EOF
if ($vpath_seen) {
print <<EOF;
# VPATH subst was seen in original config.status main loop
echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >>\$tmp/subs.sed
EOF
}
print <<EOF;
rm -f \$tmp/subs.files
for ac_file in .. \$CONFIG_FILES ; do
if test "x\$ac_file" != x..; then
echo \$ac_file >> \$tmp/subs.files
fi
done
if test -f \$tmp/subs.files ; then
perl $ac_aux_dir/config.pl "\$tmp/subs.sed" "\$tmp/subs.files" "\$srcdir" "\$INSTALL"
fi
rm -f \$tmp/subs.files
fi
EOF
return;
}
sub insert_main_loop_213 {
print <<EOF;
#echo Doing the fast build of Makefiles -- autoconf $ac_version
if test "x\$ac_cs_root" = "x" ; then
ac_cs_root=conftest
fi
EOF
if ($vpath_seen) {
print <<EOF;
# VPATH subst was seen in original config.status main loop
echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >> \$ac_cs_root.subs
EOF
}
print <<EOF;
rm -f \$ac_cs_root.sacfiles
for ac_file in .. \$CONFIG_FILES ; do
if test "x\$ac_file" != x..; then
echo \$ac_file >> \$ac_cs_root.sacfiles
fi
done
if test -f \$ac_cs_root.sacfiles ; then
perl $ac_aux_dir/config.pl "\$ac_cs_root.subs" "\$ac_cs_root.sacfiles" "\$ac_given_srcdir" "\$ac_given_INSTALL"
fi
rm -f \$ac_cs_root.s*
EOF
return;
}
sub insert_command_loop {
print <<EOF;
for ac_file in .. \$CONFIG_FILES ; do
EOF
}

1464
admin/config.guess vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,238 +0,0 @@
#!/usr/bin/env perl
# a script for use by autoconf to make the Makefiles
# from the Makefile.in's
#
# the original autoconf mechanism first splits all substitutions into groups
# of ca. 90, and than invokes sed for _every_ Makefile.in and every group
# (so around 2-3 times per Makefile.in). So this takes forever, as sed
# has to recompile the regexps every time.
#
# this script does better. It changes all Makefile.ins in one process.
# in kdelibs the time for building Makefile went down from 2:59 min to 13 sec!
#
# written by Michael Matz <matz@kde.org>
# adapted by Dirk Mueller <mueller@kde.org>
# This file is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
# This library 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
# Library General Public License for more details.
# You should have received a copy of the GNU Library General Public License
# along with this library; see the file COPYING.LIB. If not, write to
# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
use strict;
use File::Path;
my $ac_subs=$ARGV[0];
my $ac_sacfiles = $ARGV[1];
my $ac_given_srcdir=$ARGV[2];
my $ac_given_INSTALL=$ARGV[3];
my @comp_match;
my @comp_subs;
#print "ac_subs=$ac_subs\n";
#print "ac_sacfiles=$ac_sacfiles\n";
#print "ac_given_srcdir=$ac_given_srcdir\n";
#print "ac_given_INSTALL=$ac_given_INSTALL\n";
my $configure_input;
my ($srcdir, $top_srcdir);
my $INSTALL;
my $bad_perl = ($] < 5.005);
my $created_file_count = 0;
open(CF, "< $ac_subs") || die "can't open $ac_subs: $!";
my @subs = <CF>;
my $pat;
close(CF);
chomp @subs;
@comp_match=();
@comp_subs=();
if ($bad_perl) {
print "Using perl older than version 5.005\n";
foreach $pat (@subs) {
if ( ($pat =~ m/s%([^%]*)%([^%]*)%g/ )
|| ($pat =~ m/s%([^%]*)%([^%]*)%;t/ )
|| ($pat =~ m/s,([^,]*),(.*),;t/)
|| ($pat =~ m%s/([^/]*)/([^/]*)/g% )
|| ($pat =~ m%s/([^/]*)/([^/]*)/;t% )
) {
# form : s%bla%blubb%g
# or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?)
# or s,bla,blubb,;t t (autoconf 2.52)
my $srch = $1;
my $repl = $2;
$repl =~ s/\\(.)/$1/g;
push @comp_subs, make_closure($srch, $repl);
} elsif ( ($pat =~ /%([^%]*)%d/ )
|| ($pat =~ m%/([^/]*)/d% )
) {
push @comp_subs, make_closure($1, "");
} else {
die "Uhh. Malformed pattern in $ac_subs ($pat)"
unless ( $pat =~ /^\s*$/ ); # ignore white lines
}
}
} else {
foreach $pat (@subs) {
if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) ||
($pat =~ /s%([^%]*)%([^%]*)%;t/ ) ||
($pat =~ /s,([^,]*),(.*),;t/) ) {
# form : s%bla%blubb%g
# or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?)
# or s,bla,blubb,;t t (autoconf 2.52)
my $srch = $1;
my $repl = $2;
push @comp_match, eval "qr/\Q$srch\E/"; # compile match pattern
$repl =~ s/\\(.)/$1/g;
push @comp_subs, $repl;
} elsif ( ($pat =~ /%([^%]*)%d/ )
|| ($pat =~ m%/([^/]*)/d% )
) {
push @comp_match, eval "qr/\Q$1\E/";
push @comp_subs, "";
} else {
die "Uhh. Malformed pattern in $ac_subs ($pat)"
unless ( $pat =~ /^\s*$/ ); # ignore white lines
}
}
}
undef @subs;
# read the list of files to be patched, form:
# ./Makefile arts/Makefile arts/examples/Makefile arts/flow/Makefile
open(CF, "< $ac_sacfiles") || die "can't open $ac_sacfiles: $!";
my @ac_files = <CF>;
close(CF);
chomp @ac_files;
my $ac_file;
foreach $ac_file (@ac_files) {
next if $ac_file =~ /\.\./;
next if $ac_file =~ /^\s*$/;
my $ac_file_in;
my ($ac_dir, $ac_dots, $ac_dir_suffix);
if ($ac_file =~ /.*:.*/ ) {
($ac_file_in = $ac_file) =~ s%[^:]*:%%;
$ac_file =~ s%:.*%%;
} else {
$ac_file_in = $ac_file.".in";
}
# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
# Remove last slash and all that follows it. Not all systems have dirname.
($ac_dir = $ac_file) =~ s%/[^/][^/]*$%%;
if ( ($ac_dir ne $ac_file) && ($ac_dir ne ".")) {
# The file is in a subdirectory.
if (! -d "$ac_dir") { mkpath "$ac_dir", 0, 0777; }
($ac_dir_suffix = $ac_dir) =~ s%^./%%;
$ac_dir_suffix="/".$ac_dir_suffix;
# A "../" for each directory in $ac_dir_suffix.
($ac_dots = $ac_dir_suffix) =~ s%/[^/]*%../%g;
} else {
$ac_dir_suffix="";
$ac_dots="";
}
if ($ac_given_srcdir eq ".") {
$srcdir=".";
if ($ac_dots) {
( $top_srcdir = $ac_dots) =~ s%/$%%;
} else { $top_srcdir="."; }
} elsif ($ac_given_srcdir =~ m%^/%) {
$srcdir=$ac_given_srcdir.$ac_dir_suffix;
$top_srcdir = $ac_given_srcdir;
} else {
$srcdir = $ac_dots.$ac_given_srcdir.$ac_dir_suffix;
$top_srcdir = $ac_dots.$ac_given_srcdir;
}
if ($ac_given_INSTALL) {
if ($ac_given_INSTALL =~ m%^/% ) {
$INSTALL = $ac_given_INSTALL;
} else {
$INSTALL = $ac_dots.$ac_given_INSTALL;
}
}
print "fast creating $ac_file\n";
unlink $ac_file;
my $ac_comsub="";
my $fname=$ac_file_in;
$fname =~ s%.*/%%;
$configure_input="$ac_file. Generated from $fname by config.pl.";
my $ac_file_inputs;
($ac_file_inputs = $ac_file_in) =~ s%^%$ac_given_srcdir/%;
$ac_file_inputs =~ s%:% $ac_given_srcdir/%g;
patch_file($ac_file, $ac_file_inputs);
++$created_file_count;
}
print "config.pl: fast created $created_file_count file(s).\n";
sub patch_file {
my ($outf, $infiles) = @_;
my $filedata;
my @infiles=split(' ', $infiles);
my $i=0;
my $name;
foreach $name (@infiles) {
if (open(CF, "< $name")) {
while (<CF>) {
$filedata .= $_;
}
close(CF);
} else {
print STDERR "can't open $name: $!"."\n";
}
}
$filedata =~ s%\@configure_input\@%$configure_input%g;
$filedata =~ s%\@srcdir\@%$srcdir%g;
$filedata =~ s%\@top_srcdir\@%$top_srcdir%g;
$filedata =~ s%\@INSTALL\@%$INSTALL%g;
if ($bad_perl) {
while ($i <= $#comp_subs) {
my $ref = $comp_subs[$i];
&$ref(\$filedata);
$i++;
}
} else {
while ($i <= $#comp_match) {
$filedata =~ s/$comp_match[$i]/$comp_subs[$i]/g;
$i++;
}
}
open(CF, "> $outf") || die "can't create $outf: $!";
print CF $filedata;
close(CF);
}
sub make_closure {
my ($pat, $sub) = @_;
my $ret = eval "return sub { my \$ref=shift; \$\$ref =~ s%\Q$pat\E%\Q$sub\E%g; }";
if ($@) {
print "can't create CODE: $@\n";
}
return $ret;
}

View File

@ -1,666 +0,0 @@
#! /bin/sh
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
# Copyright 1996-2007 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# The first argument passed to this file is the canonical host specification,
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
# should be set by the caller.
#
# The set of defined variables is at the end of this script.
# Known limitations:
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
# than 256 bytes, otherwise the compiler driver will dump core. The only
# known workaround is to choose shorter directory names for the build
# directory and/or the installation directory.
# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
shrext=.so
host="$1"
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
# Code taken from libtool.m4's _LT_CC_BASENAME.
for cc_temp in $CC""; do
case $cc_temp in
compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
\-*) ;;
*) break;;
esac
done
cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
wl=
if test "$GCC" = yes; then
wl='-Wl,'
else
case "$host_os" in
aix*)
wl='-Wl,'
;;
darwin*)
case $cc_basename in
xlc*)
wl='-Wl,'
;;
esac
;;
mingw* | cygwin* | pw32* | os2*)
;;
hpux9* | hpux10* | hpux11*)
wl='-Wl,'
;;
irix5* | irix6* | nonstopux*)
wl='-Wl,'
;;
newsos6)
;;
linux* | k*bsd*-gnu)
case $cc_basename in
icc* | ecc*)
wl='-Wl,'
;;
pgcc | pgf77 | pgf90)
wl='-Wl,'
;;
ccc*)
wl='-Wl,'
;;
como)
wl='-lopt='
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
wl='-Wl,'
;;
esac
;;
esac
;;
osf3* | osf4* | osf5*)
wl='-Wl,'
;;
rdos*)
;;
solaris*)
wl='-Wl,'
;;
sunos4*)
wl='-Qoption ld '
;;
sysv4 | sysv4.2uw2* | sysv4.3*)
wl='-Wl,'
;;
sysv4*MP*)
;;
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
wl='-Wl,'
;;
unicos*)
wl='-Wl,'
;;
uts4*)
;;
esac
fi
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
hardcode_libdir_flag_spec=
hardcode_libdir_separator=
hardcode_direct=no
hardcode_minus_L=no
case "$host_os" in
cygwin* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
if test "$GCC" != yes; then
with_gnu_ld=no
fi
;;
interix*)
# we just hope/assume this is gcc and not c89 (= MSVC++)
with_gnu_ld=yes
;;
openbsd*)
with_gnu_ld=no
;;
esac
ld_shlibs=yes
if test "$with_gnu_ld" = yes; then
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
# Unlike libtool, we use -rpath here, not --rpath, since the documented
# option of GNU ld is called -rpath, not --rpath.
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
case "$host_os" in
aix3* | aix4* | aix5*)
# On AIX/PPC, the GNU linker is very broken
if test "$host_cpu" != ia64; then
ld_shlibs=no
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
# that the semantics of dynamic libraries on AmigaOS, at least up
# to version 4, is to share data among multiple programs linked
# with the same dynamic library. Since this doesn't match the
# behavior of shared libraries on other platforms, we cannot use
# them.
ld_shlibs=no
;;
beos*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
cygwin* | mingw* | pw32*)
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir'
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
interix[3-9]*)
hardcode_direct=no
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
gnu* | linux* | k*bsd*-gnu)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
netbsd*)
;;
solaris*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
case `$LD -v 2>&1` in
*\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
ld_shlibs=no
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
else
ld_shlibs=no
fi
;;
esac
;;
sunos4*)
hardcode_direct=yes
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
esac
if test "$ld_shlibs" = no; then
hardcode_libdir_flag_spec=
fi
else
case "$host_os" in
aix3*)
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
hardcode_minus_L=yes
if test "$GCC" = yes; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
hardcode_direct=unsupported
fi
;;
aix4* | aix5*)
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
else
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[23]|aix4.[23].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
fi
done
;;
esac
fi
hardcode_direct=yes
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
case $host_os in aix4.[012]|aix4.[012].*)
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
:
else
# We have old collect2
hardcode_direct=unsupported
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
;;
esac
fi
# Begin _LT_AC_SYS_LIBPATH_AIX.
echo 'int main () { return 0; }' > conftest.c
${CC} ${LDFLAGS} conftest.c -o conftest
aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
if test -z "$aix_libpath"; then
aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
fi
if test -z "$aix_libpath"; then
aix_libpath="/usr/lib:/lib"
fi
rm -f conftest.c conftest
# End _LT_AC_SYS_LIBPATH_AIX.
if test "$aix_use_runtimelinking" = yes; then
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
else
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
fi
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# see comment about different semantics on the GNU ld section
ld_shlibs=no
;;
bsdi[45]*)
;;
cygwin* | mingw* | pw32*)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec=' '
libext=lib
;;
darwin* | rhapsody*)
hardcode_direct=no
if test "$GCC" = yes ; then
:
else
case $cc_basename in
xlc*)
;;
*)
ld_shlibs=no
;;
esac
fi
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
freebsd1*)
ld_shlibs=no
;;
freebsd2.2*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
freebsd2*)
hardcode_direct=yes
hardcode_minus_L=yes
;;
freebsd* | dragonfly*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
hpux9*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
hpux10*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
fi
;;
hpux11*)
if test "$with_gnu_ld" = no; then
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
case $host_cpu in
hppa*64*|ia64*)
hardcode_direct=no
;;
*)
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
esac
fi
;;
irix5* | irix6* | nonstopux*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
netbsd*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
newsos6)
hardcode_direct=yes
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
openbsd*)
if test -f /usr/libexec/ld.so; then
hardcode_direct=yes
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
else
case "$host_os" in
openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
fi
else
ld_shlibs=no
fi
;;
os2*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
;;
osf3*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
osf4* | osf5*)
if test "$GCC" = yes; then
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
# Both cc and cxx compiler support -rpath directly
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_separator=:
;;
solaris*)
hardcode_libdir_flag_spec='-R$libdir'
;;
sunos4*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
sysv4)
case $host_vendor in
sni)
hardcode_direct=yes # is this really true???
;;
siemens)
hardcode_direct=no
;;
motorola)
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
;;
sysv4.3*)
;;
sysv4*MP*)
if test -d /usr/nec; then
ld_shlibs=yes
fi
;;
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
;;
sysv5* | sco3.2v5* | sco5v6*)
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
hardcode_libdir_separator=':'
;;
uts4*)
hardcode_libdir_flag_spec='-L$libdir'
;;
*)
ld_shlibs=no
;;
esac
fi
# Check dynamic linker characteristics
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
# Unlike libtool.m4, here we don't care about _all_ names of the library, but
# only about the one the linker finds when passed -lNAME. This is the last
# element of library_names_spec in libtool.m4, or possibly two of them if the
# linker has special search rules.
library_names_spec= # the last element of library_names_spec in libtool.m4
libname_spec='lib$name'
case "$host_os" in
aix3*)
library_names_spec='$libname.a'
;;
aix4* | aix5*)
library_names_spec='$libname$shrext'
;;
amigaos*)
library_names_spec='$libname.a'
;;
beos*)
library_names_spec='$libname$shrext'
;;
bsdi[45]*)
library_names_spec='$libname$shrext'
;;
cygwin* | mingw* | pw32*)
shrext=.dll
library_names_spec='$libname.dll.a $libname.lib'
;;
darwin* | rhapsody*)
shrext=.dylib
library_names_spec='$libname$shrext'
;;
dgux*)
library_names_spec='$libname$shrext'
;;
freebsd1*)
;;
freebsd* | dragonfly*)
case "$host_os" in
freebsd[123]*)
library_names_spec='$libname$shrext$versuffix' ;;
*)
library_names_spec='$libname$shrext' ;;
esac
;;
gnu*)
library_names_spec='$libname$shrext'
;;
hpux9* | hpux10* | hpux11*)
case $host_cpu in
ia64*)
shrext=.so
;;
hppa*64*)
shrext=.sl
;;
*)
shrext=.sl
;;
esac
library_names_spec='$libname$shrext'
;;
interix[3-9]*)
library_names_spec='$libname$shrext'
;;
irix5* | irix6* | nonstopux*)
library_names_spec='$libname$shrext'
case "$host_os" in
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
case $LD in
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
*) libsuff= shlibsuff= ;;
esac
;;
esac
;;
linux*oldld* | linux*aout* | linux*coff*)
;;
linux* | k*bsd*-gnu)
library_names_spec='$libname$shrext'
;;
knetbsd*-gnu)
library_names_spec='$libname$shrext'
;;
netbsd*)
library_names_spec='$libname$shrext'
;;
newsos6)
library_names_spec='$libname$shrext'
;;
nto-qnx*)
library_names_spec='$libname$shrext'
;;
openbsd*)
library_names_spec='$libname$shrext$versuffix'
;;
os2*)
libname_spec='$name'
shrext=.dll
library_names_spec='$libname.a'
;;
osf3* | osf4* | osf5*)
library_names_spec='$libname$shrext'
;;
rdos*)
;;
solaris*)
library_names_spec='$libname$shrext'
;;
sunos4*)
library_names_spec='$libname$shrext$versuffix'
;;
sysv4 | sysv4.3*)
library_names_spec='$libname$shrext'
;;
sysv4*MP*)
library_names_spec='$libname$shrext'
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
library_names_spec='$libname$shrext'
;;
uts4*)
library_names_spec='$libname$shrext'
;;
esac
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
# How to pass a linker flag through the compiler.
wl="$escaped_wl"
# Static library suffix (normally "a").
libext="$libext"
# Shared library suffix (normally "so").
shlibext="$shlibext"
# Format of library name prefix.
libname_spec="$escaped_libname_spec"
# Library names that the linker finds when passed -lNAME.
library_names_spec="$escaped_library_names_spec"
# Flag to hardcode \$libdir into a binary during linking.
# This must work even if \$libdir does not exist.
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
# Whether we need a single -rpath flag with a separated argument.
hardcode_libdir_separator="$hardcode_libdir_separator"
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
# resulting binary.
hardcode_direct="$hardcode_direct"
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
# resulting binary.
hardcode_minus_L="$hardcode_minus_L"
EOF

1575
admin/config.sub vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,45 +0,0 @@
# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure
if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then
# And if so, warn when they don't match
if test "$kde_libs_prefix" != "$given_prefix"; then
# And if kde doesn't know about the prefix yet
echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null
if test $? -ne 0; then
echo ""
echo "Warning: you chose to install this package in $given_prefix,"
echo "but KDE was found in $kde_libs_prefix."
echo "For this to work, you will need to tell KDE about the new prefix, by ensuring"
echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix"
echo "Then restart KDE."
echo ""
fi
fi
fi
if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then
echo ""
echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility"
echo "was not included. Therefore, GCC symbol visibility support remains disabled."
echo ""
echo "For better performance, consider including the Qt visibility supporting patch"
echo "located at:"
echo ""
echo "http://bugs.kde.org/show_bug.cgi?id=109386"
echo ""
echo "and recompile all of Qt and KDE. Note, this is entirely optional and"
echo "everything will continue to work just fine without it."
echo ""
fi
if test "$all_tests" = "bad"; then
if test ! "$cache_file" = "/dev/null"; then
echo ""
echo "Please remove the file $cache_file after changing your setup"
echo "so that configure will find the changes next time."
echo ""
fi
else
echo ""
echo "Good - your configure finished. Start make now"
echo ""
fi

View File

@ -1,57 +0,0 @@
dnl This file is part of the KDE libraries/packages
dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org)
dnl This file is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Library General Public
dnl License as published by the Free Software Foundation; either
dnl version 2 of the License, or (at your option) any later version.
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl Library General Public License for more details.
dnl You should have received a copy of the GNU Library General Public License
dnl along with this library; see the file COPYING.LIB. If not, write to
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
dnl Boston, MA 02110-1301, USA.
# Original Author was Kalle@kde.org
# I lifted it in some mater. (Stephan Kulow)
# I used much code from Janos Farkas
dnl Process this file with autoconf to produce a configure script.
AC_INIT(acinclude.m4) dnl a source file from your sub dir
dnl This is so we can use kde-common
AC_CONFIG_AUX_DIR(admin)
dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
unset CDPATH
dnl Checking host/target/build systems, for make, install etc.
AC_CANONICAL_SYSTEM
dnl Perform program name transformation
AC_ARG_PROGRAM
dnl Automake doc recommends to do this only here. (Janos)
AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs
KDE_SET_PREFIX
dnl generate the config header
AM_CONFIG_HEADER(config.h) dnl at the distribution this done
dnl Checks for programs.
AC_CHECK_COMPILERS
AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
KDE_PROG_LIBTOOL
dnl for NLS support. Call them in this order!
dnl WITH_NLS is for the po files
AM_KDE_WITH_NLS
dnl KDE_USE_QT
AC_PATH_KDE

View File

@ -1,661 +0,0 @@
#! /bin/sh
#
# cvs.sh
#
# This file contains support code from Makefile.common
# It defines a shell function for each known target
# and then does a case to call the correct function.
unset MAKEFLAGS
call_and_fix_autoconf()
{
$AUTOCONF || exit 1
if test -r configure.in.in ; then
perl -pi -e "print \"if test \\\"x\\\$with_fast_perl\\\" = \\\"xyes\\\"; then\
\\n perl -i.bak \\\$ac_aux_dir/conf.change.pl \\\$CONFIG_STATUS\
\\\\\\n || mv \\\$CONFIG_STATUS.bak \\\$CONFIG_STATUS\
\\n rm -f \\\$CONFIG_STATUS.bak\\nfi\
\\n\" if /^\\s*chmod\\s+.*\\+x\\s+.*CONFIG_STATUS/; s,^#line.*LINENO.*\$,/* \$& */, ;" configure
fi
}
strip_makefile()
{
if test ! -f $makefile_wo; then
perl -e '$in=0; while ( <> ) { $in = 1 if ($_ =~ m/^if / ); print $_ unless ($in || $_ =~ m/^include /); $in = 0 if ($_ =~ m/^endif/); }' < $makefile_am > $makefile_wo
fi
}
check_autotool_versions()
{
required_autoconf_version="2.53 or newer"
AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1`
case $AUTOCONF_VERSION in
Autoconf*2.5* | autoconf*2.5* | autoconf*2.6* ) : ;;
"" )
echo "*** AUTOCONF NOT FOUND!."
echo "*** KDE requires autoconf $required_autoconf_version"
exit 1
;;
* )
echo "*** YOU'RE USING $AUTOCONF_VERSION."
echo "*** KDE requires autoconf $required_autoconf_version"
exit 1
;;
esac
AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1`
case $AUTOHEADER_VERSION in
Autoconf*2.5* | autoheader*2.5* | autoheader*2.6* ) : ;;
"" )
echo "*** AUTOHEADER NOT FOUND!."
echo "*** KDE requires autoheader $required_autoconf_version"
exit 1
;;
* )
echo "*** YOU'RE USING $AUTOHEADER_VERSION."
echo "*** KDE requires autoheader $required_autoconf_version"
exit 1
;;
esac
AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1`
required_automake_version="1.6.1 or newer"
case $AUTOMAKE_STRING in
automake*1.5d* | automake*1.5* | automake*1.5-* )
echo "*** YOU'RE USING $AUTOMAKE_STRING."
echo "*** KDE requires automake $required_automake_version"
exit 1
;;
automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9* | automake*1.10*)
echo "*** $AUTOMAKE_STRING found."
UNSERMAKE=no
;;
"" )
echo "*** AUTOMAKE NOT FOUND!."
echo "*** KDE requires automake $required_automake_version"
exit 1
;;
*unsermake* ) :
echo "*** YOU'RE USING UNSERMAKE."
echo "*** GOOD LUCK!! :)"
UNSERMAKE=unsermake
;;
* )
echo "*** YOU'RE USING $AUTOMAKE_STRING."
echo "*** KDE requires automake $required_automake_version"
exit 1
;;
esac
unset required_automake_version
}
cvs()
{
check_autotool_versions
acinclude_m4
### Make new subdirs and configure.in.
### The make calls could be optimized away here,
### with a little thought.
if test -r configure.in.in; then
rm -f configure.in
echo "*** Creating list of subdirectories"
create_subdirs
if test -r Makefile.am.in; then
echo "*** Creating Makefile.am"
if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1
else
Makefile_am
fi
fi
configure_files
echo "*** Creating configure.in"
if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1
else
configure_in
fi
fi
echo "*** Creating aclocal.m4"
$ACLOCAL $ACLOCALFLAGS || exit 1
echo "*** Creating configure"
call_and_fix_autoconf
if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
echo "*** Creating config.h template"
$AUTOHEADER || exit 1
touch config.h.in
fi
echo "*** Creating Makefile templates"
$AUTOMAKE || exit 1
if test "$UNSERMAKE" = no; then
echo "*** Postprocessing Makefile templates"
perl -w admin/am_edit || exit 1
fi
if egrep "^cvs-local:" $makefile_am >/dev/null; then \
strip_makefile
$MAKE -f $makefile_wo cvs-local top_srcdir=. || exit 1
fi
echo "*** Creating date/time stamp"
touch stamp-h.in
echo "*** Finished"
echo " Don't forget to run ./configure"
echo " If you haven't done so in a while, run ./configure --help"
}
dist()
{
check_autotool_versions
###
### First build all of the files necessary to do just "make"
###
acinclude_m4
if test -r configure.in.in; then
rm -f configure.in
create_subdirs
if test -r Makefile.am.in; then
if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1
else
Makefile_am
fi
fi
configure_files
if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1
else
configure_in
fi
fi
$ACLOCAL $ACLOCALFLAGS
if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
echo "*** Creating config.h template"
$AUTOHEADER || exit 1
touch config.h.in
fi
$AUTOMAKE --foreign || exit 1
if test "$UNSERMAKE" = no; then
echo "*** Postprocessing Makefile templates"
perl -w admin/am_edit || exit 1
fi
call_and_fix_autoconf
touch stamp-h.in
if grep "^cvs-local:" $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo cvs-local top_srcdir=.
fi
###
### Then make messages
###
if test -d po; then
LIST=`find ./po -name "*.po"`
for i in $LIST; do
file2=`echo $i | sed -e "s#\.po#\.gmo#"`
msgfmt -o $file2 $i || touch $file2
done
fi
if grep "^cvs-dist-local:" $makefile_am >/dev/null; then
strip_makefile
$MAKE -f $makefile_wo cvs-dist-local top_srcdir=.
fi
}
subdir_dist()
{
$ACLOCAL $ACLOCALFLAGS
$AUTOHEADER
touch config.h.in
$AUTOMAKE
AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1`
case $AUTOMAKE_STRING in
*unsermake* ) :
;;
*)
perl -w ../admin/am_edit --path=../admin
esac
call_and_fix_autoconf
touch stamp-h.in
}
configure_in()
{
rm -f configure.in configure.in.new
kde_use_qt_param=
test -f configure.files || { echo "need configure.files for configure.in"; exit 1; }
list=`fgrep -v "configure.in.bot" < configure.files | fgrep -v "configure.in.mid"`
: > configure.in.new
for file in $list; do
echo "dnl =======================================================" >> configure.in.new
echo "dnl FILE: $file" >> configure.in.new
echo "dnl =======================================================" >> configure.in.new
echo "" >> configure.in.new
cat $file >> configure.in.new
done
echo "KDE_CREATE_SUBDIRSLIST" >> configure.in.new
if test -f Makefile.am.in; then
subdirs=`cat subdirs`
for dir in $subdirs; do
vdir=`echo $dir | sed -e 's,[-+.@],_,g'`
echo "AM_CONDITIONAL($vdir""_SUBDIR_included, test \"x\$$vdir""_SUBDIR_included\" = xyes)" >> configure.in.new
if test -f "$dir/configure.in"; then
echo "if test \"x\$$vdir""_SUBDIR_included\" = xyes; then " >> configure.in.new
echo " AC_CONFIG_SUBDIRS($dir)" >> configure.in.new
echo "fi" >> configure.in.new
fi
done
fi
echo "AC_CONFIG_FILES([ Makefile ])" >> configure.in.new
if test -f inst-apps; then
topleveldirs=`cat inst-apps`
else
topleveldirs=
for dir in `ls -1d * | sort`; do
if test "$dir" != "debian" && test -d $dir; then
topleveldirs="$topleveldirs $dir"
fi
done
fi
for topleveldir in $topleveldirs; do
if test -f $topleveldir/configure.in; then
continue
fi
if test -f $topleveldir/Makefile.am; then :; else
continue
fi
mfs=`find $topleveldir -follow -name Makefile.am -print | fgrep -v "/." | \
sed -e 's#\./##; s#/Makefile.am$##' | sort | sed -e 's#$#/Makefile#'`
for i in $mfs; do
echo "AC_CONFIG_FILES([ $i ])" >> configure.in.new
done
done
files=`cat configure.files`
list=`egrep '^dnl AC_OUTPUT\(.*\)' $files | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1#"`
for file in $list; do
echo "AC_CONFIG_FILES([ $file ])" >> configure.in.new
done
midfiles=`cat configure.files | fgrep "configure.in.mid"`
test -n "$midfiles" && cat $midfiles >> configure.in.new
echo "AC_OUTPUT" >> configure.in.new
modulename=
if test -f configure.in.in; then
if head -n 2 configure.in.in | egrep "^#MIN_CONFIG\(.*\)$" > /dev/null; then
kde_use_qt_param=`cat configure.in.in | sed -n -e "s/#MIN_CONFIG(\(.*\))/\1/p"`
fi
if head -n 2 configure.in.in | egrep "^#MIN_CONFIG" > /dev/null; then
line=`grep "^AM_INIT_AUTOMAKE(" configure.in.in`
if test -n "$line"; then
modulename=`echo $line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"`
VERSION=`echo $line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"`
fi
sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" \
configure.in.new > configure.in && mv configure.in configure.in.new
fi
fi
if test -z "$VERSION" || test "$VERSION" = "@VERSION@"; then
VERSION="\"3.5.10\""
fi
if test -z "$modulename" || test "$modulename" = "@MODULENAME@"; then
modulename=`pwd`;
modulename=`basename $modulename`
esc_VERSION=`echo $VERSION | sed -e "s#[^.0-9a-zA-Z]##g"`
modulename=`echo $modulename | sed -e "s#-$esc_VERSION##"`
fi
if test -n "$kde_use_qt_param"; then
sed -e "s#^dnl KDE_USE_QT#KDE_USE_QT($kde_use_qt_param)#" \
configure.in.new > configure.in && mv configure.in configure.in.new
fi
sed -e "s#@MODULENAME@#$modulename#" configure.in.new |
sed -e "s#@VERSION@#$VERSION#" > configure.in
botfiles=`cat configure.files | egrep "configure.in.bot"`
test -n "$botfiles" && cat $botfiles >> configure.in
cat $admindir/configure.in.bot.end >> configure.in
rm -f configure.in.new
}
configure_files()
{
echo "*** Creating configure.files"
admindir=NO
for i in . .. ../.. ../../..; do
if test -x $i/admin; then admindir=$i/admin; break; fi
done
rm -f configure.files
touch configure.files
if test -f configure.in.in && head -n 2 configure.in.in | grep "^#MIN_CONFIG" > /dev/null; then
echo $admindir/configure.in.min >> configure.files
fi
test -f configure.in.in && echo configure.in.in >> configure.files
# we collect files in the subdirs and do some sorting tricks, so subsubdirs come after subdirs
if test -f inst-apps; then
inst=`cat inst-apps`
list=""
for i in $inst; do
list="$list `find $i/ -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \
sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"`"
done
else
list=`find . -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \
sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"`
fi
for i in $list; do if test -f $i && test `dirname $i` != "." ; then
echo $i >> configure.files
fi; done
test -f configure.in.mid && echo configure.in.mid >> configure.files
test -f configure.in.bot && echo configure.in.bot >> configure.files
if test ! -s configure.files; then
echo "There are no files to build a configure. Please check your checkout."
exit 1
fi
}
create_subdirs()
{
if grep '\$(top_srcdir)/subdirs:' $makefile_am >/dev/null; then
# as many modules contain rules to create subdirs without any
# dependencies make won't create it unless there is no file.
# so we check if that's a dummy rule or one that works
rm -f subdirs.cvs.sh.$$
if test -f subdirs; then
mv subdirs subdirs.cvs.sh.$$
fi
strip_makefile
$MAKE -f $makefile_wo top_srcdir=. ./subdirs || exit 1
if test -f subdirs.cvs.sh.$$; then
if test -s subdirs; then
rm subdirs.cvs.sh.$$
else
mv subdirs.cvs.sh.$$ subdirs
fi
fi
else
subdirs
fi
}
subdirs()
{
dirs=
idirs=
if test -f inst-apps; then
idirs=`cat inst-apps`
else
idirs=`ls -1 | sort`
fi
compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1`
compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1`
for i in $idirs; do
if test -f $i/Makefile.am; then
case " $compilefirst $compilelast " in
*" $i "*) ;;
*) dirs="$dirs $i"
esac
fi
done
: > ./_SUBDIRS
for d in $compilefirst; do
echo $d >> ./_SUBDIRS
done
(for d in $dirs; do
list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1`
for s in $list; do
echo $s $d
done
list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1`
for s in $list; do
echo $d $s
done
echo $d $d
done ) | tsort >> ./_SUBDIRS
for d in $compilelast; do
echo $d >> ./_SUBDIRS
done
if test -r subdirs && cmp -s subdirs _SUBDIRS; then
rm -f _SUBDIRS
fi
test -r _SUBDIRS && mv _SUBDIRS subdirs || true
}
Makefile_am()
{
if test -f Makefile.am.in; then
compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1`
compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1`
idirs=
dirs=
if test -f inst-apps; then
idirs=`cat inst-apps`
else
idirs=`cat subdirs`
fi
for i in $idirs; do
case " $compilefirst $compilelast " in
*" $i "*) ;;
*) dirs="$dirs $i"
esac
done
adds=`fgrep '$(top_srcdir)/acinclude.m4:' Makefile.am.in | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir)/,,g'`
if echo "$adds" | fgrep "*" >/dev/null ; then
adds=`ls -d -1 $adds 2>/dev/null`
fgrep -v '$(top_srcdir)/acinclude.m4:' Makefile.am.in > Makefile.am.in.adds
str='$(top_srcdir)/acinclude.m4:'
for add in $adds; do
str="$str \$(top_srcdir)/$add"
done
echo $str >> Makefile.am.in.adds
else
cat Makefile.am.in > Makefile.am.in.adds
fi
cat Makefile.am.in.adds | \
sed -e 's,^\s*\(COMPILE_BEFORE.*\),# \1,' | \
sed -e 's,^\s*\(COMPILE_AFTER.*\),# \1,' > Makefile.am
echo "SUBDIRS="'$(TOPSUBDIRS)' >> Makefile.am
rm Makefile.am.in.adds
fi
}
acinclude_m4()
{
echo "*** Creating acinclude.m4"
adds=
if grep '\$(top_srcdir)/acinclude.m4:' $makefile_am >/dev/null; then
strip_makefile
rm -f acinclude.m4
adds=`grep '\$(top_srcdir)/acinclude.m4:' $makefile_wo | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir),.,g'`
if echo $adds | fgrep "*" >/dev/null ; then
adds=`ls -d -1 $adds 2>/dev/null`
else
$MAKE -f $makefile_wo top_srcdir=. ./acinclude.m4 || exit 1
fi
else
rm -f acinclude.m4
fi
# if it wasn't created up to now, then we do it better
if test ! -f acinclude.m4; then
cat admin/acinclude.m4.in $adds > acinclude.m4
fi
}
package_merge()
{
catalogs=$POFILES
for cat in $catalogs; do
msgmerge -o $cat.new $cat $PACKAGE.pot
if test -s $cat.new; then
grep -v "\"POT-Creation" $cat.new > $cat.new.2
grep -v "\"POT-Creation" $cat >> $cat.new.1
if diff $cat.new.1 $cat.new.2; then
rm $cat.new
else
mv $cat.new $cat
fi
rm -f $cat.new.1 $cat.new.2
fi
done
}
extract_messages()
{
podir=${podir:-$PWD/po}
files=`find . -name Makefile.am | xargs egrep -l '^messages:' `
dirs=`for i in $files; do echo \`dirname $i\`; done`
tmpname="$PWD/messages.log"
if test -z "$EXTRACTRC"; then EXTRACTRC=extractrc ; fi
if test -z "$PREPARETIPS"; then PREPARETIPS=preparetips ; fi
export EXTRACTRC PREPARETIPS
for subdir in $dirs; do
test -z "$VERBOSE" || echo "Making messages in $subdir"
(cd $subdir
if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then
$EXTRACTRC *.rc *.ui *.kcfg > rc.cpp
else
candidates=`ls -1 *.rc *.ui *.kcfg 2>/dev/null`
if test -n "$candidates"; then
echo "$subdir has *.rc, *.ui or *.kcfg files, but not correct messages line"
fi
fi
if find . -name \*.c\* -o -name \*.h\* | fgrep -v ".svn" | xargs fgrep -s -q KAboutData ; then
echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp
else echo " " > _translatorinfo.cpp
fi
perl -e '$mes=0; while (<STDIN>) { next if (/^(if\s|else\s|endif)/); if (/^messages:/) { $mes=1; print $_; next; } if ($mes) { if (/$\\(XGETTEXT\)/ && / -o/) { s/ -o \$\(podir\)/ _translatorinfo.cpp -o \$\(podir\)/ } print $_; } else { print $_; } }' < Makefile.am | egrep -v '^include ' > _transMakefile
kdepotpath=${includedir:-`kde-config --expandvars --install include`}/kde.pot
if ! test -f $kdepotpath; then
kdepotpath=`kde-config --expandvars --prefix`/include/kde.pot
fi
$MAKE -s -f _transMakefile podir=$podir EXTRACTRC="$EXTRACTRC" PREPARETIPS="$PREPARETIPS" srcdir=. \
XGETTEXT="${XGETTEXT:-xgettext} --foreign-user -C -ci18n -ki18n -ktr2i18n -kI18N_NOOP -kI18N_NOOP2 -kaliasLocale -x $kdepotpath" messages
exit_code=$?
if test "$exit_code" != 0; then
echo "make exit code: $exit_code"
fi
) 2>&1 | grep -v '^make\[1\]' > $tmpname
test -s $tmpname && { echo $subdir ; cat "$tmpname"; }
test -f $subdir/rc.cpp && rm -f $subdir/rc.cpp
rm -f $subdir/_translatorinfo.cpp
rm -f $subdir/_transMakefile
done
rm -f $tmpname
}
package_messages()
{
rm -rf po.backup
mkdir po.backup
for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do
egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > po.backup/$i
cat po/$i > po.backup/backup_$i
touch -r po/$i po.backup/backup_$i
rm po/$i
done
extract_messages
for i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do
test -f po/$i || echo "disappeared: $i"
done
for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do
sed -e 's,^"Content-Type: text/plain; charset=CHARSET\\n"$,"Content-Type: text/plain; charset=UTF-8\\n",' po/$i > po/$i.new && mv po/$i.new po/$i
#msgmerge -q -o po/$i po/$i po/$i
egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > temp.pot
if test -f po.backup/$i && ! cmp -s temp.pot po.backup/$i; then
echo "will update $i"
else
if test -f po.backup/backup_$i; then
test -z "$VERBOSE" || echo "I'm restoring $i"
mv po.backup/backup_$i po/$i
rm po.backup/$i
else
echo "will add $i"
fi
fi
done
rm -f temp.pot
rm -rf po.backup
}
# Make sure that sorting is always done the same way
LC_ALL=C
export LC_ALL
unset LANG || :
unset LC_CTYPE || :
unset LANGUAGE || :
unset CDPATH || :
admindir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$admindir" = "x$0" && admindir=.
test "x$MAKE" = x && MAKE=make
makefile_am=Makefile.am
makefile_wo=Makefile.am.wo
if test -f Makefile.am.in; then
makefile_am=Makefile.am.in
makefile_wo=Makefile.am.in.wo
rm -f $makefile_wo
fi
# Call script to find autoconf and friends. Uses eval since the script outputs
# sh-compatible code.
eval `$admindir/detect-autoconf.pl`
###
### Main
###
arg=`echo $1 | tr .- __`
case $arg in
cvs | dist | subdir_dist | configure_in | configure_files | subdirs | \
cvs_clean | package_merge | package_messages | Makefile_am | acinclude_m4 | extract_messages ) $arg ;;
configure ) call_and_fix_autoconf ;;
* ) echo "Usage: cvs.sh <target>"
echo "Target can be one of:"
echo " cvs svn dist"
echo " configure.in configure.files"
echo " package-merge package-messages"
echo ""
echo "Usage: anything but $1"
exit 1 ;;
esac
if test -f $makefile_wo; then
rm $makefile_wo
fi
exit 0

View File

@ -1,43 +0,0 @@
#!/usr/bin/perl -w
use Shell qw(mv cp mkdir rm) ;
use File::Find;
use Cwd;
$origPwd = `pwd`;
chomp $origPwd;
$kde_prefix = "/usr";
$sysconfdir = "/etc";
$kde_includedir = "$kde_prefix/include/kde";
$infodir = "$kde_prefix/share/info";
$mandir = "$kde_prefix/share/man";
$qtdir = "/usr/share/qt3";
$kde_cgidir = "$kde_prefix/lib/cgi-bin";
$kde_confdir = "$sysconfdir/kde3";
$kde_htmldir = "$kde_prefix/share/doc/kde/HTML";
if (defined $ENV{DEB_BUILD_OPTIONS} &&
$ENV{DEB_BUILD_OPTIONS} =~ /\bnostrip\b/) {
$enable_debug="--enable-debug=full";
} else {
$enable_debug="--disable-debug";
}
if (@ARGV && $ARGV[0] eq 'echodirs') {
print STDOUT "export kde_prefix=$kde_prefix\n";
print STDOUT "export sysconfdir=$sysconfdir\n";
print STDOUT "export kde_includedir=$kde_includedir\n";
print STDOUT "export infodir=$infodir\n";
print STDOUT "export mandir=$mandir\n";
print STDOUT "export qtdir=$qtdir\n";
print STDOUT "export kde_cgidir=$kde_cgidir\n";
print STDOUT "export kde_confdir=$kde_confdir\n";
print STDOUT "export kde_htmldir=$kde_htmldir\n";
print STDOUT "configkde=$enable_debug --disable-rpath --prefix=\$(kde_prefix) --sysconfdir=\$(sysconfdir) --includedir=\$(kde_includedir) --infodir=\$(infodir) --mandir=\$(mandir) --with-qt-dir=\$(qtdir)\n";
exit
}

View File

@ -1,530 +0,0 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2005-07-09.11
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
"$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say).
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
## The second -e expression handles DOS-style file names with drive letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the `deleted header file' problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
tr ' ' '
' < "$tmpdepfile" |
## Some versions of gcc put a space before the `:'. On the theory
## that the space means something, we add a space to the output as
## well.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like `#:fec' to the end of the
# dependency line.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
' ' ' >> $depfile
echo >> $depfile
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> $depfile
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
tmpdepfile="$stripped.u"
if test "$libtool" = yes; then
"$@" -Wc,-M
else
"$@" -M
fi
stat=$?
if test -f "$tmpdepfile"; then :
else
stripped=`echo "$stripped" | sed 's,^.*/,,'`
tmpdepfile="$stripped.u"
fi
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
if test -f "$tmpdepfile"; then
outname="$stripped.o"
# Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
# "include basename.Plo" scheme.
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
icc)
# Intel's C compiler understands `-MD -MF file'. However on
# icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
# which is wrong. We want:
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using \ :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
# With Tru64 cc, shared objects can also be used to make a
# static library. This mecanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
# compilations output dependencies in in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
tmpdepfile2=$dir$base.o.d # libtool 1.5
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1=$dir$base.o.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
tmpdepfile4=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the [].
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
rm -f "$tmpdepfile"
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
test -z "$dashmflag" && dashmflag=-M
# Require at least two characters before searching for `:'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
"$@" $dashmflag |
sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tr ' ' '
' < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
dashXmstdout)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit 1
;;
makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no
for arg in "$@"; do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
sed '1,2d' "$tmpdepfile" | tr ' ' '
' | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
"$@" -E |
sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
"$@" || exit $?
IFS=" "
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
none)
exec "$@"
;;
*)
echo "Unknown depmode $depmode" 1>&2
exit 1
;;
esac
exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -1,19 +0,0 @@
$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in $(top_srcdir)/admin/cvs.sh $(top_srcdir)/admin/pkg.m4.in
@cd $(top_srcdir) && $(SHELL) admin/cvs.sh acinclude_m4
$(top_srcdir)/configure.in: $(top_srcdir)/subdirs $(top_srcdir)/configure.files $(top_srcdir)/admin/cvs.sh
@cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure_in
$(top_srcdir)/configure.files: $(top_srcdir)/subdirs $(CONF_FILES)
@cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure.files $(top_srcdir)/admin/cvs.sh
$(top_srcdir)/Makefile.am: $(top_srcdir)/Makefile.am.in $(top_srcdir)/subdirs $(top_srcdir)/admin/cvs.sh
@cd $(top_srcdir) && $(SHELL) admin/cvs.sh Makefile_am
$(top_srcdir)/subdirs: $(top_srcdir)/Makefile.am.in $(top_srcdir)/admin/cvs.sh
@cd $(top_srcdir) && $(SHELL) admin/cvs.sh subdirs
# defining default rules for files that may not be present
$(top_srcdir)/Makefile.am.in:
$(CONF_FILES):

View File

@ -1,883 +0,0 @@
#! /bin/sh
#
# doxygen.sh Copyright (C) 2005 by Adriaan de Groot
# Based on some code from Doxyfile.am, among other things.
# License: GPL version 2.
# See file COPYING in kdelibs for details.
echo "*** doxygen.sh"
# Recurse handling is a little complicated, since normally
# subdir (given on the command-line) processing doesn't recurse
# but you can force it to do so.
recurse=1
recurse_given=NO
use_modulename=1
cleanup=YES
while test -n "$1" ; do
case "x$1" in
"x--no-cleanup" )
cleanup=NO
;;
"x--no-recurse" )
recurse=0
recurse_given=YES
;;
"x--recurse" )
recurse=1
recurse_given=YES
;;
"x--no-modulename" )
use_modulename=0
;;
"x--modulename" )
use_modulename=1
;;
"x--help" )
echo "doxygen.sh usage:"
echo "doxygen.sh [--no-recurse] [--no-modulename] <srcdir> [<subdir>]"
exit 2
;;
x--doxdatadir=* )
DOXDATA=`echo $1 | sed -e 's+--doxdatadir=++'`
;;
x--installdir=*)
PREFIX=`echo $1 | sed -e 's+--installdir=++'`
;;
x--* )
echo "Unknown option: $1"
exit 1
;;
* )
top_srcdir="$1"
break
;;
esac
shift
done
### Sanity check the mandatory "top srcdir" argument.
if test -z "$top_srcdir" ; then
echo "Usage: doxygen.sh <top_srcdir>"
exit 1
fi
if test ! -d "$top_srcdir" ; then
echo "top_srcdir ($top_srcdir) is not a directory."
exit 1
fi
### Normalize top_srcdir so it is an absolute path.
if expr "x$top_srcdir" : "x/" > /dev/null ; then
# top_srcdir is absolute already
:
else
top_srcdir=`cd "$top_srcdir" 2> /dev/null && pwd`
if test ! -d "$top_srcdir" ; then
echo "top_srcdir ($top_srcdir) is not a directory."
exit 1
fi
fi
### Sanity check and guess QTDOCDIR.
if test -z "$QTDOCDIR" ; then
if test -z "$QTDIR" ; then
for i in /usr/X11R6/share/doc/qt/html
do
QTDOCDIR="$i"
test -d "$QTDOCDIR" && break
done
else
for i in share/doc/qt/html doc/html
do
QTDOCDIR="$QTDIR/$i"
test -d "$QTDOCDIR" && break
done
fi
fi
if test -z "$QTDOCDIR" || test ! -d "$QTDOCDIR" ; then
if test -z "$QTDOCDIR" ; then
echo "* QTDOCDIR could not be guessed."
else
echo "* QTDOCDIR does not name a directory."
fi
if test -z "$QTDOCTAG" ; then
echo "* QTDOCDIR set to \"\""
QTDOCDIR=""
else
echo "* But I'll use $QTDOCDIR anyway because of QTDOCTAG."
fi
fi
### Get the "top srcdir", also its name, and handle the case that subdir "."
### is given (which would be top_srcdir then, so it's equal to none-given
### but no recursion either).
###
# top_srcdir="$1" # Already set by options processing
module_name=`basename "$top_srcdir"`
subdir="$2"
if test "x." = "x$subdir" ; then
subdir=""
if test "x$recurse_given" = "xNO" ; then
recurse=0
fi
fi
if test "x" != "x$subdir" ; then
# If no recurse option given explicitly, default to
# no recurse when processing subdirs given on the command-line.
if test "x$recurse_given" = "xNO" ; then
recurse=0
fi
fi
if test -z "$DOXDATA" || test ! -d "$DOXDATA" ; then
if test -n "$DOXDATA" ; then
echo "* \$DOXDATA is '$DOXDATA' which does not name a directory"
fi
DOXDATA="$top_srcdir/doc/common"
fi
if test ! -d "$DOXDATA" ; then
echo "* \$DOXDATA does not name a directory ( or is unset ), tried \"$DOXDATA\""
exit 1
fi
if test -n "$PREFIX" && test ! -d "$PREFIX" ; then
echo "* \$PREFIX does not name a directory, tried \"$PREFIX\""
echo "* \$PREFIX is disabled."
PREFIX=""
fi
### We need some values from top-level files, which
### are not preserved between invocations of this
### script, so factor it out for easy use.
create_doxyfile_in()
{
eval `grep 'VERSION="' "$top_srcdir/admin/cvs.sh"`
echo "PROJECT_NUMBER = $VERSION" > Doxyfile.in
grep '^KDE_INIT_DOXYGEN' "$top_srcdir/configure.in.in" | \
sed -e 's+[^[]*\[\([^]]*\)+PROJECT_NAME = "\1"+' \
-e 's+].*++' >> Doxyfile.in
}
apidoxdir="$module_name"-apidocs
test "x$use_modulename" = "x0" && apidoxdir="apidocs"
### If we're making the top subdir, create the structure
### for the apidox and initialize it. Otherwise, just use the
### structure assumed to be there.
if test -z "$subdir" ; then
if test ! -d "$apidoxdir" ; then
mkdir "$apidoxdir" > /dev/null 2>&1
fi
cd "$apidoxdir" > /dev/null 2>&1 || {
echo "Cannot create and cd into $apidoxdir"
exit 1
}
test -f "Doxyfile.in" || create_doxyfile_in
# Copy in logos and the like
for i in "favicon.ico" "kde_gear_64.png"
do
cp "$DOXDATA/$i" . > /dev/null 2> /dev/null
done
for i in "$top_srcdir/doc/api/Dox-"*.png
do
T=`basename "$i" | sed -e 's+Dox-++'`
test -f "$i" && cp "$i" "./$T" > /dev/null 2> /dev/null
done
top_builddir="."
srcdir="$1"
subdir="."
else
cd "$apidoxdir" > /dev/null 2>&1 || {
echo "Cannot cd into $apidoxdir -- maybe you need to"
echo "build the top-level dox first."
exit 1
}
if test "x1" = "x$recurse" ; then
# OK, so --recurse was requested
if test ! -f "subdirs.top" ; then
echo "* No subdirs.top available in the $apidoxdir."
echo "* The --recurse option will be ignored."
recurse=0
fi
fi
fi
### Read a single line (TODO: support \ continuations) from the Makefile.am.
### Used to extract variable assignments from it.
extract_line()
{
file="$2" ; test -z "$file" && file="$srcdir/Makefile.am"
pattern=`echo "$1" | tr + .`
grep "^$1" "$file" | \
sed -e "s+$pattern.*=\s*++"
}
### Handle the COMPILE_{FIRST,LAST,BEFORE,AFTER} part of Makefile.am
### in the toplevel. Copied from admin/cvs.sh. Licence presumed LGPL).
create_subdirs()
{
echo "* Sorting top-level subdirs"
dirs=
idirs=
if test -f "$top_srcdir/inst-apps"; then
idirs=`cat "$top_srcdir/"inst-apps`
else
idirs=`cd "$top_srcdir" && ls -1 | sort`
fi
compilefirst=""
compilelast=""
if test -f "$top_srcdir/"Makefile.am.in ; then
compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1`
compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1`
fi
for i in $idirs; do
if test -f "$top_srcdir/$i"/Makefile.am; then
case " $compilefirst $compilelast " in
*" $i "*) ;;
*) dirs="$dirs $i"
esac
fi
done
: > ./_SUBDIRS
for d in $compilefirst; do
echo $d >> ./_SUBDIRS
done
(for d in $dirs; do
list=""
if test -f "$top_srcdir/"Makefile.am.in ; then
list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1`
fi
for s in $list; do
echo $s $d
done
list=""
if test -f "$top_srcdir/"Makefile.am.in ; then
list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1`
fi
for s in $list; do
echo $d $s
done
echo $d $d
done ) | tsort >> ./_SUBDIRS
for d in $compilelast; do
echo $d >> ./_SUBDIRS
done
test -r _SUBDIRS && mv _SUBDIRS subdirs.top || true
}
### Add HTML header, footer, CSS tags to Doxyfile.
### Assumes $subdir is set. Argument is a string
### to stick in front of the file if needed.
apidox_htmlfiles()
{
dox_header="$top_srcdir/doc/api/$1header.html"
dox_footer="$top_srcdir/doc/api/$1footer.html"
dox_css="$top_srcdir/doc/api/doxygen.css"
test -f "$dox_header" || dox_header="$DOXDATA/$1header.html"
test -f "$dox_footer" || dox_footer="$DOXDATA/$1footer.html"
test -f "$dox_css" || dox_css="$DOXDATA/doxygen.css"
echo "HTML_HEADER = $dox_header" >> "$subdir/Doxyfile" ; \
echo "HTML_FOOTER = $dox_footer" >> "$subdir/Doxyfile" ; \
echo "HTML_STYLESHEET = $dox_css" >> "$subdir/Doxyfile"
}
apidox_specials()
{
line=`extract_line DOXYGEN_PROJECTNAME "$1"`
test -n "$line" && echo "PROJECT_NAME = \"$line\"" >> "$2"
}
apidox_local()
{
for i in "$top_srcdir/doc/api/Doxyfile.local"
do
if test -f "$i" ; then
cat "$i" >> "$subdir/Doxyfile"
break
fi
done
}
### Post-process HTML files by substituting in the menu files
#
# In non-top directories, both <!-- menu --> and <!-- gmenu -->
# are calculated and replaced. Top directories get an empty <!-- menu -->
# if any.
doxyndex()
{
# Special case top-level to have an empty MENU.
if test "x$subdir" = "x." ; then
MENU=""
htmldir="."
htmltop="$top_builddir" # Just ., presumably
echo "* Post-processing top-level files"
else
MENU="<ul>"
htmldir="$subdir/html"
htmltop="$top_builddir.." # top_builddir ends with /
echo "* Post-processing files in $htmldir"
# Build a little PHP file that maps class names to file
# names, for the quick-class-picker functionality.
# (The quick-class-picker is disabled due to styling
# problems in IE & FF).
(
echo "<?php \$map = array("; \
for htmlfile in `find $htmldir/ -type f -name "class[A-Z]*.html" | grep -v "\-members.html$"`; do
classname=`echo $htmlfile | sed -e "s,.*/class\\(.*\\).html,\1," -e "s,_1_1,::,g" -e "s,_01, ,g" -e "s,_4,>,g" -e "s+_00+,+g" -e "s+_3+<+g" | tr "[A-Z]" "[a-z]"`
echo " \"$classname\" => \"$htmlfile\","
done | sort ; \
echo ") ?>"
) > "$subdir/classmap.inc"
# This is a list of pairs, with / separators so we can use
# basename and dirname (a crude shell hack) to split them
# into parts. For each, if the file part exists (as a html
# file) tack it onto the MENU variable as a <li> with link.
for i in "Main Page/index" \
"Modules/modules" \
"Namespace List/namespaces" \
"Class Hierarchy/hierarchy" \
"Alphabetical List/classes" \
"Class List/annotated" \
"File List/files" \
"Directories/dirs" \
"Namespace Members/namespacemembers" \
"Class Members/functions" \
"Related Pages/pages"
do
NAME=`dirname "$i"`
FILE=`basename "$i"`
test -f "$htmldir/$FILE.html" && MENU="$MENU<li><a href=\"$FILE.html\">$NAME</a></li>"
done
MENU="$MENU</ul>"
fi
# Get the list of global Menu entries.
GMENU=`cat subdirs | tr -d '\n'`
PMENU=`grep '<!-- pmenu' "$htmldir/index.html" | sed -e 's+.*pmenu *++' -e 's+ *-->++' | awk '{ c=split($0,a,"/"); for (j=1; j<=c; j++) { printf " / <a href=\""; if (j==c) { printf("."); } for (k=j; k<c; k++) { printf "../"; } if (j<c) { printf("../html/index.html"); } printf "\">%s</a>\n" , a[j]; } }' | tr -d '\n'`
# Map the PHP file into HTML options so that
# it can be substituted in for the quick-class-picker.
CMENU=""
# For now, leave the CMENU disabled
CMENUBEGIN="<!--"
CMENUEND="-->"
if test "x$subdir" = "x." ; then
# Disable CMENU on toplevel anyway
CMENUBEGIN="<!--"
CMENUEND="-->"
else
test -f "$subdir/classmap.inc" && \
CMENU=`grep '=>' "$subdir/classmap.inc" | sed -e 's+"\([^"]*\)" => "'"$subdir/html/"'\([^"]*\)"+<option value="\2">\1<\/option>+' | tr -d '\n'`
if test -f "$subdir/classmap.inc" && grep "=>" "$subdir/classmap.inc" > /dev/null 2>&1 ; then
# Keep the menu, it's useful
:
else
CMENUBEGIN="<!--"
CMENUEND="-->"
fi
fi
# Now substitute in the MENU in every file. This depends
# on HTML_HEADER (ie. header.html) containing the
# <!-- menu --> comment.
for i in "$htmldir"/*.html
do
if test -f "$i" ; then
sed -e "s+<!-- menu -->+$MENU+" \
-e "s+<!-- gmenu -->+$GMENU+" \
-e "s+<!-- pmenu.*-->+$PMENU+" \
-e "s+<!-- cmenu.begin -->+$CMENUBEGIN+" \
-e "s+<!-- cmenu.end -->+$CMENUEND+" \
< "$i" | sed -e "s+@topdir@+$htmltop+g" > "$i.new" && mv "$i.new" "$i"
sed -e "s+<!-- cmenu -->+$CMENU+" < "$i" > "$i.new"
test -s "$i.new" && mv "$i.new" "$i"
fi
done
}
### Handle the Doxygen processing of a toplevel directory.
apidox_toplevel()
{
echo ""
echo "*** Creating API documentation main page for $module_name"
echo "*"
rm -f "Doxyfile"
for i in "$top_srcdir/doc/api/Doxyfile.global" \
"$top_srcdir/admin/Doxyfile.global" \
"$DOXDATA/Doxyfile.global"
do
if test -f "$i" ; then
cp "$i" Doxyfile
break
fi
done
if test ! -f "Doxyfile" ; then
echo "* Cannot create Doxyfile."
exit 1
fi
cat "$top_builddir/Doxyfile.in" >> Doxyfile
echo "INPUT = $top_srcdir" >> Doxyfile
echo "OUTPUT_DIRECTORY = $top_builddir" >> Doxyfile ; \
echo "FILE_PATTERNS = *.dox" >> Doxyfile ; \
echo "RECURSIVE = NO" >> Doxyfile ; \
echo "ALPHABETICAL_INDEX = NO" >> Doxyfile ; \
echo "HTML_OUTPUT = ." >> Doxyfile ; \
apidox_htmlfiles "main"
# KDevelop has a top-level Makefile.am with settings.
for i in "$top_srcdir/Makefile.am.in" "$top_srcdir/Makefile.am"
do
if test -f "$i" ; then
grep '^DOXYGEN_SET_' "$i" | \
sed -e 's+DOXYGEN_SET_++' -e "s+@topdir@+$top_srcdir+" >> Doxyfile
apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile"
break
fi
done
apidox_local
doxygen Doxyfile
( cd "$top_srcdir" && grep -l '^include.*Doxyfile.am' `find . -name Makefile.am` ) | sed -e 's+/Makefile.am$++' -e 's+^\./++' | sort > subdirs.in
for i in `cat subdirs.in`
do
test "x." = "x$i" && continue;
dir=`dirname "$i"`
file=`basename "$i"`
if test "x." = "x$dir" ; then
dir=""
else
dir="$dir/"
fi
indent=`echo "$dir" | sed -e 's+[^/]*/+\&nbsp;\&nbsp;+g' | sed -e 's+&+\\\&+g'`
entryname=`extract_line DOXYGEN_SET_PROJECT_NAME "$top_srcdir/$dir/$file/Makefile.am"`
test -z "$entryname" && entryname="$file"
if grep DOXYGEN_EMPTY "$top_srcdir/$dir/$file/Makefile.am" > /dev/null 2>&1 ; then
echo "<li>$indent$file</li>"
else
echo "<li>$indent<a href=\"@topdir@/$dir$file/html/index.html\">$entryname</a></li>"
fi
done > subdirs
doxyndex
}
### Handle the Doxygen processing of a non-toplevel directory.
apidox_subdir()
{
echo ""
echo "*** Creating apidox in $subdir"
echo "*"
rm -f "$subdir/Doxyfile"
if test ! -d "$top_srcdir/$subdir" ; then
echo "* No source (sub)directory $subdir"
return
fi
for i in "$top_srcdir/doc/api/Doxyfile.global" \
"$top_srcdir/admin/Doxyfile.global" \
"$DOXDATA/Doxyfile.global"
do
if test -f "$i" ; then
cp "$i" "$subdir/Doxyfile"
break
fi
done
test -f "Doxyfile.in" || create_doxyfile_in
cat "Doxyfile.in" >> "$subdir/Doxyfile"
echo "PROJECT_NAME = \"$subdir\"" >> "$subdir/Doxyfile"
echo "INPUT = $srcdir" >> "$subdir/Doxyfile"
echo "OUTPUT_DIRECTORY = ." >> "$subdir/Doxyfile"
if grep -l "$subdir/" subdirs.in > /dev/null 2>&1 ; then
echo "RECURSIVE = NO" >> "$subdir/Doxyfile"
fi
echo "HTML_OUTPUT = $subdir/html" >> "$subdir/Doxyfile"
echo "GENERATE_TAGFILE = $subdir/$subdirname.tag" >> "$subdir/Doxyfile"
test -d "$top_srcdir/doc/api" && \
echo "IMAGE_PATH = $top_srcdir/doc/api" >> "$subdir/Doxyfile"
apidox_htmlfiles ""
# Makefile.ams may contain overrides to our settings,
# so copy them in.
grep '^DOXYGEN_SET_' "$srcdir/Makefile.am" | \
sed -e 's+DOXYGEN_SET_++' >> "$subdir/Doxyfile"
apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile"
excludes=`extract_line DOXYGEN_EXCLUDE`
if test -n "$excludes"; then
patterns=""
dirs=""
for item in `echo "$excludes"`; do
if test -d "$top_srcdir/$subdir/$item"; then
dirs="$dirs $top_srcdir/$subdir/$item/"
else
patterns="$patterns $item"
fi
done
echo "EXCLUDE_PATTERNS += $patterns" >> "$subdir/Doxyfile"
echo "EXCLUDE += $dirs" >> "$subdir/Doxyfile"
fi
echo "TAGFILES = \\" >> "$subdir/Doxyfile"
## For now, don't support \ continued references lines
tags=`extract_line DOXYGEN_REFERENCES`
for i in $tags qt ; do
tagsubdir=`dirname $i` ; tag=`basename $i`
tagpath=""
not_found=""
if test "x$tagsubdir" = "x." ; then
tagsubdir=""
else
tagsubdir="$tagsubdir/"
fi
# Find location of tag file
if test -f "$tagsubdir$tag/$tag.tag" ; then
file="$tagsubdir$tag/$tag.tag"
loc="$tagsubdir$tag/html"
else
# This checks for dox built with_out_ --no-modulename
# in the same build dir as this dox run was started in.
file=`ls -1 ../*-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null`
if test -n "$file" ; then
loc=`echo "$file" | sed -e "s/$tag.tag\$/html/"`
else
# If the tag file doesn't exist yet, but should
# because we have the right dirs here, queue
# this directory for re-processing later.
if test -d "$top_srcdir/$tagsubdir$tag" ; then
echo "* Need to re-process $subdir for tag $i"
echo "$subdir" >> "subdirs.later"
else
# Re-check in $PREFIX if needed.
test -n "$PREFIX" && \
file=`cd "$PREFIX" && \
ls -1 *-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null`
# If something is found, patch it up. The location must be
# relative to the installed location of the dox and the
# file must be absolute.
if test -n "$file" ; then
loc=`echo "../$file" | sed -e "s/$tag.tag\$/html/"`
file="$PREFIX/$file"
echo "* Tags for $tagsubdir$tag will only work when installed."
not_found="YES"
fi
fi
fi
fi
if test "$tag" = "qt" ; then
if test -z "$QTDOCDIR" ; then
echo " $file" >> "$subdir/Doxyfile"
else
if test -z "$file" ; then
# Really no Qt tags
echo "" >> "$subdir/Doxyfile"
else
echo " $file=$QTDOCDIR" >> "$subdir/Doxyfile"
fi
fi
else
if test -n "$file" ; then
test -z "$not_found" && echo "* Found tag $file"
echo " $file=../$top_builddir$loc \\" >> "$subdir/Doxyfile"
fi
fi
done
apidox_local
if grep '^DOXYGEN_EMPTY' "$srcdir/Makefile.am" > /dev/null 2>&1 ; then
# This directory is empty, so don't process it, but
# *do* handle subdirs that might have dox.
:
else
# Regular processing
doxygen "$subdir/Doxyfile"
doxyndex
fi
}
### Run a given subdir by setting up global variables first.
do_subdir()
{
subdir=`echo "$1" | sed -e 's+/$++'`
srcdir="$top_srcdir/$subdir"
subdirname=`basename "$subdir"`
mkdir -p "$subdir" 2> /dev/null
if test ! -d "$subdir" ; then
echo "Can't create dox subdirectory $subdir"
return
fi
top_builddir=`echo "/$subdir" | sed -e 's+/[^/]*+../+g'`
apidox_subdir
}
### Create installdox-slow in the toplevel
create_installdox()
{
# Fix up the installdox script so it accepts empty args
#
# This code is copied from the installdox generated by Doxygen,
# copyright by Dimitri van Heesch and released under the GPL.
# This does a _slow_ update of the dox, because it loops
# over the given substitutions instead of assuming all the
# needed ones are given.
#
cat <<\EOF
#! /usr/bin/env perl
%subst = () ;
$quiet = 0;
if (open(F,"search.cfg"))
{
$_=<F> ; s/[ \t\n]*$//g ; $subst{"_doc"} = $_;
$_=<F> ; s/[ \t\n]*$//g ; $subst{"_cgi"} = $_;
}
while ( @ARGV ) {
$_ = shift @ARGV;
if ( s/^-// ) {
if ( /^l(.*)/ ) {
$v = ($1 eq "") ? shift @ARGV : $1;
($v =~ /\/$/) || ($v .= "/");
$_ = $v;
if ( /(.+)\@(.+)/ ) {
$subst{$1} = $2;
} else {
print STDERR "Argument $_ is invalid for option -l\n";
&usage();
}
}
elsif ( /^q/ ) {
$quiet = 1;
}
elsif ( /^\?|^h/ ) {
&usage();
}
else {
print STDERR "Illegal option -$_\n";
&usage();
}
}
else {
push (@files, $_ );
}
}
if ( ! @files ) {
if (opendir(D,".")) {
foreach $file ( readdir(D) ) {
$match = ".html";
next if ( $file =~ /^\.\.?$/ );
($file =~ /$match/) && (push @files, $file);
($file =~ "tree.js") && (push @files, $file);
}
closedir(D);
}
}
if ( ! @files ) {
print STDERR "Warning: No input files given and none found!\n";
}
foreach $f (@files)
{
if ( ! $quiet ) {
print "Editing: $f...\n";
}
$oldf = $f;
$f .= ".bak";
unless (rename $oldf,$f) {
print STDERR "Error: cannot rename file $oldf\n";
exit 1;
}
if (open(F,"<$f")) {
unless (open(G,">$oldf")) {
print STDERR "Error: opening file $oldf for writing\n";
exit 1;
}
if ($oldf ne "tree.js") {
while (<F>) {
foreach $sub (keys %subst) {
s/doxygen\=\"$sub\:([^ \"\t\>\<]*)\" (href|src)=\"\1/doxygen\=\"$sub:$subst{$sub}\" \2=\"$subst{$sub}/g;
print G "$_";
}
}
}
else {
while (<F>) {
foreach $sub (keys %subst) {
s/\"$sub\:([^ \"\t\>\<]*)\", \"\1/\"$sub:$subst{$sub}\" ,\"$subst{$sub}/g;
print G "$_";
}
}
}
}
else {
print STDERR "Warning file $f does not exist\n";
}
unlink $f;
}
sub usage {
print STDERR "Usage: installdox [options] [html-file [html-file ...]]\n";
print STDERR "Options:\n";
print STDERR " -l tagfile\@linkName tag file + URL or directory \n";
print STDERR " -q Quiet mode\n\n";
exit 1;
}
EOF
}
# Do only the subdirs that match the RE passed in as $1
do_subdirs_re()
{
RE=`echo "$1" | sed -e 's+/$++'`
# Here's a queue of dirs to re-process later when
# all the rest have been done already.
> subdirs.later
# subdirs.top lists _all_ subdirs of top in the order they
# should be handled; subdirs.in lists those dirs that contain
# dox. So the intersection of the two is the ordered list
# of top-level subdirs that contain dox.
#
# subdirs.top also doesn't contain ".", so that special
# case can be ignored in the loop.
(
for i in `grep "^$RE" subdirs.top`
do
if test "x$i" = "x." ; then
continue
fi
# Calculate intersection of this element and the
# set of dox dirs.
if grep "^$i\$" subdirs.in > /dev/null 2>&1 ; then
echo "$i"
mkdir -p "$i" 2> /dev/null
# Handle the subdirs of this one
for j in `grep "$i/" subdirs.in`
do
echo "$j"
mkdir -p "$j" 2> /dev/null
done
fi
done
# Now we still need to handle whatever is left
for i in `cat subdirs.in`
do
test -d "$i" || echo "$i"
mkdir -p "$i" 2> /dev/null
done
) > subdirs.sort
for i in `cat subdirs.sort`
do
do_subdir "$i"
done
if test -s "subdirs.later" ; then
sort subdirs.later | uniq > subdirs.sort
for i in `cat subdirs.sort`
do
: > subdirs.later
echo "*** Reprocessing $i"
do_subdir "$i"
test -s "subdirs.later" && echo "* Some tag files were still not found."
done
fi
}
if test "x." = "x$top_builddir" ; then
apidox_toplevel
create_subdirs
create_installdox > installdox-slow
if test "x$recurse" = "x1" ; then
if test "x$module_name" = "xkdelibs" ; then
if test -z "$QTDOCTAG" && test -d "$QTDOCDIR" && \
test ! -f "qt/qt.tag" ; then
# Special case: create a qt tag file.
echo "*** Creating a tag file for the Qt library:"
mkdir qt
doxytag -t qt/qt.tag "$QTDOCDIR" > /dev/null 2>&1
fi
fi
if test -n "$QTDOCTAG" && test -r "$QTDOCTAG" ; then
echo "*** Copying tag file for the Qt library:"
mkdir qt
cp "$QTDOCTAG" qt/qt.tag
fi
do_subdirs_re "."
fi
else
if test "x$recurse" = "x1" ; then
do_subdirs_re "$subdir"
else
do_subdir "$subdir"
fi
fi
# At the end of a run, clean up stuff.
if test "YES" = "$cleanup" ; then
rm -f subdirs.in subdirs.later subdirs.sort subdirs.top Doxyfile.in
rm -f `find . -name Doxyfile`
rm -f qt/qt.tag
rmdir qt > /dev/null 2>&1
fi
exit 0

View File

@ -1,401 +0,0 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2005-11-07.23
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch. It can only install one file at a time, a restriction
# shared with many OS's install programs.
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
posix_glob=
posix_mkdir=
# Symbolic mode for testing mkdir with directories.
# It is the same as 755, but also tests that "u+" works.
test_mode=u=rwx,g=rx,o=rx,u+wx
# Desired mode of installed file.
mode=0755
# Desired mode of newly created intermediate directories.
# It is empty if not known yet.
intermediate_mode=
chmodcmd=$chmodprog
chowncmd=
chgrpcmd=
stripcmd=
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=
dst=
dir_arg=
dstarg=
no_target_directory=
usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
-c (ignored)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
--help display this help and exit.
--version display version info and exit.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
"
while test -n "$1"; do
case $1 in
-c) shift
continue;;
-d) dir_arg=true
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-s) stripcmd=$stripprog
shift
continue;;
-t) dstarg=$2
shift
shift
continue;;
-T) no_target_directory=true
shift
continue;;
--version) echo "$0 $scriptversion"; exit $?;;
*) # When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
test -n "$dir_arg$dstarg" && break
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dstarg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dstarg"
shift # fnord
fi
shift # arg
dstarg=$arg
done
break;;
esac
done
if test -z "$1"; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call `install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
test -n "$dir_arg" || trap '(exit $?); exit' 1 2 13 15
for src
do
# Protect names starting with `-'.
case $src in
-*) src=./$src ;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dstarg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dstarg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst ;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dstarg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
# Prefer dirname, but fall back on a substitute if dirname fails.
dstdir=`
(dirname "$dst") 2>/dev/null ||
expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$dst" : 'X\(//\)[^/]' \| \
X"$dst" : 'X\(//\)$' \| \
X"$dst" : 'X\(/\)' \| \
. : '\(.\)' 2>/dev/null ||
echo X"$dst" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
/^X\(\/\/\)[^/].*/{ s//\1/; q; }
/^X\(\/\/\)$/{ s//\1/; q; }
/^X\(\/\).*/{ s//\1/; q; }
s/.*/./; q'
`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
posix_mkdir=false
if $mkdirprog -m $test_mode -p -- / >/dev/null 2>&1; then
posix_mkdir=true
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./-m "$test_mode" ./-p ./-- 2>/dev/null
fi ;;
esac
if
$posix_mkdir && {
# With -d, create the new directory with the user-specified mode.
# Otherwise, create it using the same intermediate mode that
# mkdir -p would use when creating intermediate directories.
# POSIX says that this mode is "$(umask -S),u+wx", so use that
# if umask -S works.
if test -n "$dir_arg"; then
mkdir_mode=$mode
else
case $intermediate_mode in
'')
if umask_S=`(umask -S) 2>/dev/null`; then
intermediate_mode=$umask_S,u+wx
else
intermediate_mode=$test_mode
fi ;;
esac
mkdir_mode=$intermediate_mode
fi
$mkdirprog -m "$mkdir_mode" -p -- "$dstdir"
}
then :
else
# mkdir does not conform to POSIX, or it failed possibly due to
# a race condition. Create the directory the slow way, step by
# step, checking for races as we go.
case $dstdir in
/*) pathcomp=/ ;;
-*) pathcomp=./ ;;
*) pathcomp= ;;
esac
case $posix_glob in
'')
if (set -f) 2>/dev/null; then
posix_glob=true
else
posix_glob=false
fi ;;
esac
oIFS=$IFS
IFS=/
$posix_glob && set -f
set fnord $dstdir
shift
$posix_glob && set +f
IFS=$oIFS
for d
do
test "x$d" = x && continue
pathcomp=$pathcomp$d
if test ! -d "$pathcomp"; then
$mkdirprog "$pathcomp"
# Don't fail if two instances are running concurrently.
test -d "$pathcomp" || exit 1
fi
pathcomp=$pathcomp/
done
obsolete_mkdir_used=true
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd "$mode" "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
$doit $cpprog "$src" "$dsttmp" &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
&& { test -z "$chmodcmd" || $doit $chmodcmd "$mode" "$dsttmp"; } &&
# Now rename the file to the real destination.
{ $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null \
|| {
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
if test -f "$dst"; then
$doit $rmcmd -f "$dst" 2>/dev/null \
|| { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null \
&& { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }; }\
|| {
echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
else
:
fi
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
} || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

5891
admin/libtool.m4.in vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,353 +0,0 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
scriptversion=2004-09-07.08
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
echo 1>&2 "Try \`$0 --help' for more information"
exit 1
fi
run=:
# In the cases where this matters, `missing' is being run in the
# srcdir already.
if test -f configure.ac; then
configure_ac=configure.ac
else
configure_ac=configure.in
fi
msg="missing on your system"
case "$1" in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
shift
"$@" && exit 0
# Exit code 63 means version mismatch. This often happens
# when the user try to use an ancient version of a tool on
# a file that requires a minimum version. In this case we
# we should proceed has if the program had been absent, or
# if --run hadn't been passed.
if test $? = 63; then
run=:
msg="probably too old"
fi
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
error status if there is no known handling for PROGRAM.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
aclocal touch file \`aclocal.m4'
autoconf touch file \`configure'
autoheader touch file \`config.h.in'
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
help2man touch the output file
lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Send bug reports to <bug-automake@gnu.org>."
exit 0
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit 0
;;
-*)
echo 1>&2 "$0: Unknown \`$1' option"
echo 1>&2 "Try \`$0 --help' for more information"
exit 1
;;
esac
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program).
case "$1" in
lex|yacc)
# Not GNU programs, they don't have --version.
;;
tar)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
exit 1
fi
;;
*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone
# running `$TOOL --version' or `$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing.
exit 1
fi
;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case "$1" in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
case "$f" in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
esac
done
touch $touch_files
;;
automake*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
while read f; do touch "$f"; done
;;
autom4te)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
proper tools for further handling them.
You can get \`$1' as part of \`Autoconf' from any GNU
archive site."
file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo "#! /bin/sh"
echo "# Created by GNU Automake missing as a replacement of"
echo "# $ $@"
echo "exit 0"
chmod +x $file
exit 1
fi
;;
bison|yacc)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
if [ $# -ne 1 ]; then
eval LASTARG="\${$#}"
case "$LASTARG" in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
if [ ! -f y.tab.h ]; then
echo >y.tab.h
fi
if [ ! -f y.tab.c ]; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
lex|flex)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
if [ $# -ne 1 ]; then
eval LASTARG="\${$#}"
case "$LASTARG" in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
if [ ! -f lex.yy.c ]; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
help2man)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
fi
if [ -f "$file" ]; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit 1
fi
;;
makeinfo)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
fi
touch $file
;;
tar)
shift
# We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error
# messages.
if (gnutar --version > /dev/null 2>&1); then
gnutar "$@" && exit 0
fi
if (gtar --version > /dev/null 2>&1); then
gtar "$@" && exit 0
fi
firstarg="$1"
if shift; then
case "$firstarg" in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
case "$firstarg" in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
;;
esac
fi
echo 1>&2 "\
WARNING: I can't seem to be able to run \`tar' with the given arguments.
You may want to install GNU tar or Free paxutils, or check the
command line arguments."
exit 1
;;
*)
echo 1>&2 "\
WARNING: \`$1' is needed, and is $msg.
You might have modified some files without having the
proper tools for further handling them. Check the \`README' file,
it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case
some other package would contain this missing \`$1' program."
exit 1
;;
esac
exit 0
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -1,158 +0,0 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
scriptversion=2005-06-29.22
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain.
#
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
errstatus=0
dirmode=
usage="\
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
Create each directory DIR (with mode MODE, if specified), including all
leading file name components.
Report bugs to <bug-automake@gnu.org>."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage"
exit $?
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--version)
echo "$0 $scriptversion"
exit $?
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
# mkdir -p a/c at the same time, both will detect that a is missing,
# one will create a, then the other will try to create a and die with
# a "File exists" error. This is a problem when calling mkinstalldirs
# from a parallel make. We use --version in the probe to restrict
# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in
'')
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
else
# On NextStep and OpenStep, the `mkdir' command does not
# recognize any option. It will interpret all options as
# directories to create, and then abort because `.' already
# exists.
test -d ./-p && rmdir ./-p
test -d ./--version && rmdir ./--version
fi
;;
*)
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
else
# Clean up after NextStep and OpenStep mkdir.
for d in ./-m ./-p ./--version "./$dirmode";
do
test -d $d && rmdir $d
done
fi
;;
esac
for file
do
case $file in
/*) pathcomp=/ ;;
*) pathcomp= ;;
esac
oIFS=$IFS
IFS=/
set fnord $file
shift
IFS=$oIFS
for d
do
test "x$d" = x && continue
pathcomp=$pathcomp$d
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp=$pathcomp/
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -1,371 +0,0 @@
#!/usr/bin/perl -w
# Check namespace cleanness of a library.
# Allowed symbols are passed as arguments.
# They may have trailing * = wildcard.
# Wildcards may be also specified as *::* (e.g. K*::* for all KDE classes)
# Symbols are listed as full function unmangled names without arguments,
# e.g. 'foo bar* nspace::*' allows foo(), foo(int), bar(), barbar()
# and all symbols in namespace/class nspace.
# If an argument has comma in it, it's a filename of a file containing
# allowed symbols, one per line.
$thisProg = "$0"; # This programs name
$library = "";
$allowed_symbols = "";
$debug = 0;
$allowed_weak = "";
$weak_specified = 0;
while( defined( $ARGV[ 0 ] ))
{
$_ = shift;
if( /^--verbose$|^-v$/ )
{
$debug = 1;
}
elsif( /^--help$|^-h$/ )
{
print STDOUT "Usage $thisProg [OPTION] ... library [allowed symbols] ...\n",
"\n",
"Check if the given library has only allowed public symbols.\n",
"\n",
" --allowweak=[symbol] allow only these weak symbols\n",
" -v, --verbose verbosely list files processed\n",
" -h, --help print this help, then exit\n";
exit 0;
}
elsif( /^--allowweak=(.*)$/ )
{
$allowed_weak .= " " . $1;
$weak_specified = 1;
}
elsif( /^--allowweak$/ ) # simply list all weak
{
$allowed_weak .= " ";
$weak_specified = 1;
}
elsif( /^--*/ )
{
die "Invalid argument!\n";
}
else
{
if( ! $library )
{
$library = $_;
}
else
{
$allowed_symbols .= " " . $_;
}
}
}
if( ! $weak_specified )
{
$allowed_weak = "*";
# allow all weak symbols by default
# instances of templates and similar stuff - unfortunately includes also things from other libraries,
# so it cannot be on by default
}
print STDERR "library:" . $library . "\n" if $debug;
print STDERR "allowed_symbols:" . $allowed_symbols . "\n" if $debug;
print STDERR "allowed_weak:" . $allowed_weak . "\n" if $debug;
$default_symbols = "_fini _init"; # system symbols
# on my system, every .so has :
# A _DYNAMIC
# A _GLOBAL_OFFSET_TABLE_
# A __bss_start
# A _edata
# A _end
# T _fini
# T _init
# no need to list A symbols in $default_symbols
print STDERR "default_symbols: " . $default_symbols . "\n" if $debug;
print STDOUT "Namespace cleanness check for " . $library . " :\n";
$lib_file = "";
if( $library =~ /\.la$/ )
{
# get the real library file from .la
open( FILEIN, $library ) || die "Couldn't open $! !\n";
while( $line = <FILEIN> )
{
if( $line =~ /library_names=\'([^ ]*).*/o )
{
$lib_file = $1;
}
}
close( FILEIN );
if( ! $lib_file )
{
print STDERR "Library file not found in .la file!\n";
exit 1;
}
my $libpath = $library;
$libpath =~ s%[^/]*$%%;
if( -e $libpath . ".libs/" . $lib_file )
{
$lib_file = $libpath . ".libs/" . $lib_file;
}
else
{
$lib_file = $libpath . $lib_file;
}
}
else
{
$lib_file = $library;
}
print STDERR "libfile: ". $lib_file . "\n" if $debug;
$allowed_symbols .= " " . $default_symbols;
sub process_symbols($\@\%\@);
@wildcards = ();
%exacts = ();
@regwildcards = ();
process_symbols( $allowed_symbols, @wildcards, %exacts, @regwildcards );
@weak_wildcards = ();
%weak_exacts = ();
@weak_regwildcards = ();
process_symbols( $allowed_weak, @weak_wildcards, %weak_exacts, @weak_regwildcards );
# grep is for stripping not exported symbols, which don't have address (=first column)
$nm_command = "nm -BDCg " . $lib_file . " | grep -v '^ ' |";
# TODO how portable is this nmcheck stuff?
print STDERR "nm command:" . $nm_command . "\n" if $debug;
open( FILEIN, $nm_command ) || die "nm command failed\n";
my $exit_code = 0;
while( $line = <FILEIN> )
{
my $type;
my $symbol;
if( $line =~ /^[^ ]* (.) (.*)$/o )
{
$type = $1;
$symbol = $2;
}
else
{
die "Invalid line: " . $line . "\n";
}
print STDERR "Type: " . $type . " , symbol: " . $symbol . "\n" if $debug;
if( $type eq "A" )
{ # these should be system symbols, so ignore them
next;
}
my $orig_symbol = $symbol;
if( $symbol =~ /\(anonymous namespace\)/o )
{ # TODO tell to prefer named namespaces? (shorter symbols)
next;
}
# strip prefixes
# the :: appending is to make "CLASS::*" work also for "vtable for CLASS"
$symbol =~ s/^typeinfo for (.*)$/$1::/o;
$symbol =~ s/^typeinfo fn for (.*)$/$1::/o;
$symbol =~ s/^typeinfo name for (.*)$/$1::/o;
$symbol =~ s/^vtable for (.*)$/$1::/o;
$symbol =~ s/^guard variable for (.*)$/$1::/o;
$symbol =~ s/^reference temporary for (.*)$/$1::/o;
$symbol =~ s/^VTT for (.*)$/$1::/o;
$symbol =~ s/^virtual thunk \[[^\]]*\] to (.*)$/$1::/o;
$symbol =~ s/^non-virtual thunk \[[^\]]*\] to (.*)$/$1::/o;
$symbol =~ s/^covariant return thunk \[[^\]]*\] to (.*)$/$1::/o;
$symbol =~ s/^construction vtable thunk for (.*)$/$1::/o;
$symbol =~ s/^construction vtable for .*-in-(.*) [0-9]*$/$1::/o;
# templates seem to have also return types mangled in their name, and nm prints it too
# they have also template arguments in the symbol
# get rid of both of those
while( $symbol =~ /<.*>/o )
{
$symbol =~ s/<[^<>]*>//o; # strip innermost <>
}
if( $symbol !~ /operator\(\)/o )
{
$symbol =~ s/ ?\(.*\).*$//o; # strip () and all after it
}
else
{
$symbol =~ s/(^|:| )operator\(\) ?\(.*\).*$//o; # strip () and all after it
}
$symbol =~ s/\[.*\] *$//o; # strip [in-charge] etc.
if( $symbol =~ /(^|:| )operator /o )
{
$symbol =~ s/.* ([^\s]*)operator /$1/o; # strip everything before 'X::operator blah'
}
else
{
$symbol =~ s/.* ([^\s]+) *$/$1/o; # get last word (strip return type)
}
# print STDERR "Processed symbol: " . $symbol . "\n" if $debug;
my $found = 0;
if( $exacts{ $symbol } )
{
$found = 1;
}
if( ! $found )
{
for my $wild ( @wildcards )
{
if( index( $symbol, $wild ) == 0 )
{
$found = 1;
last;
}
}
}
if( ! $found )
{
for my $wild ( @regwildcards )
{
if( $symbol =~ /^$wild$/ )
{
$found = 1;
last;
}
}
}
if( ( ! $found ) && ( $type eq "W" || $type eq "V" ))
{
if( $weak_exacts{ $symbol } )
{
$found = 1;
}
if( ! $found )
{
for my $wild ( @weak_wildcards )
{
if( index( $symbol, $wild ) == 0 )
{
$found = 1;
last;
}
}
}
if( ! $found )
{
for my $wild ( @weak_regwildcards )
{
if( $symbol =~ /^$wild$/ )
{
$found = 1;
last;
}
}
}
}
if( ! $found )
{
print STDERR "Public symbol " . $orig_symbol . " is not allowed!\n";
$exit_code = 1;
}
}
close( FILEIN );
print STDOUT $exit_code == 0 ? "OK\n" : "FAILED\n";
exit $exit_code;
sub process_symbols($\@\%\@)
{
my $allowed_symbols = $_[ 0 ];
my $wildcards_ref = $_[ 1 ];
my $exacts_ref = $_[ 2 ];
my $regwildcards_ref = $_[ 3 ];
$allowed_symbols =~ s/^ *//o; # strip whitespace
$allowed_symbols =~ s/ *$//o;
if( $allowed_symbols eq "NONE" )
{
$allowed_symbols = "";
}
my @symbols1 = split( ' ', $allowed_symbols );
my $i = 0;
my @symbols2 = ();
while( defined( $symbols1[ $i ] ))
{
my $symbol = $symbols1[ $i ];
if( $symbol =~ /\./ ) # dot in name -> file
{
open( SYMIN, $symbol ) || die ( "Cannot open file " . $symbol . "!" );
while( $line = <SYMIN> )
{
$line =~ s/^\s*//o; # strip whitespace
$line =~ s/\s*$//o;
if( $line !~ /^$/o # empty line
&& $line !~ /^\s*#/ ) # comment line starting with #
{
$symbols2[ $#symbols2 + 1 ] = $line;
}
}
close( SYMIN );
}
else
{
$symbols2[ $#symbols2 + 1 ] = $symbol;
}
$i++;
}
$i = 0;
while( defined( $symbols2[ $i ] ))
{
my $symbol = $symbols2[ $i ];
if( $symbol =~ /__/
|| $symbol =~ /^_[A-Z]/ )
{ # ISO C++ 2.10.2
die "Symbols containing a double underscore or beginning with an underscore and an upper-case letter are reserved!\n";
}
elsif( $symbol eq "main"
|| $symbol eq "main*" )
{
die "Symbol main is not allowed!\n";
}
if( $symbol =~ /^([^\*]*)\*$/o # trailing * without any * before it
&& $symbol !~ /operator\*$/o )
{
print STDERR "wildcard:" . $symbol . "\n" if $debug;
$wildcards_ref->[ $#{$wildcards_ref} + 1 ] = $1;
}
elsif( $symbol =~ /\*$/o
&& ( $symbol =~ /\*::/o || $symbol =~ /::\*/o )
&& $symbol !~ /^\*/o
&& $symbol !~ /operator\*$/o )
{
print STDERR "regwildcard:" . $symbol . "\n" if $debug;
$symbol =~ s/\*/\.\*/go; # change * to .* (regexp)
$regwildcards_ref->[ $#{$regwildcards_ref} + 1 ] = $symbol;
}
else
{
print STDERR "exact:" . $symbol . "\n" if $debug;
$exacts_ref->{ $symbol } = 1;
}
$i++;
}
}

View File

@ -1,192 +0,0 @@
### -*- autoconf -*-
dnl This file is part of the KDE libraries/packages
dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu)
dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org)
dnl This file is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Library General Public
dnl License as published by the Free Software Foundation; either
dnl version 2 of the License, or (at your option) any later version.
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl Library General Public License for more details.
dnl You should have received a copy of the GNU Library General Public License
dnl along with this library; see the file COPYING.LIB. If not, write to
dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
dnl Boston, MA 02110-1301, USA.
AC_DEFUN([KDE_CHECK_MICO],
[
AC_REQUIRE([KDE_CHECK_LIBDL])
AC_REQUIRE([KDE_MISC_TESTS])
AC_MSG_CHECKING(for MICO)
if test -z "$MICODIR"; then
kde_micodir=/usr/local
else
kde_micodir="$MICODIR"
fi
AC_ARG_WITH(micodir,
[ --with-micodir=micodir where mico is installed ],
kde_micodir=$withval,
kde_micodir=$kde_micodir
)
AC_CACHE_VAL(kde_cv_mico_incdir,
[
mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes"
AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir)
])
kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'`
if test ! -r $kde_micodir/include/CORBA.h; then
AC_MSG_ERROR([No CORBA.h found, specify another micodir])
fi
AC_MSG_RESULT($kde_micodir)
MICO_INCLUDES=-I$kde_micodir/include
AC_SUBST(MICO_INCLUDES)
MICO_LDFLAGS=-L$kde_micodir/lib
AC_SUBST(MICO_LDFLAGS)
micodir=$kde_micodir
AC_SUBST(micodir)
AC_MSG_CHECKING([for MICO version])
AC_CACHE_VAL(kde_cv_mico_version,
[
AC_LANG_C
cat >conftest.$ac_ext <<EOF
#include <stdio.h>
#include <mico/version.h>
int main() {
printf("MICO_VERSION=%s\n",MICO_VERSION);
return (0);
}
EOF
ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest'
if AC_TRY_EVAL(ac_compile); then
if eval `./conftest 2>&5`; then
kde_cv_mico_version=$MICO_VERSION
else
AC_MSG_ERROR([your system is not able to execute a small application to
find MICO version! Check $kde_micodir/include/mico/version.h])
fi
else
AC_MSG_ERROR([your system is not able to compile a small application to
find MICO version! Check $kde_micodir/include/mico/version.h])
fi
])
dnl installed MICO version
mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'`
mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'`
mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'`
if test "x$1" = "x"; then
req_version="2.3.0"
else
req_version=$1
fi
dnl required MICO version
req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'`
req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'`
req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'`
if test "$mico_v_maj" -lt "$req_v_maj" || \
( test "$mico_v_maj" -eq "$req_v_maj" && \
test "$mico_v_mid" -lt "$req_v_mid" ) || \
( test "$mico_v_mid" -eq "$req_v_mid" && \
test "$mico_v_min" -lt "$req_v_min" )
then
AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \
at least is required. You should upgrade MICO.])
else
AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)])
fi
LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL"
AC_SUBST(LIBMICO)
if test -z "$IDL"; then
IDL='$(kde_bindir)/cuteidl'
fi
AC_SUBST(IDL)
IDL_DEPENDENCIES='$(kde_includes)/CUTE.h'
AC_SUBST(IDL_DEPENDENCIES)
idldir="\$(includedir)/idl"
AC_SUBST(idldir)
])
AC_DEFUN([KDE_CHECK_MINI_STL],
[
AC_REQUIRE([KDE_CHECK_MICO])
AC_MSG_CHECKING(if we use mico's mini-STL)
AC_CACHE_VAL(kde_cv_have_mini_stl,
[
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
kde_save_cxxflags="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS $MICO_INCLUDES"
AC_TRY_COMPILE(
[
#include <mico/config.h>
],
[
#ifdef HAVE_MINI_STL
#error "nothing"
#endif
],
kde_cv_have_mini_stl=no,
kde_cv_have_mini_stl=yes)
CXXFLAGS="$kde_save_cxxflags"
AC_LANG_RESTORE
])
if test "x$kde_cv_have_mini_stl" = "xyes"; then
AC_MSG_RESULT(yes)
$1
else
AC_MSG_RESULT(no)
$2
fi
])
])
AC_DEFUN([KDE_CHECK_ANSI],
[
])
AC_DEFUN([KDE_CHECK_INSURE],
[
AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]],
[
if test $enableval = "no"; dnl
then ac_use_insure="no"
else ac_use_insure="yes"
fi
], [ac_use_insure="no"])
AC_MSG_CHECKING(if we will use Insure++ to debug)
AC_MSG_RESULT($ac_use_insure)
if test "$ac_use_insure" = "yes"; dnl
then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "????
fi
])
AC_DEFUN([KDE_CHECK_NEWLIBS],
[
])

View File

@ -1,223 +0,0 @@
#! /bin/sh
# ylwrap - wrapper for lex/yacc invocations.
scriptversion=2005-05-14.22
# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005
# Free Software Foundation, Inc.
#
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
case "$1" in
'')
echo "$0: No files given. Try \`$0 --help' for more information." 1>&2
exit 1
;;
--basedir)
basedir=$2
shift 2
;;
-h|--h*)
cat <<\EOF
Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]...
Wrapper for lex/yacc invocations, renaming files as desired.
INPUT is the input file
OUTPUT is one file PROG generates
DESIRED is the file we actually want instead of OUTPUT
PROGRAM is program to run
ARGS are passed to PROG
Any number of OUTPUT,DESIRED pairs may be used.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v|--v*)
echo "ylwrap $scriptversion"
exit $?
;;
esac
# The input.
input="$1"
shift
case "$input" in
[\\/]* | ?:[\\/]*)
# Absolute path; do nothing.
;;
*)
# Relative path. Make it absolute.
input="`pwd`/$input"
;;
esac
pairlist=
while test "$#" -ne 0; do
if test "$1" = "--"; then
shift
break
fi
pairlist="$pairlist $1"
shift
done
# The program to run.
prog="$1"
shift
# Make any relative path in $prog absolute.
case "$prog" in
[\\/]* | ?:[\\/]*) ;;
*[\\/]*) prog="`pwd`/$prog" ;;
esac
# FIXME: add hostname here for parallel makes that run commands on
# other machines. But that might take us over the 14-char limit.
dirname=ylwrap$$
trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15
mkdir $dirname || exit 1
cd $dirname
case $# in
0) $prog "$input" ;;
*) $prog "$@" "$input" ;;
esac
ret=$?
if test $ret -eq 0; then
set X $pairlist
shift
first=yes
# Since DOS filename conventions don't allow two dots,
# the DOS version of Bison writes out y_tab.c instead of y.tab.c
# and y_tab.h instead of y.tab.h. Test to see if this is the case.
y_tab_nodot="no"
if test -f y_tab.c || test -f y_tab.h; then
y_tab_nodot="yes"
fi
# The directory holding the input.
input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'`
# Quote $INPUT_DIR so we can use it in a regexp.
# FIXME: really we should care about more than `.' and `\'.
input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'`
while test "$#" -ne 0; do
from="$1"
# Handle y_tab.c and y_tab.h output by DOS
if test $y_tab_nodot = "yes"; then
if test $from = "y.tab.c"; then
from="y_tab.c"
else
if test $from = "y.tab.h"; then
from="y_tab.h"
fi
fi
fi
if test -f "$from"; then
# If $2 is an absolute path name, then just use that,
# otherwise prepend `../'.
case "$2" in
[\\/]* | ?:[\\/]*) target="$2";;
*) target="../$2";;
esac
# We do not want to overwrite a header file if it hasn't
# changed. This avoid useless recompilations. However the
# parser itself (the first file) should always be updated,
# because it is the destination of the .y.c rule in the
# Makefile. Divert the output of all other files to a temporary
# file so we can compare them to existing versions.
if test $first = no; then
realtarget="$target"
target="tmp-`echo $target | sed s/.*[\\/]//g`"
fi
# Edit out `#line' or `#' directives.
#
# We don't want the resulting debug information to point at
# an absolute srcdir; it is better for it to just mention the
# .y file with no path.
#
# We want to use the real output file name, not yy.lex.c for
# instance.
#
# We want the include guards to be adjusted too.
FROM=`echo "$from" | sed \
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
-e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
TARGET=`echo "$2" | sed \
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
-e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \
-e "s,$FROM,$TARGET," "$from" >"$target" || ret=$?
# Check whether header files must be updated.
if test $first = no; then
if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
echo "$2" is unchanged
rm -f "$target"
else
echo updating "$2"
mv -f "$target" "$realtarget"
fi
fi
else
# A missing file is only an error for the first file. This
# is a blatant hack to let us support using "yacc -d". If -d
# is not specified, we don't want an error when the header
# file is "missing".
if test $first = yes; then
ret=1
fi
fi
shift
shift
first=no
done
else
ret=$?
fi
# Remove the directory.
cd ..
rm -rf $dirname
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -0,0 +1,79 @@
trigger:
- main
strategy:
matrix:
Linux:
imageName: 'ubuntu-latest'
enableLibavif: 'OFF'
enableGLUT: 'ON'
Mac:
imageName: 'macos-latest'
enableLibavif: 'ON'
enableGLUT: 'OFF'
pool:
vmImage: $(imageName)
steps:
- checkout: self
submodules: true
- bash: echo "##vso[task.setvariable variable=shellopts]errexit"
displayName: "Force exit on error (bash)"
- script: |
sudo apt update
sudo apt install -y libeigen3-dev \
libepoxy-dev \
libavcodec-dev \
libavformat-dev \
libavutil-dev \
libswscale-dev \
libjpeg-dev \
libpng-dev \
libglu1-mesa-dev \
qtbase5-dev \
qtbase5-dev-tools \
libqt5opengl5-dev \
libgtk2.0-dev \
libgtkglext1-dev \
libfreetype6-dev \
libsdl2-dev \
libluajit-5.1-dev \
freeglut3-dev \
libfmt-dev
displayName: 'Install Linux dependencies'
condition: eq( variables['Agent.OS'], 'Linux' )
- script: |
brew install pkg-config \
eigen \
ffmpeg \
gtk+ \
gtkglext \
cspice \
fmt \
jpeg \
gettext \
libpng \
lua \
qt5 \
freetype \
libepoxy \
sdl2 \
freeglut \
libavif
brew link gettext --force
brew link lua --force
displayName: 'Install macOS dependencies'
condition: eq( variables['Agent.OS'], 'Darwin' )
- script: |
mkdir build
cd build
cmake -DENABLE_SPICE=ON -DENABLE_TOOLS=ON -DENABLE_TESTS=ON -DENABLE_SDL=ON -DENABLE_GTK=ON -DENABLE_GLUT=$(enableGLUT) -DENABLE_FFMPEG=ON -DENABLE_LIBAVIF=$(enableLibavif) ..
make -j $(nproc || echo 4)
CTEST_OUTPUT_ON_FAILURE=1 ctest
workingDirectory: "$(system.defaultworkingdirectory)"
displayName: "Build and test"

BIN
celestia-logo.png 100644

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -8,8 +8,8 @@
# make any changes to it.
#
# To learn more about Celestia, visit the Celestia forums at:
# http://www.shatters.net/forum/
# or the Celestia web site at: http://www.shatters.net/celestia/
# https://celestia.space/forum/
# or the Celestia web site at: https://celestia.space/
#************************************************************************
@ -22,8 +22,8 @@ Configuration
# these file names or the order in which they are listed, unless you
# know exactly what you are doing. Most of these files can be viewed
# with a plain text editor. Discussion about their content and formats
# can be found on the Celestia forums: http://www.shatters.net/forum/
#
# can be found on the Celestia forums: https://celestia.space/forum/
# If you want to load all your stars from .stc files, you can now comment
# out the StarDatabase entry.
#------------------------------------------------------------------------
@ -31,41 +31,45 @@ Configuration
StarNameDatabase "data/starnames.dat"
StarCatalogs [ "data/revised.stc"
"data/extrasolar.stc"
"data/nearstars.stc"
"data/nearstars.stc"
"data/visualbins.stc"
"data/spectbins.stc"
"data/charm2.stc" ]
"data/charm2.stc"
"data/pulsars.stc" ]
HDCrossIndex "data/hdxindex.dat"
SAOCrossIndex "data/saoxindex.dat"
GlieseCrossIndex "data/gliesexindex.dat"
SolarSystemCatalogs [ "data/solarsys.ssc"
"data/dwarfplanets.ssc"
"data/asteroids.ssc"
"data/comets.ssc"
"data/outersys.ssc"
"data/minormoons.ssc"
"data/numberedmoons.ssc"
"data/extrasolar.ssc"
"data/eros_locs.ssc"
"data/gaspra_locs.ssc"
"data/ida_locs.ssc"
"data/merc_locs.ssc"
"data/venus_locs.ssc"
"data/earth_locs.ssc"
"data/mars_locs.ssc"
"data/moon_locs.ssc"
"data/mars_locs.ssc"
"data/marsmoons_locs.ssc"
"data/jupitermoons_locs.ssc"
"data/saturnmoons_locs.ssc"
"data/uranusmoons_locs.ssc"
"data/neptunemoons_locs.ssc"
"data/plutocharon_locs.ssc"
"data/eros_locs.ssc"
"data/gaspra_locs.ssc"
"data/ida_locs.ssc"
"data/itokawa_locs.ssc"
"data/ring_locs.ssc"
"data/world-capitals.ssc" ]
DeepSkyCatalogs [ "data/galaxies.dsc"
"data/globulars.dsc" ]
"data/globulars.dsc"
"data/openclusters.dsc" ]
AsterismsFile "data/asterisms.dat"
BoundariesFile "data/boundaries.dat"
@ -79,14 +83,14 @@ StarTextures
{
# This texture will be used for any spectral type not listed
# in this block.
Default "astar.jpg"
Default "astar.*"
O "bstar.*"
O "ostar.*"
B "bstar.*"
A "astar.*"
F "astar.*"
F "fstar.*"
G "gstar.*"
K "gstar.*"
K "kstar.*"
M "mstar.*"
# carbon stars
@ -96,16 +100,18 @@ StarTextures
S "mstar.*" # roughly between M and C
# Wolf-Rayet stars
WC "bstar.*"
WN "bstar.*"
WC "ostar.*"
WN "ostar.*"
WO "ostar.*"
# brown dwarfs
L "browndwarf.*"
L "lstar.*"
T "browndwarf.*"
Y "exo-class4night.*"
# stellar remnants
WD "astar.jpg"
NeutronStar "astar.jpg"
WD "whitedwarf.*"
NeutronStar "ostar.*"
}
@ -173,7 +179,7 @@ StarTextures
#
# To learn more about how to use and write CEL scripts and Lua scripts
# in Celestia, please visit the Celestia Scripting forum at:
# http://www.shatters.net/forum/viewforum.php?f=9
# https://celestia.space/forum/viewforum.php?f=9
#------------------------------------------------------------------------
InitScript "start.cel"
DemoScript "demo.cel"
@ -183,13 +189,13 @@ StarTextures
# The 'extras' directory is located under the celestia root directory
# and is used for storing third-party add-ons to Celestia. To learn
# more about Add-Ons for Celestia, visit the Celestia Add-Ons forum at:
# http://www.shatters.net/forum/viewforum.php?f=6
# https://celestia.space/forum/viewforum.php?f=6
#
# You may specify additional add-on directories by adding additional
# entries, such as the following example shows:
# ExtrasDirectories [ "extras" "myextras1" "myextras2" ]
#
# To specify absolute paths on windows, you either have to use "/" or
# To specify absolute paths on windows, you either have to use "/" or
# double backslashes to seperate path components. Example:
# ExtrasDirectories [ "D:/celestia-extras" ]
# or
@ -198,6 +204,22 @@ StarTextures
ExtrasDirectories [ "extras-standard" "extras" ]
#------------------------------------------------------------------------
# Addons in 'extras' directories can be skipped. For example, if you have
# an addon which provides a better version of ISS spacecraft you might
# want to use it instead of the default one shipped with Celestia. But if
# you load it you will have two spacecraft rendered in the same place. So
# you can either remove the default one but it will be reinstalled on
# Celestia upgrade or you can it to the skip list. Example:
# SkipExtras "extras-standard/iss/iss.ssc"
# or
# SkipExtras ["extras/wostars.stc" "extras-standard/iss/iss.ssc"]
#
# Please note that 1) only relative paths work, 2) directories are not
# accepted in the list only catalog file names.
#------------------------------------------------------------------------
# SkipExtras [ ]
#------------------------------------------------------------------------
# Font definitions.
#
@ -205,20 +227,21 @@ StarTextures
# text on the display screen. To view the list of fonts available with
# your distribution of Celestia, look in the fonts directory located
# under the Celestia root directory. The default fonts are UTF-8
# compatible in order to display non-English characters.
# compatible in order to display non-English characters. Font size is
# measured in points to ensure the same sizes on all DPI configurations.
#
# Font: Used to display all informational text.
# Default: "sans12.txf"
# Default: "DejaVuSans.ttf,9"
#
# LabelFont: Used to display all label text (objects, locations, etc.).
# Default "sans12.txf"
# Default "DejaVuSans.ttf,9"
#
# TitleFont: Used to display object names, messages, and script text.
# Default "sansbold20.txf"
# Default "DejaVuSans-Bold.ttf,15"
#------------------------------------------------------------------------
Font "sans12.txf"
LabelFont "sans12.txf"
TitleFont "sansbold20.txf"
Font "DejaVuSans.ttf,9"
LabelFont "DejaVuSans.ttf,9"
TitleFont "DejaVuSans-Bold.ttf,15"
#------------------------------------------------------------------------
@ -256,11 +279,18 @@ StarTextures
MouseRotationSensitivity 1.0
#------------------------------------------------------------------------
# ReverseMouseWheel performs a change of command rotates
# the mouse wheel on the opposite. The default value is false.
#------------------------------------------------------------------------
# ReverseMouseWheel true
#------------------------------------------------------------------------
# The following parameter is used in Lua (.celx) scripting.
#
# ScriptScreenshotDirectory defines the directory where screenshots
# are to be stored. The default value is "", i.e. Celestia's
# are to be stored. The default value is "", i.e. Celestia's
# installation directory.
#------------------------------------------------------------------------
ScriptScreenshotDirectory ""
@ -268,8 +298,8 @@ StarTextures
#------------------------------------------------------------------------
# CELX-scripts can request permission to perform dangerous operations,
# such as reading, writing and deleting files or executing external
# programs. If granted, a malicious script could use this to destroy
# such as reading, writing and deleting files or executing external
# programs. If granted, a malicious script could use this to destroy
# data or compromise system security.
# The following parameter determines what Celestia does upon such
# requests:
@ -310,6 +340,28 @@ StarTextures
EclipseTextureSize 128
#------------------------------------------------------------------------
# Orbit rendering parameters
#------------------------------------------------------------------------
# OrbitWindowEnd ->
# End of the orbit window relative to the current simulation time.
# Units are orbital periods. The default value is 0.5.
# The range of values 0.0 - 1.0.
#
# OrbitPeriodsShown ->
# Number of orbit periods shown.
# The default value is 1.0.
#
# LinearFadeFraction ->
# Fraction of the window over which the orbit fades from opaque
# to transparent. Fading is disabled when this value is zero.
# The default value is 0.0. The range of values 0.0 - 1.0.
#------------------------------------------------------------------------
OrbitWindowEnd 0.0
# OrbitPeriodsShown 1.0
LinearFadeFraction 0.8
#-----------------------------------------------------------------------
# Set the level of multisample antialiasing. Not all 3D graphics
# hardware supports antialiasing, though most newer graphics chipsets
@ -338,4 +390,36 @@ StarTextures
#------------------------------------------------------------------------
# LogSize 1000
#------------------------------------------------------------------------
# The following define options for x264 and ffvhuff video codecs when
# Celestia is compiled with ffmpeg library support for video capture.
#------------------------------------------------------------------------
# X264EncoderOptions ""
# FFVHEncoderOptions ""
#------------------------------------------------------------------------
# The following define the measurement system Celestia uses to display
# in HUD, available options for MeasurementSystem are `metric` and
# `imperial`. By default, metric measurement system is used. Available
# options for TemperatureScale are `kelvin`, `celsius`, and `fahrenheit`.
# By default kelvin is used.
#------------------------------------------------------------------------
# MeasurementSystem "imperial"
# TemperatureScale "celsius"
#------------------------------------------------------------------------
# The following options are used to configure how scenes in Celestia
# are projected and what distortion method is used.
# Available options for ProjectionMode are `perspective` (default) and
# `fisheye`. Available `ViewportEffect`s (distortion methods) are `none`
# (default), `passthrough`, and `warpmesh`.
# For `warpmesh` viewport effect, you need to specify a warp mesh file
# under the parameter name `WarpMeshFile`, The file should be placed
# inside the `warp` folder.
# File format for warp mesh: http://paulbourke.net/dataformats/meshwarp/
#------------------------------------------------------------------------
# ProjectionMode "fisheye"
# ViewportEffect "warpmesh"
# WarpMeshFile "warp.map"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,783 +0,0 @@
# Microsoft Developer Studio Generated NMAKE File, Based on celestia.dsp
!IF "$(CFG)" == ""
CFG=celestia - Win32 Debug
!MESSAGE No configuration specified. Defaulting to celestia - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "celestia - Win32 Release" && "$(CFG)" != "celestia - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "celestia.mak" CFG="celestia - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "celestia - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "celestia - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "celestia - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
# Begin Custom Macros
OutDir=.\Release
# End Custom Macros
ALL : "$(OUTDIR)\celestia.exe"
CLEAN :
-@erase "$(INTDIR)\3dsmesh.obj"
-@erase "$(INTDIR)\3dsmodel.obj"
-@erase "$(INTDIR)\3dsread.obj"
-@erase "$(INTDIR)\asterism.obj"
-@erase "$(INTDIR)\astro.obj"
-@erase "$(INTDIR)\bigfix.obj"
-@erase "$(INTDIR)\body.obj"
-@erase "$(INTDIR)\catalogxref.obj"
-@erase "$(INTDIR)\celestia.res"
-@erase "$(INTDIR)\celestiacore.obj"
-@erase "$(INTDIR)\cmdparser.obj"
-@erase "$(INTDIR)\color.obj"
-@erase "$(INTDIR)\command.obj"
-@erase "$(INTDIR)\configfile.obj"
-@erase "$(INTDIR)\constellation.obj"
-@erase "$(INTDIR)\customorbit.obj"
-@erase "$(INTDIR)\debug.obj"
-@erase "$(INTDIR)\destination.obj"
-@erase "$(INTDIR)\dispmap.obj"
-@erase "$(INTDIR)\execution.obj"
-@erase "$(INTDIR)\favorites.obj"
-@erase "$(INTDIR)\filetype.obj"
-@erase "$(INTDIR)\galaxy.obj"
-@erase "$(INTDIR)\glext.obj"
-@erase "$(INTDIR)\imagecapture.obj"
-@erase "$(INTDIR)\lodspheremesh.obj"
-@erase "$(INTDIR)\meshmanager.obj"
-@erase "$(INTDIR)\observer.obj"
-@erase "$(INTDIR)\octree.obj"
-@erase "$(INTDIR)\orbit.obj"
-@erase "$(INTDIR)\overlay.obj"
-@erase "$(INTDIR)\parser.obj"
-@erase "$(INTDIR)\perlin.obj"
-@erase "$(INTDIR)\regcombine.obj"
-@erase "$(INTDIR)\render.obj"
-@erase "$(INTDIR)\selection.obj"
-@erase "$(INTDIR)\simulation.obj"
-@erase "$(INTDIR)\solarsys.obj"
-@erase "$(INTDIR)\spheremesh.obj"
-@erase "$(INTDIR)\star.obj"
-@erase "$(INTDIR)\stardb.obj"
-@erase "$(INTDIR)\starname.obj"
-@erase "$(INTDIR)\stellarclass.obj"
-@erase "$(INTDIR)\texmanager.obj"
-@erase "$(INTDIR)\texture.obj"
-@erase "$(INTDIR)\texturefont.obj"
-@erase "$(INTDIR)\tokenizer.obj"
-@erase "$(INTDIR)\univcoord.obj"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vertexlist.obj"
-@erase "$(INTDIR)\vertexprog.obj"
-@erase "$(INTDIR)\visstars.obj"
-@erase "$(INTDIR)\wingotodlg.obj"
-@erase "$(INTDIR)\winmain.obj"
-@erase "$(INTDIR)\winssbrowser.obj"
-@erase "$(INTDIR)\winstarbrowser.obj"
-@erase "$(INTDIR)\wintourguide.obj"
-@erase "$(INTDIR)\wintimer.obj"
-@erase "$(OUTDIR)\celestia.exe"
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /ML /W3 /GX /O2 /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
MTL=midl.exe
MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
RSC=rc.exe
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\celestia.res" /d "NDEBUG"
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\celestia.bsc"
BSC32_SBRS=
LINK32=link.exe
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib winmm.lib opengl32.lib glu32.lib ijgjpeg.lib zlib.lib libpng1.lib /nologo /subsystem:windows /incremental:no /pdb:"$(OUTDIR)\celestia.pdb" /machine:I386 /out:"$(OUTDIR)\celestia.exe"
LINK32_OBJS= \
"$(INTDIR)\3dsmesh.obj" \
"$(INTDIR)\3dsmodel.obj" \
"$(INTDIR)\3dsread.obj" \
"$(INTDIR)\asterism.obj" \
"$(INTDIR)\astro.obj" \
"$(INTDIR)\bigfix.obj" \
"$(INTDIR)\body.obj" \
"$(INTDIR)\catalogxref.obj" \
"$(INTDIR)\celestiacore.obj" \
"$(INTDIR)\cmdparser.obj" \
"$(INTDIR)\color.obj" \
"$(INTDIR)\command.obj" \
"$(INTDIR)\configfile.obj" \
"$(INTDIR)\constellation.obj" \
"$(INTDIR)\customorbit.obj" \
"$(INTDIR)\debug.obj" \
"$(INTDIR)\destination.obj" \
"$(INTDIR)\dispmap.obj" \
"$(INTDIR)\execution.obj" \
"$(INTDIR)\favorites.obj" \
"$(INTDIR)\filetype.obj" \
"$(INTDIR)\frustum.obj" \
"$(INTDIR)\galaxy.obj" \
"$(INTDIR)\glext.obj" \
"$(INTDIR)\imagecapture.obj" \
"$(INTDIR)\lodspheremesh.obj" \
"$(INTDIR)\meshmanager.obj" \
"$(INTDIR)\observer.obj" \
"$(INTDIR)\octree.obj" \
"$(INTDIR)\orbit.obj" \
"$(INTDIR)\overlay.obj" \
"$(INTDIR)\parser.obj" \
"$(INTDIR)\perlin.obj" \
"$(INTDIR)\regcombine.obj" \
"$(INTDIR)\render.obj" \
"$(INTDIR)\selection.obj" \
"$(INTDIR)\simulation.obj" \
"$(INTDIR)\solarsys.obj" \
"$(INTDIR)\spheremesh.obj" \
"$(INTDIR)\star.obj" \
"$(INTDIR)\stardb.obj" \
"$(INTDIR)\starname.obj" \
"$(INTDIR)\stellarclass.obj" \
"$(INTDIR)\texmanager.obj" \
"$(INTDIR)\texture.obj" \
"$(INTDIR)\texturefont.obj" \
"$(INTDIR)\tokenizer.obj" \
"$(INTDIR)\univcoord.obj" \
"$(INTDIR)\util.obj" \
"$(INTDIR)\vertexlist.obj" \
"$(INTDIR)\vertexprog.obj" \
"$(INTDIR)\visstars.obj" \
"$(INTDIR)\wingotodlg.obj" \
"$(INTDIR)\winmain.obj" \
"$(INTDIR)\winssbrowser.obj" \
"$(INTDIR)\winstarbrowser.obj" \
"$(INTDIR)\wintourguide.obj" \
"$(INTDIR)\wintimer.obj" \
"$(INTDIR)\celestia.res"
"$(OUTDIR)\celestia.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
!ELSEIF "$(CFG)" == "celestia - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "$(OUTDIR)\celestia.exe"
CLEAN :
-@erase "$(INTDIR)\3dsmesh.obj"
-@erase "$(INTDIR)\3dsmodel.obj"
-@erase "$(INTDIR)\3dsread.obj"
-@erase "$(INTDIR)\asterism.obj"
-@erase "$(INTDIR)\astro.obj"
-@erase "$(INTDIR)\bigfix.obj"
-@erase "$(INTDIR)\body.obj"
-@erase "$(INTDIR)\catalogxref.obj"
-@erase "$(INTDIR)\celestia.res"
-@erase "$(INTDIR)\celestiacore.obj"
-@erase "$(INTDIR)\cmdparser.obj"
-@erase "$(INTDIR)\color.obj"
-@erase "$(INTDIR)\command.obj"
-@erase "$(INTDIR)\configfile.obj"
-@erase "$(INTDIR)\constellation.obj"
-@erase "$(INTDIR)\customorbit.obj"
-@erase "$(INTDIR)\debug.obj"
-@erase "$(INTDIR)\destination.obj"
-@erase "$(INTDIR)\dispmap.obj"
-@erase "$(INTDIR)\execution.obj"
-@erase "$(INTDIR)\favorites.obj"
-@erase "$(INTDIR)\filetype.obj"
-@erase "$(INTDIR)\frustum.obj"
-@erase "$(INTDIR)\galaxy.obj"
-@erase "$(INTDIR)\glext.obj"
-@erase "$(INTDIR)\imagecapture.obj"
-@erase "$(INTDIR)\lodspheremesh.obj"
-@erase "$(INTDIR)\meshmanager.obj"
-@erase "$(INTDIR)\observer.obj"
-@erase "$(INTDIR)\octree.obj"
-@erase "$(INTDIR)\orbit.obj"
-@erase "$(INTDIR)\overlay.obj"
-@erase "$(INTDIR)\parser.obj"
-@erase "$(INTDIR)\perlin.obj"
-@erase "$(INTDIR)\regcombine.obj"
-@erase "$(INTDIR)\render.obj"
-@erase "$(INTDIR)\selection.obj"
-@erase "$(INTDIR)\simulation.obj"
-@erase "$(INTDIR)\solarsys.obj"
-@erase "$(INTDIR)\spheremesh.obj"
-@erase "$(INTDIR)\star.obj"
-@erase "$(INTDIR)\stardb.obj"
-@erase "$(INTDIR)\starname.obj"
-@erase "$(INTDIR)\stellarclass.obj"
-@erase "$(INTDIR)\texmanager.obj"
-@erase "$(INTDIR)\texture.obj"
-@erase "$(INTDIR)\texturefont.obj"
-@erase "$(INTDIR)\tokenizer.obj"
-@erase "$(INTDIR)\univcoord.obj"
-@erase "$(INTDIR)\util.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(INTDIR)\visstars.obj"
-@erase "$(INTDIR)\vertexlist.obj"
-@erase "$(INTDIR)\vertexprog.obj"
-@erase "$(INTDIR)\wingotodlg.obj"
-@erase "$(INTDIR)\winmain.obj"
-@erase "$(INTDIR)\winssbrowser.obj"
-@erase "$(INTDIR)\winstarbrowser.obj"
-@erase "$(INTDIR)\wintimer.obj"
-@erase "$(INTDIR)\wintourguide.obj"
-@erase "$(OUTDIR)\celestia.exe"
-@erase "$(OUTDIR)\celestia.ilk"
-@erase "$(OUTDIR)\celestia.pdb"
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
MTL=midl.exe
MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
RSC=rc.exe
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\celestia.res" /d "_DEBUG"
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\celestia.bsc"
BSC32_SBRS=
LINK32=link.exe
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib winmm.lib opengl32.lib glu32.lib ijgjpeg.lib zlibd.lib libpng1d.lib /nologo /subsystem:windows /incremental:yes /pdb:"$(OUTDIR)\celestia.pdb" /debug /machine:I386 /out:"$(OUTDIR)\celestia.exe" /pdbtype:sept
LINK32_OBJS= \
"$(INTDIR)\3dsmesh.obj" \
"$(INTDIR)\3dsmodel.obj" \
"$(INTDIR)\3dsread.obj" \
"$(INTDIR)\asterism.obj" \
"$(INTDIR)\astro.obj" \
"$(INTDIR)\bigfix.obj" \
"$(INTDIR)\body.obj" \
"$(INTDIR)\catalogxref.obj" \
"$(INTDIR)\celestiacore.obj" \
"$(INTDIR)\cmdparser.obj" \
"$(INTDIR)\color.obj" \
"$(INTDIR)\command.obj" \
"$(INTDIR)\configfile.obj" \
"$(INTDIR)\constellation.obj" \
"$(INTDIR)\customorbit.obj" \
"$(INTDIR)\debug.obj" \
"$(INTDIR)\destination.obj" \
"$(INTDIR)\dispmap.obj" \
"$(INTDIR)\execution.obj" \
"$(INTDIR)\favorites.obj" \
"$(INTDIR)\filetype.obj" \
"$(INTDIR)\frustum.obj" \
"$(INTDIR)\galaxy.obj" \
"$(INTDIR)\glext.obj" \
"$(INTDIR)\imagecapture.obj" \
"$(INTDIR)\lodspheremesh.obj" \
"$(INTDIR)\meshmanager.obj" \
"$(INTDIR)\observer.obj" \
"$(INTDIR)\octree.obj" \
"$(INTDIR)\orbit.obj" \
"$(INTDIR)\overlay.obj" \
"$(INTDIR)\parser.obj" \
"$(INTDIR)\perlin.obj" \
"$(INTDIR)\regcombine.obj" \
"$(INTDIR)\render.obj" \
"$(INTDIR)\selection.obj" \
"$(INTDIR)\simulation.obj" \
"$(INTDIR)\solarsys.obj" \
"$(INTDIR)\spheremesh.obj" \
"$(INTDIR)\star.obj" \
"$(INTDIR)\stardb.obj" \
"$(INTDIR)\starname.obj" \
"$(INTDIR)\stellarclass.obj" \
"$(INTDIR)\texmanager.obj" \
"$(INTDIR)\texture.obj" \
"$(INTDIR)\texturefont.obj" \
"$(INTDIR)\tokenizer.obj" \
"$(INTDIR)\univcoord.obj" \
"$(INTDIR)\util.obj" \
"$(INTDIR)\visstars.obj" \
"$(INTDIR)\vertexlist.obj" \
"$(INTDIR)\vertexprog.obj" \
"$(INTDIR)\wingotodlg.obj" \
"$(INTDIR)\winmain.obj" \
"$(INTDIR)\winssbrowser.obj" \
"$(INTDIR)\winstarbrowser.obj" \
"$(INTDIR)\wintimer.obj" \
"$(INTDIR)\wintourguide.obj" \
"$(INTDIR)\celestia.res"
"$(OUTDIR)\celestia.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("celestia.dep")
!INCLUDE "celestia.dep"
!ELSE
!MESSAGE Warning: cannot find "celestia.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "celestia - Win32 Release" || "$(CFG)" == "celestia - Win32 Debug"
SOURCE=.\src\3dsmesh.cpp
"$(INTDIR)\3dsmesh.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\3dsmodel.cpp
"$(INTDIR)\3dsmodel.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\3dsread.cpp
"$(INTDIR)\3dsread.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\asterism.cpp
"$(INTDIR)\asterism.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\astro.cpp
"$(INTDIR)\astro.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\bigfix.cpp
"$(INTDIR)\bigfix.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\body.cpp
"$(INTDIR)\body.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\catalogxref.cpp
"$(INTDIR)\catalogxref.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\color.cpp
"$(INTDIR)\color.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\celestiacore.cpp
"$(INTDIR)\celestiacore.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\cmdparser.cpp
"$(INTDIR)\cmdparser.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\command.cpp
"$(INTDIR)\command.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\configfile.cpp
"$(INTDIR)\configfile.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\constellation.cpp
"$(INTDIR)\constellation.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\customorbit.cpp
"$(INTDIR)\customorbit.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\debug.cpp
"$(INTDIR)\debug.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\destination.cpp
"$(INTDIR)\destination.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\dispmap.cpp
"$(INTDIR)\dispmap.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\execution.cpp
"$(INTDIR)\execution.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\favorites.cpp
"$(INTDIR)\favorites.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\filetype.cpp
"$(INTDIR)\filetype.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\frustum.cpp
"$(INTDIR)\frustum.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\galaxy.cpp
"$(INTDIR)\galaxy.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\glext.cpp
"$(INTDIR)\glext.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\imagecapture.cpp
"$(INTDIR)\imagecapture.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\lodspheremesh.cpp
"$(INTDIR)\lodspheremesh.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\meshmanager.cpp
"$(INTDIR)\meshmanager.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\observer.cpp
"$(INTDIR)\observer.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\octree.cpp
"$(INTDIR)\octree.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\orbit.cpp
"$(INTDIR)\orbit.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\overlay.cpp
"$(INTDIR)\overlay.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\parser.cpp
"$(INTDIR)\parser.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\perlin.cpp
"$(INTDIR)\perlin.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\regcombine.cpp
"$(INTDIR)\regcombine.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\render.cpp
"$(INTDIR)\render.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\selection.cpp
"$(INTDIR)\selection.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\simulation.cpp
"$(INTDIR)\simulation.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\solarsys.cpp
"$(INTDIR)\solarsys.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\spheremesh.cpp
"$(INTDIR)\spheremesh.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\star.cpp
"$(INTDIR)\star.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\stardb.cpp
"$(INTDIR)\stardb.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\starname.cpp
"$(INTDIR)\starname.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\stellarclass.cpp
"$(INTDIR)\stellarclass.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\texmanager.cpp
"$(INTDIR)\texmanager.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\texture.cpp
"$(INTDIR)\texture.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\texturefont.cpp
"$(INTDIR)\texturefont.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\tokenizer.cpp
"$(INTDIR)\tokenizer.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\univcoord.cpp
"$(INTDIR)\univcoord.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\util.cpp
"$(INTDIR)\util.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\visstars.cpp
"$(INTDIR)\visstars.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\vertexlist.cpp
"$(INTDIR)\vertexlist.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\vertexprog.cpp
"$(INTDIR)\vertexprog.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\wingotodlg.cpp
"$(INTDIR)\wingotodlg.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\winmain.cpp
"$(INTDIR)\winmain.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\winssbrowser.cpp
"$(INTDIR)\winssbrowser.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\winstarbrowser.cpp
"$(INTDIR)\winstarbrowser.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\wintimer.cpp
"$(INTDIR)\wintimer.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\src\wintourguide.cpp
"$(INTDIR)\wintourguide.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\res\celestia.rc
!IF "$(CFG)" == "celestia - Win32 Release"
"$(INTDIR)\celestia.res" : $(SOURCE) "$(INTDIR)"
$(RSC) /l 0x409 /fo"$(INTDIR)\celestia.res" /i "res" /d "NDEBUG" $(SOURCE)
!ELSEIF "$(CFG)" == "celestia - Win32 Debug"
"$(INTDIR)\celestia.res" : $(SOURCE) "$(INTDIR)"
$(RSC) /l 0x409 /fo"$(INTDIR)\celestia.res" /i "res" /d "_DEBUG" $(SOURCE)
!ENDIF
!ENDIF

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual C++ Express 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "celestia", "celestia.vcproj", "{DDDE8EA8-F55A-491B-A102-11C9C01B4B58}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DDDE8EA8-F55A-491B-A102-11C9C01B4B58}.Debug|Win32.ActiveCfg = Debug|Win32
{DDDE8EA8-F55A-491B-A102-11C9C01B4B58}.Debug|Win32.Build.0 = Debug|Win32
{DDDE8EA8-F55A-491B-A102-11C9C01B4B58}.Release|Win32.ActiveCfg = Release|Win32
{DDDE8EA8-F55A-491B-A102-11C9C01B4B58}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
#include <charconv>
int main()
{
const char* src = "123";
float x;
std::from_chars_result result = std::from_chars(src, src + 3, x);
}

View File

@ -0,0 +1,8 @@
#include <charconv>
int main()
{
const char* src = "123";
int x;
std::from_chars_result result = std::from_chars(src, src + 3, x, 10);
}

View File

@ -0,0 +1,11 @@
function(EnableFastMath flag)
if(NOT flag)
return()
endif()
if(MSVC)
add_compile_options("/fp:fast")
else()
add_compile_options("-ffast-math -fno-finite-math-only")
endif()
endfunction()

View File

@ -0,0 +1,58 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindCspice
# --------
#
# Find the NAIF toolkit cspice headers and libraries.
#
# This module reports information about the Gettext cspice
# installation in several variables. General variables::
#
# CSPICE_FOUND - true if the cspice headers and libraries were found
# CSPICE_INCLUDE_DIRS - the directory containing the cspice headers
# CSPICE_LIBRARIES - cspice libraries to be linked
#
# The following cache variables may also be set::
#
# CSPICE_INCLUDE_DIR - the directory containing the cspice headers
# CSPICE_LIBRARY - the cspice library (if any)
# Find include directory
find_path(CSPICE_INCLUDE_DIR
NAMES "SpiceUsr.h"
HINTS CSPICE_DIR
PATH_SUFFIXES "include" "include/cspice"
DOC "cspice include directory")
mark_as_advanced(CSPICE_INCLUDE_DIR)
# Find CSPICE library
find_library(CSPICE_LIBRARY
NAMES "cspice" "libcspice" "cspice.a"
HINTS CSPICE_DIR
DOC "cspice libraries")
mark_as_advanced(CSPICE_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(CSPICE
FOUND_VAR CSPICE_FOUND
REQUIRED_VARS CSPICE_INCLUDE_DIR CSPICE_LIBRARY
FAIL_MESSAGE "Failed to find cspice")
if(CSPICE_FOUND)
set(CSPICE_INCLUDE_DIRS "${CSPICE_INCLUDE_DIR}")
if(CSPICE_LIBRARY)
set(CSPICE_LIBRARIES "${CSPICE_LIBRARY}")
else()
unset(CSPICE_LIBRARIES)
endif()
if(NOT TARGET CSPICE::CSPICE)
add_library(CSPICE::CSPICE UNKNOWN IMPORTED)
set_target_properties(CSPICE::CSPICE PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${CSPICE_INCLUDE_DIRS}")
set_target_properties(CSPICE::CSPICE PROPERTIES
IMPORTED_LOCATION "${CSPICE_LIBRARY}")
endif()
endif()

View File

@ -0,0 +1,86 @@
macro(find_ffmpeg_lib)
if(NOT(${ARGC} EQUAL 3))
message(FATAL_ERROR "find_ffmpeg_lib requires exactly 3 arguments")
endif()
set(__name ${ARGV0})
set(__header ${ARGV1})
set(__lib ${ARGV2})
find_library(${__name}_LIBRARY ${__lib})
find_path(${__name}_INCLUDE_DIR ${__header}
HINTS /usr/include/ffmpeg)
set(FPHSA_NAME_MISMATCHED 1)
find_package_handle_standard_args(${__name}
FOUND_VAR ${__name}_FOUND
REQUIRED_VARS ${__name}_INCLUDE_DIR ${__name}_LIBRARY
FAIL_MESSAGE "Failed to find ${__name}")
unset(FPHSA_NAME_MISMATCHED)
set(${__name}_INCLUDE_DIRS ${${__name}_INCLUDE_DIR})
set(${__name}_LIBRARIES ${${__name}_LIBRARY})
list(APPEND FFMPEG_INCLUDE_DIRS ${${__name}_INCLUDE_DIR})
list(REMOVE_DUPLICATES FFMPEG_INCLUDE_DIRS)
list(APPEND FFMPEG_LIBRARIES ${${__name}_LIBRARY})
list(REMOVE_DUPLICATES FFMPEG_LIBRARIES)
if(NOT TARGET FFMPEG::${__name})
add_library(FFMPEG::${__name} UNKNOWN IMPORTED)
set_target_properties(FFMPEG::${__name} PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${${__name}_INCLUDE_DIR}"
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
IMPORTED_LOCATION "${${__name}_LIBRARY}")
endif()
mark_as_advanced(${__name}_INCLUDE_DIR ${__name}_LIBRARY ${__name}_INCLUDE_DIRS ${__name}_LIBRARIES)
endmacro()
include(FindPackageHandleStandardArgs)
if(FFMPEG_FIND_COMPONENTS)
foreach(component ${FFMPEG_FIND_COMPONENTS})
string(TOUPPER ${component} _COMPONENT)
set(FFMPEG_USE_${_COMPONENT} 1)
endforeach()
endif()
set(FFMPEG_INCLUDE_DIRS)
set(FFMPEG_LIBRARIES)
if(FFMPEG_USE_AVCODEC)
find_ffmpeg_lib(AVCODEC libavcodec/avcodec.h avcodec)
endif()
if(FFMPEG_USE_AVFORMAT)
find_ffmpeg_lib(AVFORMAT libavformat/avformat.h avformat)
endif()
if(FFMPEG_USE_AVUTIL)
find_ffmpeg_lib(AVUTIL libavutil/avutil.h avutil)
endif()
if(FFMPEG_USE_AVDEVICE)
find_ffmpeg_lib(AVDEVICE libavdevice/avdevice.h avdevice)
endif()
if(FFMPEG_USE_SWSCALE)
find_ffmpeg_lib(SWSCALE libswscale/swscale.h swscale)
endif()
if(NOT TARGET FFMPEG::FFMPEG)
add_library(FFMPEG::FFMPEG UNKNOWN IMPORTED)
set_target_properties(FFMPEG::FFMPEG PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES "C"
INTERFACE_INCLUDE_DIRECTORIES "${FFMPEG_INCLUDE_DIR}")
if(TARGET FFMPEG::AVCODEC)
set_target_properties(FFMPEG::FFMPEG PROPERTIES INTERFACE_LINK_LIBRARIES FFMPEG::AVCODEC)
endif()
if(TARGET FFMPEG::AVUTIL)
set_target_properties(FFMPEG::FFMPEG PROPERTIES INTERFACE_LINK_LIBRARIES FFMPEG::AVUTIL)
endif()
if(TARGET FFMPEG::AVDEVICE)
set_target_properties(FFMPEG::FFMPEG PROPERTIES INTERFACE_LINK_LIBRARIES FFMPEG::AVDEVICE)
endif()
if(TARGET FFMPEG::AVFORMAT)
set_target_properties(FFMPEG::FFMPEG PROPERTIES INTERFACE_LINK_LIBRARIES FFMPEG::AVFORMAT)
endif()
if(TARGET FFMPEG::SWSCALE)
set_target_properties(FFMPEG::FFMPEG PROPERTIES INTERFACE_LINK_LIBRARIES FFMPEG::SWSCALE)
endif()
endif()

View File

@ -0,0 +1,247 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#[=======================================================================[.rst:
FindFilesystem
##############
This module supports the C++17 standard library's filesystem utilities. Use the
:imp-target:`std::filesystem` imported target to
Options
*******
The ``COMPONENTS`` argument to this module supports the following values:
.. find-component:: Experimental
:name: fs.Experimental
Allows the module to find the "experimental" Filesystem TS version of the
Filesystem library. This is the library that should be used with the
``std::experimental::filesystem`` namespace.
.. find-component:: Final
:name: fs.Final
Finds the final C++17 standard version of the filesystem library.
If no components are provided, behaves as if the
:find-component:`fs.Final` component was specified.
If both :find-component:`fs.Experimental` and :find-component:`fs.Final` are
provided, first looks for ``Final``, and falls back to ``Experimental`` in case
of failure. If ``Final`` is found, :imp-target:`std::filesystem` and all
:ref:`variables <fs.variables>` will refer to the ``Final`` version.
Imported Targets
****************
.. imp-target:: std::filesystem
The ``std::filesystem`` imported target is defined when any requested
version of the C++ filesystem library has been found, whether it is
*Experimental* or *Final*.
If no version of the filesystem library is available, this target will not
be defined.
.. note::
This target has ``cxx_std_17`` as an ``INTERFACE``
:ref:`compile language standard feature <req-lang-standards>`. Linking
to this target will automatically enable C++17 if no later standard
version is already required on the linking target.
.. _fs.variables:
Variables
*********
.. variable:: CXX_FILESYSTEM_IS_EXPERIMENTAL
Set to ``TRUE`` when the :find-component:`fs.Experimental` version of C++
filesystem library was found, otherwise ``FALSE``.
.. variable:: CXX_FILESYSTEM_HAVE_FS
Set to ``TRUE`` when a filesystem header was found.
.. variable:: CXX_FILESYSTEM_HEADER
Set to either ``filesystem`` or ``experimental/filesystem`` depending on
whether :find-component:`fs.Final` or :find-component:`fs.Experimental` was
found.
.. variable:: CXX_FILESYSTEM_NAMESPACE
Set to either ``std::filesystem`` or ``std::experimental::filesystem``
depending on whether :find-component:`fs.Final` or
:find-component:`fs.Experimental` was found.
Examples
********
Using `find_package(Filesystem)` with no component arguments:
.. code-block:: cmake
find_package(Filesystem REQUIRED)
add_executable(my-program main.cpp)
target_link_libraries(my-program PRIVATE std::filesystem)
#]=======================================================================]
if(TARGET std::filesystem)
# This module has already been processed. Don't do it again.
return()
endif()
cmake_minimum_required(VERSION 3.10)
include(CMakePushCheckState)
include(CheckIncludeFileCXX)
# If we're not cross-compiling, try to run test executables.
# Otherwise, assume that compile + link is a sufficient check.
if(CMAKE_CROSSCOMPILING)
include(CheckCXXSourceCompiles)
macro(_cmcm_check_cxx_source code var)
check_cxx_source_compiles("${code}" ${var})
endmacro()
else()
include(CheckCXXSourceRuns)
macro(_cmcm_check_cxx_source code var)
check_cxx_source_runs("${code}" ${var})
endmacro()
endif()
cmake_push_check_state()
set(CMAKE_REQUIRED_QUIET ${Filesystem_FIND_QUIETLY})
# All of our tests required C++17 or later
set(CMAKE_CXX_STANDARD 17)
# Normalize and check the component list we were given
set(want_components ${Filesystem_FIND_COMPONENTS})
if(Filesystem_FIND_COMPONENTS STREQUAL "")
set(want_components Final)
endif()
# Warn on any unrecognized components
set(extra_components ${want_components})
list(REMOVE_ITEM extra_components Final Experimental)
foreach(component IN LISTS extra_components)
message(WARNING "Extraneous find_package component for Filesystem: ${component}")
endforeach()
# Detect which of Experimental and Final we should look for
set(find_experimental TRUE)
set(find_final TRUE)
if(NOT "Final" IN_LIST want_components)
set(find_final FALSE)
endif()
if(NOT "Experimental" IN_LIST want_components)
set(find_experimental FALSE)
endif()
if(find_final)
check_include_file_cxx("filesystem" _CXX_FILESYSTEM_HAVE_HEADER)
mark_as_advanced(_CXX_FILESYSTEM_HAVE_HEADER)
if(_CXX_FILESYSTEM_HAVE_HEADER)
# We found the non-experimental header. Don't bother looking for the
# experimental one.
set(find_experimental FALSE)
endif()
else()
set(_CXX_FILESYSTEM_HAVE_HEADER FALSE)
endif()
if(find_experimental)
check_include_file_cxx("experimental/filesystem" _CXX_FILESYSTEM_HAVE_EXPERIMENTAL_HEADER)
mark_as_advanced(_CXX_FILESYSTEM_HAVE_EXPERIMENTAL_HEADER)
else()
set(_CXX_FILESYSTEM_HAVE_EXPERIMENTAL_HEADER FALSE)
endif()
if(_CXX_FILESYSTEM_HAVE_HEADER)
set(_have_fs TRUE)
set(_fs_header filesystem)
set(_fs_namespace std::filesystem)
set(_is_experimental FALSE)
elseif(_CXX_FILESYSTEM_HAVE_EXPERIMENTAL_HEADER)
set(_have_fs TRUE)
set(_fs_header experimental/filesystem)
set(_fs_namespace std::experimental::filesystem)
set(_is_experimental TRUE)
else()
set(_have_fs FALSE)
endif()
set(CXX_FILESYSTEM_HAVE_FS ${_have_fs} CACHE BOOL "TRUE if we have the C++ filesystem headers")
set(CXX_FILESYSTEM_HEADER ${_fs_header} CACHE STRING "The header that should be included to obtain the filesystem APIs")
set(CXX_FILESYSTEM_NAMESPACE ${_fs_namespace} CACHE STRING "The C++ namespace that contains the filesystem APIs")
set(CXX_FILESYSTEM_IS_EXPERIMENTAL ${_is_experimental} CACHE BOOL "TRUE if the C++ filesystem library is the experimental version")
set(_found FALSE)
if(CXX_FILESYSTEM_HAVE_FS)
# We have some filesystem library available. Do link checks
string(CONFIGURE [[
#include <cstdlib>
#include <@CXX_FILESYSTEM_HEADER@>
int main() {
auto cwd = @CXX_FILESYSTEM_NAMESPACE@::current_path();
printf("%s", cwd.c_str());
return EXIT_SUCCESS;
}
]] code @ONLY)
# Check a simple filesystem program without any linker flags
_cmcm_check_cxx_source("${code}" CXX_FILESYSTEM_NO_LINK_NEEDED)
set(can_link ${CXX_FILESYSTEM_NO_LINK_NEEDED})
if(NOT CXX_FILESYSTEM_NO_LINK_NEEDED)
set(prev_libraries ${CMAKE_REQUIRED_LIBRARIES})
# Add the libstdc++ flag
set(CMAKE_REQUIRED_LIBRARIES ${prev_libraries} -lstdc++fs)
_cmcm_check_cxx_source("${code}" CXX_FILESYSTEM_STDCPPFS_NEEDED)
set(can_link ${CXX_FILESYSTEM_STDCPPFS_NEEDED})
if(NOT CXX_FILESYSTEM_STDCPPFS_NEEDED)
# Try the libc++ flag
set(CMAKE_REQUIRED_LIBRARIES ${prev_libraries} -lc++fs)
_cmcm_check_cxx_source("${code}" CXX_FILESYSTEM_CPPFS_NEEDED)
set(can_link ${CXX_FILESYSTEM_CPPFS_NEEDED})
endif()
endif()
if(can_link)
add_library(std::filesystem INTERFACE IMPORTED)
set_property(TARGET std::filesystem APPEND PROPERTY INTERFACE_COMPILE_FEATURES cxx_std_17)
set(_found TRUE)
if(CXX_FILESYSTEM_NO_LINK_NEEDED)
# Nothing to add...
elseif(CXX_FILESYSTEM_STDCPPFS_NEEDED)
set_property(TARGET std::filesystem APPEND PROPERTY INTERFACE_LINK_LIBRARIES -lstdc++fs)
elseif(CXX_FILESYSTEM_CPPFS_NEEDED)
set_property(TARGET std::filesystem APPEND PROPERTY INTERFACE_LINK_LIBRARIES -lc++fs)
endif()
endif()
endif()
cmake_pop_check_state()
set(Filesystem_FOUND ${_found} CACHE BOOL "TRUE if we can run a program using std::filesystem" FORCE)
if(Filesystem_FIND_REQUIRED AND NOT Filesystem_FOUND)
message(FATAL_ERROR "Cannot run simple program using std::filesystem")
endif()

View File

@ -0,0 +1,72 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindIntl
# --------
#
# Find the Gettext libintl headers and libraries.
#
# This module reports information about the Gettext libintl
# installation in several variables. General variables::
#
# Intl_FOUND - true if the libintl headers and libraries were found
# Intl_INCLUDE_DIRS - the directory containing the libintl headers
# Intl_LIBRARIES - libintl libraries to be linked
#
# The following cache variables may also be set::
#
# Intl_INCLUDE_DIR - the directory containing the libintl headers
# Intl_LIBRARY - the libintl library (if any)
#
# .. note::
# On some platforms, such as Linux with GNU libc, the gettext
# functions are present in the C standard library and libintl
# is not required. ``Intl_LIBRARIES`` will be empty in this
# case.
#
# .. note::
# If you wish to use the Gettext tools (``msgmerge``,
# ``msgfmt``, etc.), use :module:`FindGettext`.
# Written by Roger Leigh <rleigh@codelibre.net>
# brew support is by Alexis Hildebrandt <https://github.com/afh>
# Append custom gettext path to CMAKE_PREFIX_PATH
# if installed via Mac Hombrew
if(APPLE)
find_program(HOMEBREW_PROG brew)
if(EXISTS ${HOMEBREW_PROG})
execute_process(COMMAND ${HOMEBREW_PROG} --prefix gettext
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_VARIABLE HOMEBREW_GETTEXT_PREFIX)
list(APPEND CMAKE_PREFIX_PATH "${HOMEBREW_GETTEXT_PREFIX}")
endif()
endif()
# Find include directory
find_path(Intl_INCLUDE_DIR
NAMES "libintl.h"
DOC "libintl include directory")
mark_as_advanced(Intl_INCLUDE_DIR)
# Find all Intl libraries
find_library(Intl_LIBRARY
NAMES "intl" "libintl"
DOC "libintl libraries (if not in the C library)")
mark_as_advanced(Intl_LIBRARY)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Intl
FOUND_VAR Intl_FOUND
REQUIRED_VARS Intl_INCLUDE_DIR
FAIL_MESSAGE "Failed to find Gettext libintl")
if(Intl_FOUND)
set(Intl_INCLUDE_DIRS "${Intl_INCLUDE_DIR}")
if(Intl_LIBRARY)
set(Intl_LIBRARIES "${Intl_LIBRARY}")
else()
unset(Intl_LIBRARIES)
endif()
endif()

View File

@ -0,0 +1,59 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindLibavif
# --------
#
# Find the avif headers and libraries.
#
# This module reports information about the avif
# installation in several variables. General variables::
#
# LIBAVIF_FOUND - true if the avif headers and libraries were found
# LIBAVIF_INCLUDE_DIRS - the directory containing the avif headers
# LIBAVIF_LIBRARIES - avif libraries to be linked
#
# The following cache variables may also be set::
#
# LIBAVIF_INCLUDE_DIR - the directory containing the avif headers
# LIBAVIF_LIBRARY - the avif library (if any)
# Find include directory
# TODO: use pkgconfig
find_path(LIBAVIF_INCLUDE_DIR
NAMES avif/avif.h
HINTS LIBAVIF_DIR
DOC "avif headers")
mark_as_advanced(LIBAVIF_INCLUDE_DIR)
find_library(LIBAVIF_LIBRARY
NAMES avif
HINTS LIBAVIF_DIR
DOC "avif libraries")
mark_as_advanced(LIBAVIF_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Libavif
FOUND_VAR LIBAVIF_FOUND
REQUIRED_VARS LIBAVIF_INCLUDE_DIR LIBAVIF_LIBRARY
FAIL_MESSAGE "Failed to find avif")
if(LIBAVIF_FOUND)
set(LIBAVIF_INCLUDE_DIRS "${LIBAVIF_INCLUDE_DIR}")
if(LIBAVIF_LIBRARY)
set(LIBAVIF_LIBRARIES "${LIBAVIF_LIBRARY}")
else()
unset(LIBAVIF_LIBRARIES)
endif()
if(NOT TARGET libavif::libavif)
add_library(libavif::libavif UNKNOWN IMPORTED)
set_target_properties(libavif::libavif PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${LIBAVIF_INCLUDE_DIRS}")
set_target_properties(libavif::libavif PROPERTIES
IMPORTED_LOCATION "${LIBAVIF_LIBRARY}")
endif()
endif()

View File

@ -0,0 +1,59 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindLibepoxy
# --------
#
# Find the epoxy headers and libraries.
#
# This module reports information about the epoxy
# installation in several variables. General variables::
#
# LIBEPOXY_FOUND - true if the epoxy headers and libraries were found
# LIBEPOXY_INCLUDE_DIRS - the directory containing the epoxy headers
# LIBEPOXY_LIBRARIES - epoxy libraries to be linked
#
# The following cache variables may also be set::
#
# LIBEPOXY_INCLUDE_DIR - the directory containing the epoxy headers
# LIBEPOXY_LIBRARY - the epoxy library (if any)
# Find include directory
# TODO: use pkgconfig
find_path(LIBEPOXY_INCLUDE_DIR
NAMES epoxy/gl.h
HINTS LIBEPOXY_DIR
DOC "epoxy headers")
mark_as_advanced(LIBEPOXY_INCLUDE_DIR)
find_library(LIBEPOXY_LIBRARY
NAMES epoxy
HINTS LIBEPOXY_DIR
DOC "epoxy libraries")
mark_as_advanced(LIBEPOXY_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Libepoxy
FOUND_VAR LIBEPOXY_FOUND
REQUIRED_VARS LIBEPOXY_INCLUDE_DIR LIBEPOXY_LIBRARY
FAIL_MESSAGE "Failed to find epoxy")
if(LIBEPOXY_FOUND)
set(LIBEPOXY_INCLUDE_DIRS "${LIBEPOXY_INCLUDE_DIR}")
if(LIBEPOXY_LIBRARY)
set(LIBEPOXY_LIBRARIES "${LIBEPOXY_LIBRARY}")
else()
unset(LIBEPOXY_LIBRARIES)
endif()
if(NOT TARGET libepoxy::libepoxy)
add_library(libepoxy::libepoxy UNKNOWN IMPORTED)
set_target_properties(libepoxy::libepoxy PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${LIBEPOXY_INCLUDE_DIRS}")
set_target_properties(libepoxy::libepoxy PROPERTIES
IMPORTED_LOCATION "${LIBEPOXY_LIBRARY}")
endif()
endif()

View File

@ -0,0 +1,107 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindLuaJIT
# ---------
#
#
#
# Locate Lua library This module defines
#
# ::
#
# LUAJIT_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)
# LUA_VERSION_MAJOR - the major version of Lua
# LUA_VERSION_MINOR - the minor version of Lua
# LUA_VERSION_PATCH - the patch version of Lua
# LUAJIT_VERSION_STRING, the version of LuaJIT found (since CMake 2.8.8)
# LUAJIT_VERSION_MAJOR - the major version of LuaJIT
# LUAJIT_VERSION_MINOR - the minor version of LuaJIT
# LUAJIT_VERSION_PATCH - the patch version of LuaJIT
#
#
#
# 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/
find_path(LUA_INCLUDE_DIR luajit.h
HINTS
ENV LUA_DIR
PATH_SUFFIXES include/luajit-2.0 include/luajit-2.1 include/luajit
PATHS
~/Library/Frameworks
/Library/Frameworks
/sw # Fink
/opt/local # DarwinPorts
/opt/csw # Blastwave
/opt
)
find_library(LUA_LIBRARY
NAMES luajit-5.1 lua51
HINTS
ENV LUA_DIR
PATH_SUFFIXES lib
PATHS
~/Library/Frameworks
/Library/Frameworks
/sw
/opt/local
/opt/csw
/opt
)
if(LUA_LIBRARY)
# include the math library for Unix
if(UNIX AND NOT APPLE AND NOT BEOS AND NOT HAIKU)
find_library(LUA_MATH_LIBRARY m)
set( LUA_LIBRARIES "${LUA_LIBRARY};${LUA_MATH_LIBRARY};${CMAKE_DL_LIBS}" CACHE STRING "Lua Libraries")
# For Windows and Mac, don't need to explicitly include the math library
else()
set( LUA_LIBRARIES "${LUA_LIBRARY}" CACHE STRING "Lua Libraries")
endif()
endif()
if(LUA_INCLUDE_DIR AND EXISTS "${LUA_INCLUDE_DIR}/lua.h")
file(STRINGS "${LUA_INCLUDE_DIR}/lua.h" lua_version_str REGEX "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua .+\"")
string(REGEX REPLACE "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua ([^\"]+)\".*" "\\1" LUA_VERSION_STRING "${lua_version_str}")
unset(lua_version_str)
string(REGEX REPLACE "^([0-9]+)\\.[0-9.]*$" "\\1" LUA_VERSION_MAJOR "${LUA_VERSION_STRING}")
string(REGEX REPLACE "^[0-9]+\\.([0-9]+)[0-9.]*$" "\\1" LUA_VERSION_MINOR "${LUA_VERSION_STRING}")
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]).*" "\\1" LUA_VERSION_PATCH "${LUA_VERSION_STRING}")
endif()
if(LUA_INCLUDE_DIR AND EXISTS "${LUA_INCLUDE_DIR}/luajit.h")
file(STRINGS "${LUA_INCLUDE_DIR}/luajit.h" lua_version_str REGEX "^#define[ \t]+LUAJIT_VERSION[ \t]+\".+\"")
string(REGEX REPLACE "^#define[ \t]+LUAJIT_VERSION[ \t]+\"LuaJIT ([0-9.]+).*\"" "\\1" LUAJIT_VERSION_STRING "${lua_version_str}")
unset(lua_version_str)
string(REGEX REPLACE "^([0-9]+)\\.[0-9.]*$" "\\1" LUAJIT_VERSION_MAJOR "${LUAJIT_VERSION_STRING}")
string(REGEX REPLACE "^[0-9]+\\.([0-9]+)[0-9.]*$" "\\1" LUAJIT_VERSION_MINOR "${LUAJIT_VERSION_STRING}")
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]).*" "\\1" LUAJIT_VERSION_PATCH "${LUAJIT_VERSION_STRING}")
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(LuaJIT
REQUIRED_VARS LUA_LIBRARIES LUA_INCLUDE_DIR
VERSION_VAR LUAJIT_VERSION_STRING)
mark_as_advanced(LUA_INCLUDE_DIR LUA_LIBRARIES LUA_LIBRARY LUA_MATH_LIBRARY)

View File

@ -0,0 +1,49 @@
macro(GETTEXT_CREATE_TRANSLATIONS2 _potFile _firstPoFileArg)
# make it a real variable, so we can modify it here
set(_firstPoFile "${_firstPoFileArg}")
set(_gmoFiles)
get_filename_component(_potName ${_potFile} NAME)
string(REGEX REPLACE "^(.+)(\\.[^.]+)$" "\\1" _potBasename ${_potName})
get_filename_component(_absPotFile ${_potFile} ABSOLUTE)
set(_addToAll)
if(${_firstPoFile} STREQUAL "ALL")
set(_addToAll "ALL")
set(_firstPoFile)
endif()
foreach (_currentPoFile ${_firstPoFile} ${ARGN})
get_filename_component(_absFile ${_currentPoFile} ABSOLUTE)
get_filename_component(_abs_PATH ${_absFile} PATH)
get_filename_component(_lang ${_absFile} NAME_WE)
set(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)
set(_poFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.po)
add_custom_command(
OUTPUT ${_gmoFile}
COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --output-file=${_poFile} --lang=${_lang} --sort-output ${_absFile} ${_absPotFile}
COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_poFile}
DEPENDS ${_absPotFile} ${_absFile}
)
if(NATIVE_OSX_APP)
install(FILES ${_gmoFile} DESTINATION Resources/locale/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
else()
install(FILES ${_gmoFile} DESTINATION ${CMAKE_INSTALL_LOCALEDIR}/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
endif()
set(_gmoFiles ${_gmoFiles} ${_gmoFile})
endforeach ()
if(NOT TARGET translations)
add_custom_target(translations)
endif()
_GETTEXT_GET_UNIQUE_TARGET_NAME(translations uniqueTargetName)
add_custom_target(${uniqueTargetName} ${_addToAll} DEPENDS ${_gmoFiles})
add_dependencies(translations ${uniqueTargetName})
endmacro()

View File

@ -0,0 +1,11 @@
macro(test_case)
set(trgt ${ARGV0})
set(libs ${ARGV})
list(REMOVE_AT libs 0 0)
add_executable(${trgt} $<TARGET_OBJECTS:catch_main> "${trgt}_test.cpp")
target_include_directories(${trgt} PRIVATE "${CMAKE_SOURCE_DIR}/test/common")
target_link_libraries(${trgt} PRIVATE celestia ${libs})
add_test(${trgt} ${trgt})
set_target_properties(${trgt} PROPERTIES FOLDER test/unit)
endmacro()

View File

@ -0,0 +1,5 @@
# the RPATH to be used when installing, but only if it's not a system directory
list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES ${CMAKE_INSTALL_FULL_LIBDIR} isSystemDir)
if("${isSystemDir}" STREQUAL "-1")
set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR})
endif()

View File

@ -0,0 +1,52 @@
function(_WINDRES_GET_UNIQUE_TARGET_NAME _name _unique_name)
set(propertyName "_WINDRES_UNIQUE_COUNTER_${_name}")
get_property(currentCounter GLOBAL PROPERTY "${propertyName}")
if(NOT currentCounter)
set(currentCounter 1)
endif()
set(${_unique_name} "${_name}_${currentCounter}" PARENT_SCOPE)
math(EXPR currentCounter "${currentCounter} + 1")
set_property(GLOBAL PROPERTY ${propertyName} ${currentCounter} )
endfunction()
macro(WINDRES_CREATE_TRANSLATIONS _rcFile _firstPoFileArg)
# make it a real variable, so we can modify it here
set(_firstPoFile "${_firstPoFileArg}")
set(_addToAll)
if(${_firstPoFile} STREQUAL "ALL")
set(_addToAll "ALL")
set(_firstPoFile)
endif()
set(_dllFiles)
foreach(_currentPoFile ${_firstPoFile} ${ARGN})
get_filename_component(_absFile ${_currentPoFile} ABSOLUTE)
get_filename_component(_lang ${_absFile} NAME_WE)
set(_locRcFile ${CMAKE_CURRENT_BINARY_DIR}/celestia_${_lang}.rc)
set(_dllFile res_${_lang})
add_custom_command(
OUTPUT ${_locRcFile}
COMMAND perl ${CMAKE_SOURCE_DIR}/po/translate_resources.pl ${_lang}
DEPENDS ${_absFile}
)
add_library(${_dllFile} MODULE ${_locRcFile})
set_target_properties(${_dllFile} PROPERTIES PREFIX "" LINKER_LANGUAGE C)
if(MSVC)
set_target_properties(${_dllFile} PROPERTIES LINK_FLAGS "/MANIFEST:NO /NODEFAULTLIB /NOENTRY")
endif()
install(TARGETS ${_dllFile} LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR})
set(_dllFiles ${_dllFiles} ${_dllFile})
endforeach()
if(NOT TARGET resources)
add_custom_target(resources)
endif()
_WINDRES_GET_UNIQUE_TARGET_NAME(resources uniqueTargetName)
add_custom_target(${uniqueTargetName} ${_addToAll} DEPENDS ${_dllFiles})
add_dependencies(resources ${uniqueTargetName})
endmacro()

7
config.h.in 100644
View File

@ -0,0 +1,7 @@
#cmakedefine HAVE_BYTESWAP_H
#cmakedefine HAVE_CHARCONV
#cmakedefine HAVE_FLOAT_CHARCONV
#cmakedefine HAVE_STD_FILESYSTEM
#cmakedefine HAVE_WORDEXP
#cmakedefine HAVE_MESHOPTIMIZER
#cmakedefine WORDS_BIGENDIAN

View File

@ -1,524 +0,0 @@
dnl
dnl Celestia autoconf file
dnl Process this file with autoconf to make a configure script
dnl
AC_PREREQ(2.57)
AC_INIT([celestia], [1.6.0], [celestia-developers@lists.sf.net])
AC_CONFIG_SRCDIR(acinclude.m4)
dnl The following section confirms that the user provided necessary option
dnl BEFORE anything is checked.
AC_ARG_WITH([glut],
AC_HELP_STRING([--with-glut], [Use Glut for the UI]),
ui_glut="yes"; ui_gtk="no"; ui_gnome="no"; ui_kde="no",
ui_glut="no")
AC_ARG_WITH([gtk],
AC_HELP_STRING([--with-gtk], [Use Gtk for an enhanced GUI]),
ui_gtk="yes"; ui_glut="no"; ui_gnome="no"; ui_kde="no",
ui_gtk="no")
AC_ARG_WITH([gnome],
AC_HELP_STRING([--with-gnome], [Use Gnome for an enhanced GUI]),
ui_gnome="yes"; ui_gtk="yes"; ui_glut="no"; ui_kde="no",
ui_gnome="no")
AC_ARG_WITH([kde],
AC_HELP_STRING([--with-kde], [Use KDE for an enhanced GUI]),
ui_kde="yes"; ui_glut="no"; ui_gtk="no"; ui_gnome="no",
ui_kde="no")
dnl Following line left in: great for debugging.
dnl AC_MSG_ERROR([$ui_glut $ui_gtk $ui_gnome $ui_kde])
dnl Check that an interface was provided
if (test "$ui_glut" != "yes" -a "$ui_gtk" != "yes" -a "$ui_gnome" != "yes" -a "$ui_kde" != "yes"); then
AC_MSG_ERROR([You must select an interface to build.
Possible options are:
--with-glut GLUT front-end
--with-gtk Enhanced GTK GUI
--with-gnome GTK GUI with Gnome features
--with-kde Enhanced KDE GUI]);
fi
AC_ARG_ENABLE([cairo],
AC_HELP_STRING([--enable-cairo],
[use cairo for GTK splash screen]),
enable_cairo="$enableval", enable_cairo="auto")
AC_ARG_ENABLE([theora],
AC_HELP_STRING([--enable-theora],
[create Ogg/Theora video]),
enable_theora="$enableval", enable_theora="auto")
dnl For KDE interface
AC_CONFIG_AUX_DIR(admin)
dnl "admin/acinclude.m4.in" generates "acinclude.m4", which has a broken
dnl conditional define for Qt embedded. This does not apply to Celestia
dnl anyway.
include_x11_FALSE='#'
dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
unset CDPATH
dnl Check system type
AC_CANONICAL_HOST
dnl Checking host/target/build systems, for make, install etc.
AC_CANONICAL_SYSTEM
dnl Perform program name transformation
AC_ARG_PROGRAM
AM_INIT_AUTOMAKE([-Wno-portability])
AM_CONFIG_HEADER(config.h)
AM_PO_SUBDIRS
dnl Specifying the AM_GNU_GETTEXT_VERSION macro causes autopoint to run,
dnl replacing many files from the KDE project in the admin/ directory. We
dnl will leave it out for now.
dnl AM_GNU_GETTEXT_VERSION([0.15])
AM_GNU_GETTEXT([external])
dnl Check for compilers. Set CFLAGS and CXXFLAGS to null if unset, so
dnl that these macros won't set the to default values that we don't want.
if (test "x${CFLAGS-notset}" = "xnotset"); then
export CFLAGS
CFLAGS=""
fi
AC_PROG_CC
if (test "x${CXXFLAGS-notset}" = "xnotset"); then
export CXXFLAGS
CXXFLAGS=""
fi
AC_PROG_CXX
dnl Checks for programs.
AC_PROG_CPP
AC_PROG_CXXCPP
AC_PROG_INSTALL
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL
dnl AC_PROG_RANLIB
dnl
dnl Compilation options
dnl
CELESTIA_CPPFLAGS=""
CELESTIA_CFLAGS="-O2 -Wall -ffast-math -fexpensive-optimizations"
CELESTIA_CXXFLAGS="-O2 -Wall -ffast-math -fexpensive-optimizations"
AC_MSG_CHECKING([whether to include debugging code])
AC_ARG_ENABLE([debug],
AC_HELP_STRING([--enable-debug],
[Produce an executable with debugging symbols]), ,
enable_debug="no")
if (test "$enable_debug" = "yes"); then
CELESTIA_CFLAGS="-g -Wall";
CELESTIA_CXXFLAGS="-g -Wall"
AC_DEFINE(DEBUG, 1, [Are we debugging ?])
fi
AC_MSG_RESULT($enable_debug)
AC_MSG_CHECKING([whether to be pedantic])
AC_ARG_ENABLE([pedantic],
AC_HELP_STRING([--enable-pedantic],
[Enable -pedantic when compiling]), ,
enable_pedantic="no")
if (test "$enable_pedantic" = "yes"); then
CELESTIA_CFLAGS="$CELESTIA_CFLAGS -ansi -pedantic";
CELESTIA_CXXFLAGS="$CELESTIA_CXXFLAGS -pedantic"
fi
AC_MSG_RESULT($enable_pedantic)
AC_MSG_CHECKING([whether to do profiling])
AC_ARG_ENABLE([profile],
AC_HELP_STRING([--enable-profile],
[Produce a profiled executable[default=no]]), ,
enable_profile="no")
if (test "$enable_profile" = "yes"); then
CELESTIA_CFLAGS="$CELESTIA_CFLAGS -pg";
CELESTIA_CXXFLAGS="$CELESTIA_CXXFLAGS -pg"
else
if (test "$enable_debug" != "yes"); then
dnl must be set here instead of above because -pg and
dnl -fomit-frame-pointer are incompatible
CELESTIA_CFLAGS="$CELESTIA_CFLAGS -fomit-frame-pointer";
CELESTIA_CXXFLAGS="$CELESTIA_CXXFLAGS -fomit-frame-pointer"
fi
fi
AC_MSG_RESULT($enable_profile)
dnl
dnl GL and GLUT libs
dnl
AC_ARG_WITH([gl-libs],
AC_HELP_STRING([--with-gl-libs=DIR],
[Specify OpenGL library location]),
CELESTIALIBS="$CELESTIALIBS -L$withval")
AC_ARG_WITH([gl-inc],
AC_HELP_STRING([--with-gl-inc=DIR],
[Specify OpenGL header file location]),
CELESTIAFLAGS="$CELESTIAFLAGS -I$withval")
AC_ARG_WITH([glut-libs],
AC_HELP_STRING([--with-glut-libs=DIR],
[Specify GLUT library location]),
CELESTIALIBS="$CELESTIALIBS -L$withval")
AC_ARG_WITH([glut-inc],
AC_HELP_STRING([--with-glut-inc=DIR],
[Specify GLUT header file location]),
CELESTIAFLAGS="$CELESTIAFLAGS -I$withval")
dnl
dnl SPICE lib
dnl
AC_ARG_WITH([cspice-dir],
AC_HELP_STRING([--with-cspice-dir=DIR], [Specify SPICE directory location]),
CELESTIAFLAGS="$CELESTIAFLAGS -I$withval/include -DUSE_SPICE";
SPICELIB="$withval/lib/cspice.a")
AC_SUBST(SPICELIB)
AM_CONDITIONAL(ENABLE_SPICE, test "$SPICELIB" != "")
LIBS="$LIBS -lm"
dnl Use Gtk if requested
GTK_LIBS=""
GTKGL_LIBS=""
GTK_CFLAGS=""
AC_MSG_CHECKING([whether to enable GLUT])
if (test "$ui_glut" != "no"); then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING([whether to enable GTK])
if (test "$ui_gtk" != "no"); then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING([whether to enable Gnome])
if (test "$ui_gnome" != "no"); then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING([whether to enable KDE])
if (test "$ui_kde" != "no"); then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_CHECK_COMPILERS
AC_PATH_XTRA
CFLAGS="$CFLAGS $X_CFLAGS"
CFLAGS="$CFLAGS $CELESTIAFLAGS $CELESTIA_CFLAGS"
CXXFLAGS="$CXXFLAGS $CELESTIAFLAGS $CELESTIA_CXXFLAGS"
LIBS="$LIBS $CELESTIALIBS"
LIBS="$X_PRE_LIBS $LIBS $X_LIBS -lXmu -lXi -lXext -lX11 -lm -lz $X_EXTRA_LIBS"
dnl Check for zlib -- libGL requires it.
AC_CHECK_LIB(z, deflate, ,
[AC_MSG_ERROR([zlib not found.])])
dnl Check for OpenGL headers first.
AC_CHECK_HEADERS(GL/gl.h, ,
[AC_MSG_ERROR([No gl.h found. See INSTALL file for help.])])
LIBS="$LIBS -lGL"
dnl Check for OpenGL. Taken partly from the plib sources.
AC_CHECK_LIB(GL, glNewList)
if (test "x$ac_cv_lib_GL_glNewList" = "xno"); then
dnl Check for MesaGL.
AC_CHECK_LIB(MesaGL, glNewList, ,
[AC_MSG_ERROR([GL library was not found])])
fi
dnl Check for GLU headers.
AC_CHECK_HEADERS(GL/glu.h, ,
[AC_MSG_ERROR([No glu.h found. See INSTALL file for help.])])
AC_CHECK_LIB(GLU, gluLookAt)
if (test "x$ac_cv_lib_GLU_gluLookAt" = "xno"); then
dnl Check for MesaGLU.
AC_CHECK_LIB(MesaGLU, gluLookAt, ,
[AC_MSG_ERROR([GLU library was not found])])
fi
PKG_PROG_PKG_CONFIG
if (test "$ui_glut" = "yes"); then
dnl Check for GLUT headers first.
AC_CHECK_HEADERS(GL/glut.h, ,
[AC_MSG_ERROR([No glut.h found. See INSTALL file for help.])])
dnl Check for GLUT.
AC_CHECK_LIB(glut, glutKeyboardUpFunc, ,
[AC_MSG_ERROR([GLUT library version >= 3.7 not found])])
fi
AM_CONDITIONAL(ENABLE_GLUT, test "$ui_glut" = "yes")
dnl Default GConf to FALSE
dnl (this is a silly trick to make configure behave)
AM_CONDITIONAL(GCONF_SCHEMAS_INSTALL, test "x" = "y")
if (test "$ui_gtk" != "no"); then
dnl GNOME is an extension to the GTK options
if (test "$ui_gnome" = "yes"); then
PKG_CHECK_MODULES(GTK, libgnomeui-2.0 gtk+-2.0 >= 2.6 gtkglext-1.0)
AM_GCONF_SOURCE_2
AC_DEFINE(GNOME, 1, [Use Gnome Flag])
else
dnl Otherwise, vanilla GTK
PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.6 gtkglext-1.0)
fi
dnl Check for cairo. Default to trying yes. Want this structure to not
dnl fail when not found if not explicitly enabled.
if (test "x$enable_cairo" != "xno"); then
PKG_CHECK_MODULES(CAIRO, cairo, enable_cairo="yes",
if (test "x$enable_cairo" = "xauto"); then
enable_cairo="no"
else
AC_ERROR([Cairo not found (explicitly enabled)!])
fi)
fi
check_theora="yes"
if (test "x$enable_cairo" = "xyes"); then
AC_DEFINE(CAIRO, 1, [Use Cairo for Splash])
fi
CFLAGS="$CFLAGS $GTK_CFLAGS $CAIRO_CFLAGS"
CXXFLAGS="$CXXFLAGS $GTK_CFLAGS $CAIRO_CFLAGS"
LIBS="$LIBS $GTK_LIBS $CAIRO_LIBS"
fi
dnl If all the GTK tests succeeded, safe to enable GTK
AM_CONDITIONAL(ENABLE_GTK, test "$ui_gtk" = "yes")
AM_CONDITIONAL(ENABLE_GNOME, test "$ui_gnome" = "yes")
dnl
dnl KDE
dnl
dnl Make certain ARTS is not conditionally defined, like GConf for Gnome
AM_CONDITIONAL(include_ARTS, test "x" = "y")
if (test "$ui_kde" != "no"); then
dnl KDE_SET_PREFIX
AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
KDE_PROG_LIBTOOL
AM_KDE_WITH_NLS
dnl KDE_USE_QT(3)
AC_PATH_KDE
check_theora="yes"
fi
AM_CONDITIONAL(ENABLE_KDE, test "$ui_kde" = "yes")
if (test "$check_theora" = "yes"); then
dnl Check for theora. Default to trying yes. Want this structure to not
dnl fail when not found if not explicitly enabled.
if (test "x$enable_theora" != "xno"); then
PKG_CHECK_MODULES(THEORA, theora, enable_theora="yes",
if (test "x$enable_theora" = "xauto"); then
enable_theora="no"
else
AC_ERROR([Theora not found (explicitly enabled)!])
fi)
fi
if (test "x$enable_theora" = "xyes"); then
AC_DEFINE(THEORA, 1, [Use OGG Theora for video])
CFLAGS="$CFLAGS $THEORA_CFLAGS"
CXXFLAGS="$CXXFLAGS $THEORA_CFLAGS"
LIBS="$LIBS $THEORA_LIBS"
fi
fi
AM_CONDITIONAL(ENABLE_THEORA, test "$enable_theora" = "yes")
dnl Check for JPEG library.
AC_CHECK_LIB(jpeg, jpeg_start_decompress, ,
[AC_MSG_ERROR([jpeg library not found])])
dnl Check for PNG library.
AC_CHECK_LIB(png, png_create_info_struct,,
[AC_MSG_ERROR([png library not found])])
dnl Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS(byteswap.h)
AC_C_BIGENDIAN
dnl Establish the main data directory (defined in Makefiles)
PKGDATADIR='${datadir}'/$PACKAGE
AC_SUBST(PKGDATADIR)
enable_hipparcos="no"
AC_ARG_ENABLE([hipparcos-dir],
AC_HELP_STRING([--enable-hipparcos-dir=DIR],
[Specify location of HIPPARCOS/TYCHO stardata]),
HIPDIR="$enableval",HIPDIR="$PKGDATADIR")
AC_SUBST(HIPDIR)
AC_MSG_CHECKING([whether we can create a new star database])
if (test -f "$HIPDIR/hip_main.dat"); then
enable_hipparcos="yes"
fi
AC_MSG_RESULT($enable_hipparcos)
AM_CONDITIONAL(ENABLE_HIPPARCOS, test "x$enable_hipparcos" = "xyes")
AC_ARG_WITH([lua],
AC_HELP_STRING([--with-lua],
[Use Lua for Celestia Extension Language support]),
enable_lua="$withval",
enable_lua="auto")
if (test "$enable_lua" != "no"); then
LUA_VER=0
PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1.0, LUA_VER=0x050100,
[ PKG_CHECK_MODULES(LUA, lua >= 5.1.0, LUA_VER=0x050100,
[ PKG_CHECK_MODULES(LUA, lua50 >= 5.0.0 lua50 < 5.1.0, LUA_VER=0x050000,
[ PKG_CHECK_MODULES(LUA, lua >= 5.0.0 lua < 5.1.0, LUA_VER=0x050000, AC_MSG_RESULT([no])) ]
) ]
) ]
)
if (test "$LUA_VER" = "0x050000"); then
PKG_CHECK_MODULES(LUALIB, lualib50 >= 5.0.0 lualib50 < 5.1.0, ,
[ PKG_CHECK_MODULES(LUALIB, lualib >= 5.0.0 lualib < 5.1.0, , AC_MSG_RESULT([no])) ]
)
fi
if (test "$LUA_VER" = "0"); then
if (test "x$enable_lua" != "xauto"); then
AC_ERROR([Lua not found (explicitly enabled)!])
else
enable_lua="no"
fi
else
enable_lua="yes"
fi
fi
if (test "$enable_lua" = "yes"); then
CXXFLAGS="$CXXFLAGS $LUA_CFLAGS $LUALIB_CFLAGS -DLUA_VER=$LUA_VER -DCELX"
LIBS="$LIBS $LUA_LIBS $LUALIB_LIBS"
fi
AM_CONDITIONAL(ENABLE_CELX, test "$enable_lua" != "no")
AC_CONFIG_FILES([ Makefile ])
AC_CONFIG_FILES([ src/Makefile ])
AC_CONFIG_FILES([ src/celutil/Makefile ])
AC_CONFIG_FILES([ src/celmath/Makefile ])
AC_CONFIG_FILES([ src/cel3ds/Makefile ])
AC_CONFIG_FILES([ src/celtxf/Makefile ])
AC_CONFIG_FILES([ src/celengine/Makefile ])
AC_CONFIG_FILES([ src/celestia/Makefile ])
AC_CONFIG_FILES([ data/Makefile ])
AC_CONFIG_FILES([ extras/Makefile ])
AC_CONFIG_FILES([ extras-standard/Makefile ])
AC_CONFIG_FILES([ extras-standard/cassini/Makefile ])
AC_CONFIG_FILES([ extras-standard/cassini/models/Makefile ])
AC_CONFIG_FILES([ extras-standard/cassini/data/Makefile ])
AC_CONFIG_FILES([ extras-standard/mir/Makefile ])
AC_CONFIG_FILES([ extras-standard/mir/models/Makefile ])
AC_CONFIG_FILES([ extras-standard/galileo/Makefile ])
AC_CONFIG_FILES([ extras-standard/galileo/models/Makefile ])
AC_CONFIG_FILES([ extras-standard/hubble/Makefile ])
AC_CONFIG_FILES([ extras-standard/hubble/models/Makefile ])
AC_CONFIG_FILES([ extras-standard/iss/Makefile ])
AC_CONFIG_FILES([ extras-standard/iss/models/Makefile ])
AC_CONFIG_FILES([ extras-standard/iss/textures/Makefile ])
AC_CONFIG_FILES([ extras-standard/iss/textures/medres/Makefile ])
AC_CONFIG_FILES([ textures/Makefile ])
AC_CONFIG_FILES([ textures/lores/Makefile ])
AC_CONFIG_FILES([ textures/medres/Makefile ])
AC_CONFIG_FILES([ textures/hires/Makefile ])
AC_CONFIG_FILES([ models/Makefile ])
AC_CONFIG_FILES([ shaders/Makefile ])
AC_CONFIG_FILES([ fonts/Makefile ])
AC_CONFIG_FILES([ src/celestia/res/Makefile ])
AC_CONFIG_FILES([ src/celestia/kde/Makefile ])
AC_CONFIG_FILES([ src/celestia/kde/data/Makefile ])
AC_CONFIG_FILES([ src/celestia/kde/doc/Makefile ])
AC_CONFIG_FILES([ src/celestia/kde/doc/celestia/Makefile ])
AC_CONFIG_FILES([ src/celestia/gtk/Makefile ])
AC_CONFIG_FILES([ src/celestia/gtk/data/Makefile ])
AC_CONFIG_FILES([ po/Makefile.in ])
AC_CONFIG_FILES([ po2/Makefile.in ])
AC_CONFIG_FILES([ locale/Makefile ])
AC_CONFIG_FILES([ scripts/Makefile ])
AC_OUTPUT()
AC_MSG_RESULT()
AC_MSG_RESULT()
AC_MSG_RESULT(***************************************************************)
AC_MSG_RESULT(** Celestia configuration complete. Now do a 'make' followed **)
AC_MSG_RESULT(** by 'make install' **)
AC_MSG_RESULT(***************************************************************)
AC_MSG_RESULT()
if (test "$ui_glut" = "yes"); then
AC_MSG_RESULT([Front-End: GLUT]);
fi
if (test "$ui_gtk" = "yes" -a "$ui_gnome" = "no"); then
AC_MSG_RESULT([Front-End: GTK]);
fi
if (test "$ui_gnome" = "yes"); then
AC_MSG_RESULT([Front-End: Gnome]);
fi
if (test "$ui_kde" = "yes"); then
AC_MSG_RESULT([Front-End: KDE]);
fi
if (test "$ui_gtk" = "yes" -o "$ui_gnome" = "yes"); then
AC_MSG_RESULT([Use Cairo: $enable_cairo]);
fi
AC_MSG_RESULT([Use Lua: $enable_lua]);
if (test "$LUA_VER" = "0x050000"); then
AC_MSG_RESULT([ Warning: Lua 5.1 is not available on your system, Lua 5.0 will be used
instead but it may not be fully compatible with existing CELX scripts.
It is recommanded that you install Lua 5.0 and rerun configure.]);
fi
AC_MSG_RESULT([Use Theora: $enable_theora]);
AC_MSG_RESULT()

View File

@ -1,30 +0,0 @@
pkgdatadir = @datadir@/@PACKAGE@/data
## Only attempt to remake the Star Database if we have the HIPPARCOS sources
if ENABLE_HIPPARCOS
HIP_DAT = stars.dat
else
HIP_DAT =
endif
BUILT_SOURCES = $(HIP_DAT)
pkgdata_DATA = \
$(wildcard *.ssc) \
$(wildcard *.dat) \
$(wildcard *.xyz) \
$(wildcard *.xyzv) \
$(wildcard *.dsc) \
$(wildcard *.stc) \
stars.dat
EXTRA_DIST = \
$(pkgdata_DATA) \
stars.txt
MAINTAINERCLEANFILES = stars.dat
if ENABLE_HIPPARCOS
stars.dat: @HIPDIR@/hip_main.dat
../src/buildstardb -q
endif

View File

@ -1,529 +0,0 @@
"Andromeda"
[
[ "Beta And" "Upsilon And" "Almach" ]
[ "Beta And" "Delta And" "Alpha And" ]
[ "Beta And" "Mu And" "Nu And" ]
[ "Upsilon And" "51 And" ]
]
"Antlia"
[
[ "Iota Ant" "Alpha Ant" "Theta Ant" "Epsilon Ant" ]
]
"Apus"
[
[ "Beta Aps" "Gamma Aps" "Delta1 Aps" "Alpha Aps" ]
]
"Aquarius"
[
[ "88 Aqr" "Delta Aqr" "Tau Aqr" "Lambda Aqr" "Phi Aqr" "Zeta Aqr" "Gamma Aqr" "Alpha Aqr" "Beta Aqr" "Mu Aqr" "Epsilon Aqr" ]
[ "Alpha Aqr" "Theta Aqr" "Iota Aqr" ]
]
"Aquila"
[
[ "Epsilon Aql" "Zeta Aql" "Gamma Aql" "Alpha Aql" "Beta Aql" "Theta Aql" "Eta Aql" "Delta Aql" "Zeta Aql" ]
[ "Delta Aql" "Lambda Aql" "12 Aql" ]
]
"Ara"
[
[ "Delta Ara" "Gamma Ara" "Beta Ara" "Alpha Ara" "Epsilon1 Ara" "Zeta Ara" "Eta Ara" ]
[ "Zeta Ara" "Gamma Ara" ]
]
"Aries"
[
[ "41 Ari" "Alpha Ari" "Beta Ari" "Gamma Ari" ]
]
"Auriga"
[
[ "Alpha Aur" "Delta Aur" "Beta Aur" "Tet Aur" "Beta Tau" "Iota Aur" "Eta Aur" "Alpha Aur" ]
[ "Beta Aur" "Alpha Aur" "Epsilon Aur" "Zeta Aur" ]
]
"Boötes"
[
[ "Gamma Boo" "Beta Boo" "Delta Boo" "Epsilon Boo" "Alpha Boo" "Pi1 Boo" "Zeta Boo" ]
[ "Upsilon Boo" "Tau Boo" "Eta Boo" "Alpha Boo" "Rho Boo" "Gamma Boo" "Lambda Boo" "Kappa2 Boo"]
[ "Delta Boo" "Mu1 Boo" ]
]
"Caelum"
[
[ "Alpha Cae" "Beta Cae" ]
]
"Camelopardalis"
[
[ "7 Cam" "Beta Cam" "Alpha Cam" "Gamma Cam" ]
]
"Cancer"
[
[ "Alpha Cnc" "Delta Cnc" "Gamma Cnc" "Iota Cnc" ]
[ "Delta Cnc" "Beta Cnc" ]
]
"Canes Venatici"
[
[ "Alpha1 CVn" "Beta CVn" ]
]
"Canis Major"
[
[ "Beta CMa" "Alpha CMa" "Iota CMa" "Gamma CMa" "Theta CMa" "Alpha CMa" ]
[ "Alpha CMa" "Omicron2 CMa" "Delta CMa" "Sigma CMa" "Epsilon CMa" "Zeta CMa" ]
[ "Delta CMa" "Omega CMa" "Eta CMa" ]
[ "Omega CMa" "Tau CMa" ]
]
"Canis Minor"
[
[ "Alpha CMi" "Beta CMi" ]
]
"Capricornus"
[
[ "Alpha1 Cap" "Beta Cap" "Psi Cap" "Omega Cap" "24 Cap" "Zeta Cap" "Epsilon Cap" "Delta Cap" "Gamma Cap" "Iota Cap" "Theta Cap" "Beta Cap" ]
]
"Carina"
[
[ "Alpha Car" "N Car" "Chi Car" "Epsilon Car" "Iota Car" "Q Car" "P Car" "Theta Car" "Omega Car" "Beta Car" "Upsilon Car" ]
]
"Cassiopeia"
[
[ "Epsilon Cas" "Delta Cas" "Gamma Cas" "Alpha Cas" "Beta Cas" ]
]
"Centaurus"
[
[ "Iota Cen" "D Cen" "Nu Cen" ]
[ "Theta Cen" "Nu Cen" ]
[ "Kappa Cen" "Eta Cen" "Nu Cen" "Mu Cen" "Zeta Cen" "Epsilon Cen" "Gamma Cen" "Sigma Cen" "Delta Cen" "Rho Cen" "Pi Cen" "Lambda Cen" ]
[ "Beta Cen" "Epsilon Cen" "Alpha Cen" ]
]
"Cepheus"
[
[ "Theta Cep" "Eta Cep" "Alpha Cep" "Beta Cep" "Gamma Cep" "Iota Cep" "Zeta Cep" "Alpha Cep" ]
[ "Zeta Cep" "Epsilon Cep" "Delta Cep" ]
]
"Cetus"
[
[ "Gamma Cet" "Alpha Cet" "Lambda Cet" "Mu Cet" "Xi2 Cet" "Nu Cet" "Gamma Cet" "Delta Cet" "Omicron Cet" "Zeta Cet" "Theta Cet" "Eta Cet" "Iota Cet" "Beta Cet" "Tau Cet" "Zeta Cet" ]
]
"Chamaeleon"
[
[ "Alpha Cha" "Gamma Cha" "Beta Cha" "Delta2 Cha" "Theta Cha" "Alpha Cha" ]
]
"Circinus"
[
[ "Beta Cir" "Alpha Cir" "Gamma Cir" ]
]
"Columba"
[
[ "Epsilon Col" "Alpha Col" "Beta Col" "Gamma Col" "Kappa Col" "Delta Col" ]
[ "Beta Col" "Eta Col" ]
]
"Coma Berenices"
[
[ "Alpha Com" "Beta Com" "Gamma Com" ]
]
"Corona Australis"
[
[ "Epsilon CrA" "Gamma CrA" "Alpha CrA" "Beta CrA" "Delta CrA" "Zeta CrA" ]
]
"Corona Borealis"
[
[ "Theta CrB" "Beta CrB" "Alpha CrB" "Gamma CrB" "Delta CrB" "Epsilon CrB" "Iota CrB" ]
]
"Corvus"
[
[ "Alpha Crv" "Epsilon Crv" "Gamma Crv" "Delta Crv" "Beta Crv" "Epsilon Crv" ]
]
"Crater"
[
[ "Eta Crt" "Zeta Crt" "Gamma Crt" "Delta Crt" "Epsilon Crt" "Theta Crt" ]
[ "Gamma Crt" "Beta Crt" "Alpha Crt" "Delta Crt" ]
]
"Crux"
[
[ "Alpha Cru" "Gamma Cru" ]
[ "Beta Cru" "Delta Cru" ]
]
"Cygnus"
[
[ "Kappa Cyg" "Iota Cyg" "Theta Cyg" "Delta Cyg" "Gamma Cyg" "Epsilon Cyg" "Zeta Cyg" ]
[ "Alpha Cyg" "Gamma Cyg" "Eta Cyg" "Beta Cyg" ]
]
"Delphinus"
[
[ "Epsilon Del" "Beta Del" "Delta Del" "Gamma1 Del" "Alpha Del" "Beta Del" ]
]
"Dorado"
[
[ "Gamma Dor" "Alpha Dor" "Zeta Dor" "Beta Dor" "Delta Dor" ]
[ "Beta Dor" ]
]
"Draco"
[
[ "Nu1 Dra" "Beta Dra" "Gamma Dra" "Xi Dra" "Nu1 Dra" ]
[ "Xi Dra" "Delta Dra" "Epsilon Dra" "Chi Dra" "Zeta Dra" "Eta Dra" "Theta Dra" "Iota Dra" "Alpha Dra" "Kappa Dra" "Lambda Dra" ]
]
"Equuleus"
[
[ "Delta Equ" "Beta Equ" "Alpha Equ" "Gamma Equ" ]
]
"Eridanus"
[
[ "Lambda Eri" "Beta Eri" "Omega Eri" "Mu Eri" "Nu Eri" "Omicron1 Eri" "Gamma Eri" "Pi Eri" "Delta Eri" "Epsilon Eri" "Eta Eri" "Tau1 Eri" "Tau2 Eri" "Tau3 Eri" "Tau4 Eri" "Tau5 Eri" "Tau6 Eri" "Tau9 Eri" "Upsilon1 Eri" "Upsilon2 Eri" "43 Eri" "41 Eri" "G Eri" "F Eri" "E Eri" "Theta Eri" "Iota Eri" "S Eri" "Kappa Eri" "Phi Eri" "Chi Eri" "Alpha Eri" ]
]
"Fornax"
[
[ "Alpha For" "Beta For" "Nu For" ]
]
"Gemini"
[
[ "Beta Gem" "Upsilon Gem" "Delta Gem" "Zeta Gem" "Gamma Gem" ]
[ "1 Gem" "Eta Gem" "Mu Gem" "Epsilon Gem" "Tau Gem" "Rho Gem" "Alpha Gem" ]
[ "Delta Gem" "Lambda Gem" "51 Gem" "Xi Gem"]
[ "Nu Gem" "Epsilon Gem" ]
[ "Tau Gem" "Theta Gem" ]
[ "Upsilon Gem" "Kappa Gem" ]
[ "Upsilon Gem" "Iota Gem" "Tau Gem" ]
]
"Grus"
[
[ "Gamma Gru" "Lambda Gru" "Mu1 Gru" "Delta1 Gru" "Beta Gru" "Epsilon Gru" "Zeta Gru" ]
[ "Alpha Gru" "Beta Gru" "Iota Gru" "Theta Gru" ]
]
"Hercules"
[
[ "Pi Her" "Epsilon Her" "Zeta Her" ]
[ "Phi Her" "Sigma Her" "Eta Her" "Zeta Her" "Beta Her" "Gamma Her" ]
[ "Beta Her" "Alpha Her" ]
[ "Iota Her" "Theta Her" "Rho Her" "Pi Her" "Eta Her" ]
[ "Epsilon Her" "Delta Her" "Lambda Her" "Mu Her" "Xi Her" "Omicron Her" "Nu Her" ]
[ "Omicron Her" "109 Her" "110 Her" "111 Her" ]
[ "109 Her" "102 Her" ]
]
"Horologium"
[
[ "Alpha Hor" "Iota Hor" "Eta Hor" "Zeta Hor" "Mu Hor" "Beta Hor" ]
]
"Hydra"
[
[ "Gamma Hya" "Beta Hya" "Xi Hya" ]
[ "Pi Hya" "Gamma Hya" ]
[ "Xi Hya" "Nu Hya" "Mu Hya" "Lambda Hya" "Upsilon2 Hya" "Upsilon1 Hya" "Alpha Hya" "Iota Hya" "Theta Hya" "Zeta Hya" "Eta Hya" "Sigma Hya" "Delta Hya" "Epsilon Hya" "Zeta Hya" ]
]
"Hydrus"
[
[ "Gamma Hyi" "Beta Hyi" "Alpha Hyi" "Gamma Hyi" ]
]
"Indus"
[
[ "Alpha Ind" "Theta Ind" "Delta Ind" ]
[ "Theta Ind" "Beta Ind" ]
]
"Lacerta"
[
[ "1 Lac" "Star Lac" "6 Lac" "2 Lac" "5 Lac" "4 Lac" "Alpha Lac" "Beta Lac" ]
]
"Leo"
[
[ "Gamma1 Leo" "Epsilon Leo" "Mu Leo" "Zeta Leo" "Gamma1 Leo" "Eta Leo" "Alpha Leo" "Theta Leo" "Beta Leo" "Delta Leo" "Gamma1 Leo" ]
[ "Alpha Leo" "Omicron Leo" ]
[ "Theta Leo" "Iota Leo" "Sigma Leo" ]
]
"Leo Minor"
[
[ "46 LMi" "Beta LMi" "21 LMi" ]
]
"Lepus"
[
[ "Mu Lep" "Alpha Lep" "Zeta Lep" "Eta Lep" ]
[ "Alpha Lep" "Beta Lep" ]
[ "Delta Lep" "Gamma Lep" "Beta Lep" "Epsilon Lep" ]
]
"Libra"
[
[ "Sigma Lib" "Beta Lib" ]
[ "48 Lib" "Theta Lib" "Eta Lib" "Gamma Lib" "Beta Lib" "Alpha2 Lib" "Sigma Lib" "Upsilon Lib" "Tau Lib" ]
]
"Lupus"
[
[ "Theta Lup" "Eta Lup" "Gamma Lup" "Epsilon Lup" "Kappa Lup" "Zeta Lup" "Alpha Lup" "Beta Lup" "Delta Lup" "Phi1 Lup" "Chi Lup" ]
[ "Gamma Lup" "Delta Lup" ]
]
"Lynx"
[
[ "Alpha Lyn" "38 Lyn" "31 Lyn" "21 Lyn" "15 Lyn" "2 Lyn" ]
]
"Lyra"
[
[ "Epsilon1 Lyr" "Alpha Lyr" "Zeta1 Lyr" "Beta Lyr" "Gamma Lyr" "Delta1 Lyr" "Zeta1 Lyr" ]
[ "Alpha Lyr" "Kappa Lyr" ]
]
"Mensa"
[
[ "Alpha Men" "Gamma Men" "Eta Men" "Beta Men" ]
]
"Microscopium"
[
[ "Theta1 Mic" "Epsilon Mic" "Gamma Mic" "Alpha Mic" ]
]
"Monoceros"
[
[ "Zeta Mon" "Alpha Mon" "Delta Mon" "Beta Mon" "Gamma Mon" ]
[ "Delta Mon" "18 Mon" "8 Mon" "13 Mon" ]
]
"Musca"
[
[ "Delta Mus" "Alpha Mus" "Gamma Mus" ]
[ "Beta Mus" "Alpha Mus" "Epsilon Mus" "Mu Mus" ]
]
"Norma"
[
[ "Epsilon Nor" "Gamma1 Nor" "Gamma2 Nor" "Eta Nor" ]
]
"Octans"
[
[ "Delta Oct" "Nu Oct" "Epsilon Oct" "Beta Oct" "Delta Oct" ]
]
"Ophiuchus"
[
[ "Kappa Oph" "Alpha Oph" "Beta Oph" "Eta Oph" ]
[ "45 Oph" "Theta Oph" "44 Oph" "Xi Oph" "Eta Oph" "Zeta Oph" "Epsilon Oph" "Delta Oph" "Kappa Oph" ]
[ "Beta Oph" "Gamma Oph" "67 Oph" "70 Oph" ]
[ "Gamma Oph" "Nu Oph" ]
]
"Orion"
[
[ "Xi Ori" "Mu Ori" "Alpha Ori" "Zeta Ori" "Kappa Ori" "Beta Ori" "Delta Ori" "Gamma Ori" "Lambda Ori" "Alpha Ori" ]
[ "Chi2 Ori" "Nu Ori" "Xi Ori" "68 Ori" ]
[ "Gamma Ori" "Pi3 Ori" "Pi4 Ori" "Pi5 Ori" "Pi6 Ori" ]
[ "Pi3 Ori" "Pi2 Ori" "Pi1 Ori" ][ "Zeta Ori" "Epsilon Ori" "Delta Ori" ]
]
"Pavo"
[
[ "Alpha Pav" "Beta Pav" "Upsilon Pav" "Epsilon Pav" "Zeta Pav" "Eta Pav" "Pi Pav" "Xi Pav" "Lambda Pav" "Delta Pav" "Beta Pav" "Gamma Pav" ]
]
"Pegasus"
[
[ "Epsilon Peg" "Theta Peg" "Zeta Peg" "Xi Peg" "Alpha Peg" "Gamma Peg" ]
[ "Kappa Peg" "Iota Peg" "Eta Peg" "Beta Peg" "Mu Peg" "Lambda Peg" "9 Peg" ]
[ "Alpha Peg" "Beta Peg" ]
]
"Perseus"
[
[ "Alpha Per" "Gamma Per" "Eta Per" ]
[ "Alpha Per" "Iota Per" "Kappa Per" "Beta Per" "Rho Per" "20 Per" "16 Per" ]
[ "Alpha Per" "Psi Per" "Delta Per" "Nu Per" "Epsilon Per" "Xi Per" "Zeta Per" "Omicron Per" ]
[ "Delta Per" "48 Per" "Mu Per" "Lambda Per" ]
[ "Iota Per" "Theta Per" ]
]
"Phoenix"
[
[ "Delta Phe" "Gamma Phe" "Nu Phe" "Beta Phe" "Alpha Phe" "Epsilon Phe" "Eta Phe" "Beta Phe" ]
]
"Pictor"
[
[ "Alpha Pic" "Gamma Pic" "Beta Pic" ]
]
"Pisces"
[
[ "Tau Psc" "Upsilon Psc" "Phi Psc" "Eta Psc" "Omicron Psc" "Alpha Psc" "Nu Psc" "Mu Psc" "Epsilon Psc" "Delta Psc" "Omega Psc" "Iota Psc" "Theta Psc" "Gamma Psc" "Kappa Psc" "Lambda Psc" "Iota Psc" ]
]
"Piscis Austrinus"
[
[ "Alpha PsA" "Epsilon PsA" "Lambda PsA" "Theta PsA" "Iota PsA" "Mu PsA" "Beta PsA" "Gamma PsA" "Delta PsA" "Alpha PsA" ]
]
"Puppis"
[
[ "Xi Pup" "K Pup" "Pi Pup" "Nu Pup" "Tau Pup" "Sigma Pup" "Zeta Pup"
"Rho Pup" "11 Pup" "Xi Pup" ]
[ "11 Pup" "16 Pup" ]
]
"Pyxis"
[
[ "Beta Pyx" "Alpha Pyx" "Gamma Pyx" ]
]
"Reticulum"
[
[ "Beta Ret" "Alpha Ret" "Epsilon Ret" "Iota Ret" "Delta Ret" "Beta Ret" ]
]
"Sagitta"
[
[ "Eta Sge" "Gamma Sge" "Delta Sge" "Beta Sge" ]
[ "Delta Sge" "Alpha Sge" ]
]
"Sagittarius"
[
[ "Phi Sgr" "Delta Sgr" ]
[ "Beta2 Sgr" "Iota Sgr" "Alpha Sgr" ]
[ "Iota Sgr" "Theta1 Sgr" "Theta2 Sgr" "62 Sgr" "59 Sgr" "52 Sgr" "Psi Sgr" "Tau Sgr" "Zeta Sgr" "Phi Sgr" "Sigma Sgr" "Tau Sgr" ]
[ "Sigma Sgr" "Omicron Sgr" "Pi Sgr" "53 Sgr" "Rho1 Sgr" ]
[ "Omicron Sgr" ]
[ "Phi Sgr" "Lambda Sgr" "Mu Sgr" ]
[ "Lambda Sgr" "Delta Sgr" "Epsilon Sgr" "Eta Sgr" ]
[ "Delta Sgr" "Gamma Sgr" "3 Sgr" ]
[ "Zeta Sgr" "Epsilon Sgr" "Gamma Sgr" ]
]
"Scorpius"
[
[ "Delta Sco" "Sigma Sco" "Alpha Sco" "Tau Sco" "Epsilon Sco" "Mu Sco" "Zeta Sco" "Eta Sco" "Theta Sco" "Iota1 Sco" "Kappa Sco" "Lambda Sco" ]
[ "Beta2 Sco" "Omega1 Sco" "Nu Sco" "11 Sco" "Beta2 Sco" "Delta Sco" "Pi Sco" "Rho Sco" ]
[ "Iota1 Sco" "G Sco" ]
]
"Sculptor"
[
[ "Alpha Scl" "Iota Scl" "Delta Scl" "Gamma Scl" "Beta Scl" ]
]
"Scutum"
[
[ "Beta Sct" "Alpha Sct" "Gamma Sct" ]
[ "Alpha Sct" "Zeta Sct" ]
]
"Serpens Caput"
[
[ "Mu Ser" "Omega Ser" "Epsilon Ser" "Alpha Ser" "Delta Ser" "Beta Ser" "Gamma Ser" "Kappa Ser" "Beta Ser" ]
]
"Serpens Cauda"
[
[ "Nu Ser" "Xi Ser" "Omicron Ser" ]
[ "Omicron Ser" "Eta Ser" "Theta Ser" ]
]
"Sextans"
[
[ "Beta Sex" "Alpha Sex" "Gamma Sex" ]
]
"Taurus"
[
[ "Beta Tau" "Tau Tau" "Epsilon Tau" "68 Tau" "Delta1 Tau" "Gamma Tau" "Theta2 Tau" "Alpha Tau" "Zeta Tau" ]
[ "Gamma Tau" "Lambda Tau" "47 Tau" "Mu Tau" "Nu Tau" ]
[ "Lambda Tau" "5 Tau" "Xi Tau" "Omicron Tau" ]
[ "Alpha Tau" "Epsilon Tau" ]
]
"Telescopium"
[
[ "Zeta Tel" "Alpha Tel" ]
[ "Alpha Tel" "Epsilon Tel" ]
]
"Triangulum"
[
[ "Alpha Tri" "Epsilon Tri" "Beta Tri" "Gamma Tri" "Alpha Tri" ]
]
"Triangulum Australe"
[
[ "Beta TrA" "Epsilon TrA" "Gamma TrA" "Alpha TrA" "Beta TrA" ]
]
"Tucana"
[
[ "Delta Tuc" "Alpha Tuc" "Gamma Tuc" "Epsilon Tuc" "Zeta Tuc" "Beta Tuc" "Gamma Tuc" ]
]
"Ursa Major"
[
[ "Eta UMa" "Zeta UMa" "Epsilon UMa" "Delta UMa" "Gamma UMa" "Beta UMa" "Alpha UMa" "Delta UMa" ]
]
"Ursa Minor"
[
[ "Alpha UMi" "Delta UMi" "Epsilon UMi" "Zeta UMi" "Beta UMi" "Gamma UMi" "Eta UMi" "Zeta UMi" ]
]
"Vela"
[
[ "Mu Vel" "Rho Vel" "Q Vel" "Psi Vel" "Lambda Vel" "D Vel" "E Vel" "Gamma Vel" "Delta Vel" "Kappa Vel" "Phi Vel" "Mu Vel" ]
[ "Delta Vel" ]
[ "Kappa Vel" ]
]
"Virgo"
[
[ "Beta Vir" "Eta Vir" "Gamma Vir" "Delta Vir" "Epsilon Vir" ]
[ "Delta Vir" "Zeta Vir" "Alpha Vir" "Theta Vir" "Gamma Vir" ]
[ "Zeta Vir" "Tau Vir" "109 Vir" ]
[ "Alpha Vir" "Kappa Vir" "Iota Vir" "Mu Vir" ]
]
"Volans"
[
[ "Alpha Vol" "Beta Vol" "Epsilon Vol" "Delta Vol" "Gamma Vol" "Zeta Vol" "Epsilon Vol" ]
]
"Vulpecula"
[
[ "13 Vul" "Alpha Vul" "1 Vul" ]
]

View File

@ -1,588 +0,0 @@
# All asteroid colors (except for Dactyl) are derived from SMASS spectra
# and converted to RGB values using Matt Wronkiewicz's spectrum2rgb utility
# that is distributed with the Celestia source package.
# A few main belt asteroids . .
"1 Ceres:Ceres:A899 OF" "Sol"
{
Class "dwarfplanet"
Texture "asteroid.jpg"
Color [ 1.000 0.945 0.881 ]
BlendTexture true
Radius 487.5 # 975x909km
Oblateness 0.068 # Thomas et al, Nature, 8 Sep 2005
EllipticalOrbit
{
Epoch 2452600.5 # 2002 Nov 22 00:00UT
Period 4.60014
SemiMajorAxis 2.7660
Eccentricity 0.0793
Inclination 10.584
AscendingNode 80.483
ArgOfPericenter 74.043
MeanAnomaly 232.067
}
UniformRotation
{
Period 9.074170 # Icarus 2007,188(2):451
Epoch 2449249.91125 # 1993 Sep 19 09:52:12UT
Inclination 11
AscendingNode 29
MeridianAngle 339.85
}
Albedo 0.113
}
"2 Pallas:Pallas" "Sol"
# Pole and shape from Schmidt et al
# "Hubble takes a look at Pallas: Shape, Size and Surface"
# (2008) http://www.lpi.usra.edu/meetings/lpsc2008/pdf/2502.pdf
{
Class "asteroid"
Texture "asteroid.jpg"
Color [ 1.000 0.952 0.903 ]
BlendTexture true
SemiAxes [ 291 278 250 ]
EllipticalOrbit
{
Epoch 2452600.5 # 2002 Nov 22 00:00UT
Period 4.61868
SemiMajorAxis 2.7733
Eccentricity 0.2300
Inclination 34.846
AscendingNode 173.166
ArgOfPericenter 310.423
MeanAnomaly 218.057
}
UniformRotation
{
Period 7.81323264
Inclination 113
AscendingNode 118
MeridianAngle 339
}
Albedo 0.159
}
"3 Juno:Juno" "Sol"
{
Class "asteroid"
Texture "asteroid.jpg"
Color [ 1.000 0.912 0.833 ]
BlendTexture true
SemiAxes [ 145 120 95 ]
EllipticalOrbit
{
Epoch 2452600.5 # 2002 Nov 22 00:00UT
Period 4.35540
SemiMajorAxis 2.6669
Eccentricity 0.2589
Inclination 12.972
AscendingNode 170.133
ArgOfPericenter 247.948
MeanAnomaly 119.146
}
UniformRotation
{
Period 7.811
Inclination 56
AscendingNode 196
}
Albedo 0.238
}
"4 Vesta:Vesta" "Sol"
{
Class "asteroid"
Mesh "vesta.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.923 0.851 ]
BlendTexture true
Radius 279 # maximum semi-axis
MeshCenter [ 0.77 3.424 -0.554 ]
InfoURL "http://www.solarviews.com/eng/vesta.htm"
EllipticalOrbit
{
Epoch 2452000.5 # 2001 Apr 1 00:00UT
Period 3.62729
SemiMajorAxis 2.3670775
Eccentricity 0.089753
Inclination 7.1346
AscendingNode 103.9510
ArgOfPericenter 149.4585
MeanAnomaly 104.980
}
UniformRotation
{
Period 5.342
Epoch 2450124.90833 # 1996 May 11 09:48UT
Inclination 40
AscendingNode 91
MeridianAngle 325.77
}
Albedo 0.423
}
# Some of the asteroids visited by spacecraft
"951 Gaspra:Gaspra:A913 YA" "Sol"
{
Class "asteroid"
Mesh "gaspra.cmod"
Texture "gaspramosaic.*" # Phil Stooke
Color [ 1.000 0.883 0.769 ]
BlendTexture true
Radius 9.1 # maximum semi-axis
MeshCenter [ 1.540 -0.064 -0.118 ]
EllipticalOrbit
{
Epoch 2448559.0 # 1991 Oct 29 12:00UT (Galileo encounter)
Period 3.2837 # average
SemiMajorAxis 2.2096348 # at epoch
Eccentricity 0.1738752 # at epoch
Inclination 4.0975771 # at epoch
AscendingNode 253.445592 # at epoch
ArgOfPericenter 129.045896 # at epoch
MeanAnomaly 280.769206 # at epoch
}
UniformRotation
{
Period 7.042073
Inclination 69.28
AscendingNode 109.59
MeridianAngle 58.865
}
Albedo 0.1
}
"243 Ida:Ida:A910 CD" "Sol"
{
Class "asteroid"
Mesh "ida.cmod"
Texture "idamosaic.*" # Phil Stooke
Color [ 1.000 0.901 0.815 ]
BlendTexture true
Radius 28.9 # maximum semi-axis
MeshCenter [ -1.424 -0.417 0.115 ]
EllipticalOrbit
{
Epoch 2449228.0 # 1993 Aug 28 12:00UT (Galileo encounter)
Period 4.8417 # mean
SemiMajorAxis 2.863731 # at epoch
Eccentricity 0.043109 # at epoch
Inclination 1.137110 # at epoch
AscendingNode 324.586055 # at epoch
ArgOfPericenter 113.017101 # at epoch
MeanAnomaly 131.594945 # at epoch
}
UniformRotation
{
Period 4.633632
Inclination 156.96
AscendingNode 352.77
MeridianAngle 359.46
}
Albedo 0.24
}
"Dactyl:243 Ida I:Ida I:1993 (243) 1" "Sol/Ida"
{
# Data for Dactyl taken from:
# Petit et al.: The Long-Term Dynamics of Dactyl's Orbit
# (Icarus 1997: 130; 177-197) - linked in the InfoURL
InfoURL "http://www.lpl.arizona.edu/~hurfordt/research/papers/Icarus130.pdf"
Class "asteroid"
Texture "asteroid.jpg"
# Use the same color as for Ida--uncertain if this is correct
Color [ 1.000 0.901 0.815 ]
BlendTexture true
Mesh "roughsphere.cms"
Radius 0.7
EllipticalOrbit
{
Epoch 2449228.2028 # 1993 Aug 28 16:52:05UT
Period 0.96534 # stable 5:1 resonant orbit (Petit et al.)
SemiMajorAxis 83.5 # stable 5:1 resonant orbit (Petit et al.)
Eccentricity 0.13 # stable 5:1 resonant orbit (Petit et al.)
LongOfPericenter 310 # stable pericenter at 90:E Ida longitude (Petit et al.)
AscendingNode 90 # VERY approximate - chosen to place Dactyl north
# of Ida's equator, as seen at time of Galileo encounter
Inclination 8 # estimated at 7-9 degrees (Petit et al.)
}
UniformRotation
{
MeridianAngle 123 # place prime meridian facing Ida
}
Albedo 0.2
}
"433 Eros:Eros:1898 DQ" "Sol"
{
Class "asteroid"
Mesh "eros.cmod"
Texture "eros.*"
# NormalMap "erosbump2k.jpg"
Color [ 1.000 0.880 0.764 ]
# The texture is already tinted with the asteroid color
#BlendTexture true
Radius 16.3 # maximum semi-axis
MeshCenter [ -1.262 0.168 -0.164 ]
EllipticalOrbit
{
Epoch 2451171.0 # 1998 Dec 23 12:00UT (NEAR-Shoemaker encounter)
Period 1.761 # average
SemiMajorAxis 1.458261 # at epoch
Eccentricity 0.222885 # at epoch
Inclination 10.830143 # at epoch
AscendingNode 304.430882 # at epoch
ArgOfPericenter 178.613184 # at epoch
MeanAnomaly 208.403434 # at epoch
}
UniformRotation
{
Period 5.270
Inclination 78.70
AscendingNode 107.23
MeridianAngle 338.165
}
Albedo 0.16
}
"25143 Itokawa:Itokawa:1998 SF36" "Sol"
{
Class "asteroid"
Mesh "itokawa.cmod"
Radius 0.315
InfoURL "http://en.wikipedia.org/wiki/25143_Itokawa"
# Osculating elements from HORIZONS
EllipticalOrbit
{
Epoch 2453625.5 # 2005 Sep 12--Hayabusa arrival
Period 1.523231392
SemiMajorAxis 1.323849003
Eccentricity 0.2801215972
Inclination 1.622265921
AscendingNode 69.09461308
ArgOfPericenter 162.7594572
MeanAnomaly 310.6795025
}
# Retrograde rotation pole with RA 90.53 and Dec -66.30
# From "Pole and global shape of 25143 Itokawa",
# Demura et al, Science, 2 Jun 2006
BodyFrame { EquatorJ2000 {} }
UniformRotation
{
Inclination 156.30
AscendingNode 180.53
Period 12.132
}
Color [ 1 0.96 0.80 ] # Approximation based on natural color images
LunarLambert 0.5 # Approximate a dusty surface
# Align model with Celestia's coordinate system
Orientation [ 90 1 0 0 ]
Albedo 0.53
}
# Radar-imaged asteroids
"4179 Toutatis:Toutatis:1989 AC" "Sol"
{
Class "asteroid"
Mesh "toutatis.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.904 0.803 ]
BlendTexture true
Radius 2.3 # maximum semi-axis
MeshCenter [ 0.0313 0.2171 0.0064 ]
InfoURL "http://echo.jpl.nasa.gov/asteroids/4179_Toutatis/toutatis.html"
EllipticalOrbit
{
Epoch 2452200.5 # 2001 Oct 18 00:00UT
Period 3.976715
SemiMajorAxis 2.5100537
Eccentricity 0.6342274
Inclination 0.46959
AscendingNode 128.24788
ArgOfPericenter 274.78070
MeanAnomaly 86.28120
}
PrecessingRotation
{
Period 129.6 # 5.41 days
Inclination 145
PrecessionPeriod -0.0201 # 7.35 day period
}
Albedo 0.16
}
"1620 Geographos:Geographos:1951 RA" "Sol"
{
Class "asteroid"
Mesh "geographos.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.901 0.802 ]
BlendTexture true
Radius 2.53 # maximum semi-axis
MeshCenter [ 0.154 -0.002 -0.026 ]
InfoURL "http://www.solarviews.com/eng/geograph.htm"
EllipticalOrbit
{
Epoch 2450800.5 # 1997 Dec 18 00:00UT
Period 1.39
SemiMajorAxis 1.2455
Eccentricity 0.3354
Inclination 13.34
AscendingNode 337.352
ArgOfPericenter 276.756
MeanAnomaly 180.595
}
UniformRotation
{
Period 5.223
Inclination 136
AscendingNode 145
}
Albedo 0.326
}
"216 Kleopatra:Kleopatra:A905 OA" "Sol"
{
Class "asteroid"
Mesh "kleopatra.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.932 0.888 ]
BlendTexture true
Radius 110 # maximum semi-axis
MeshCenter [ -3.049 2.379 1.429 ]
InfoURL "http://echo.jpl.nasa.gov/~ostro/kle/index.html"
EllipticalOrbit
{
Epoch 2450800.5 # 1997 Dec 12 00:00UT
Period 4.67
SemiMajorAxis 2.791
Eccentricity 0.2531
Inclination 13.138
AscendingNode 215.699
ArgOfPericenter 179.350
MeanAnomaly 225.804
}
UniformRotation
{
Period 5.385
Inclination 63
AscendingNode 162
}
Albedo 0.16
# Class M
}
"1998 KY26" "Sol"
{
Class "asteroid"
Mesh "ky26.cmod"
Texture "asteroid.jpg"
Radius 0.015 # maximum semi-axis
MeshCenter [ -0.000718 -0.000099 0.000556 ]
InfoURL "http://echo.jpl.nasa.gov/~ostro/KY26/index.html"
EllipticalOrbit
{
Epoch 2452000.5 # 2001 Apr 1 00:00UT
Period 1.3752
SemiMajorAxis 1.2320798
Eccentricity 0.20151423
Inclination 1.48127
AscendingNode 84.45490
ArgOfPericenter 209.14766
MeanAnomaly 356.6879717
}
UniformRotation
{
Period 0.178
}
Albedo 0.15
}
"2063 Bacchus:Bacchus:1977 HB" "Sol"
{
Class "asteroid"
Mesh "bacchus.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.899 0.777 ]
BlendTexture true
Radius 0.55 # maximum semi-axis
MeshCenter [ -0.00936 -0.00610 0.00289 ]
InfoURL "http://echo.jpl.nasa.gov/~ostro/bacchus/index.html"
EllipticalOrbit
{
Epoch 2452000.5 # 2001 Apr 1 00:00UT
Period 1.1223
SemiMajorAxis 1.0781035
Eccentricity 0.34951251
Inclination 9.43160
AscendingNode 33.23590
ArgOfPericenter 55.18040
MeanAnomaly 229.8627955
}
UniformRotation
{
Period 14.90
Inclination 116
AscendingNode 114
}
Albedo 0.15
}
"6489 Golevka:Golevka:1991 JX" "Sol"
{
Class "asteroid"
Mesh "golevka.cmod"
Texture "asteroid.jpg"
Color [ 1.000 0.856 0.747 ]
BlendTexture true
Radius 0.34 # maximum semi-axis
MeshCenter [ -0.0289 -0.0111 -0.0331 ]
InfoURL "http://echo.jpl.nasa.gov/~ostro/gol/index.html"
EllipticalOrbit
{
Epoch 2452000.5 # 2001 Apr 1 00:00UT
Period 3.995
SemiMajorAxis 2.5120500
Eccentricity 0.60117380
Inclination 2.28701
AscendingNode 212.16560
ArgOfPericenter 65.25133
MeanAnomaly 159.8983670
}
UniformRotation
{
Period 6.0289
Inclination 135
AscendingNode 292
}
Albedo 0.15
}
"4769 Castalia:Castalia:1989 PB" "Sol"
{
Class "asteroid"
Mesh "castalia.cmod"
Texture "asteroid.jpg"
BlendTexture true
Radius 0.81 # maximum semi-axis
MeshCenter [ -0.0456 -0.0347 -0.0178 ]
InfoURL "http://echo.jpl.nasa.gov/asteroids/4769_Castalia/cast01.html"
EllipticalOrbit
{
Epoch 2452000.5 # 2001 Apr 1 00:00UT
Period 1.096
SemiMajorAxis 1.0632007
Eccentricity 0.48324394
Inclination 8.88806
AscendingNode 325.71246
ArgOfPericenter 121.26355
MeanAnomaly 152.5186007
}
UniformRotation
{
Period 4.095
Inclination 146
AscendingNode 325
}
Albedo 0.15
}
# Centaurs
"2060 Chiron:Chiron:1977 UB:95P Chiron" "Sol"
{
Class "asteroid"
Texture "asteroid.jpg"
Color [ 1.000 0.960 0.919 ]
BlendTexture true
Radius 144
EllipticalOrbit
{
Epoch 2449608.5 # 1994 Sep 13 00:00UT
Period 50.90359
SemiMajorAxis 13.734941
Eccentricity 0.384424
Inclination 6.927771
AscendingNode 209.395188
ArgOfPericenter 339.432152
MeanAnomaly 349.983669
}
UniformRotation
{
Period 5.918
}
Albedo 0.048
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,117 +0,0 @@
# Comets
"Halley:1P Halley" "Sol"
{
Class "comet"
Mesh "halley.cmod"
Texture "asteroid.jpg"
Radius 7.6 # maximum semi-axis
MeshCenter [ -0.338 1.303 0.230 ]
EllipticalOrbit
{
Epoch 2449400.5 #1994 Feb 17 00:00UT
Period 75.31589
SemiMajorAxis 17.834144
Eccentricity 0.967143
Inclination 162.262690
AscendingNode 58.420081
ArgOfPericenter 111.332485
MeanAnomaly 38.384264
}
# chaotic rotation, imperfectly defined:
# this version from "The New Solar System", 4th Edition; Eds.
# JK Beatty, CC Petersen, A Chaikin
PrecessingRotation
{
Period 170 # 7.1 day axial rotation period
Inclination 66
PrecessionPeriod 0.010 # 3.7 day precession period
}
Albedo 0.04
}
"Borrelly:19P Borrelly" "Sol"
{
Class "comet"
Mesh "borrelly.cms"
Texture "asteroid.jpg"
Radius 2.2
InfoURL "http://www.solarviews.com/eng/borrelly.htm"
EllipticalOrbit
{
Epoch 2452174.5 # 2001 Sep 22 00:00UT
Period 6.86302
SemiMajorAxis 3.611363
Eccentricity 0.623908
Inclination 30.324612
AscendingNode 75.424869
ArgOfPericenter 353.375385
MeanAnomaly 358.956091
}
UniformRotation
{
Period 25
Inclination 90
AscendingNode 315
}
Albedo 0.04
}
"Ikeya-Zhang:153P Ikeya-Zhang" "Sol"
{
Class "comet"
Texture "asteroid.jpg"
Mesh "roughsphere.cms"
EllipticalOrbit
{
Epoch 2452352.47847 # 2002 Mar 18 23:29UT
Period 367.181906
SemiMajorAxis 51.276792
Eccentricity 0.990111
Inclination 28.1206
AscendingNode 93.3718
ArgOfPericenter 34.6666
MeanAnomaly 0
}
# These are all made up (copied from Halley)
Radius 7.5
UniformRotation
{
Period 170
}
Albedo 0.04
}
"Hale-Bopp:C1995 O1 Hale-Bopp" "Sol"
{
Class "comet"
Mesh "asteroid.cms"
Texture "asteroid.jpg"
Radius 13
EllipticalOrbit
{
Period 2523.4
PericenterDistance 0.914142
Eccentricity 0.995068
Inclination 89.4300
AscendingNode 282.4707
ArgOfPericenter 130.5887
MeanAnomaly -0.007
Epoch 2450520.5
}
# Estimate of rotation period from here: http://www.usafa.af.mil/dfp/research/astro/papers/icqpaper.htm
RotationPeriod 11.47
Albedo 0.1
}

View File

@ -1,84 +0,0 @@
Location "NORTH AMERICA" "Sol/Earth"
{
LongLat [ -105 40 0 ]
Size 5000
Type "TA"
}
Location "SOUTH AMERICA" "Sol/Earth"
{
LongLat [ -60 -10 0 ]
Size 4200
Type "TA"
}
Location "EURASIA" "Sol/Earth"
{
LongLat [ 60 50 0 ]
Size 7300
Type "TA"
}
Location "AFRICA" "Sol/Earth"
{
LongLat [ 20 5 0 ]
Size 5500
Type "TA"
}
Location "AUSTRALIA" "Sol/Earth"
{
LongLat [ 135 -25 0 ]
Size 2800
Type "TA"
}
Location "ANTARCTICA" "Sol/Earth"
{
LongLat [ 0 -90 0 ]
Size 3600
Type "TA"
}
Location "NORTH ATLANTIC OCEAN" "Sol/Earth"
{
LongLat [ -45 40 0 ]
Size 6400
Type "ME"
}
Location "SOUTH ATLANTIC OCEAN" "Sol/Earth"
{
LongLat [ -15 -15 0 ]
Size 6400
Type "ME"
}
Location "NORTH PACIFIC OCEAN" "Sol/Earth"
{
LongLat [ 180 30 0 ]
Size 9000
Type "ME"
}
Location "SOUTH PACIFIC OCEAN" "Sol/Earth"
{
LongLat [ -160 -10 0 ]
Size 9000
Type "ME"
}
Location "INDIAN OCEAN" "Sol/Earth"
{
LongLat [ 75 -15 0 ]
Size 8500
Type "ME"
}
Location "ARCTIC OCEAN" "Sol/Earth"
{
LongLat [ 0 90 0 ]
Size 3700
Type "ME"
}

View File

@ -1,288 +0,0 @@
Location "Abelard" "Sol/Eros"
{
LongLat [ -12.2 -3.5 0 ]
Size 1.1
Type "AA"
}
Location "Aida" "Sol/Eros"
{
LongLat [ -130.5 7.9 0 ]
Size 1.6
Type "AA"
}
Location "Avtandil" "Sol/Eros"
{
LongLat [ -233.1 -22.5 0 ]
Size 1.2
Type "AA"
}
Location "Bovary" "Sol/Eros"
{
LongLat [ -27.3 -61.0 0 ]
Size 0.8
Type "AA"
}
Location "Casanova" "Sol/Eros"
{
LongLat [ -236.0 46.6 0 ]
Size 0.9
Type "AA"
}
Location "Catherine" "Sol/Eros"
{
LongLat [ -171.1 9.1 0 ]
Size 1.1
Type "AA"
}
Location "Cupid" "Sol/Eros"
{
LongLat [ -230.2 8.1 0 ]
Size 1.8
Type "AA"
}
Location "Don Juan" "Sol/Eros"
{
LongLat [ -356.7 29.5 0 ]
Size 1.1
Type "AA"
}
Location "Don Quixote" "Sol/Eros"
{
LongLat [ -250.8 -57.7 0 ]
Size 0.9
Type "AA"
}
Location "Dulcinea" "Sol/Eros"
{
LongLat [ -272.9 -76.1 0 ]
Size 1.4
Type "AA"
}
Location "Eurydice" "Sol/Eros"
{
LongLat [ -170.0 13.5 0 ]
Size 2.2
Type "AA"
}
Location "Fujitsubo" "Sol/Eros"
{
LongLat [ -62.7 -3.7 0 ]
Size 1.7
Type "AA"
}
Location "Galatea" "Sol/Eros"
{
LongLat [ -183.1 -10.2 0 ]
Size 1.4
Type "AA"
}
Location "Gamba" "Sol/Eros"
{
LongLat [ -54.1 -20.6 0 ]
Size 1.3
Type "AA"
}
Location "Genji" "Sol/Eros"
{
LongLat [ -88.6 -19.5 0 ]
Size 1.5
Type "AA"
}
Location "Heathcliff" "Sol/Eros"
{
LongLat [ -167.9 7.4 0 ]
Size 1.1
Type "AA"
}
Location "Himeros" "Sol/Eros"
{
LongLat [ -282.3 21.2 0 ]
Size 10.0
Type "AA"
}
Location "Hios" "Sol/Eros"
{
LongLat [ -130.9 -9.4 0 ]
Size 1.3
Type "AA"
}
Location "Jahan" "Sol/Eros"
{
LongLat [ -293.5 74.2 0 ]
Size 2.1
Type "AA"
}
Location "Kastytis" "Sol/Eros"
{
LongLat [ -161.3 6.8 0 ]
Size 1.7
Type "AA"
}
Location "Leander" "Sol/Eros"
{
LongLat [ -210.3 25.6 0 ]
Size 1.4
Type "AA"
}
Location "Leylie" "Sol/Eros"
{
LongLat [ -23.5 -3.0 0 ]
Size 1.9
Type "AA"
}
Location "Lolita" "Sol/Eros"
{
LongLat [ -197.7 -35.2 0 ]
Size 1.8
Type "AA"
}
Location "Mahal" "Sol/Eros"
{
LongLat [ -170.0 79.4 0 ]
Size 1.2
Type "AA"
}
Location "Majnoon" "Sol/Eros"
{
LongLat [ -28.8 3.8 0 ]
Size 2.1
Type "AA"
}
Location "Mélisande" "Sol/Eros"
{
LongLat [ -185.6 67.1 0 ]
Size 1.0
Type "AA"
}
Location "Narcissus" "Sol/Eros"
{
LongLat [ -7.1 18.2 0 ]
Size 2.9
Type "AA"
}
Location "Orpheus" "Sol/Eros"
{
LongLat [ -176.7 25.6 0 ]
Size 1.1
Type "AA"
}
Location "Pao-yü" "Sol/Eros"
{
LongLat [ -105.6 -73.2 0 ]
Size 0.8
Type "AA"
}
Location "Pelléas" "Sol/Eros"
{
LongLat [ -221.3 63.1 0 ]
Size 1.2
Type "AA"
}
Location "Psyche" "Sol/Eros"
{
LongLat [ -94.6 31.6 0 ]
Size 4.8
Type "AA"
}
Location "Pygmalion" "Sol/Eros"
{
LongLat [ -191.1 -1.8 0 ]
Size 1.7
Type "AA"
}
Location "Radames" "Sol/Eros"
{
LongLat [ -115.1 -5.2 0 ]
Size 1.6
Type "AA"
}
Location "Selene" "Sol/Eros"
{
LongLat [ -12.5 -14.2 0 ]
Size 3.6
Type "AA"
}
Location "Tai-yü" "Sol/Eros"
{
LongLat [ -126.1 -47.0 0 ]
Size 1.4
Type "AA"
}
Location "Tutanekai" "Sol/Eros"
{
LongLat [ -3.3 56.4 0 ]
Size 2.1
Type "AA"
}
Location "Valentine" "Sol/Eros"
{
LongLat [ -208.4 14.6 0 ]
Size 2.2
Type "AA"
}
Location "CHARLOIS REGIO" "Sol/Eros"
{
LongLat [ -330 -16 0 ]
Size 10
Type "RE"
}
Location "WITT REGIO" "Sol/Eros"
{
LongLat [ -348 18 0 ]
Size 10
Type "RE"
}
Location "Finsen Dorsum" "Sol/Eros"
{
LongLat [ -350 -48 0 ]
Size 10
Type "DO"
}
Location "Hinks Dorsum" "Sol/Eros"
{
LongLat [ -318 42 0 ]
Size 10
Type "DO"
}

File diff suppressed because it is too large Load Diff

View File

@ -1,832 +0,0 @@
# Stars which are not included in the Hipparcos catalog, but are
# orbited by extrasolar planets. (The planets are defined in the file
# "extrasolar.ssc".)
#
# Additionally, some companion stars and orbits for named binary stars
# with extrasolar planets.
# OGLE survey
"OGLE-TR-10"
{
RA 267.867708
Dec -29.876361
Distance 4900
SpectralType "G2V" # from Simbad: mass and luminosity seem too high, however
AppMag 14.93
}
"OGLE-TR-56"
{
RA 269.148070
Dec -29.539412
Distance 8900 # to give known apparent magnitude
SpectralType "G0V" # from estimated mass and radius
AbsMag 4.4 # from spectral class
}
"OGLE-TR-111"
{
RA 163.324625
Dec -60.405639
Distance 3300 # estimate from mass and app. mag.
SpectralType "G8V" # estimated from mass
AppMag 15.55
}
"OGLE-TR-113"
{
RA 163.101667
Dec -61.446667
Distance 1400 # from radius, temperature and app mag
SpectralType "K3V" # from estimated mass and temperature
AbsMag 6.5 # from spectral class
}
"OGLE-TR-132"
{
RA 162.640417
Dec -61.957222
Distance 8800 # from radius, temperature and app mag
SpectralType "F5V" # from estimated mass and temperature
AbsMag 3.6 # from spectral class
}
"OGLE-TR-182"
{
RA 167.32833
Dec -61.09528
Distance 10000 # from apparent magnitude and estimated spectral class
SpectralType "G0V" # from mass, radius and temperature
AppMag 16.84
}
"OGLE-TR-211"
{
RA 160.0625
Dec -62.45555
Distance 5200 # from estimated apparent magnitude and spectral class
SpectralType "F8V"
AppMag 15 # estimated from I magnitude and spectral class
}
"OGLE2-TR-L9"
{
RA 166.98042
Dec -61.14611
Distance 2900
SpectralType "F3V"
AbsMag 3.6 # estimated from spectral class
}
# TrES survey
1013242652 "TrES-1 (parent star):GSC 02652-01324"
{
RA 286.04083
Dec 36.6325
Distance 490 # From spectral class and visual magnitude
SpectralType "K0V"
AppMag 11.79
}
1028113549 "TrES-2 (parent star):GSC 03549-02811"
{
RA 286.80848
Dec 49.31641
Distance 750
SpectralType "G0V"
AppMag 11.41
}
"TrES-3 (parent star):GSC 03089-00929"
{
RA 268.02917
Dec 37.54611
Distance 940 # from inferred spectrum
SpectralType "G5V" # from inferred mass and temp
AppMag 12.4
}
1006482620 "TrES-4 (parent star):GSC 02620-00648"
{
RA 268.304375
Dec 37.211833
Distance 1430
SpectralType "G0IV" # from inferred mass, radius and temp
AbsMag 3.36
}
# XO survey
1016572041 "XO-1:GSC 02041-01657"
{
RA 240.549167
Dec 28.169722
Distance 650
SpectralType "G1V"
AppMag 11.3
}
1000053413 "XO-2:GSC 03413-00005"
{
RA 117.0292
Dec 50.2258
Distance 486
SpectralType "K0V"
AppMag 11.18
}
1010643727 "XO-3:GSC 03727-01064"
{
RA 65.46958
Dec 57.81694
Distance 850
SpectralType "F5V"
AppMag 9.8
}
1019943793 "XO-4:GSC 03793-01994"
{
RA 110.388333
Dec 58.268055
Distance 955
SpectralType "F5V"
AppMag 10.7
}
"XO-5:GSC 02959-00729"
{
RA 116.71625
Dec 39.094444
Distance 880
SpectralType "G8V"
AppMag 12.13
}
# HAT-Net survey
"HAT-P-1:SAO 72884"
{
RA 344.445104
Dec 38.674953
Distance 453
SpectralType "G0V"
AppMag 10.4
}
1008193466 "HAT-P-3:GSC 03466-00819"
{
RA 206.094167
Dec 48.028611
Distance 460
SpectralType "K0V" # from temp and luminosity
AbsMag 5.86
}
1015992569 "HAT-P-4:GSC 02569-01599"
{
RA 229.99125
Dec 36.229722
Distance 1010
SpectralType "F9V" # from temperature and radius
AppMag 11.2
}
1010872634 "HAT-P-5:GSC 02634-01087"
{
RA 274.40542
Dec 36.621389
Distance 1110
SpectralType "G1V" # from temperature and radius
AppMag 12
}
1009923239 "HAT-P-6:GSC 03239-00992"
{
RA 354.77417
Dec 42.466111
Distance 650
SpectralType "F4V" # from temperature and radius
AppMag 10.5
}
1014023547 "HAT-P-7:GSC 03547-01402"
{
RA 292.24734
Dec 47.969518
Distance 1040
SpectralType "F6V"
AppMag 10.5
}
1011522757 "HAT-P-8:GSC 02757-01152"
{
RA 343.041250
Dec 5.447222
Distance 750
SpectralType "F8V" # from mass, radius, temperature, luminosity
AppMag 10.17
}
"HAT-P-9:GSC 02463-00281"
{
RA 110.168333
Dec 37.140556
Distance 1560
SpectralType "F5V" # from mass, radius, temperature, luminosity
AppMag 12.3
}
1017142340 "HAT-P-10:WASP-11:GSC 02340-01714"
{
RA 47.368958
Dec 30.673611
Distance 408
SpectralType "K3V"
AppMag 11.89
}
"HAT-P-12:GSC 03033-00706"
{
RA 209.389583
Dec 43.493611
Distance 464.5
SpectralType "K4V" # from mass, radius and temperature
AppMag 12.84
}
# WASP survey
"WASP-1"
{
RA 5.167083
Dec 31.990000
Distance 1200
SpectralType "F7V"
AppMag 11.79
}
"WASP-2"
{
RA 307.725417
Dec 6.429444
Distance 470
SpectralType "K1V"
AppMag 11.98
}
1001952636 "WASP-3:GSC 02636-00195"
{
RA 278.63167
Dec 35.66167
Distance 727
SpectralType "F7V"
AppMag 10.64
}
"WASP-4"
{
RA 353.56292
Dec -42.06139
Distance 980
SpectralType "G7V"
AppMag 12.6
}
"WASP-5"
{
RA 359.348917
Dec -41.277083
Distance 980
SpectralType "G4V"
AppMag 12.3
}
"WASP-6"
{
RA 348.157208
Dec -22.673917
Distance 620 # from spectral class and app mag
SpectralType "G8V"
AppMag 11.9
}
1015707963 "WASP-7"
{
RA 311.042500
Dec -39.225278
Distance 456
SpectralType "F5V"
AppMag 9.51
}
"WASP-10:GSC 2752-00114"
{
RA 348.992917
Dec 31.462778
Distance 290
SpectralType "K5"
AppMag 12.7
}
"WASP-12"
{
RA 97.637667
Dec 29.672222
Distance 870
SpectralType "G0"
AppMag 11.69
}
"WASP-13"
{
RA 140.102917
Dec 33.882222
Distance 505
SpectralType "G1V"
AppMag 10.42
}
"WASP-14"
{
RA 218.276250
Dec 21.894722
Distance 520
SpectralType "F5V"
AppMag 9.75
}
1011627283 "WASP-15"
{
RA 208.927917
Dec -32.159722
Distance 1004
SpectralType "F5"
AppMag 11.0
}
# CoRoT survey
"CoRoT-1"
{
RA 102.079875
Dec -3.102161
Distance 2250 # from spectral class and magnitude
SpectralType "G0V"
AppMag 13.6
}
"CoRoT-2:GSC 00465-01282"
{
RA 291.777083
Dec 1.38375
Distance 885 # from spectral class and magnitude
SpectralType "G7V"
AppMag 12.57
}
"CoRoT-3"
{
RA 292.054167
Dec 0.121944
Distance 2220
SpectralType "G0V"
AppMag 13.3
}
"CoRoT-4:GSC 04800-02187"
{
RA 102.194583
Dec -0.672778
Distance 5160 # from spectral class and magnitude
SpectralType "F0V"
AppMag 13.7
}
1017334799 "CoRoT-7"
{
RA 100.95625
Dec -1.063056
Distance 460
SpectralType "K0V"
AppMag 11.73
}
# HD stars without Hip numbers
1000370197 # HD 70573
{
RA 125.7083
Dec 1.8594
Distance 149
SpectralType "G1V"
AppMag 8.70
}
1001013304 # HD 17092
{
RA 41.5917
Dec 49.6531
Distance 355
SpectralType "K0III"
AppMag 7.73
}
1014500458 # HD 171028
{
RA 206.094167
Dec 6.94583
Distance 290
SpectralType "G0"
AppMag 8.31
}
1009804006 # HD 240210
{
RA 347.621667
Dec 57.029444
Distance 466
SpectralType "K2III"
AppMag 8.33
}
# Other non-Hip stars
1009465503 "BD-10 3166"
{
RA 164.61993
Dec -10.77038
Distance 378.39
SpectralType "G4V"
AppMag 10.0
}
1021565409 "NGC 2423 3:GSC 05409-02156"
{
RA 114.2875
Dec -13.90667
Distance 2500
SpectralType "GIV"
AppMag 9.45
}
1007901422 "BD+20 2457:GSC 01422-00790"
{
RA 154.187083
Dec 19.891389
Distance 650
SpectralType "K2"
AppMag 9.75
}
"Gliese 317"
{
RA 130.24583
Dec -23.45639
Distance 29.9
SpectralType "M3.5V"
AppMag 12.0
}
"Cha H\u03b1 8:Cha Ha 8"
{
RA 166.949167
Dec -77.668889
Distance 520
SpectralType "M6.5V"
AppMag 20.1
}
"V391 Peg"
{
RA 331.05083
Dec 26.41889
Distance 4600
SpectralType "B0" # from effective temperature, gives correct radius
AppMag 14.57
}
"Lupus-TR-3"
{
RA 232.579167
Dec -42.979444
Distance 5900 # estimate from spectral class and app. mag.
SpectralType "K1V"
AppMag 17.4
}
"GD 66:V361 Aur:WD 0517+307"
{
RA 80.159583
Dec 30.806667
Distance 166
SpectralType "DA"
AppMag 15.6
}
53911 "TW Hya" # redefined because of absent spectral
# class in stars.dat
{
RA 165.46625
Dec -34.70472
Distance 184.07
SpectralType "K8V"
AppMag 10.91
}
# Definitions for some exoplanet stars in multiple systems
Barycenter "TAU Boo:4 Boo"
{
RA 206.815676
Dec 17.456869
Distance 50.868
}
67275 "TAU Boo A:4 Boo A"
{
OrbitBarycenter "TAU Boo"
SpectralType "F7V"
AppMag 4.50
EllipticalOrbit {
Period 2000
SemiMajorAxis 45.4 # est. mass ratio 1.3:0.33
Eccentricity 0.91
Inclination 102.8
AscendingNode 160.2
ArgOfPericenter 33.2
MeanAnomaly 356.9
}
}
"TAU Boo B:4 Boo B"
{
OrbitBarycenter "TAU Boo"
SpectralType "M2V"
AppMag 11.1
EllipticalOrbit {
Period 2000
SemiMajorAxis 179.0 # est. mass ratio 1.3:0.33
Eccentricity 0.91
Inclination 102.8
AscendingNode 160.2
ArgOfPericenter 213.2
MeanAnomaly 356.9
}
}
Barycenter "UPS And:50 And"
{
RA 24.198715 # mass ratio 1.2:0.2
Dec 41.404487 #
Distance 43.928
}
7513 "UPS And A:50 And A"
{
RA 24.199904
Dec 41.406384
Distance 43.928
SpectralType "F8V"
AppMag 4.10
}
"UPS And B:50 And B:2MASS J0136504+412332"
{
RA 24.19158317
Dec 41.39310511
Distance 43.928
SpectralType "M4.5V"
AbsMag 11.8 # from spectral class
}
10138 "Gliese 86 A"
{
RA 32.600005
Dec -50.825314
Distance 35.596
SpectralType "K0V"
AppMag 6.12
}
# Originally classified as a brown dwarf
# Present data from Mugrauer & Neuhauser
# http://de.arxiv.org/abs/astro-ph/0506311
"Gliese 86 B"
{
RA 32.600829 # from measured separation
Dec -50.825444 # position angle
Distance 35.596
SpectralType "DC9" # "cool white dwarf, 5000±500K"
AbsMag 14.5 # typical for class
}
Barycenter "83 Leo"
{
RA 171.692540
Dec 3.009373
Distance 57.637
}
55846 "83 Leo A"
{
OrbitBarycenter "83 Leo"
SpectralType "K0IV"
AppMag 6.49
EllipticalOrbit {
Period 32000
SemiMajorAxis 348.4 # est. mass ratio 0.79:0.74
Eccentricity 0.46
Inclination 60.1
AscendingNode 307.3
ArgOfPericenter 229.0
MeanAnomaly 324.0
}
}
55848 "83 Leo B"
{
OrbitBarycenter "83 Leo"
SpectralType "K2V"
AppMag 7.58
EllipticalOrbit {
Period 32000
SemiMajorAxis 371.9 # est. mass ratio 0.79:0.74
Eccentricity 0.46
Inclination 60.1
AscendingNode 307.3
ArgOfPericenter 49.0
MeanAnomaly 324.0
}
}
Barycenter "94 Cet"
{
RA 48.193016
Dec -1.195933
Distance 72.984
}
14954 "94 Cet A"
{
OrbitBarycenter "94 Cet"
SpectralType "F8V"
AppMag 5.06
EllipticalOrbit {
Period 1420
SemiMajorAxis 50.2 # est. mass ratio 1.15:0.57
Eccentricity 0.26
Inclination 43.7
AscendingNode 149.1
ArgOfPericenter 53.4
MeanAnomaly 4.6
}
}
"94 Cet B"
{
OrbitBarycenter "94 Cet"
SpectralType "M" # guess from est. mass and AppMag
AppMag 11.5
EllipticalOrbit {
Period 1420
SemiMajorAxis 101.3 # est. mass ratio 1.15:0.57
Eccentricity 0.26
Inclination 43.7
AscendingNode 149.1
ArgOfPericenter 233.4
MeanAnomaly 4.6
}
}
Barycenter "16 Cyg"
{
RA 295.460800
Dec 50.521685
Distance 70.522
}
96895 # 16 Cyg A
{
OrbitBarycenter "16 Cyg"
SpectralType "G2V"
AppMag 5.99
EllipticalOrbit {
Period 18212.2
SemiMajorAxis 440.94 # est. mass ratio 1:1
Eccentricity 0.862
Inclination 53.57
AscendingNode 354.87
ArgOfPericenter 7.15
MeanAnomaly 38.67
}
}
96901 # 16 Cyg B
{
OrbitBarycenter "16 Cyg"
SpectralType "G5V"
AppMag 6.25
EllipticalOrbit {
Period 18212.2
SemiMajorAxis 440.94 # est. mass ratio 1:1
Eccentricity 0.862
Inclination 53.57
AscendingNode 354.87
ArgOfPericenter 187.15
MeanAnomaly 38.67
}
}
Barycenter "Gliese 777"
# approximate barycentre based on mass ratio 0.9:0.2
{
RA 300.896216
Dec 29.872105
Distance 51.838
}
98767 "Gliese 777 A"
{
RA 300.90394
Dec 29.866333
Distance 51.838
SpectralType "G6IV"
AppMag 5.73
}
"Gliese 777 B"
{
RA 300.861458
Dec 29.898079
Distance 51.838
SpectralType "M4.5V"
AppMag 14.40
}
"PSR 1257+12:PSR B1257+12:PSR J1300+1240"
{
RA 195.0125
Dec 12.6825
Distance 1000
SpectralType "Q"
AbsMag 27 # for approximate radius in Celestia
RotationPeriod 0.000001727 # 0.006218 sec
}
Barycenter "PSR 1620-26:PSR B1620-26:PSR J1623-2631"
{
RA 245.90917
Dec -26.53167
Distance 12000
}
"PSR 1620-26 A:PSR B1620-26 A:PSR J1623-2631 A"
{
OrbitBarycenter "PSR 1620-26"
SpectralType "Q"
AbsMag 27 # for approximate radius in Celestia
EllipticalOrbit {
Period 0.5241 # 191.443 days
SemiMajorAxis 0.13 # est. mass ratio 1.35:0.3
Eccentricity 0.0253
Inclination 95 # approx. 55 degree tilt
AscendingNode 213 # to plane of sky
}
Obliquity 95 # guess, to match inclination
EquatorAscendingNode 213 # guess, to match ascending node
RotationPeriod 0.000003076 # 0.011076 sec
}
"WD J1623-266:PSR 1620-26 B:PSR B1620-26 B:PSR J1623-2631 B"
{
OrbitBarycenter "PSR 1620-26"
SpectralType "D" # white dwarf
AbsMag 15 # approximate
EllipticalOrbit {
Period 0.5241 # 191.443 days
SemiMajorAxis 0.65 # est. mass ratio 1.35:0.3
Eccentricity 0.0253
Inclination 95 # approx. 55 degree tilt
AscendingNode 213 # to plane of sky
ArgOfPericenter 180
}
Obliquity 95 # guess, to match inclination
EquatorAscendingNode 213 # guess, to match ascending node
}

File diff suppressed because it is too large Load Diff

View File

@ -1,245 +0,0 @@
# Feature locations on Phil Stooke's Gaspra mosaic do not
# match the coordinates given by the IAU. This file contains
# coordinates adjusted to match Stooke's shape model and
# mosaic, guided by the IAU labelled photos at:
# http://planetarynames.wr.usgs.gov/images/gaspra_craters.pdf
Location "Aix" "Sol/Gaspra"
{
LongLat [ -156 47 0 ]
Size 0.6
Type "AA"
}
Location "Alupka" "Sol/Gaspra"
{
LongLat [ -72 67 0 ]
Size 0.3
Type "AA"
}
Location "Baden-Baden" "Sol/Gaspra"
{
LongLat [ -57 42 0 ]
Size 0.3
Type "AA"
}
Location "Badagstein" "Sol/Gaspra"
{
LongLat [ -6 27 0 ]
Size 0.4
Type "AA"
}
Location "Bagnoles" "Sol/Gaspra"
{
LongLat [ -120 56 0 ]
Size 0.4
Type "AA"
}
Location "Bath" "Sol/Gaspra"
{
LongLat [ -11 12 0 ]
Size 0.9
Type "AA"
}
Location "Beppu" "Sol/Gaspra"
{
LongLat [ -58 -3 0 ]
Size 0.6
Type "AA"
}
Location "Brookton" "Sol/Gaspra"
{
LongLat [ -102 25 0 ]
Size 0.3
Type "AA"
}
Location "Calistoga" "Sol/Gaspra"
{
LongLat [ -5 30 0 ]
Size 1.2
Type "AA"
}
Location "Carlsbad" "Sol/Gaspra"
{
LongLat [ -86 29 0 ]
Size 0.5
Type "AA"
}
Location "Charax" "Sol/Gaspra"
{
LongLat [ 0 7 0 ]
Size 0.9
Type "AA"
}
Location "Helwan" "Sol/Gaspra"
{
LongLat [ -115 23 0 ]
Size 0.4
Type "AA"
}
Location "Ixtapan" "Sol/Gaspra"
{
LongLat [ -87 7 0 ]
Size 0.7
Type "AA"
}
Location "Katsiveli" "Sol/Gaspra"
{
LongLat [ -68 53 0 ]
Size 0.3
Type "AA"
}
Location "Krynica" "Sol/Gaspra"
{
LongLat [ -37 46 0 ]
Size 0.4
Type "AA"
}
Location "Lisdoonvarna" "Sol/Gaspra"
{
LongLat [ -357 14 0 ]
Size 0.4
Type "AA"
}
Location "Loutraki" "Sol/Gaspra"
{
LongLat [ -130 41 0 ]
Size 0.4
Type "AA"
}
Location "Mandal" "Sol/Gaspra"
{
LongLat [ -48 20 0 ]
Size 0.1
Type "AA"
}
Location "Manikaran" "Sol/Gaspra"
{
LongLat [ -152 66 0 ]
Size 0.5
Type "AA"
}
Location "Marienbad" "Sol/Gaspra"
{
LongLat [ -81 32 0 ]
Size 0.6
Type "AA"
}
Location "Miskhor" "Sol/Gaspra"
{
LongLat [ -66 8 0 ]
Size 0.5
Type "AA"
}
Location "Moree" "Sol/Gaspra"
{
LongLat [ -143 34 0 ]
Size 0.7
Type "AA"
}
Location "Ramlösa" "Sol/Gaspra"
{
LongLat [ -7 15 0 ]
Size 0.7
Type "AA"
}
Location "Rio Hondo" "Sol/Gaspra"
{
LongLat [ -22 30 0 ]
Size 0.6
Type "AA"
}
Location "Rotorua" "Sol/Gaspra"
{
LongLat [ -32 17 0 ]
Size 0.5
Type "AA"
}
Location "Saratoga" "Sol/Gaspra"
{
LongLat [ -221.5 16.2 0 ]
Size 2.8
Type "AA"
}
Location "Spa" "Sol/Gaspra"
{
LongLat [ -146 52 0 ]
Size 1.6
Type "AA"
}
Location "Tang-Shan" "Sol/Gaspra"
{
LongLat [ -258.8 50.6 0 ]
Size 0.7
Type "AA"
}
Location "Yalova" "Sol/Gaspra"
{
LongLat [ -12 27 0 ]
Size 0.4
Type "AA"
}
Location "Yalta" "Sol/Gaspra"
{
LongLat [ -231.3 45.7 0 ]
Size 1.4
Type "AA"
}
Location "Zohar" "Sol/Gaspra"
{
LongLat [ -117 21 0 ]
Size 0.4
Type "AA"
}
Location "DUNNE REGIO" "Sol/Gaspra"
{
LongLat [ -15 15 0 ]
Size 5
Type "RE"
}
Location "NEUJMIN REGIO" "Sol/Gaspra"
{
LongLat [ -80 2 0 ]
Size 5
Type "RE"
}
Location "YEATES REGIO" "Sol/Gaspra"
{
LongLat [ -75 65 0 ]
Size 5
Type "RE"
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -1,174 +0,0 @@
Location "Afon" "Sol/Ida"
{
LongLat [ 0 6.5 0 ]
Size 25.0
Type "AA"
}
Location "Atea" "Sol/Ida"
{
LongLat [ -18.9 5.7 0 ]
Size 2.0
Type "AA"
}
Location "Azzurra" "Sol/Ida"
{
LongLat [ -217.2 -30.5 0 ]
Size 9.6
Type "AA"
}
Location "Bilemot" "Sol/Ida"
{
LongLat [ -29.2 27.8 0 ]
Size 1.8
Type "AA"
}
Location "Castellana" "Sol/Ida"
{
LongLat [ -335.2 13.4 0 ]
Size 5.2
Type "AA"
}
Location "Choukoutien" "Sol/Ida"
{
LongLat [ -23.6 -12.8 0 ]
Size 1.1
Type "AA"
}
Location "Fingal" "Sol/Ida"
{
LongLat [ -39.9 13.2 0 ]
Size 1.5
Type "AA"
}
Location "Kartchner" "Sol/Ida"
{
LongLat [ -179.0 7.0 0 ]
Size 0.9
Type "AA"
}
Location "Kazumura" "Sol/Ida"
{
LongLat [ -41.1 32.0 0 ]
Size 2.1
Type "AA"
}
Location "Lascaux" "Sol/Ida"
{
LongLat [ -161.2 -0.8 0 ]
Size 11.8
Type "AA"
}
Location "Lechuguilla" "Sol/Ida"
{
LongLat [ -357.1 -7.9 0 ]
Size 1.5
Type "AA"
}
Location "Mammoth" "Sol/Ida"
{
LongLat [ -180.3 18.3 0 ]
Size 10.2
Type "AA"
}
Location "Manjang" "Sol/Ida"
{
LongLat [ -90.5 28.3 0 ]
Size 1.0
Type "AA"
}
Location "Orgnac" "Sol/Ida"
{
LongLat [ -202.7 6.3 0 ]
Size 10.6
Type "AA"
}
Location "Padirac" "Sol/Ida"
{
LongLat [ -5.2 4.3 0 ]
Size 1.9
Type "AA"
}
Location "Peacock" "Sol/Ida"
{
LongLat [ -52.0 2.0 0 ]
Size 0.2
Type "AA"
}
Location "Postojna" "Sol/Ida"
{
LongLat [ -359.9 42.9 0 ]
Size 6.0
Type "AA"
}
Location "Sterkfontein" "Sol/Ida"
{
LongLat [ -54.1 4.1 0 ]
Size 4.7
Type "AA"
}
Location "Stiffe" "Sol/Ida"
{
LongLat [ -126.5 27.9 0 ]
Size 1.5
Type "AA"
}
Location "Undara" "Sol/Ida"
{
LongLat [ -113.8 -2.0 0 ]
Size 8.5
Type "AA"
}
Location "Viento" "Sol/Ida"
{
LongLat [ -343.9 -12.2 0 ]
Size 1.6
Type "AA"
}
Location "PALISA REGIO" "Sol/Ida"
{
LongLat [ -34 23 0 ]
Size 23
Type "RE"
}
Location "POLA REGIO" "Sol/Ida"
{
LongLat [ -184 11 0 ]
Size 8
Type "RE"
}
Location "VIENNA REGIO" "Sol/Ida"
{
LongLat [ -2 -8 0 ]
Size 13
Type "RE"
}
Location "Townsend Dorsum" "Sol/Ida"
{
LongLat [ -30 -25 0 ]
Size 40
Type "DO"
}

View File

@ -1,22 +0,0 @@
# IAU names for features on the asteroid 25143 Itokawa
Location "MUSES-C REGIO" "Sol/Itokawa"
{
LongLat [ 60 -70 0 ]
Size 0.3
Type "RE"
}
Location "SAGAMIHARA REGIO" "Sol/Itokawa"
{
LongLat [ 15 80 0 ]
Size 0.23
Type "RE"
}
Location "UCHINOURA REGIO" "Sol/Itokawa"
{
LongLat [ 90 40 0 ]
Size 0.07
Type "RE"
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,126 +0,0 @@
Location "Kepler Dorsum" "Sol/Mars/Phobos"
{
LongLat [ -30 -30 0 ]
Size 3
Type "DO"
}
Location "Clustril" "Sol/Mars/Phobos"
{
LongLat [ -91 60 0 ]
Size 3.4
Type "AA"
}
Location "D'Arrest" "Sol/Mars/Phobos"
{
LongLat [ -179 -39 0 ]
Size 2.1
Type "AA"
}
Location "Drunlo" "Sol/Mars/Phobos"
{
LongLat [ -92 36.5 0 ]
Size 4.2
Type "AA"
}
Location "Flimnap" "Sol/Mars/Phobos"
{
LongLat [ -350 60 0 ]
Size 1.5
Type "AA"
}
Location "Grildrig" "Sol/Mars/Phobos"
{
LongLat [ -195 81 0 ]
Size 2.6
Type "AA"
}
Location "Gulliver" "Sol/Mars/Phobos"
{
LongLat [ -163 62 0 ]
Size 5.5
Type "AA"
}
Location "Hall" "Sol/Mars/Phobos"
{
LongLat [ -210 -80 0 ]
Size 5.4
Type "AA"
}
Location "Limtoc" "Sol/Mars/Phobos"
{
LongLat [ -54 -11 0 ]
Size 2.0
Type "AA"
}
Location "Reldresal" "Sol/Mars/Phobos"
{
LongLat [ -39 41 0 ]
Size 2.9
Type "AA"
}
Location "Roche" "Sol/Mars/Phobos"
{
LongLat [ -183 53 0 ]
Size 2.3
Type "AA"
}
Location "Sharpless" "Sol/Mars/Phobos"
{
LongLat [ -154 -27.5 0 ]
Size 1.8
Type "AA"
}
Location "Skyresh" "Sol/Mars/Phobos"
{
LongLat [ -320 52.5 0 ]
Size 1.5
Type "AA"
}
Location "Stickney" "Sol/Mars/Phobos"
{
LongLat [ -49 1 0 ]
Size 9.0
Type "AA"
}
Location "Todd" "Sol/Mars/Phobos"
{
LongLat [ -153 -9 0 ]
Size 2.6
Type "AA"
}
Location "Wendell" "Sol/Mars/Phobos"
{
LongLat [ -132 -1 0 ]
Size 1.7
Type "AA"
}
Location "Swift" "Sol/Mars/Deimos"
{
LongLat [ -358 14 0 ]
Size 1.5
Type "AA"
}
Location "Voltaire" "Sol/Mars/Deimos"
{
LongLat [ -2 23 0 ]
Size 3
Type "AA"
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,434 +0,0 @@
Location "Abatos Planum" "Sol/Neptune/Triton"
{
LongLat [ -58 21.5 0 ]
Size 400
Type "PM"
}
Location "Akupara Maculae" "Sol/Neptune/Triton"
{
LongLat [ -63 27.5 0 ]
Size 100
Type "MA"
}
Location "Amarum" "Sol/Neptune/Triton"
{
LongLat [ -24.5 -26 0 ]
Size 25
Type "AA"
}
Location "Andvari" "Sol/Neptune/Triton"
{
LongLat [ -34 -20.5 0 ]
Size 25
Type "AA"
}
Location "Apep Cavus" "Sol/Neptune/Triton"
{
LongLat [ -301.5 -20 0 ]
Size 25
Type "CB"
}
Location "Awib Dorsa" "Sol/Neptune/Triton"
{
LongLat [ -80 7 0 ]
Size 100
Type "DO"
}
Location "Bheki Cavus" "Sol/Neptune/Triton"
{
LongLat [ -308 -16 0 ]
Size 25
Type "CB"
}
Location "Bia Sulci" "Sol/Neptune/Triton"
{
LongLat [ -3 38 0 ]
Size 200
Type "SU"
}
Location "Boynne Sulci" "Sol/Neptune/Triton"
{
LongLat [ -350 13 0 ]
Size 500
Type "SU"
}
Location "BUBEMBE REGIO" "Sol/Neptune/Triton"
{
LongLat [ -335 -18 0 ]
Size 700
Type "RE"
}
Location "Cay" "Sol/Neptune/Triton"
{
LongLat [ -44 12 0 ]
Size 25
Type "AA"
}
Location "Cipango Planum" "Sol/Neptune/Triton"
{
LongLat [ -34 -11.5 0 ]
Size 300
Type "PM"
}
Location "Dagon Cavus" "Sol/Neptune/Triton"
{
LongLat [ -345 -29 0 ]
Size 25
Type "CB"
}
Location "Dilolo Patera" "Sol/Neptune/Triton"
{
LongLat [ -24.3 -26.2 0 ]
Size 25
Type "PE"
}
Location "Doro Macula" "Sol/Neptune/Triton"
{
LongLat [ -31.7 27.5 0 ]
Size 100
Type "MA"
}
Location "Gandvik Patera" "Sol/Neptune/Triton"
{
LongLat [ -5.5 -28 0 ]
Size 25
Type "PE"
}
Location "Hekt Cavus" "Sol/Neptune/Triton"
{
LongLat [ -342 -26 0 ]
Size 25
Type "CB"
}
Location "Hili" "Sol/Neptune/Triton"
{
LongLat [ -35 57 0 ]
Size 25
Type "PU"
}
Location "Hirugo Cavus" "Sol/Neptune/Triton"
{
LongLat [ -345 -14.5 0 ]
Size 25
Type "CB"
}
Location "Ho Sulci" "Sol/Neptune/Triton"
{
LongLat [ -305 -2 0 ]
Size 300
Type "SU"
}
Location "Ilomba" "Sol/Neptune/Triton"
{
LongLat [ -57 14.5 0 ]
Size 25
Type "AA"
}
Location "Jumna Fossae" "Sol/Neptune/Triton"
{
LongLat [ -44 13.5 0 ]
Size 300
Type "FO"
}
Location "Kasu Patera" "Sol/Neptune/Triton"
{
LongLat [ -14 -39 0 ]
Size 25
Type "PE"
}
Location "Kasyapa Cavus" "Sol/Neptune/Triton"
{
LongLat [ -358 -7.5 0 ]
Size 25
Type "CB"
}
Location "Kibu Patera" "Sol/Neptune/Triton"
{
LongLat [ -43 -10.5 0 ]
Size 25
Type "PE"
}
Location "Kikimora Maculae" "Sol/Neptune/Triton"
{
LongLat [ -78 31 0 ]
Size 100
Type "MA"
}
Location "Kormet Sulci" "Sol/Neptune/Triton"
{
LongLat [ -335.5 -23 0 ]
Size 300
Type "SU"
}
Location "Kraken Catena" "Sol/Neptune/Triton"
{
LongLat [ -35.5 -14 0 ]
Size 150
Type "CA"
}
Location "Kulilu Cavus" "Sol/Neptune/Triton"
{
LongLat [ -4 -41 0 ]
Size 25
Type "CB"
}
Location "Kurma" "Sol/Neptune/Triton"
{
LongLat [ -61 16.5 0 ]
Size 25
Type "AA"
}
Location "Leipter Sulci" "Sol/Neptune/Triton"
{
LongLat [ -9 -7 0 ]
Size 200
Type "SU"
}
Location "Leviathan Patera" "Sol/Neptune/Triton"
{
LongLat [ -28.5 -17 0 ]
Size 100
Type "PE"
}
Location "Lo Sulci" "Sol/Neptune/Triton"
{
LongLat [ -321 -3.8 0 ]
Size 150
Type "SU"
}
Location "Mah Cavus" "Sol/Neptune/Triton"
{
LongLat [ -6 -38 0 ]
Size 25
Type "CB"
}
Location "Mahilani" "Sol/Neptune/Triton"
{
LongLat [ -359.5 50.5 0 ]
Size 25
Type "PU"
}
Location "Mangwe Cavus" "Sol/Neptune/Triton"
{
LongLat [ -343 7 0 ]
Size 25
Type "CB"
}
Location "Mazomba" "Sol/Neptune/Triton"
{
LongLat [ -63.5 18.5 0 ]
Size 25
Type "AA"
}
Location "Medamothi Planum" "Sol/Neptune/Triton"
{
LongLat [ -69 -3.5 0 ]
Size 300
Type "PM"
}
Location "MONAD REGIO" "Sol/Neptune/Triton"
{
LongLat [ -37 -20 0 ]
Size 1000
Type "RE"
}
Location "Namazu Macula" "Sol/Neptune/Triton"
{
LongLat [ -14 25.5 0 ]
Size 100
Type "MA"
}
Location "Ob Sulci" "Sol/Neptune/Triton"
{
LongLat [ -328 6 0 ]
Size 300
Type "SU"
}
Location "Ormet Sulci" "Sol/Neptune/Triton"
{
LongLat [ -337 -17 0 ]
Size 300
Type "SU"
}
Location "Ravgga" "Sol/Neptune/Triton"
{
LongLat [ -71.5 3 0 ]
Size 25
Type "AA"
}
Location "Raz Fossae" "Sol/Neptune/Triton"
{
LongLat [ -21.5 -8 0 ]
Size 300
Type "FO"
}
Location "Rem Maculae" "Sol/Neptune/Triton"
{
LongLat [ -349.5 -13 0 ]
Size 150
Type "MA"
}
Location "Ruach Planitia" "Sol/Neptune/Triton"
{
LongLat [ -24 -28 0 ]
Size 200
Type "PL"
}
Location "Ryugu Planitia" "Sol/Neptune/Triton"
{
LongLat [ -27 5 0 ]
Size 100
Type "PL"
}
Location "Set Catena" "Sol/Neptune/Triton"
{
LongLat [ -33.5 -22 0 ]
Size 200
Type "CA"
}
Location "Sipapu Planitia" "Sol/Neptune/Triton"
{
LongLat [ -36 4 0 ]
Size 100
Type "PL"
}
Location "Slidr Sulci" "Sol/Neptune/Triton"
{
LongLat [ -350 -23.5 0 ]
Size 200
Type "SU"
}
Location "Tangaroa" "Sol/Neptune/Triton"
{
LongLat [ -65.5 25 0 ]
Size 100
Type "AA"
}
Location "Tano Sulci" "Sol/Neptune/Triton"
{
LongLat [ -337 -33.5 0 ]
Size 300
Type "SU"
}
Location "Tuonela Planitia" "Sol/Neptune/Triton"
{
LongLat [ -14.5 -34 0 ]
Size 300
Type "PL"
}
Location "UHLANGA REGIO" "Sol/Neptune/Triton"
{
LongLat [ -357 37 0 ]
Size 1000
Type "RE"
}
Location "Ukupanio Cavus" "Sol/Neptune/Triton"
{
LongLat [ -23 -35 0 ]
Size 25
Type "CB"
}
Location "Vimur Sulci" "Sol/Neptune/Triton"
{
LongLat [ -59 11 0 ]
Size 400
Type "SU"
}
Location "Viviane Macula" "Sol/Neptune/Triton"
{
LongLat [ -36.5 31 0 ]
Size 100
Type "MA"
}
Location "Vodyanoy" "Sol/Neptune/Triton"
{
LongLat [ -28.5 17 0 ]
Size 100
Type "AA"
}
Location "Yasu Sulci" "Sol/Neptune/Triton"
{
LongLat [ -347 -2 0 ]
Size 300
Type "SU"
}
Location "Yenisey Fossa" "Sol/Neptune/Triton"
{
LongLat [ -56.2 -3 0 ]
Size 300
Type "FO"
}
Location "Zin Maculae" "Sol/Neptune/Triton"
{
LongLat [ -68 24.5 0 ]
Size 300
Type "MA"
}
Location "Pharos" "Sol/Neptune/Proteus"
{
LongLat [ -5 -20 0 ]
Size 255
Type "AA"
}

Some files were not shown because too many files have changed in this diff Show More