midipix / build / midipix_build

Forked from build/midipix_build 4 years ago
Clone
Blob Blame History Raw
#
# . ./build.vars and set -o errexit are assumed.
#

if ! is_build_script_done install; then
	IFS=""; cat <<EOF > ${PREFIX}/midipix.sh;
#!/bin/sh
#
MIDIPIX_PATH_DEFAULTS="/c/Midipix /z";

if [ "\${1}" = -h ]; then
        echo "usage: \$0 [drive_letter [dirname]]";
        exit 1;
elif [ \${#} -eq 0 ]; then
for MIDIPIX_PATH in \${MIDIPIX_PATH_DEFAULTS}; do
	[ -d /cygdrive\${MIDIPIX_PATH} ] || continue;
	MIDIPIX_DRIVE=\${MIDIPIX_PATH#/};
	MIDIPIX_DRIVE=\${MIDIPIX_DRIVE%%/*};
	MIDIPIX_PNAME=\${MIDIPIX_PATH#/\${MIDIPIX_DRIVE}};
	MIDIPIX_PNAME=\${MIDIPIX_PNAME#/};
	break;
done;
else
	MIDIPIX_DRIVE="\${1}"; MIDIPIX_PNAME="\${2}";
	if [ "\${MIDIPIX_DRIVE#*[ 	]*}" != "\${MIDIPIX_DRIVE}" ]\\
	|| [ "\${MIDIPIX_PNAME#*[ 	]*}" != "\${MIDIPIX_PNAME}" ]; then
		echo "Error: drive_letter/dirname must not contain SP (\\\` ') or VT (\\\`\\\\\t') characters.";
		exit 1;
	fi;
fi;
MIDIPIX_PATH=/\${MIDIPIX_DRIVE}\${MIDIPIX_PNAME:+/\${MIDIPIX_PNAME}};
if [ ! -d /cygdrive\${MIDIPIX_PATH} ]; then
	echo "Error: Midipix path non-existent or invalid (\\\`\${MIDIPIX_PATH}'.)";
	exit 1;
else
	echo "Midipix drive letter.....: \${MIDIPIX_DRIVE}";
	echo "Midipix pathname.........: \${MIDIPIX_PNAME}";
	echo "Absolute Midipix pathname: \${MIDIPIX_PATH}";
	echo --------------------------------------------------------
	echo WARNING: The cygdrive path prefix will be changed to /
	echo whilst the Midipix shell window is running. It will be
	echo reset to its original value of /cygdrive after it exits.
	echo --------------------------------------------------------
	mintty -h always -e /bin/sh -c "
		set -o errexit; stty raw -echo;
		mount --change-cygdrive-prefix /;
		cd \${MIDIPIX_PATH}/native/bin;
		export PATH=\${MIDIPIX_PATH}/native/bin:\${MIDIPIX_PATH}/native/lib;
		./ntctty.exe -e chroot //\${MIDIPIX_PATH#/}/native /bin/bash";
	echo --------------------------------------------------------
	echo Resetting cygdrive path prefix to /.
	echo --------------------------------------------------------
	mount --change-cygdrive-prefix /cygdrive;
fi;
EOF
	chmod +x ${PREFIX}/midipix.sh;
	set_build_script_done install finish;
fi;

# vim:filetype=sh