Note that this still doesn't compile with the library package provided
by bSr43 because this package is missing libvorbisfile.a and has a
non standard name for libglib-2.0.a. But it would probably be better
to fix the package than maintain non-standard packages.
c19c10d548 fixed the bad parsing of
module.mk which meant the Xcode generator broke. For the moment,
just move the hack for browser_osx.mm into the generator, until
there is a more elegant solution to this problem (if ever).
FluidSynth does build and run successfully, but it is necessary
to get the correct static libraries. It can be manually built
against dylib, if desired, by manually adding the fluidsynth.dylib
to the Frameworks. Since this will result in a runtime dependency,
this is not set up by default.
Libraries were being included unconditionally regardless of the
arguments passed to create_project, and in the case of macOS were
being added using manual linker flags and other such hacks instead
of using the Frameworks list.
This adds a quick fix so that any if blocks nested inside a if block
with an unmet condition are handled with push(false) even if their
condition is satisfied.
For example, without this modification, upon running create_project.exe
--msvc --disable-cloud --enable-libcurl the block inside
ifdef USE_CLOUD
ifdef USE_LIBCURL
...
endif
endif
in backends/module.mk would get evaluated since it was inside
USE_LIBCURL (=1), leading to unpredictable results.
Some formal function parameters are not used in all overloaded
functions, which results in loads of 4100 warnings when building
CREATE_PROJECT. This change silences warning 4100 together with
the others
Formerly we relied on static linkage. However, in the presense of modern
OpenGL (ES) implementations it is not easily identifable which library to link
against. For example, on Linux amd64 with nVidia drivers and SDL2 setup to
create a GLES 1.1 context one would need to link against libGL.so. However,
traditionally GLES 1.1 required to link against libGLESv1_CM.so. To prevent a
huge mess we simply resolve the OpenGL functions on run-time now and stop
linking against a static library (in most cases).
GLES support needs to be enabled manually on configure time for now.
Tizen changes have NOT been tested.