if HAVE_DARWIN1
libscreen_plugin_la_SOURCES += screen/mac.c
libscreen_plugin_la_LDFLAGS = $(AM_LDFLAGS)
libscreen_plugin_la_LDFLAGS += "-Wl,-framework,OpenGL,-framework,ApplicationServices"
libvlc_LTLIBRARIES += libscreen_plugin.la
to:
Otherwise it might compile the front end as armv7s and expect the vlc files to be under /armv7s. However, vlc itself is compiled under armv7 and the files are in /armv7. If one were to attempt to compile vlc for armv7s it fails. I have yet to dig into that.
Then there's the other bigger problem. In the file ios/ImportedSources/vlc/modules/access/Modules.am there is a logic problem regarding the lib screen plugin. Here's the offending code, line 184:
The problem is that under iOS HAVE_DARWIN is true, and libscreen will always compile regardless of your --disable-screen setting. Incidentally, the previous piece of code that compiles for HAVE_WIN32 has the same problem. --disable-screen doesn't stop libscreen from compiling.
And since there is no specific HAVE_* check for screen, just disable all those lines between the HAVE_DARWIN test.
This will get the iOS build to compile and function correctly.
libscreen_plugin_la_SOURCES += screen/mac.c
libscreen_plugin_la_LDFLAGS = $(AM_LDFLAGS)
libscreen_plugin_la_LDFLAGS += "-Wl,-framework,OpenGL,-framework,ApplicationServices"
libvlc_LTLIBRARIES += libscreen_plugin.la
endif
First, add --disable-screen as I wrote in my comment above.
Then, in the file ios/buildMobileVLC.sh, change line 50 from:
-
CODE:
SELECT ALL
-
local extra="ARCHS="
to:
-
CODE:
SELECT ALL
-
local extra="ARCHS=armv7"
Otherwise it might compile the front end as armv7s and expect the vlc files to be under /armv7s. However, vlc itself is compiled under armv7 and the files are in /armv7. If one were to attempt to compile vlc for armv7s it fails. I have yet to dig into that.
Then there's the other bigger problem. In the file ios/ImportedSources/vlc/modules/access/Modules.am there is a logic problem regarding the lib screen plugin. Here's the offending code, line 184:
-
CODE:
SELECT ALL
-
if HAVE_DARWIN
libscreen_plugin_la_SOURCES += screen/mac.c
libscreen_plugin_la_LDFLAGS = $(AM_LDFLAGS)
libscreen_plugin_la_LDFLAGS += "-Wl,-framework,OpenGL,-framework,ApplicationServices"
libvlc_LTLIBRARIES += libscreen_plugin.la
endif
The problem is that under iOS HAVE_DARWIN is true, and libscreen will always compile regardless of your --disable-screen setting. Incidentally, the previous piece of code that compiles for HAVE_WIN32 has the same problem. --disable-screen doesn't stop libscreen from compiling.
And since there is no specific HAVE_* check for screen, just disable all those lines between the HAVE_DARWIN test.
This will get the iOS build to compile and function correctly.