Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
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
Commits
06df9cc6
Commit
06df9cc6
authored
Feb 11, 2010
by
Pierre d'Herbemont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
macosx/framework: Try to clean up a little bit the now very messy Pre-Compile.sh script file.
parent
479c4008
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
45 additions
and
37 deletions
+45
-37
projects/macosx/framework/Pre-Compile.sh
projects/macosx/framework/Pre-Compile.sh
+45
-37
No files found.
projects/macosx/framework/Pre-Compile.sh
View file @
06df9cc6
...
...
@@ -38,64 +38,72 @@ if test "${ACTION}" = "build"; then
linked_libs
=
""
##########################
# @function
install_library
(src_lib, dest_dir, type, lib_install_prefix, destination_name)
# @function
vlc_install
(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
()
{
vlc_install
()
{
if
[
${
3
}
=
"library"
]
;
then
local
src_lib
=
${
1
}
local
dest_dir
=
${
2
}
local type
=
${
3
}
local
lib_install_prefix
=
${
4
}
local
destination_name
=
${
5
}
if
[
$type
=
"library"
]
;
then
local
install_name
=
"@loader_path/lib"
elif
[
$
{
3
}
=
"module"
]
;
then
elif
[
$
type
=
"module"
]
;
then
local
install_name
=
"@loader_path/modules"
fi
if
[
"
$
{
5
}
"
!=
""
]
;
then
local
lib_dest
=
"
$
{
2
}
/
${
5
}
"
if
[
"
$
destination_name
"
!=
""
]
;
then
local
lib_dest
=
"
$
dest_dir
/
$destination_name
"
else
local
lib_dest
=
"
$
{
2
}
/
`
basename
${
1
}
`
"
local
lib_dest
=
"
$
dest_dir
/
`
basename
$src_lib
`
"
fi
if
[
"
$
{
4
}
"
!=
""
]
;
then
local
lib_install_prefix
=
"
$
{
4
}
"
if
[
"
$
lib_install_prefix
"
!=
""
]
;
then
local
lib_install_prefix
=
"
$
lib_install_prefix
"
else
local
lib_install_prefix
=
"@loader_path/../lib"
fi
if
test
-e
${
1
}
&&
((!
test
-e
${
lib_dest
}
)
||
test
${
1
}
-nt
${
lib_dest
}
)
;
then
if
test
-e
${
src_lib
}
&&
((!
test
-e
${
lib_dest
}
)
||
test
${
src_lib
}
-nt
${
lib_dest
}
)
;
then
mkdir
-p
${
2
}
mkdir
-p
${
dest_dir
}
# Lets copy the library from the source folder to our new destination folder
if
[
"
${
3
}
"
!
=
"bin"
]
;
then
install
-m
644
${
1
}
${
lib_dest
}
if
[
"
${
type
}
"
=
"bin"
]
;
then
install
-m
755
${
src_lib
}
${
lib_dest
}
else
install
-m
755
${
1
}
${
lib_dest
}
install
-m
644
${
src_lib
}
${
lib_dest
}
fi
# Update the dynamic library so it will know where to look for the other libraries
echo
"Installing
${
3
}
`
basename
${
lib_dest
}
`
"
echo
"Installing
${
type
}
`
basename
${
lib_dest
}
`
"
if
[
"
${
3
}
"
!=
"bin
"
]
;
then
if
[
"
${
type
}
"
=
"lib
"
]
;
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
local
name
=
`
basename
${
linked_lib
}
`
case
"
${
linked_lib
}
"
in
*
/vlc_build_dir/
*
|
*
/vlc_install_dir/
*
|
*
vlc
*
|
*
/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
if
[
"
${
type
}
"
!=
"data"
]
;
then
# 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
local
name
=
`
basename
${
linked_lib
}
`
case
"
${
linked_lib
}
"
in
*
/vlc_build_dir/
*
|
*
/vlc_install_dir/
*
|
*
vlc
*
|
*
/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
}
"
vlc_install
${
linked_lib
}
${
target_lib
}
"library"
fi
;;
esac
done
fi
fi
}
# @function
install_library
# @function
vlc_install
##########################
prefix
=
".libs/"
...
...
@@ -104,16 +112,16 @@ if test "${ACTION}" = "build"; then
##########################
# Hack for VLC-release.app
if
[
"
$FULL_PRODUCT_NAME
"
=
"VLC-release.app"
]
;
then
install_library
"
${
VLC_BUILD_DIR
}
/bin/
${
prefix
}
vlc"
"
${
target
}
"
"bin"
"@loader_path/lib"
vlc_install
"
${
VLC_BUILD_DIR
}
/bin/
${
prefix
}
vlc"
"
${
target
}
"
"bin"
"@loader_path/lib"
mv
${
target
}
/vlc
${
target
}
/VLC
chmod
+x
${
target
}
/VLC
elif
[
"
$FULL_PRODUCT_NAME
"
=
"VLC-Plugin.plugin"
]
;
then
# install Safari webplugin
install_library
"
${
VLC_BUILD_DIR
}
/projects/mozilla/
${
prefix
}
npvlc.
${
suffix
}
"
"
${
target
}
"
"library"
"@loader_path/lib"
vlc_install
"
${
VLC_BUILD_DIR
}
/projects/mozilla/
${
prefix
}
npvlc.
${
suffix
}
"
"
${
target
}
"
"library"
"@loader_path/lib"
mv
${
target
}
/npvlc.
${
suffix
}
"
${
target
}
/VLC Plugin"
chmod
+x
"
${
target
}
/VLC Plugin"
else
install_library
"
${
VLC_BUILD_DIR
}
/bin/
${
prefix
}
vlc"
"
${
target
}
/bin"
"bin"
"@loader_path/../lib"
vlc_install
"
${
VLC_BUILD_DIR
}
/bin/
${
prefix
}
vlc"
"
${
target
}
/bin"
"bin"
"@loader_path/../lib"
fi
##########################
...
...
@@ -123,7 +131,7 @@ if test "${ACTION}" = "build"; then
for
module
in
`
find
${
VLC_BUILD_DIR
}
/modules
-name
*
.
${
suffix
}
`
;
do
# Check to see that the reported module actually exists
if
test
-n
${
module
}
;
then
install_library
${
module
}
${
target_modules
}
"module"
vlc_install
${
module
}
${
target_modules
}
"module"
fi
done
# Build the modules folder
...
...
@@ -156,14 +164,14 @@ if test "${ACTION}" = "build"; then
case
"
${
linked_lib
}
"
in
*
/extras/contrib/lib/
*
.dylib|
*
/vlc_install_dir/lib/
*
.dylib
)
if
test
-e
${
linked_lib
}
;
then
install_library
${
linked_lib
}
${
target_lib
}
"library"
vlc_install
${
linked_lib
}
${
target_lib
}
"library"
fi
;;
esac
done
install_library
"
${
VLC_BUILD_DIR
}
/src/
${
prefix
}
libvlc.5.dylib"
"
${
target_lib
}
"
"library"
install_library
"
${
VLC_BUILD_DIR
}
/src/
${
prefix
}
libvlccore.4.dylib"
"
${
target_lib
}
"
"library"
vlc_install
"
${
VLC_BUILD_DIR
}
/src/
${
prefix
}
libvlc.5.dylib"
"
${
target_lib
}
"
"library"
vlc_install
"
${
VLC_BUILD_DIR
}
/src/
${
prefix
}
libvlccore.4.dylib"
"
${
target_lib
}
"
"library"
pushd
`
pwd
`
>
/dev/null
cd
${
TARGET_BUILD_DIR
}
/
${
FULL_PRODUCT_NAME
}
/lib
ln
-sf
libvlc.5.dylib libvlc.dylib
...
...
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