#!/bin/sh sudo #Pour compiler pensé a installer : qt4, opencv-dev, ... mingw pour la cross-compilation #sous ubuntu : apt-get installe qt4-lib qt4-dev opencv-core opencv-dev mingw64 #sous freebsd faire : pkg install opencv-2.* opencv-core qt4-* #sous windows : voir intall de qt+mingw et télécharger opencv précompiler et ... #seul la plateforme et le compilateur faire: # qmake -r -spec plateforme-compilateur *.pro # make #exemple: plateforme-compilateur freebsd-clang # * = le nom du ficher .pro à généré #full_path cpath=`pwd` CXX= c++ #======================================================================= set_mac_arch() { # First check to see if maci64 is even possible on this hardware if [ "`/usr/sbin/sysctl -n hw.cpu64bit_capable`" = "0" ]; then # maci64 is not possible. So set the arch to maci. ARCH="maci" CXX = "clang++" return fi # Now check to see if maci64 is asked for if [ "$MACI64" = "0" ]; then # only maci is wanted, so arch is maci. ARCH="maci" CXX= "clang++" return fi } # #======================================================================= set_arch(){ if [ -f /bin/uname ]; then case "`/bin/uname`" in Freebsd) # Solaris case "`/bin/uname -p`" in amd64) ARCH="freebsd" CXX="c++" ;; i386) ARCH="freebsd" CXX= "c++" ;; esac ;; Linux) case "`/bin/uname -m`" in i*86) ARCH="linux" CXX="g++" ;; x86_64) ARCH="linux" CXX= "g++" ;; esac ;; # Usually uname lives in /usr/bin on the Mac, but sometimes people # have links in /bin that link uname to /usr/bin. Because of this # Mac needs to be listed in the checks for both /bin/uname and /usr/bin/uname Darwin) # Mac OS X case "`/bin/uname -p`" in i386) set_mac_arch ;; esac ;; *) : ;; esac elif [ -f /usr/bin/uname ]; then case "`/usr/bin/uname`" in Darwin) # Mac OS X case "`/usr/bin/uname -p`" in i386) set_mac_arch ;; esac ;; esac fi return 0; } # #======================================================================= packet_install(){ if[ "$ARCH" == "Ubuntu"] apt-get installe qt4-lib qt4-dev opencv-core opencv-dev mingw64 ;; elif[ "$ARCH" == "Freebsd"] pkg install opencv-2.* opencv-core qt4-* ;; elif[ "$ARCH" == "maci"] install opencv opencv-core qt4 fi return 0; } tp_install(){ thisDir = "`pwd`" list = "tp1_rendu_IM6 tp2_rendu_IM6 tp3_rendu_IM6 tp4_rendu_IM6" for i in list; do qmake -spec $ARCH-$CXX ./$i/*.pro && make && make clean done } help(){ echo "" echo "usage : sh $0 " echo " x : 0 - automatique;" echo " 1 - compilation direct" echo " 2 - exécution de binaire" echo " y: si x=2, numéros du tp a exécuter" } check(){ stat = "Ok" if[["$1" ==""]] stat = "" return fi if[["$1" == "0" | "$1" =="1"] & ["$2" != ""]] stat="" return fi if[["$2" =="1" | "$2" =="2"| "$2" =="3"| "$2" =="4"]] stat = "" return fi } run(){ check() if [$stat ==""] help() exit 1 fi if ["$1" == "0"] packet_install() tp_install() fi }