]> git.lizzy.rs Git - metalua.git/blobdiff - src/make.sh
spelling fixes to the documentation
[metalua.git] / src / make.sh
index 8ea3c8c1218619b4f0b20fe5741ee1b01f0cb6f8..188af3dbd6a1a976892fe4da1a075c74dd8c1445 100755 (executable)
@@ -9,7 +9,7 @@ BASE=${PWD}
 # Upon installation, everything will be moved to ${INSTALL_LIB} and ${INSTALL_BIN}
 
 if [ -z "${BUILD}" ]; then
-  BUILD=/tmp/metalua-build
+  BUILD=$(mkdir -p ../build; cd ../build; pwd)
 fi
 
 if [ -z "${BUILD_BIN}" ]; then
@@ -21,6 +21,7 @@ if [ -z "${BUILD_LIB}" ]; then
 fi
 
 # Where to place the final results
+# DESTDIR=
 # INSTALL_BIN=/usr/local/bin
 # INSTALL_LIB=/usr/local/lib/lua/5.1
 if [ -z "${INSTALL_BIN}" ]; then
@@ -38,6 +39,12 @@ LUAC=$(which luac)
 
 # --- END OF USER-EDITABLE PART ---
 
+if [ -z ${LUA}  ] ; then echo "Error: no lua interpreter found"; fi
+if [ -z ${LUAC} ] ; then echo "Error: no lua compiler found"; fi
+
+if [ -f ~/.metaluabuildrc ] ; then . ~/.metaluabuildrc; fi
+
+if [ -z "$LINEREADER" ] && which -s rlwrap; then LINEREADER=rlwrap; fi
 
 echo '*** Lua paths setup ***'
 
@@ -48,8 +55,8 @@ echo '*** Create the distribution directories, populate them with lib sources **
 
 mkdir -p ${BUILD_BIN}
 mkdir -p ${BUILD_LIB}
-cp -R lib/* ${BUILD_LIB}/
-# cp -R bin/* ${BUILD_BIN}/ # No binaries provided for unix (for now)
+cp -Rp lib/* ${BUILD_LIB}/
+# cp -Rp bin/* ${BUILD_BIN}/ # No binaries provided for unix (for now)
 
 echo '*** Generate a callable metalua shell script ***'
 
@@ -95,18 +102,24 @@ cat > make-install.sh <<EOF2
 #!/bin/sh
 mkdir -p ${INSTALL_BIN}
 mkdir -p ${INSTALL_LIB}
-
-cat > ${INSTALL_BIN}/metalua <<EOF
+if [ -n "${DESTDIR}" ]; then
+    mkdir -p ${DESTDIR}${INSTALL_BIN}
+    mkdir -p ${DESTDIR}${INSTALL_LIB}
+fi
+cat > ${DESTDIR}${INSTALL_BIN}/metalua <<EOF
 #!/bin/sh
 METALUA_LIB=${INSTALL_LIB}
 export LUA_PATH="?.luac;?.lua;\\\${METALUA_LIB}/?.luac;\\\${METALUA_LIB}/?.lua"
 export LUA_MPATH="?.mlua;\\\${METALUA_LIB}/?.mlua"
-${LUA} \\\${METALUA_LIB}/metalua.luac "\\\$@"
+exec ${LINEREADER} ${LUA} \\\${METALUA_LIB}/metalua.luac "\\\$@"
 EOF
 
-chmod a+x ${INSTALL_BIN}/metalua
+chmod a+x ${DESTDIR}${INSTALL_BIN}/metalua
+
+cp -pR ${BUILD_LIB}/* ${DESTDIR}${INSTALL_LIB}/
 
-cp -R ${BUILD_LIB}/* ${INSTALL_LIB}/
+echo "metalua libs installed in ${INSTALL_LIB};"
+echo "metalua executable in ${INSTALL_BIN}."
 EOF2
 chmod a+x make-install.sh