Move the path stuff that is different between platforms
to an helper in order to share the common code.
The !WINDOWS should receive a bit more love though.
The way we are building right now we have to link against
libsoundtouch even if the frontend does not use it.
Read: we have to build SPU and metaspu per frontend and
not globally.
From Jan Bücken, #3288648
autoreconf: running: aclocal --force
configure.ac:46: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from...
../../lib/autoconf/general.m4:2591: _AC_COMPILE_IFELSE is expanded from...
../../lib/autoconf/general.m4:2607: AC_COMPILE_IFELSE is expanded from...
../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from...
../../lib/autoconf/libs.m4💯 AC_CHECK_LIB is expanded from...
configure.ac:46: the top level
The fix is to put AC_LANG_PROGRAM inside []
/usr/bin/ld: PadSimple.o: undefined reference to symbol 'XLookupKeysym'
/usr/bin/ld: note: 'XLookupKeysym' is defined in DSO //usr/lib/libX11.so.6 so try adding it to the linker command line
//usr/lib/libX11.so.6: could not read symbols: Invalid operation
Since r3947 ctrlssdl.h breaks the build with a compile
error in build environments that don't have GL.h such as
Mac OS.
[xrmx: define screen_texture anyway to be on the safe side]
Based from a patch from Sidney Markowitz in #3288504
From Roger Manual, #3259154:
BUGFIXES:
- Fixed the bug tracker website link used by the "Submit a Bug Report" command
in the Help menu.
- Fixed issue where if one of the text files used for the About window was
missing from the DeSmuME/Contents/Resources folder, then the entire panel
didn't show.
CHANGES:
- Frame skipping options have been removed in this release. The way it works
now, drawing a frame in Cocoa takes an insignificant amount of time. In other
words, skipping Cocoa frames does NOT yield any significant speed improvement.
It may be possible to gain speed by skipping frames in the actual NDS GPU
rendering, but this is an emulation engine issue, not a Cocoa frontend issue.
- Added OBJ layer toggling in the View/Layers menu.
- Files are now saved in more logical locations. Save states slot files are now
saved in "~/Library/Application Support/DeSmuME/(DeSmuME version number)/States".
All other files (like battery files) are now saved in the same directory as the ROM.
DEVELOPER:
- Added Application Creator Code for DeSmuME. Registered 'DSmM' with Apple.
- Reworked the execution loop for better maintainability.
- Preliminary code refactoring for better DS controller function. Cocoa DeSmuME now
uses the NDS_beginProcessingInput() and NDS_endProcessingInput() functions, which
helps input support for some games. Note that this change probably breaks support
for PowerPC Macs, but I don't know if we should be supporting PowerPC Macs anyways...
xrmx: I'm not able to build this with xcode because 10.4 SDK does not like gcc4.2 but
the cocoa stuff builds fine in cocoa so applying it.
The conflicting macro is the check() assertion macro defined
in Apple's CoreFoundation framework, specifically in the
AssertMacros.h file.
Unfortunately, this file must be included in the Cocoa port.
From rogerman in bug #3259154