Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
9afe6008
Commit
9afe6008
authored
Feb 01, 2008
by
Pierre d'Herbemont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MacOSX/Framework/Pre-Compile.sh: Support the VLC-release.app target.
parent
3e75c8bc
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
57 additions
and
28 deletions
+57
-28
extras/MacOSX/Framework/Pre-Compile.sh
extras/MacOSX/Framework/Pre-Compile.sh
+57
-28
No files found.
extras/MacOSX/Framework/Pre-Compile.sh
View file @
9afe6008
...
...
@@ -10,6 +10,16 @@ if test "${ACTION}" = ""; then
# Debug --
fi
# Hack to use that script with the current VLC-release.app
if
test
"
${
ACTION
}
"
=
"VLC-release.app"
;
then
TARGET_BUILD_DIR
=
"
${
build_dir
}
"
FULL_PRODUCT_NAME
=
"VLC-release.app"
CONTENTS_FOLDER_PATH
=
"
${
FULL_PRODUCT_NAME
}
/Contents/MacOS"
VLC_BUILD_DIR
=
"
${
build_dir
}
"
VLC_SRC_DIR
=
"
${
src_dir
}
"
ACTION
=
"build"
fi
if
test
"
${
ACTION
}
"
=
"build"
;
then
vlc_config
=
"
${
VLC_SRC_DIR
}
/vlc-config"
lib
=
"lib"
...
...
@@ -22,49 +32,61 @@ if test "${ACTION}" = "build"; then
linked_libs
=
" "
##########################
# @function install_library(src_lib, dest_dir)
# @function install_library(src_lib, dest_dir
, type, lib_install_prefix, destination_name
)
# @description Installs the specified library into the destination folder, automatically changes the references to dependencies
# @param src_lib source library to copy to the destination directory
# @param dest_dir destination directory where the src_lib should be copied to
install_library
()
{
if
[
${
3
}
=
"library"
]
;
then
install_name
=
"@loader_path/lib"
el
se
el
if
[
${
3
}
=
"module"
]
;
then
install_name
=
"@loader_path/modules"
fi
if
[
"
${
4
}
"
!=
""
]
;
then
lib_dest
=
"
${
2
}
/
${
4
}
"
if
[
"
${
5
}
"
!=
""
]
;
then
lib_dest
=
"
${
2
}
/
${
5
}
"
else
lib_dest
=
"
${
2
}
/
`
basename
${
1
}
`
"
fi
if
[
"
${
4
}
"
!=
""
]
;
then
lib_install_prefix
=
"
${
4
}
"
else
lib_install_prefix
=
"@loader_path/../lib"
fi
if
test
-e
${
1
}
&&
((!
test
-e
${
lib_dest
}
)
||
test
${
1
}
-nt
${
lib_dest
}
)
;
then
mkdir
-p
${
2
}
mkdir
-p
${
2
}
# Lets copy the library from the source folder to our new destination folder
cp
${
1
}
${
lib_dest
}
install
-m
644
${
1
}
${
lib_dest
}
# Update the dynamic library so it will know where to look for the other libraries
echo
"Installing
${
3
}
`
basename
${
lib_dest
}
`
"
# Change the reference of libvlc.1 stored in the usr directory to libvlc.dylib in the framework's library directory
install_name_tool
-change
/usr/local/lib/libvlc.1.dylib @loader_path/../lib/libvlc.dylib
${
lib_dest
}
install_name_tool
-change
@executable_path/lib/vlc_libintl.dylib @loader_path/../lib/vlc_libintl.dylib
${
lib_dest
}
install_name_tool
-id
"
${
install_name
}
/
`
basename
${
lib_dest
}
`
"
${
lib_dest
}
if
[
"
${
3
}
"
!=
"bin"
]
;
then
# Change the reference of libvlc.1 stored in the usr directory to libvlc.dylib in the framework's library directory
install_name_tool
-id
"
${
install_name
}
/
`
basename
${
lib_dest
}
`
"
${
lib_dest
}
>
/dev/null
fi
# Iterate through each installed library and modify the references to other dynamic libraries to match the framework's library directory
for
linked_lib
in
`
otool
-L
${
lib_dest
}
|
grep
'('
|
sed
's/\((.*)\)//'
`
;
do
ref_lib
=
`
echo
"
${
linked_lib
}
"
|
sed
's:executable_path/:loader_path/../:'
`
if
test
"
${
ref_lib
}
"
!=
"
${
linked_lib
}
"
;
then
install_name_tool
-change
${
linked_lib
}
${
ref_lib
}
${
lib_dest
}
fi
if
test
`
echo
"
${
ref_lib
}
"
|
grep
"^@loader_path"
`
;
then
linked_libs
=
"
${
linked_libs
}
${
ref_lib
}
"
fi
;
name
=
`
basename
${
linked_lib
}
`
case
"
${
linked_lib
}
"
in
*
/vlc_install_dir/lib/
*
|
*
/extras/contrib/lib/
*
)
if
test
-e
${
linked_lib
}
;
then
install_name_tool
-change
${
linked_lib
}
"
${
lib_install_prefix
}
/
${
name
}
"
${
lib_dest
}
linked_libs
=
"
${
linked_libs
}
${
ref_lib
}
"
install_library
${
linked_lib
}
${
target_lib
}
"library"
fi
;;
*
)
;;
esac
done
fi
fi
}
# @function install_library
##########################
...
...
@@ -103,14 +125,15 @@ if test "${ACTION}" = "build"; then
echo
"Building library folder..."
for
linked_lib
in
${
linked_libs
}
;
do
case
"
${
linked_lib
}
"
in
@loader_path/../lib/
*
)
ref_lib
=
`
echo
${
linked_lib
}
|
sed
's:@loader_path/../lib/::'
`
if
test
-e
${
VLC_BUILD_DIR
}
/extras/contrib/vlc-lib/
${
ref_lib
}
;
then
src_lib
=
${
VLC_BUILD_DIR
}
/extras/contrib/vlc-lib/
${
ref_lib
}
elif
test
-e
${
VLC_BUILD_DIR
}
/src/.libs/
${
ref_lib
}
;
then
src_lib
=
${
VLC_BUILD_DIR
}
/src/.libs/
${
ref_lib
}
*
/extras/contrib/lib/
*
.dylib
)
if
test
-e
${
linked_lib
}
;
then
install_library
${
linked_lib
}
${
target_lib
}
"library"
fi
;;
*
/vlc_install_dir/lib/
*
.dylib
)
if
test
-e
${
linked_lib
}
;
then
install_library
${
linked_lib
}
${
target_lib
}
"library"
fi
install_library
${
src_lib
}
${
target_lib
}
"library"
;;
esac
done
...
...
@@ -118,6 +141,12 @@ if test "${ACTION}" = "build"; then
install_library
"
${
VLC_BUILD_DIR
}
/src/.libs/libvlc-control.dylib"
${
target_lib
}
"library"
install_library
"
${
VLC_BUILD_DIR
}
/src/.libs/libvlc.dylib"
${
target_lib
}
"library"
##########################
# Hack for VLC-release.app
if
[
"
$FULL_PRODUCT_NAME
"
=
"VLC-release.app"
]
;
then
install_library
"
${
VLC_BUILD_DIR
}
/.libs/vlc"
"
${
target
}
"
"bin"
"@loader_path/lib"
fi
##########################
# Build the share folder
echo
"Building share folder..."
...
...
@@ -125,4 +154,4 @@ if test "${ACTION}" = "build"; then
mkdir
-p
${
target_share
}
$pbxcp
${
VLC_BUILD_DIR
}
/share/luameta
${
target_share
}
$pbxcp
${
VLC_BUILD_DIR
}
/share/luaplaylist
${
target_share
}
fi
\ No newline at end of file
fi
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment