Commit Graph
73 Commits
Author SHA1 Message Date
Colby Klein 261daef933 fix build and no audio out on macOS 11, closes issue #2080 2021-01-08 07:58:35 -08:00
teejusb 7e3789b131 Integrate C++11 branch into 5_1-new 2019-06-22 12:35:38 -07:00
TatshandColby Klein b8a79cd0f6 Allow linking against system libraries for almost everything (#1790) 2019-02-16 08:32:52 -08:00
TatshandColby Klein d395028bd4 Mac fixes (#1776)
* macOS build fixes (#1773)

* macOS build fixes

Add missing headers
Threads_Pthreads: do not call pthread_setname_np() on macOS as it does not do
the same as on Linux
DebugStr() -> os_log()

* Make the project build with Makefiles on macOS

* Fix getting modifier key state on Mac (#1774)

We really need to clean up all Carbon calls here (many will go away when the
project switches to SDL2 for all platforms)

* Fix Xcode build; bump minimum version of macOS (#1775)

* Build fixes for the "Unix Makefiles" generator
Pass CMAKE_BUILD_TYPE to the external projects
* Fix indent
2018-12-31 19:28:59 -08:00
Dan GuzekandColby Klein c3c085dc9e backport fullscreen fix for macOS (#1524)
This backports the recent fullscreen fix for macOS on the master branch to the 5_1-new branch.  Credit goes to GitHub user aeubanks for the original fix.
2017-08-14 14:06:01 -07:00
Drew BarbarelloandColby Klein 557be7cf1b 5 1 new backport x11 fs rework (#1485)
* Use XRandR 1.2 to set fullscreen resolution for single output

Squash of roothorick's PR #497
(also includes Kyzentun's CMake changes from PR #716)

* Cherry-pick json c++1x stuff (b9e3d7174e)

* Cherry-pick c++11 support from 5bba5c0038 and 9f8b045309

* rework Linux (X11) fullscreen, improve display-related Graphics Options

Implement option to select between monitors for exclusive fullscreen mode
on X11 (using XRandR 1.2), or use a fullscreen borderless window.

Reimplement resolution/refresh rate/display mode-related option rows
using Lua, update choices dynamically so only known-good groupings of
resolution/refresh rate/aspect ratio can be selected.

Minimally update Windows/MacOS LowLevelWindow implementations to support
changes made for Linux side. Fullscreen Borderless Window/multi monitor
support from X11 not implemented for those in this commit.

* allow forcibly disabling xinerama use on Linux

When libXinerama is available, SM tries to use it to find the proper
monitor indexes to use to set _NET_WM_FULLSCREEN_MONITORS (on borderless
fullscreen). xfwm4 seems to assume that monitors are numbered in increasing
order from left to right (rather than using the Xinerama-assigned numbers),
so _NET_WM_FULLSCREEN_MONITORS misbehaves on Xfce.

This commit bypasses use of libXinerama, and instead forces SM to induce fullscreen
on the desired monitor in the backup, hacky way: remove all window hints, move window
to desired monitor, then add _NET_WM_STATE_FULLSCREEN hint. This works on
mutter and Xfce.

* Remove multiple warnings on redundant define.

This used to be hard-coded due to pthread related items, but now it's dynamically determined.

* fix _fallback menu behavior for unrecognized aspect ratios

* Fix error recreating existing FS texture

* Bump deployment target to 10.7 to use libc++ on XCode 8

* Add explicit casts to please clang

* Update changelog
2017-06-18 08:55:16 -07:00
Dan GuzekandJason Felds a7d4919d83 Merge pull request #1302 from dguzek/macOS-10-12
fix compilation on macOS 10.12
2016-12-01 16:29:13 -05:00
Jason Felds edabf4605b Clean up three sets of warnings:
* Ensure all switches have a default when working with enums.
* Match defined new[] calls with delete[] calls.
* Respect variable initialization order.
2016-03-24 18:30:29 -04:00
Jason Felds 41a2d829e4 FINALLY shut ffmpeg up!
In all seriousness, no need for this definition anymore.
2015-10-08 19:06:26 -04:00
Jason Felds b8700f11a7 Finally bring ffmpeg 2.1.3 to Mac OS X.
This replaces #611.
2015-10-03 22:32:14 -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 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
Thai Pangsakulyanont c4c0e9b0a1 [WIP] Update to Mac OS X 10.9 SDK
Untested Parts
--------------

`ArchHooks_MacOSX::DumpDebugInfo()`

- Used `sysctlbyname` to find the Mac OS X version instead of the deprecated `Gestalt`.
    - http://stackoverflow.com/questions/11072804/how-do-i-determine-the-os-version-at-runtime-in-os-x-or-ios-without-using-gesta

`MemoryCardDriverThreaded_MacOSX::Unmount( UsbStorageDevice *pDevice )`

- Updated to use `sync_volume_np` instead of deprecated `PBFlushVolSync`.
    - http://lists.apple.com/archives/carbon-dev/2010/Nov/msg00030.html
2014-07-25 09:14:06 +09:00
Jason Felds 9bbefe2240 Attempt prep work for 64 bit just in case.
If SDL2 fails, someone (not me) will have to try to
keep these updated.
2014-02-12 19:40:27 -05:00
Jason Felds 09f8219a67 Revert "Xcode 5 fixing, part 1."
This reverts commit bfab952b6a.
2013-11-06 23:33:31 -05:00
Jason Felds bfab952b6a Xcode 5 fixing, part 1.
Need someone on xcode 4.x to confirm this works.

Once this file gets fixed, the others will be removed.
2013-11-04 19:45:23 -05:00
Jason Felds 07b9fb6da5 The big NULL replacement party part 6.
...and ', NULL' had even more to replace.
2013-05-03 23:49:23 -04:00
Jason Felds 28e5148dec The big NULL replacement party part 5.
Right. ' = NULL' would get a lot of these.
2013-05-03 23:39:52 -04:00
Jason Felds a4798fbd5d Some Mac OS X fixes.
Joystick was more stubborn than it should have been.
2013-05-02 22:47:16 -04:00
Jason Felds c67419ecc8 There goes the macro file.
This is one of my bigger commits in this branch.

Still, shouldn't cause a problem.
2013-05-01 23:54:39 -04:00
Jason Felds b1ed735622 The non windows files. 2013-05-01 23:45:12 -04:00
Jason Felds c7269b63ff Handle the files either skipped or not on windows. 2013-04-30 23:24:29 -04:00
Devin J. Pohly 7e8c75a71b remove check for ancient llabs() bug 2013-04-29 20:24:07 -04:00
Jason Felds 71d993ee39 Don't include the internal header.
Use a standard header to include instead.
2013-04-29 19:17:30 -04:00
Jason Felds 15eaad8c86 Don't include the internal header.
Use a standard header to include instead.
2013-04-29 19:17:30 -04:00
Jason Felds c7b8664604 Consider this transplanted.
Plus, default should be the left-most branch in graphical viewing.
2013-04-21 00:09:35 -04:00
Austen Dicken 0c94594541 remove the need for libtheora since we have ffmpeg to handle
theora videos
2012-03-12 23:26:34 -05:00
AJ Kelly bddd6298be "Mice can either be kHIDUsage_GD_Mouse or kHIDUsage_GD_Pointer." Not sure why I thought it was a good idea to not check for Pointers as well, given that the Joystick code searches for both kHIDUsage_GD_Joystick and kHIDUsage_GD_Gamepad 2012-02-19 13:55:54 -06:00
Thai Pangsakulyanont cbcf955fe8 fixes building in Mac OS X (I hope so) 2011-08-29 00:11:10 +07:00
AJ Kelly dd0896d3eb committing some stuff for shake to test 2011-08-23 20:58:22 -05:00
Jason Felds f1fa1e279a [tiger] Use the <map> suggestion.
I believe <string> and <vector> are already in global.h.
2011-05-30 11:32:04 -04:00
Jason Felds f686951513 [tiger] Universal binaries work.
Thanks to the #gcc channel in getting GCC 4.2 to work.
2011-05-30 10:40:00 -04:00
Jason Felds b42eb482bf [tiger] Don't need these parts.
Also had to move glew up to for early compilation.
2011-05-30 02:23:16 -04:00
Jason Felds 5d3dd2820d [tiger] Force glew to come before OpenGL.
Sorry shakesoda, but we had no choice here.
2011-05-30 00:56:09 -04:00
Thai Pangsakulyanont 8164ddeafb probably that's where it's hidden. 2011-05-30 09:52:49 +07:00
Jason Felds 0ec7e930df [tiger] The states need _t with them.
Now why the heck is glew not cooperating
when it did so on min version 10.4?
2011-05-21 21:29:04 -04:00
AJ Kelly 066f2ee2d1 notes 2011-03-29 18:44:02 -05:00
AJ Kelly 3c8d5fcb8c attempt to log mouse position on mac 2011-03-29 18:16:35 -05:00
Jason Felds a085d0d1da Line endings...be normalized! 2011-03-17 01:47:30 -04:00
AJ Kelly c7ec5f2601 changes to mac mouse stuff 2011-03-16 23:29:44 -05:00
Jason Felds b5235c92ac Can't forget doxy'ing some arch stuff. 2011-02-27 20:41:27 -05:00
Colby Klein 9a88c8ec54 Comment out (build breaking) mouse code for OS X, fix 3d noteskins + characters at the same time (I hope) 2011-02-24 20:04:00 -08:00
AJ Kelly 6c0290d6ce attempt to fix compile, but will likely still fail 2011-02-23 21:53:53 -06:00
Jason Felds a89f5a61a6 Add include.
Still broken compile.
2011-02-23 22:17:29 -05:00
AJ Kelly e01def85ec attempt to make mouse x/y work 2011-02-23 20:39:51 -06:00
AJ Kelly 3ed8b14c47 alright, this may help out some, but there's still no path to INPUTFILTER yet... need to get x and y coordinates 2011-02-23 20:01:14 -06:00
Jason Felds 38706cc50e I said, yes go. 2011-02-23 20:51:37 -05:00
Jason Felds ffeb0e47b2 easing scope was a yes go 2011-02-23 20:50:40 -05:00
AJ Kelly b69ccaf0f6 easing scope was a no go 2011-02-23 19:50:00 -06:00
AJ Kelly d00b672898 ease scope, in an attempt to dodge a warning 2011-02-23 19:47:25 -06:00