xref: /reactos/configure.sh (revision 14fbe80c)
1c2c66affSColin Finck#!/bin/sh
2c2c66affSColin Finck
3c2c66affSColin Finckif [ "x$ROS_ARCH" = "x" ]; then
4c2c66affSColin Finck	echo Could not detect RosBE.
5c2c66affSColin Finck	exit 1
6c2c66affSColin Finckfi
7c2c66affSColin Finck
8c2c66affSColin FinckBUILD_ENVIRONMENT=MinGW
9c2c66affSColin FinckARCH=$ROS_ARCH
10c2c66affSColin FinckREACTOS_SOURCE_DIR=$(cd `dirname $0` && pwd)
11c2c66affSColin FinckREACTOS_OUTPUT_PATH=output-$BUILD_ENVIRONMENT-$ARCH
12c2c66affSColin Finck
13c2c66affSColin Finckusage() {
14c2c66affSColin Finck	echo Invalid parameter given.
15c2c66affSColin Finck	exit 1
16c2c66affSColin Finck}
17c2c66affSColin Finck
18c2c66affSColin FinckCMAKE_GENERATOR="Ninja"
19c2c66affSColin Finckwhile [ $# -gt 0 ]; do
20c2c66affSColin Finck	case $1 in
21c2c66affSColin Finck		-D)
22c2c66affSColin Finck			shift
23c2c66affSColin Finck			if echo "x$1" | grep 'x?*=*' > /dev/null; then
24c2c66affSColin Finck				ROS_CMAKEOPTS=$ROS_CMAKEOPTS" -D $1"
25c2c66affSColin Finck			else
26c2c66affSColin Finck				usage
27c2c66affSColin Finck			fi
28c2c66affSColin Finck		;;
29c2c66affSColin Finck
30c2c66affSColin Finck		-D?*=*|-D?*)
31c2c66affSColin Finck			ROS_CMAKEOPTS=$ROS_CMAKEOPTS" $1"
32c2c66affSColin Finck		;;
33c2c66affSColin Finck		makefiles|Makefiles)
34c2c66affSColin Finck			CMAKE_GENERATOR="Unix Makefiles"
35c2c66affSColin Finck		;;
36c2c66affSColin Finck		*)
37c2c66affSColin Finck			usage
38c2c66affSColin Finck	esac
39c2c66affSColin Finck
40c2c66affSColin Finck	shift
41c2c66affSColin Finckdone
42c2c66affSColin Finck
43c2c66affSColin Finckif [ "$REACTOS_SOURCE_DIR" = "$PWD" ]; then
44c2c66affSColin Finck	echo Creating directories in $REACTOS_OUTPUT_PATH
45c2c66affSColin Finck	mkdir -p "$REACTOS_OUTPUT_PATH"
46c2c66affSColin Finck	cd "$REACTOS_OUTPUT_PATH"
47c2c66affSColin Finckfi
48c2c66affSColin Finck
49c2c66affSColin Finckecho Preparing reactos...
50c2c66affSColin Finckrm -f CMakeCache.txt host-tools/CMakeCache.txt
51c2c66affSColin Finck
52ce531a28SAndrew Cookcmake -G "$CMAKE_GENERATOR" -DENABLE_CCACHE:BOOL=0 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-gcc.cmake -DARCH:STRING=$ARCH $EXTRA_ARGS $ROS_CMAKEOPTS "$REACTOS_SOURCE_DIR"
53*14fbe80cSNexwareif [ $? -ne 0 ]; then
54*14fbe80cSNexware    echo "An error occured while configuring ReactOS"
55*14fbe80cSNexware    exit 1
56*14fbe80cSNexwarefi
57c2c66affSColin Finck
58c2c66affSColin Finckecho Configure script complete! Enter directories and execute appropriate build commands \(ex: ninja, make, makex, etc...\).
59