|
Voldracarno Draconor |
bb9d74 |
#!/usr/bin/env bash
|
|
Voldracarno Draconor |
bb9d74 |
#
|
|
Voldracarno Draconor |
bb9d74 |
# = Usage: =
|
|
Voldracarno Draconor |
d0285b |
# ./2-build-cmake.sh [OPTIONS]
|
|
Voldracarno Draconor |
039108 |
#
|
|
Voldracarno Draconor |
039108 |
# OPTIONS
|
|
Voldracarno Draconor |
039108 |
# -d = Debug build (standard)
|
|
Voldracarno Draconor |
039108 |
# -r = Release build
|
|
Voldracarno Draconor |
acb820 |
# -n = Don't write the run-portable.sh to the out dir
|
|
Voldracarno Draconor |
039108 |
# -j NUMBER = Set parallel make jobs (1 <= NUMBER <= 999) (standard is 1)
|
|
Voldracarno Draconor |
d0285b |
# -i = Enable incremental build (disables the clean_build_dir, gen_dir_structure and the build_images steps). Before using this option, you will have to build Synfig Studio on time without this option on the selected build mode (or use the --rerender option)
|
|
Voldracarno Draconor |
d0285b |
# --rerender = Rerender the images (even if incremental build is activated)
|
|
Voldracarno Draconor |
039108 |
# -p = Only print out the current active build settings and exit
|
|
Voldracarno Draconor |
5205e0 |
# --data-prefix = The installed Synfig Studio looks for it's data (icons, sounds, etc) in [DATA_PREFIX]/share/. This option sets a custom DATA_PREFIX. (Standard is the out directory)
|
|
Voldracarno Draconor |
039108 |
#
|
|
Voldracarno Draconor |
039108 |
# = Examples =
|
|
Voldracarno Draconor |
039108 |
# Make a debug build
|
|
Voldracarno Draconor |
039108 |
# ./build-cmake -d
|
|
Voldracarno Draconor |
039108 |
#
|
|
Voldracarno Draconor |
039108 |
# Make a release build
|
|
Voldracarno Draconor |
039108 |
# ./build-cmake -r
|
|
Voldracarno Draconor |
039108 |
#
|
|
Voldracarno Draconor |
039108 |
# Make a release build with two parallel make jobs
|
|
Voldracarno Draconor |
039108 |
# ./build-cmake -r -j 2
|
|
Voldracarno Draconor |
bb9d74 |
|
|
Voldracarno Draconor |
bb9d74 |
#Define dir paths
|
|
Voldracarno Draconor |
bb9d74 |
pwd_dir="$PWD"
|
|
Voldracarno Draconor |
bb9d74 |
absolute_script_path="$(readlink -f "$0")"
|
|
Voldracarno Draconor |
bb9d74 |
absolute_base_dir="$(dirname "$absolute_script_path")"
|
|
Voldracarno Draconor |
bb9d74 |
|
|
Voldracarno Draconor |
bb9d74 |
cd ${absolute_base_dir}
|
|
Voldracarno Draconor |
bb9d74 |
|
|
Voldracarno Draconor |
bb9d74 |
# Include build folder names and build functions
|
|
Voldracarno Draconor |
bb9d74 |
source ./autobuild/build-cmake-common.sh
|
|
Voldracarno Draconor |
bb9d74 |
|
|
Voldracarno Draconor |
bb9d74 |
if [ $? -ne 0 ]
|
|
Voldracarno Draconor |
bb9d74 |
then
|
|
Voldracarno Draconor |
bb9d74 |
echo "Failed to include: ./autobuild/build-cmake-common.sh"
|
|
Voldracarno Draconor |
bb9d74 |
cd "$pwd_dir"
|
|
Voldracarno Draconor |
bb9d74 |
exit
|
|
Voldracarno Draconor |
bb9d74 |
fi
|
|
Voldracarno Draconor |
bb9d74 |
|
|
Voldracarno Draconor |
039108 |
# Parse build options
|
|
Voldracarno Draconor |
039108 |
parse_build_arguments "$@"
|
|
Voldracarno Draconor |
039108 |
|
|
Voldracarno Draconor |
039108 |
# Print build settings
|
|
Voldracarno Draconor |
039108 |
print_build_settings
|
|
Voldracarno Draconor |
039108 |
|
|
Voldracarno Draconor |
bb9d74 |
# Exec build steps
|
|
Voldracarno Draconor |
bb9d74 |
clean_build_dir
|
|
Voldracarno Draconor |
bb9d74 |
gen_dir_structure
|
|
Voldracarno Draconor |
bb9d74 |
build_etl
|
|
Voldracarno Draconor |
bb9d74 |
build_synfig_core
|
|
Voldracarno Draconor |
bb9d74 |
build_synfig_studio
|
|
Voldracarno Draconor |
acb820 |
write_portable_run_code
|
|
Voldracarno Draconor |
acb820 |
|
|
Voldracarno Draconor |
245563 |
# Print success, restore the current directory and exit
|
|
luz.paz |
99f3ef |
echo "Build successful to: ${absolute_base_dir}/${cmake_build_dir}/${out_dir}"
|
|
Voldracarno Draconor |
bb9d74 |
cd "$pwd_dir"
|