Commit graph

88 commits

Author SHA1 Message Date
orbea
72559114c8
Remove SDL1 support (#45)
* build: remove executable permissions from Makefile

* build: remove SDL1 support

* src: remove SDL1 code path
2024-11-02 21:09:01 -07:00
orbea
7573056761
build: remove -fno-strict-aliasing (#44)
This builds with -Werror=strict-aliasing so it should be not required.
2024-11-02 21:08:14 -07:00
Richard Goedeken
32e2f282bb update minimum macos SDK in makefile 2024-07-14 11:59:53 -07:00
Jj0YzL5nvJ
df0770215f
CI/CD: Update (#39) 2022-07-13 19:31:03 -07:00
Jj0YzL5nvJ
238b119ac9
CI/CD: Implement GitHub Actions and public nightly builds (#38) 2022-04-11 20:54:01 -07:00
orbea
a2472a2788 build: Allow out of tree builds. 2020-12-15 10:16:58 +01:00
Richard Goedeken
1acd163aec Revert "Allow non-default compilers without resorting to symbolic links"
This reverts commit 7155ae6f21, as it conflicts with GNU make which always defines default values for certain variables
2020-09-16 22:40:41 -07:00
Jj0YzL5nvJ
7155ae6f21 Allow non-default compilers without resorting to symbolic links 2020-08-30 03:57:07 -06:00
Anthony J. Bentley
e3e94e0c33 Update homepage. 2017-12-28 16:26:24 -07:00
Anthony J. Bentley
9972f6c997 Update link to bug tracker. 2017-12-28 16:02:23 -07:00
Richard Goedeken
1379905bab update Makefile method for finding OSX_SDK_PATH 2017-11-14 16:20:38 -08:00
Bobby Smiles
c35d803c4b Disable speex/src when their libraries are not found 2017-10-13 15:20:07 +02:00
Bobby Smiles
2cacce90bb Extract sdl_backend in its own module. 2017-10-12 12:09:02 +02:00
Bobby Smiles
a7c8d4123d Extract circular buffer logic. 2017-10-12 10:01:26 +02:00
Bobby Smiles
9c48b7f158 Extract resamplers from main module.
Refactor resamplers in such a way that main module only interact with
them through a resampler_interface which is agnostic to implementation
details.

Also, for all resamplers, internal state is dynamically allocated, and
no longer relies on global variables.
2017-10-12 04:11:31 +02:00
Brent Woodruff
7f94539a5d bump macosx-version-min to 10.6 for SDL2.0.5 2017-03-16 22:45:18 -04:00
Anthony J. Bentley
7a763381cd Remove unnecessary OpenBSD warning. 2015-06-08 01:42:29 -06:00
Conchúr Navid
54689d5f84 Fix executable bits of files 2015-03-21 10:53:38 +01:00
Nebuleon Fumika
45719a8ac1 Unix Makefile: Discard unnecessary architecture checks
Unlike the Mupen64Plus Core, which is sensitive to the architecture
it's compiled for due to its just-in-time compilers, this project does
not require architecture-specific glue code, only operating system
checks to load dynamic libraries and the presence of a well-behaving
port of SDL on the platform.

M64P_BIG_ENDIAN is not used for any decisions in this plugin, either.
Delete the big-endian processor checks.
2015-01-26 09:43:10 +00:00
Frajo Haider
126b8b3249 implement audioresource support. required on nemo to enable audio output 2014-12-04 08:18:08 +01:00
Anthony J. Bentley
5ff4cb2f72 Disable OSS by default on OpenBSD.
OpenBSD never used OSS by default and is likely to remove libossaudio.
2014-11-08 19:44:33 -07:00
Richard Goedeken
5f69fc2f06 SDL 1.2 is not deprecated for us, and we shouldnt frighten the user with 6 lines of exclamation points 2014-05-04 11:27:02 -07:00
Ursula Abendroth
65f9525c19 Switch by default to SDL2 for Mupen64Plus 2.1
The current version of SDL is 2.0.3. All new releases of distributions contain
this library already. Current Linux distributions and OpenBSD even backporting
patches from Mupen64Plus 2.1 repo to use SDL 2. Android and other mobile
platform don't have support for legacy SDL 1.2.

People like Anthony J. Bentley and Riley Labrecque already requested
a new release of Mupen64Plus 2.1 with SDL2
2014-04-23 19:31:54 +02:00
Sven Eckelmann
1346c0f7e0 Don't fail rebuild when header is removed
The *.d depends files for make just list the files used when building an
object file. Removing a file listed in such a dependency file causes make to
search for a way to recreate it. This usually cannot work because these files
aren't autogenerated.

The gcc option -MP can be used to generate empty rule for these files. Removing
a file in a dependency list will then execute this empty rule and continue with
the execution of the creation of the object file. This compilation process will
then automatically correct the dependency file.
2013-09-20 10:31:36 +02:00
richard42
ac039bb391 simplify OSX platform detection in makefile using xcode-select. based on patch from John Pender 2013-07-08 07:29:17 -07:00
Sven Eckelmann
5ad950ffae Allow to statically set *_(CFLAGS|LIBS) without pkg-config
n.pepinpe requested in #540 to allow overwriting the automatically searched
CFLAGS and LIBS for used libraries. This should allow distributors to set the
build configuration without patching the makefile. This is important for
systems were pkg-config or sdl-config aren't normally used.
2013-05-11 14:59:48 +02:00
Sven Eckelmann
c45e2dcd2f Allow to statically set SDL_(CFLAGS|LIBS) without sdl-config
n.pepinpe requested in #540 to allow overwriting the automatically searched
CFLAGS and LIBS for used libraries. This should allow distributors to set the
build configuration without patching the makefile. This is important for
systems were pkg-config or sdl-config aren't normally used.
2013-05-11 12:25:52 +02:00
Sven Eckelmann
3a8bb412ce Enable Link-time optimization by default
The GCC introduced Link-time optimization in GCC 4.5 (2010-04-14). This should
be long enough available that interested users have upgraded to a compiler
supporting it.

The MSVC project already enabled WholeProgramOptimization since a long time.
Enabling it by default in GCC seems to be equally valid.
2013-05-11 11:25:44 +02:00
Sven Eckelmann
4267ac323b Add CFLAGS to the linker step
The GCC manual states for different parameters that the options for compilation
must also be used when linking. The options for compilation are stored in
CFLAGS and added to LINK.o to fix the behavior.

Option which need this are for example -fPIC/-fPIE or -flto.
2013-05-11 11:04:30 +02:00
richard42
33235df9d6 merged heads 2013-02-02 22:19:06 -08:00
richard42
5dfde8da4c OSX build fix 2013-02-02 22:18:12 -08:00
Sven Eckelmann
b9dc2d58b4 Introduce WARNFLAGS for default (removable) compiler warning flags 2013-01-02 16:13:44 +01:00
Sven Eckelmann
19e8c67200 Disable OSS under MinGW to prevent build failures during cross compiles 2013-01-01 00:41:38 +01:00
Sven Eckelmann
0f854cd343 Disable PIC on MinGW to reduce warnings 2013-01-01 00:30:33 +01:00
n pepinpe
f336649a26 Fix path to OSX SDK with XCode >=4.3 2012-12-31 10:43:00 +01:00
Sven Eckelmann
4066559a70 Use $(OBJDIR) in clean target instead of hardcoded path 2012-12-13 14:53:04 +01:00
Sven Eckelmann
80c094b421 Allow to add a postfix for each build
The POSTFIX make option is useful for distributions to compile different
versions of the plugin in parallel. The object files will be stored in a
directory with the postfix appended and the linker result will also have this
postfix appended.
2012-12-13 14:47:15 +01:00
Sven Eckelmann
3050189433 Fix order of Makefile targets to print help by default 2012-12-13 14:07:56 +01:00
Sven Eckelmann
be8738e197 Add CROSS_COMPILE make option
The CROSS_COMPILE make option can be used to automatically prepend the prefix
to all build relevant tools to seamlessly allow cross compilation without
setting each tool name separately.

Cross compiling for MinGW32 would can be done using
$ make -C projects/unix/ CROSS_COMPILE=i686-pc-mingw32- HOST_CPU=i686 UNAME=MINGW
2012-12-13 12:25:23 +01:00
Sven Eckelmann
95db8eec0e Allow to change names of *-config tools for cross compiles 2012-12-13 11:33:49 +01:00
Sven Eckelmann
af8974e1ee Synchronize usage of environmental variables for UNAME with HOST_CPU 2012-12-13 10:52:49 +01:00
Sven Eckelmann
79e1e8e7ab Remove duplicated definition of MKDIR and CC for MinGW 2012-12-13 10:45:53 +01:00
veganaize
2c44ba6612 Add support for MingW32 2012-12-04 21:17:52 +01:00
Anthony J. Bentley
f9ad621686 Allow manually disabling OSS.
The previous check is inadequate, because OpenBSD has /dev/mixer but does
not use OSS.
2012-11-14 21:42:12 -07:00
Anthony J. Bentley
d6c1dafc14 Detect OpenBSD PowerPC platforms macppc and socppc. 2012-11-12 18:01:33 -07:00
Sven Eckelmann
7126a3ecf4 Add configuration for semi-supported architecture armel 2012-11-04 01:25:07 +01:00
Sven Eckelmann
9b27463cfa Add support for speexdsp resampler 2012-10-10 07:59:24 +02:00
Sven Eckelmann
95b879dba1 Rename NO_RESAMP compile option to NO_SRC 2012-10-10 07:59:24 +02:00
casualjames casualjames
135d83c346 From the changelog:
- Bugfix: Don't assume OSS is installed in all linux systems.
 - Bugfix: Some combinations of VolumeSetLevel and VolumeMute caused VolumeGetString to return Mute when not muted
 - Make SDL volume handling the default, since OSS is no longer included in the kernel.
 - Minor refactoring of volume handling code.

Personally, I would drop OSS support altogether, since it's deprecated (and some 'user-friendly' distros don't have it enabled by default, e.g. Ubuntu), and it changes the master volume level and 'remembers' it when muted (what if two programs did this?).
2012-08-27 22:46:18 +02:00
Sven Eckelmann
0976cef7c3 Enable experimental support for link-time optimization 2012-06-09 00:23:55 +02:00