vlc | branch: master | David Fuhrmann <[email protected]> | Mon Jun 15 
19:36:27 2015 +0200| [021f50d9b56504d76de32646c15804017cf7eacf] | committer: 
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.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=021f50d9b56504d76de32646c15804017cf7eacf
---

 bin/Makefile.am                                     |   19 ++++++++++++++-----
 bin/{darwinvlc.c => darwinvlc.m}                    |    0
 extras/package/macosx/build-package.sh              |    4 ++--
 extras/package/macosx/package.mak                   |    2 +-
 extras/package/macosx/vlc.xcodeproj/project.pbxproj |    6 ++++--
 5 files changed, 21 insertions(+), 10 deletions(-)

diff --git a/bin/Makefile.am b/bin/Makefile.am
index 02e77ff..992ca2c 100644
--- a/bin/Makefile.am
+++ b/bin/Makefile.am
@@ -1,7 +1,11 @@
 # Building vlc
 #
+if HAVE_DARWIN
+bin_PROGRAMS = vlc-osx
+else
 bin_PROGRAMS = vlc
 noinst_PROGRAMS = vlc-static
+endif
 noinst_DATA =
 vlclib_PROGRAMS = vlc-cache-gen
 EXTRA_PROGRAMS = vlc-wrapper
@@ -22,22 +26,21 @@ endif
 vlc_SOURCES = vlc.c override.c
 endif
 
-EXTRA_vlc_SOURCES = vlc.c winvlc.c darwinvlc.c
+EXTRA_vlc_SOURCES = vlc.c winvlc.c
 if HAVE_WIN32
 vlc_SOURCES = winvlc.c
 noinst_DATA += vlc_win32_rc.rc
 endif
 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
 
 vlc_wrapper_SOURCES = rootwrap.c
 vlc_wrapper_LDADD = $(SOCKET_LIBS)
 
 vlc_LDFLAGS = $(LDFLAGS_vlc)
-if HAVE_DARWIN
-vlc_LDFLAGS += -Wl,-framework,CoreFoundation
-endif
 vlc_LDADD = ../lib/libvlc.la $(LIBPTHREAD)
 
 vlc_static_SOURCES = $(vlc_SOURCES)
@@ -80,6 +83,12 @@ endif
 noinst_DATA += ../modules/plugins.dat
 MOSTLYCLEANFILES = $(noinst_DATA)
 
+if HAVE_DARWIN
+install-data-local:
+       cd $(bindir); mv vlc-osx vlc
+
+endif
+
 .PHONY: ../modules/plugins.dat
 
 ../modules/plugins.dat: vlc-cache-gen$(EXEEXT)
diff --git a/bin/darwinvlc.c b/bin/darwinvlc.m
similarity index 100%
rename from bin/darwinvlc.c
rename to bin/darwinvlc.m
diff --git a/extras/package/macosx/build-package.sh 
b/extras/package/macosx/build-package.sh
index fe4a52a..446f1da 100644
--- a/extras/package/macosx/build-package.sh
+++ b/extras/package/macosx/build-package.sh
@@ -228,8 +228,8 @@ fi
 ##########################
 # Hack for VLC.app
 if [ "$FULL_PRODUCT_NAME" = "VLC.app" ] ; then
-    vlc_install "bin/${prefix}" "vlc" "${target}" "bin" "@loader_path/lib"
-    mv ${target}/vlc ${target}/VLC
+    vlc_install "bin/${prefix}" "vlc-osx" "${target}" "bin" "@loader_path/lib"
+    mv "${target}/vlc-osx" "${target}/VLC"
     chmod +x ${target}/VLC
 else
     vlc_install "bin/${prefix}" "vlc" "${target}/bin" "bin" 
"@loader_path/../lib"
diff --git a/extras/package/macosx/package.mak 
b/extras/package/macosx/package.mak
index f709d81..ea16038 100644
--- a/extras/package/macosx/package.mak
+++ b/extras/package/macosx/package.mak
@@ -10,7 +10,7 @@ endif
 VLC-dev.app: VLC-tmp
        rm -Rf $@
        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
 
 # VLC.app for packaging and giving it to your friends
diff --git a/extras/package/macosx/vlc.xcodeproj/project.pbxproj 
b/extras/package/macosx/vlc.xcodeproj/project.pbxproj
index 848c7d3..18cf45c 100644
--- a/extras/package/macosx/vlc.xcodeproj/project.pbxproj
+++ b/extras/package/macosx/vlc.xcodeproj/project.pbxproj
@@ -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 
*/; };
                1C88BCC319DC7CB300645190 /* 
[email protected] in Resources */ = {isa = 
PBXBuildFile; fileRef = 1C88BC8D19DC7CB300645190 /* 
[email protected] */; };
                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 */; };
                1CCB5F521A62A724004C3E90 /* about.m in Sources */ = {isa = 
PBXBuildFile; fileRef = 8EE1AFA0044465080059A3A7 /* about.m */; };
                1CCB5F531A62A724004C3E90 /* AddonListDataSource.h in Sources */ 
= {isa = PBXBuildFile; fileRef = 7DF0435E1972E26A0022B534 /* 
AddonListDataSource.h */; };
@@ -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>"; };
                1C88BC8D19DC7CB300645190 /* 
[email protected] */ = {isa = PBXFileReference; 
lastKnownFileType = image.png; path = 
"[email protected]"; 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; };
                1CE5ED1B19DD6AB700FCEFD3 /* lion-window-fullscreen-on.png */ = 
{isa = PBXFileReference; lastKnownFileType = image.png; path = 
"lion-window-fullscreen-on.png"; sourceTree = "<group>"; };
                1CE5ED1C19DD6AB700FCEFD3 /* [email protected] */ 
= {isa = PBXFileReference; lastKnownFileType = image.png; path = 
"[email protected]"; sourceTree = "<group>"; };
@@ -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; };
                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; };
-               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; 
};
                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>"; };
@@ -2877,7 +2878,7 @@
                CCDDF1AF172FF4D6007729A1 /* core */ = {
                        isa = PBXGroup;
                        children = (
-                               7D7DC2CA182E86D9008C9E3E /* darwinvlc.c */,
+                               1CC25CA71B2C585D0003F994 /* darwinvlc.m */,
                                CC4D67F71348F601003FCC5B /* specific.c */,
                                CCDDF1AC172FF4C4007729A1 /* netconf.c */,
                                CCDDF1AD172FF4C4007729A1 /* dirs.c */,
@@ -3931,6 +3932,7 @@
                                1CCB5F791A62A724004C3E90 /* open.h in Sources 
*/,
                                1CCB5F7A1A62A724004C3E90 /* open.m in Sources 
*/,
                                1CCB5F7B1A62A724004C3E90 /* output.h in Sources 
*/,
+                               1CC25CA81B2C585D0003F994 /* darwinvlc.m in 
Sources */,
                                1CCB5F7C1A62A724004C3E90 /* output.m in Sources 
*/,
                                1CCB5F7D1A62A724004C3E90 /* playlist.h in 
Sources */,
                                1CCB5F7E1A62A724004C3E90 /* playlist.m in 
Sources */,

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to