Commit Graph

29 Commits

Author SHA1 Message Date
Jason Felds 68b3620bac Allow proper compiling of libjpeg for windows.
This expands on #777 to work with jconfig.h properly.

To facilitate these operations, a new macro was added for doing compile tests.

Note that this commit does NOT bring in the other files associated with this version of libjpeg.

At some point, it would be desirable to automatically get the files as part of the cmake configuration step, similar to ffmpeg.
2015-09-13 13:10:58 -04:00
Jason Felds 91361e5d29 Allow changing WAV and OGG settings for all OSes.
As before, set WITH_WAV and WITH_OGG to off to limit your playing experience. Why this would be done is beyond me, but it's available.
2015-09-12 11:58:57 -04:00
Jason Felds b143f5afca Improve and enhance WITH_MP3.
* All OSes can now take advantage of it.
* Mad is not linked if not utilized.
* Mac OS X side has a cleaner library list setup now.
2015-09-12 11:23:45 -04:00
Jason Felds 2448e67641 Switch portable tomcrypt to ON by default. 2015-09-09 20:47:46 -04:00
Jason Felds ae83a1c6ec Fixes for Linux. 2015-09-05 13:14:44 -04:00
Jason Felds e093d204c8 Use proper cmake detection of features.
This attempts to organize all needed items and places appropriate defines
in a single location. Redundant comparisons/defines were removed when noticed.

A few caveats, however:

* This may be better targeted towards the 5_1_0 branch instead of master right now.
* Cmake will run a little slower on configuration/generation now. That's due to the sanity checks it runs.
* There are some more checks to be added later, but this should be a solid start.

Thanks to the [libical](https://github.com/libical/libical) project for inspiration.
2015-09-05 10:51:17 -04:00
Jason Felds 0075192ada ...silly typo. 2015-08-20 18:24:50 -04:00
Jason Felds 4344d0114a Have Windows build with Minimaid on by default. 2015-08-20 16:50:10 -04:00
Jason Felds 42ad044817 Linux broke somehow. Restore it with system jpeg. 2015-06-19 20:53:13 -04:00
Kyzentun Keeslala 7440f116b6 Update version number to 5.0.9. 2015-06-19 16:21:29 -06:00
Kyzentun Keeslala 963a204fb0 Fixed the cmake method used to generate the date and time strings. 2015-06-03 10:31:31 -06:00
Renaud Lepage a2183d15c1 Reactivating Crash Manager on the Linux platform 2015-05-25 09:57:43 -07:00
Renaud Lepage da93b4fb9b Alter verstub generation 2015-05-25 09:54:04 -07:00
Jason Felds 8394366238 Prepare timestamp macros. 2015-05-25 12:43:22 -04:00
Jason Felds 99b8b6dbbb Move versioning info to standalone file.
Thanks to @cybik for some of the assistance.
2015-05-25 12:36:58 -04:00
Jason Felds d6e98db50a Put the license file in the CMake folder.
This way if anyone wants to wipe their entire Build directory, it won't break entirely.

I am not responsible if anyone wipes the CMake folder. That is definitely not supported.
2015-05-24 21:01:49 -04:00
Jason Felds b934a25cb2 Try to not need WITH_LIBVA. 2015-05-19 20:08:15 -04:00
Joe 89aef33f0f Added missing lines of FindJACK.cmake - now finds JACK successfully 2015-05-11 15:40:55 +01:00
Jason Felds 86b0a207d9 A few cmake related fixes:
* Restore Windows installing to `C:\Games` by default.
* Restore Windows installing to the `Program` subdirectory.
* Use actual newlines in the `Build` documentation files.
* Remove the text that says that cmake is unstable.
2015-05-10 09:32:56 -04:00
Jason Felds edecedd3ee Allow disabling CrystalHD for ffmpeg. 2015-05-08 22:12:47 -04:00
Jason Felds 283de4f0c2 Restore Xcode debugging with newer builds. 2015-04-18 13:58:16 -04:00
Jason Felds 028229f881 Allow for assembly free[r] tomcrypt builds. 2015-04-16 18:31:29 -04:00
Jason Felds e4807b9b85 Allow for the va library to be used with ffmpeg.
This needs verifying.
2015-04-15 18:22:36 -04:00
Jason Felds 361df3a496 Provide initial cpack support. Mainly for devs.
There are two targets you may not be familiar with, `install` and `package`.
* For Linux, `install` now defaults to `/usr/local`, but you can set it back to `/opt` with `cmake -DCMAKE_INSTALL_PREFIX=/opt` if you wish.
* For Windows, `install` may not work, but this is not a target you would want usually.
* For Linux, `package` has not been tested yet. It will likely create an archive file of what is installed.
* For Windows, `package` will create an NSIS package that can be used to install StepMania. One minor change as a result is that the binary and companion dlls will be placed in `bin` instead of `Program` now, but it makes no difference code-wise.

Mac OS X users: for now, use the `dmg` target instead.

This commit does *not* deprecate the original nsi script yet. The Texture Font Generator program has not been addressed yet.
2015-04-11 23:47:42 -04:00
Jason Felds f78574e5a7 More cmake changes:
* Replace `string(CONCAT ...)` with an equivalent call for the cmake 2.8.12 users.
* Use `execute_process` instead of the deprecated `exec_program`. This will work regardless of version (assuming the minimum is met at least).

This should address issue #549.
2015-04-06 22:35:04 -04:00
Jason Felds c49d78f5fc Linux CMake improvements:
* Disable warning output during configuration.
* Allow users to turn on warnings for ffmpeg and other internal projects.
* Add a new variable for easier ffmpeg version migration if we ever
* pursue that.
2015-04-05 14:49:10 -04:00
Jason Felds 05d341485d Allow for system ffmpeg usage.
Warning: this is NOT advised right now.
2015-03-22 16:03:38 -04:00
Jason Felds 33f183938e Allow for system pcre to take precedence. 2015-03-22 15:46:53 -04:00
Jason Felds dc94728628 Introduce cmake (min 2.8.12) to StepMania.
tl-dr: view the Build directory to see.

This is intended to replace the project files that we presently maintain
so that only a single set is needed instead of multiples.

The following setups were used for testing:

* Windows 8 and Visual Studio 2013 Desktop Express
* Windows 7 and Visual Studio 2012
* Mac OS X Mavericks and Xcode
* Ubuntu and makefiles
* Fedora 21 and makefiles

All three operating systems can generate projects, compile, link, and
run. Windows and Mac OS X users will find their compiled binary in the
same location as before, but Linux users will be surprised: it goes
straight into the root directory, along with a symlinked GtkModules.so
as appropriate. There is no more need for a manual symlinking step.

Known issues:

* At this time, MinGW likely does not work. Extra time will be needed.
* The WITH_JPEG option may go away, and we'll just always require it.
* Some linux libraries can use the system equivalents, but that is not up yet.

For more information, check out the Build directory.
2015-03-21 20:15:15 -04:00