##!/bin/sh if [ "$1" = "-h" -o "$1" = "--help" -o "$1" = "-help" ]; then echo "** valid options:" echo " --use_xim=N : disable the support of XIM, exec size is 50k smaller" echo " --prefix=dir_name : install prefix(e.g. /usr)" echo " --new_gtk_im=Y/N : enable/disable new gtk im module for firefox 1.5 over-the-spot" echo " --use_tray=N : disable the support of system tray, exec size is 12k smaller" echo " --use_i18n=Y : enable i18n" echo " --use_tsin=N : disable Tsin input method" exit fi MAKE=make which gmake > /dev/null if [ $? = 0 ]; then MAKE=gmake fi FREEBSD=0 uname | grep FreeBSD > /dev/null if [ $? = 0 ]; then FREEBSD=1 fi SO_FLAGS="-shared" MAC_OS=0 uname | grep Darwin > /dev/null if [ $? = 0 ]; then FREEBSD=1 MAC_OS=1 SO_FLAGS="-dynamic -bundle -undefined suppress -flat_namespace" fi prefix="/usr/local" use_xim='Y' #new_gtk_im='N' new_gtk_im='Y' use_tray='Y' use_i18n='N' use_tsin='Y' if [ "$GCIN_USE_XIM" ]; then use_xim=$GCIN_USE_XIM fi for opt do case "$opt" in --prefix=*) prefix=`echo $opt | cut -d '=' -f 2` ;; --use_xim=*) use_xim=`echo $opt | cut -d '=' -f 2` ;; --new_gtk_im=*) new_gtk_im=`echo $opt | cut -d '=' -f 2` ;; --use_tray=*) use_tray=`echo $opt | cut -d '=' -f 2` ;; --use_i18n=*) use_i18n=`echo $opt | cut -d '=' -f 2` ;; --use_tsin=*) use_tsin=`echo $opt | cut -d '=' -f 2` ;; esac done echo "prefix: $prefix" GTK=gtk+-2.0 echo -n ".... Testing $GTK : " GTKINC=`pkg-config --cflags $GTK` if [ $? != 0 ]; then echo "$GTK or above required --cflags" rm -f config.mak exit -1; fi ## problem in MacOS, by candyz if [ $MAC_OS = 1 ]; then GTKINC="-I/sw/include `pkg-config --cflags $GTK`" fi if [ ! -x /bin/bash ]; then for i in /usr/bin/bash /usr/local/bin/bash do [ -x $i ] || next echo "/bin/bash -> $i" for i in scripts/* do sed -e "s~/bin/bash~$i~" < $i > $i.tmp mv $i.tmp $i done done fi GTKLDFLAGS=`pkg-config --libs $GTK` if [ $? != 0 ]; then echo "$GTK or above required --libs" echo "please install rpm/package libgtk+2.0_0-devel" rm -f config.mak exit -1; else echo " found." fi LIB='lib' if [ -d /lib64 ]; then LIB='lib64' fi QT_IM='N' for i in qt3 qt4 do QT_IM_DIR=$prefix/lib/$i/plugins/$LIB/inputmethods echo "testing if you have QT_IM_MODULE dir:$QT_IM_DIR support" if [ -d $QT_IM_DIR ]; then QT_IM='Y' QT=$i break fi done if [ $QT_IM = "Y" ]; then echo "-> Yes, you have QT_IM_MODULE $QT_IM_DIR support" else echo "-> No, you don't have" fi bindir=$prefix/bin datadir=$prefix/share mandir=$prefix/man libdir=$prefix/$LIB includedir=$prefix/include optdir=/opt GCIN_VERSION=`cat VERSION.gcin` sed -e "s/__gcin_version__/$GCIN_VERSION/" < gcin.spec.in > gcin.spec if [ $QT_IM = 'N' ]; then mv gcin.spec gcin.spec.tmp grep -v qt3/plugins/inputmethods gcin.spec.tmp > gcin.spec fi OPTFLAGS="-g" if [ $prefix = /usr ]; then OPTFLAGS="-O" fi echo "CC=$CC" > config.mak echo "MAKE=$MAKE" >> config.mak echo "GTKINC=$GTKINC" >> config.mak echo "prefix=$prefix" >> config.mak echo "bindir=\$(DESTDIR)$bindir" >> config.mak echo "mandir=\$(DESTDIR)$mandir" >> config.mak echo "man1dir=\$(mandir)/man1" >> config.mak echo "bindir_r=$bindir" >> config.mak echo "datadir=\$(DESTDIR)$datadir" >> config.mak echo "datadir_r=$datadir" >> config.mak echo "libdir=\$(DESTDIR)$libdir" >> config.mak echo "gcinlibdir=\$(libdir)" >> config.mak echo "includedir=\$(DESTDIR)$includedir" >> config.mak echo "LDFLAGS=$GTKLDFLAGS" >> config.mak echo "GCIN_VERSION=$GCIN_VERSION" >> config.mak echo "GCIN_TABLE_DIR=\$(datadir_r)/gcin/table" >> config.mak echo "GCIN_OGG_DIR=\$(datadir_r)/gcin/ogg" >> config.mak echo "GCIN_TABLE_DIR_i=\$(datadir)/gcin/table" >> config.mak echo "GCIN_SCRIPT_DIR=\$(datadir_r)/gcin/script" >> config.mak echo "GCIN_SCRIPT_DIR_i=\$(datadir)/gcin/script" >> config.mak echo "OPTFLAGS=$OPTFLAGS" >> config.mak echo "DOC_DIR=\$(datadir_r)/doc/gcin" >> config.mak echo "DOC_DIR_i=\$(datadir)/doc/gcin" >> config.mak echo "GCIN_ICON_DIR=\$(datadir_r)/icons/gcin" >> config.mak echo "SYS_ICON_DIR=\$(datadir_r)/icons" >> config.mak echo "GCIN_ICON_DIR_i=\$(datadir)/icons/gcin" >> config.mak echo "GCIN_BIN_DIR=\$(bindir_r)" >> config.mak echo "FREEBSD=$FREEBSD" >> config.mak echo "QT_IM=$QT_IM" >> config.mak echo "QT=$QT" >> config.mak echo "USE_XIM=$use_xim" >> config.mak echo "GCIN_SETUP_DESKTOP=$GCIN_SETUP_DESKTOP" >> config.mak echo "GCIN_SETUP_DESKTOP_rpm=$GCIN_SETUP_DESKTOP_rpm" >> config.mak echo "NEW_GTK_IM=$new_gtk_im" >> config.mak echo "LIB=$LIB" >> config.mak echo "MAC_OS=$MAC_OS" >> config.mak echo "SO_FLAGS=$SO_FLAGS" >> config.mak echo "USE_TRAY=$use_tray" >> config.mak echo "USE_I18N=$use_i18n" >> config.mak echo "USE_TSIN=$use_tsin" >> config.mak cd menu for i in *.in do outf=`echo $i | sed -e "s/\.in//"` # echo $outf if [ $bindir = /usr/bin ]; then sed -e "s~/usr/local/bin~/usr/bin~" < $i > $outf else cp $i $outf fi done