Commit graph

92 commits

Author SHA1 Message Date
orbea
901b9ec3dd build: Allow out of tree builds. 2020-12-14 15:00:54 -08:00
Richard Goedeken
6210d5cce2 Revert "Allow non-default compilers without resorting to symbolic links"
This reverts commit d0fdeafeb2.
2020-09-16 22:27:26 -07:00
Jj0YzL5nvJ
d0fdeafeb2 Allow non-default compilers without resorting to symbolic links 2020-08-30 04:01:18 -06:00
Richard Goedeken
838d4d4f2f oops, correctly set PLUGINDIR macro in makefile 2018-11-07 20:20:03 -08:00
Richard Goedeken
e502f2b66b fix for issue #50: use LIBDIR for PLUGINDIR and COREDIR if they are not explicitly given 2018-11-06 21:24:59 -08:00
Richard Goedeken
f641c94b3d merge console debugger from wnayes on github into ui-console front-end 2018-02-07 20:33:00 -08:00
Richard Goedeken
a105ae0c6f on macOS systems, use corefoundation framework to get the absolute path to the frameworks folder in the bundle, and look for the core library and plugins there 2018-01-23 19:18:33 -08:00
Anthony J. Bentley
78d3d6c955 Update homepage. 2018-01-01 17:46:49 +01:00
Anthony J. Bentley
50a0714ab6 Update link to bug tracker. 2018-01-01 17:46:49 +01:00
Richard Goedeken
1cdc745ad2 update Makefile method for finding OSX_SDK_PATH 2017-11-14 16:21:49 -08:00
Logan
36145e5bdf Fix for #39 2017-09-25 08:39:32 -06:00
Logan McNaughton
187d3a3bda Fix no-pie mode for compilers that default to PIE 2017-09-21 12:43:15 -06:00
Bobby Smiles
8e63bfa5f7 Revert "Allow using compiler other than gcc"
This reverts commit f13e35b373.
2017-06-24 13:34:53 -06:00
Logan McNaughton
f13e35b373 Allow using compiler other than gcc 2017-06-20 21:16:16 -06:00
Brent Woodruff
5639129cfc bump macosx-version-min to 10.6 for SDL2.0.5 2017-03-16 22:52:35 -04:00
Anthony J. Bentley
b8dff88aed Remove unnecessary OpenBSD warning. 2015-06-08 01:51:13 -06:00
Conchúr Navid
f0b0a1249e Fix executable bits of files 2015-03-21 10:53:38 +01:00
Nebuleon Fumika
cb4e055c54 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.
2015-01-26 09:22:04 +00:00
Dorian Fevrier
b2bbc856ab Revert "Remove SDL build dependency." 2015-01-14 08:34:08 -05:00
littleguy77
87ef78922a Remove SDL build dependency. 2015-01-13 12:43:58 -05:00
Will Nayes
1703b25649 Initial debugger code with run/pause/step. 2014-11-23 16:36:50 -06:00
Richard Goedeken
6f0b800cd1 SDL 1.2 is not deprecated for us, and we shouldnt frighten the user with 6 lines of exclamation points 2014-05-04 11:32:31 -07:00
Ursula Abendroth
ad9815f6c4 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:32:56 +02:00
Bobby Smiles
60d72dc650 Add application desktop file and icons.
SVG logo information
source: https://en.wikipedia.org/wiki/File:Mupen64plus.svg
author: Scott 'Tillin9' Knauert
license: Creative Commons Attribution-Share Alike 3.0 Unported
2014-02-15 03:28:59 +01:00
Sven Eckelmann
212be30f54 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:48 +02:00
richard42
5d19eca9b5 simplify OSX platform detection in makefile using xcode-select. based on patch from John Pender 2013-07-08 07:39:48 -07:00
Sven Eckelmann
9a3c294a88 Avoid crash caused by missing initial SDL startup
SDL needs to overwrite the main function to initialize the inner state on some
operating systems. Not doing it this way will cause random crashes and
undefined behaviour.

Systems which need a special main function are for example Apple MacOS,
Android, iPhone or Win32. SDL will handle it automatically and keep systems
without such requirement with an untouched main function.
2013-06-25 14:57:05 +02:00
Sven Eckelmann
dccdaa03ee 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:26:18 +02:00
Sven Eckelmann
ff73a2f421 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:56 +02:00
Sven Eckelmann
ef07d7d1c7 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 10:51:36 +02:00
richard42
f7532d62cd OSX build fix 2013-02-02 22:16:48 -08:00
Sven Eckelmann
aa3e838d0a Introduce WARNFLAGS for default (removable) compiler warning flags 2013-01-02 16:13:45 +01:00
n pepinpe
f8827b148a Fix path to OSX SDK with XCode >=4.3 2012-12-31 10:43:00 +01:00
Richard Goedeken
b7ce0a97a4 merged heads 2012-12-30 15:48:49 -08:00
Anthony J. Bentley
c17d2bae69 Decompress the manual page. 2012-12-24 02:43:03 -07:00
Sven Eckelmann
42f26b8a03 Use $(OBJDIR) in clean target instead of hardcoded path 2012-12-13 14:53:05 +01:00
Sven Eckelmann
14af485493 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:33 +01:00
Sven Eckelmann
25217eacdd Fix clean of mupen64plus.exe 2012-12-13 14:19:37 +01:00
Sven Eckelmann
3b7bee6a33 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:38 +01:00
Sven Eckelmann
10b90e4647 Allow to change names of *-config tools for cross compiles 2012-12-13 11:33:49 +01:00
Sven Eckelmann
08b53f2444 Synchronize usage of environmental variables for UNAME with HOST_CPU 2012-12-13 10:52:49 +01:00
Sven Eckelmann
68a5b42c15 Remove duplicated definition of CC for MinGW 2012-12-13 10:46:17 +01:00
Sven Eckelmann
bbe021bc01 Really build mupen64plus.exe on MinGW 2012-12-12 23:19:39 +01:00
veganaize
b65642a899 Add support for MingW32 2012-12-04 21:17:52 +01:00
Anthony J. Bentley
79e0f12a6a Detect OpenBSD PowerPC platforms macppc and socppc. 2012-11-12 18:03:52 -07:00
Sven Eckelmann
b05ff7522a Add configuration for semi-supported architecture armel 2012-11-04 01:26:41 +01:00
Sven Eckelmann
56159acc29 Enable experimental support for link-time optimization 2012-06-09 01:11:18 +02:00
Sven Eckelmann
e24f33b2c7 Remove additional -O3 on MacOSX 2011-10-14 19:58:42 +02:00
Sven Eckelmann
042700252e Explicitly disable PIC in case of PIC=0 2011-10-13 00:01:02 +02:00
Sven Eckelmann
db675f1052 Enable ppc(64) as experimental target
nogagplz tested mupen64plus on 32-bit ppc and didn't detect any big show
stoppers with interpreter cores and the mupen64plus example rom. This makes the
PowerPC an interesting target for further tests and may reveal other endianness
problems.
2011-08-05 10:46:16 +02:00