Commit 021f50d9 authored by David Fuhrmann's avatar David Fuhrmann

darwinvlc: compile with objc and fix build system

As we do not want to break other os versions, the only way to
select the proper linker is to use another target for osx.

Still, "make install" should produce a binary named "vlc" in the
end, thus the binary is renamed at install stage.
parent 0a59bb70
# Building vlc # Building vlc
# #
if HAVE_DARWIN
bin_PROGRAMS = vlc-osx
else
bin_PROGRAMS = vlc bin_PROGRAMS = vlc
noinst_PROGRAMS = vlc-static noinst_PROGRAMS = vlc-static
endif
noinst_DATA = noinst_DATA =
vlclib_PROGRAMS = vlc-cache-gen vlclib_PROGRAMS = vlc-cache-gen
EXTRA_PROGRAMS = vlc-wrapper EXTRA_PROGRAMS = vlc-wrapper
...@@ -22,22 +26,21 @@ endif ...@@ -22,22 +26,21 @@ endif
vlc_SOURCES = vlc.c override.c vlc_SOURCES = vlc.c override.c
endif endif
EXTRA_vlc_SOURCES = vlc.c winvlc.c darwinvlc.c EXTRA_vlc_SOURCES = vlc.c winvlc.c
if HAVE_WIN32 if HAVE_WIN32
vlc_SOURCES = winvlc.c vlc_SOURCES = winvlc.c
noinst_DATA += vlc_win32_rc.rc noinst_DATA += vlc_win32_rc.rc
endif endif
if HAVE_DARWIN if HAVE_DARWIN
vlc_SOURCES = darwinvlc.c override.c vlc_osx_SOURCES = darwinvlc.m override.c
vlc_osx_LDFLAGS = $(LDFLAGS_vlc) -Wl,-framework,CoreFoundation,-framework,Cocoa
vlc_osx_LDADD = ../lib/libvlc.la
endif endif
vlc_wrapper_SOURCES = rootwrap.c vlc_wrapper_SOURCES = rootwrap.c
vlc_wrapper_LDADD = $(SOCKET_LIBS) vlc_wrapper_LDADD = $(SOCKET_LIBS)
vlc_LDFLAGS = $(LDFLAGS_vlc) vlc_LDFLAGS = $(LDFLAGS_vlc)
if HAVE_DARWIN
vlc_LDFLAGS += -Wl,-framework,CoreFoundation
endif
vlc_LDADD = ../lib/libvlc.la $(LIBPTHREAD) vlc_LDADD = ../lib/libvlc.la $(LIBPTHREAD)
vlc_static_SOURCES = $(vlc_SOURCES) vlc_static_SOURCES = $(vlc_SOURCES)
...@@ -80,6 +83,12 @@ endif ...@@ -80,6 +83,12 @@ endif
noinst_DATA += ../modules/plugins.dat noinst_DATA += ../modules/plugins.dat
MOSTLYCLEANFILES = $(noinst_DATA) MOSTLYCLEANFILES = $(noinst_DATA)
if HAVE_DARWIN
install-data-local:
cd $(bindir); mv vlc-osx vlc
endif
.PHONY: ../modules/plugins.dat .PHONY: ../modules/plugins.dat
../modules/plugins.dat: vlc-cache-gen$(EXEEXT) ../modules/plugins.dat: vlc-cache-gen$(EXEEXT)
......
...@@ -228,8 +228,8 @@ fi ...@@ -228,8 +228,8 @@ fi
########################## ##########################
# Hack for VLC.app # Hack for VLC.app
if [ "$FULL_PRODUCT_NAME" = "VLC.app" ] ; then if [ "$FULL_PRODUCT_NAME" = "VLC.app" ] ; then
vlc_install "bin/${prefix}" "vlc" "${target}" "bin" "@loader_path/lib" vlc_install "bin/${prefix}" "vlc-osx" "${target}" "bin" "@loader_path/lib"
mv ${target}/vlc ${target}/VLC mv "${target}/vlc-osx" "${target}/VLC"
chmod +x ${target}/VLC chmod +x ${target}/VLC
else else
vlc_install "bin/${prefix}" "vlc" "${target}/bin" "bin" "@loader_path/../lib" vlc_install "bin/${prefix}" "vlc" "${target}/bin" "bin" "@loader_path/../lib"
......
...@@ -10,7 +10,7 @@ endif ...@@ -10,7 +10,7 @@ endif
VLC-dev.app: VLC-tmp VLC-dev.app: VLC-tmp
rm -Rf $@ rm -Rf $@
cp -R VLC-tmp $@ cp -R VLC-tmp $@
$(INSTALL) -m 0755 $(top_builddir)/bin/.libs/vlc $@/Contents/MacOS/VLC $(INSTALL) -m 0755 $(top_builddir)/bin/.libs/vlc-osx $@/Contents/MacOS/VLC
$(LN_S) -f ../../../modules $@/Contents/MacOS/plugins $(LN_S) -f ../../../modules $@/Contents/MacOS/plugins
# VLC.app for packaging and giving it to your friends # VLC.app for packaging and giving it to your friends
......
...@@ -358,6 +358,7 @@ ...@@ -358,6 +358,7 @@
1C88BCC219DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C88BC8C19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png */; }; 1C88BCC219DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C88BC8C19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png */; };
1C88BCC319DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C88BC8D19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png */; }; 1C88BCC319DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1C88BC8D19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png */; };
1CBB2CC81B06A6DE00110ADA /* Help.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1CBB2CC61B06A6DE00110ADA /* Help.xib */; }; 1CBB2CC81B06A6DE00110ADA /* Help.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1CBB2CC61B06A6DE00110ADA /* Help.xib */; };
1CC25CA81B2C585D0003F994 /* darwinvlc.m in Sources */ = {isa = PBXBuildFile; fileRef = 1CC25CA71B2C585D0003F994 /* darwinvlc.m */; };
1CCB5F511A62A724004C3E90 /* about.h in Sources */ = {isa = PBXBuildFile; fileRef = 8EE1AF9F044465080059A3A7 /* about.h */; }; 1CCB5F511A62A724004C3E90 /* about.h in Sources */ = {isa = PBXBuildFile; fileRef = 8EE1AF9F044465080059A3A7 /* about.h */; };
1CCB5F521A62A724004C3E90 /* about.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EE1AFA0044465080059A3A7 /* about.m */; }; 1CCB5F521A62A724004C3E90 /* about.m in Sources */ = {isa = PBXBuildFile; fileRef = 8EE1AFA0044465080059A3A7 /* about.m */; };
1CCB5F531A62A724004C3E90 /* AddonListDataSource.h in Sources */ = {isa = PBXBuildFile; fileRef = 7DF0435E1972E26A0022B534 /* AddonListDataSource.h */; }; 1CCB5F531A62A724004C3E90 /* AddonListDataSource.h in Sources */ = {isa = PBXBuildFile; fileRef = 7DF0435E1972E26A0022B534 /* AddonListDataSource.h */; };
...@@ -1231,6 +1232,7 @@ ...@@ -1231,6 +1232,7 @@
1C88BC8C19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ys-fs_volume_slider_knob_highlight.png"; sourceTree = "<group>"; }; 1C88BC8C19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ys-fs_volume_slider_knob_highlight.png"; sourceTree = "<group>"; };
1C88BC8D19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ys-fs_volume_slider_knob_highlight@2x.png"; sourceTree = "<group>"; }; 1C88BC8D19DC7CB300645190 /* ys-fs_volume_slider_knob_highlight@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ys-fs_volume_slider_knob_highlight@2x.png"; sourceTree = "<group>"; };
1CBB2CC71B06A6DE00110ADA /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/Help.xib; sourceTree = "<group>"; }; 1CBB2CC71B06A6DE00110ADA /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/Help.xib; sourceTree = "<group>"; };
1CC25CA71B2C585D0003F994 /* darwinvlc.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = darwinvlc.m; path = ../../../bin/darwinvlc.m; sourceTree = "<group>"; };
1CCB5F2F1A62A6A5004C3E90 /* pseudo-vlc.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "pseudo-vlc.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 1CCB5F2F1A62A6A5004C3E90 /* pseudo-vlc.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "pseudo-vlc.app"; sourceTree = BUILT_PRODUCTS_DIR; };
1CE5ED1B19DD6AB700FCEFD3 /* lion-window-fullscreen-on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "lion-window-fullscreen-on.png"; sourceTree = "<group>"; }; 1CE5ED1B19DD6AB700FCEFD3 /* lion-window-fullscreen-on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "lion-window-fullscreen-on.png"; sourceTree = "<group>"; };
1CE5ED1C19DD6AB700FCEFD3 /* lion-window-fullscreen-on@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "lion-window-fullscreen-on@2x.png"; sourceTree = "<group>"; }; 1CE5ED1C19DD6AB700FCEFD3 /* lion-window-fullscreen-on@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "lion-window-fullscreen-on@2x.png"; sourceTree = "<group>"; };
...@@ -1251,7 +1253,6 @@ ...@@ -1251,7 +1253,6 @@
7D3F652718805297005776C4 /* BWQuincyManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BWQuincyManager.m; path = ../../../modules/gui/macosx/BWQuincyManager.m; sourceTree = SOURCE_ROOT; }; 7D3F652718805297005776C4 /* BWQuincyManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BWQuincyManager.m; path = ../../../modules/gui/macosx/BWQuincyManager.m; sourceTree = SOURCE_ROOT; };
7D3F652818805297005776C4 /* BWQuincyUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BWQuincyUI.h; path = ../../../modules/gui/macosx/BWQuincyUI.h; sourceTree = SOURCE_ROOT; }; 7D3F652818805297005776C4 /* BWQuincyUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BWQuincyUI.h; path = ../../../modules/gui/macosx/BWQuincyUI.h; sourceTree = SOURCE_ROOT; };
7D3F652918805297005776C4 /* BWQuincyUI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BWQuincyUI.m; path = ../../../modules/gui/macosx/BWQuincyUI.m; sourceTree = SOURCE_ROOT; }; 7D3F652918805297005776C4 /* BWQuincyUI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BWQuincyUI.m; path = ../../../modules/gui/macosx/BWQuincyUI.m; sourceTree = SOURCE_ROOT; };
7D7DC2CA182E86D9008C9E3E /* darwinvlc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = darwinvlc.c; path = ../../../bin/darwinvlc.c; sourceTree = "<group>"; };
7D8BB0B318302AC000FAE9B7 /* DebugMessageVisualizer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DebugMessageVisualizer.h; path = ../../../modules/gui/macosx/DebugMessageVisualizer.h; sourceTree = SOURCE_ROOT; }; 7D8BB0B318302AC000FAE9B7 /* DebugMessageVisualizer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DebugMessageVisualizer.h; path = ../../../modules/gui/macosx/DebugMessageVisualizer.h; sourceTree = SOURCE_ROOT; };
7D8BB0B418302AC000FAE9B7 /* DebugMessageVisualizer.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DebugMessageVisualizer.m; path = ../../../modules/gui/macosx/DebugMessageVisualizer.m; sourceTree = SOURCE_ROOT; }; 7D8BB0B418302AC000FAE9B7 /* DebugMessageVisualizer.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DebugMessageVisualizer.m; path = ../../../modules/gui/macosx/DebugMessageVisualizer.m; sourceTree = SOURCE_ROOT; };
7D8BB0B61830311300FAE9B7 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/DebugMessageVisualizer.xib; sourceTree = "<group>"; }; 7D8BB0B61830311300FAE9B7 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/DebugMessageVisualizer.xib; sourceTree = "<group>"; };
...@@ -2877,7 +2878,7 @@ ...@@ -2877,7 +2878,7 @@
CCDDF1AF172FF4D6007729A1 /* core */ = { CCDDF1AF172FF4D6007729A1 /* core */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
7D7DC2CA182E86D9008C9E3E /* darwinvlc.c */, 1CC25CA71B2C585D0003F994 /* darwinvlc.m */,
CC4D67F71348F601003FCC5B /* specific.c */, CC4D67F71348F601003FCC5B /* specific.c */,
CCDDF1AC172FF4C4007729A1 /* netconf.c */, CCDDF1AC172FF4C4007729A1 /* netconf.c */,
CCDDF1AD172FF4C4007729A1 /* dirs.c */, CCDDF1AD172FF4C4007729A1 /* dirs.c */,
...@@ -3931,6 +3932,7 @@ ...@@ -3931,6 +3932,7 @@
1CCB5F791A62A724004C3E90 /* open.h in Sources */, 1CCB5F791A62A724004C3E90 /* open.h in Sources */,
1CCB5F7A1A62A724004C3E90 /* open.m in Sources */, 1CCB5F7A1A62A724004C3E90 /* open.m in Sources */,
1CCB5F7B1A62A724004C3E90 /* output.h in Sources */, 1CCB5F7B1A62A724004C3E90 /* output.h in Sources */,
1CC25CA81B2C585D0003F994 /* darwinvlc.m in Sources */,
1CCB5F7C1A62A724004C3E90 /* output.m in Sources */, 1CCB5F7C1A62A724004C3E90 /* output.m in Sources */,
1CCB5F7D1A62A724004C3E90 /* playlist.h in Sources */, 1CCB5F7D1A62A724004C3E90 /* playlist.h in Sources */,
1CCB5F7E1A62A724004C3E90 /* playlist.m in Sources */, 1CCB5F7E1A62A724004C3E90 /* playlist.m in Sources */,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment