From 0268dcdd1034ff44fe646b603f0aa5ea5a6379e4 Mon Sep 17 00:00:00 2001 From: Wen-Yen Chuang Date: Sun, 18 Dec 2011 13:09:02 +0800 Subject: [PATCH] letoh: Big landing from letoh branch --- Makefile | 45 ++++ configure | 12 +- data/Makefile | 60 +++-- data/extr1.c | 2 +- data/t2s-file.c | 4 +- distro/debian/changelog | 5 + distro/debian/ckqt.sh | 20 ++ distro/debian/compat | 1 + distro/debian/control | 24 ++ distro/debian/gen-deb | 193 +-------------- distro/debian/hime.immodules | 1 + distro/debian/im-switch/hime | 15 ++ distro/debian/install | 4 + distro/debian/links | 5 + distro/debian/postinst | 32 +++ distro/debian/prerm | 28 +++ distro/debian/rules | 18 ++ distro/fedora/Makefile | 14 ++ distro/fedora/hime-fedora.spec.in | 2 +- icons/Makefile | 7 + man/Makefile | 9 +- menu/Makefile | 5 +- scripts/Makefile | 5 +- src/IMdkit/Makefile | 2 +- src/IMdkit/lib/Makefile | 2 +- src/Makefile | 397 +++++++++++++++++------------- src/gtk-im/Makefile | 24 +- src/gtk3-im/Makefile | 24 +- src/im-client/Makefile | 41 +-- src/modules/Makefile | 14 +- src/qt-im/Makefile | 18 +- src/qt4-im/Makefile | 25 +- src/suffixes-rule | 18 +- 33 files changed, 625 insertions(+), 451 deletions(-) create mode 100644 Makefile create mode 100644 distro/debian/changelog create mode 100644 distro/debian/ckqt.sh create mode 100644 distro/debian/compat create mode 100644 distro/debian/control create mode 100644 distro/debian/hime.immodules create mode 100644 distro/debian/im-switch/hime create mode 100644 distro/debian/install create mode 100644 distro/debian/links create mode 100644 distro/debian/postinst create mode 100644 distro/debian/prerm create mode 100644 distro/debian/rules create mode 100644 distro/fedora/Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 00000000..542e8d81 --- /dev/null +++ b/Makefile @@ -0,0 +1,45 @@ +include config.mak + +VERSION_FILE = VERSION.hime + +DIR = src data scripts icons man menu + +ifeq ($(USE_I18N),Y) +DIR += po +endif + + +all: + @for d in $(DIR); do echo -e "\x1b[1;33m** processing $$d\x1b[0m"; \ + $(MAKE) -C $$d; \ + done + +install: + @for d in $(DIR); do echo -e "\x1b[1;32m** installing $$d\x1b[0m"; \ + $(MAKE) -C $$d install; \ + done + @if [ $(prefix) = /usr/local ]; then \ + install -m 644 icons/hime.png /usr/share/pixmaps; \ + install -d $(DOC_DIR); \ + install -m 644 README.html ChangeLog $(DOC_DIR); \ + else \ + install -d $(DOC_DIR_i); \ + install -m 644 README.html ChangeLog $(DOC_DIR_i); \ + fi + +clean: + @touch src/.depend + @for d in $(DIR); do echo -e "\x1b[1;31m** cleanup $$d\x1b[0m"; \ + $(MAKE) -C $$d clean; \ + done + +distclean: + @$(MAKE) clean + @rm -f config.mak + +config.mak: $(VERSION_FILE) configure + @echo "regenerate $@ ..." + ./configure + + + diff --git a/configure b/configure index 5b5a5bff..a1394d98 100755 --- a/configure +++ b/configure @@ -349,7 +349,7 @@ if [ -z $CC ]; then fi echo "CC=$CC" > config.mak -echo "CCX=$CC -x c" >> config.mak +echo "CCX=$CC" >> config.mak echo "CXX=$CC" >> config.mak echo "CCLD=$CC" >> config.mak echo "MAKE=$MAKE" >> config.mak @@ -399,11 +399,11 @@ echo "USE_ANTHY=$USE_ANTHY" >> config.mak echo "USE_CHEWING=$USE_CHEWING" >> config.mak echo "BUILD_MODULE=$BUILD_MODULE" >> config.mak -if [ $prefix = /usr/local ]; then - echo "hime_ld_run_path=$PWD:\$(himelibdir)" >> config.mak - echo "HIME_DEBUG=${HIME_DEBUG}" >> config.mak -else +#if [ $prefix = /usr/local ]; then +# echo "hime_ld_run_path=$PWD:\$(himelibdir)" >> config.mak +# echo "HIME_DEBUG=${HIME_DEBUG}" >> config.mak +#else echo "hime_ld_run_path=\$(himelibdir)" >> config.mak -fi +#fi echo "gcc_ld_run_path=-Wl,-rpath,\$(hime_ld_run_path)" >> config.mak diff --git a/data/Makefile b/data/Makefile index d70a727e..58961b97 100644 --- a/data/Makefile +++ b/data/Makefile @@ -1,7 +1,10 @@ include ../config.mak +SRC_DIR = ../src +IM_CLIENT_DIR = ../src/im-client + .SUFFIXES: .kbmsrc .kbm .cin .gtab -CFLAGS= -DUNIX=1 $(WALL) $(OPTFLAGS) $(GTKINC) -I.. +CFLAGS= -DUNIX=1 $(WALL) $(OPTFLAGS) $(GTKINC) -I$(SRC_DIR) export NO_GTK_INIT= export HIME_NO_RELOAD= @@ -13,57 +16,68 @@ DATA=pho.tab2 tsin32.idx NewCJ3.gtab \ t2s.dat s2t.dat cj543.gtab s-tsin32 s-tsin32.idx s-pho.tab2 s-pho-huge.tab2 \ pinyin-no-tone.kbm simplex-punc.gtab hangul.gtab -DATAKEEP=symbol-table gtab.list phrase.table phrase-ctrl.table +DATAKEEP = symbol-table gtab.list phrase.table phrase-ctrl.table + +PHO_A2D = ../src/hime-phoa2d +TS_A2D = ../src/hime-tsa2d32 +CIN2GTAB = ../src/cin2gtab +KBMCV = ../src/kbmcv +PIN_JUYIN = ../src/pin-juyin + all: $(DATA) -tsin32: tsin.src ../hime-tsa2d32 - export LD_LIBRARY_PATH=../im-client;../hime-tsa2d32 $< +tsin32: tsin.src $(TS_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(TS_A2D) $< tsin32.idx: tsin32 -s-tsin32: s-tsin.src ../hime-tsa2d32 - export LD_LIBRARY_PATH=../im-client;../hime-tsa2d32 $< $@ +s-tsin32: s-tsin.src $(TS_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(TS_A2D) $< $@ s-tsin32.idx: s-tsin32 -pho.tab2: pho.tab2.src ../hime-phoa2d - export LD_LIBRARY_PATH=../im-client;../hime-phoa2d $< +pho.tab2: pho.tab2.src $(PHO_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(PHO_A2D) $< -s-pho.tab2: s-pho.tab2.src ../hime-phoa2d - export LD_LIBRARY_PATH=../im-client;../hime-phoa2d $< +s-pho.tab2: s-pho.tab2.src $(PHO_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(PHO_A2D) $< -pho-huge.tab2: pho-huge.tab2.src ../hime-phoa2d - export LD_LIBRARY_PATH=../im-client;../hime-phoa2d $< +pho-huge.tab2: pho-huge.tab2.src $(PHO_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(PHO_A2D) $< -s-pho-huge.tab2: s-pho-huge.tab2.src ../hime-phoa2d - export LD_LIBRARY_PATH=../im-client;../hime-phoa2d $< +s-pho-huge.tab2: s-pho-huge.tab2.src $(PHO_A2D) + export LD_LIBRARY_PATH=$(IM_CLIENT_DIR); $(PHO_A2D) $< t2s.dat: t2s-file t2s-file.table ./t2s-file s2t.dat: t2s-file -pin-juyin.xlt: ../pin-juyin pin-juyin.src - ../pin-juyin +pin-juyin.xlt: $(PIN_JUYIN) pin-juyin.src + $(PIN_JUYIN) extr1: extr1.c - $(CC) $(CFLAGS) $< ../util.o ../locale.o -o $@ $(LDFLAGS) + @echo "building $@ ..." + @$(CC) $(CFLAGS) $< $(SRC_DIR)/util.o $(SRC_DIR)/locale.o -o $@ $(LDFLAGS) t2s-file: t2s-file.c - $(CC) $(CFLAGS) $< ../util.o ../locale.o -o $@ $(LDFLAGS) + @echo "building $@ ..." + @$(CC) $(CFLAGS) $< $(SRC_DIR)/util.o $(SRC_DIR)/locale.o -o $@ $(LDFLAGS) tsin-1.src: extr1 ./extr1 > $@ -.cin.gtab: ../cin2gtab - ../cin2gtab $< +.cin.gtab: $(CIN2GTAB) + $(CIN2GTAB) $< -.kbmsrc.kbm: ../kbmcv - ../kbmcv $< +.kbmsrc.kbm: $(KBMCV) + $(KBMCV) $< install: install -d $(HIME_TABLE_DIR_i) install -m 644 $(DATA) $(DATAKEEP) $(HIME_TABLE_DIR_i) # cd $(HIME_TABLE_DIR_i); bzip2 -f *.gtab + clean: - rm -f *~ tags core.* $(DATA) *.gtab extr1 t2s-file tsin-1.src tsin-gtabidx* tsin-ch-idx + @echo "clean up" + @rm -f *~ tags core.* $(DATA) *.gtab extr1 t2s-file tsin-1.src tsin-gtabidx* tsin-ch-idx diff --git a/data/extr1.c b/data/extr1.c index 8a3a1a9a..fc4c8948 100644 --- a/data/extr1.c +++ b/data/extr1.c @@ -17,7 +17,7 @@ #include #include -#include "../util.h" +#include "util.h" int utf8_str_N(char *str); diff --git a/data/t2s-file.c b/data/t2s-file.c index 927e18eb..ae24d159 100644 --- a/data/t2s-file.c +++ b/data/t2s-file.c @@ -19,8 +19,8 @@ #include #include #include -#include "../t2s-file.h" -#include "../util.h" +#include "t2s-file.h" +#include "util.h" T2S t2s[3000],s2t[3000]; int t2sn; diff --git a/distro/debian/changelog b/distro/debian/changelog new file mode 100644 index 00000000..0213f37c --- /dev/null +++ b/distro/debian/changelog @@ -0,0 +1,5 @@ +hime (9-9) experimental; urgency=low + + * New snapshot. + + -- Kan-Ru Chen Mon, 28 Feb 2011 18:07:18 +0800 diff --git a/distro/debian/ckqt.sh b/distro/debian/ckqt.sh new file mode 100644 index 00000000..37969d27 --- /dev/null +++ b/distro/debian/ckqt.sh @@ -0,0 +1,20 @@ +#!/bin/sh +[ ! -e debian/hime/usr/lib/qt4/plugins/inputmethods/im-hime.so ] && sed -i 's/, hime-qt4-immodule//' debian/hime/DEBIAN/control +[ ! -e debian/hime/usr/lib/qt3/plugins/inputmethods/im-hime.so ] && sed -i 's/, hime-qt3-immodule//' debian/hime/DEBIAN/control +[ ! -e debian/hime/usr/lib/hime/chewing-module.so ] && sed -i 's/, libchewing3//' debian/hime/DEBIAN/control +if [ ! -e debian/hime/usr/lib/hime/anthy-module.so ]; then + grep -v 'Suggests: kasumi' debian/hime/DEBIAN/control | sed 's/, anthy//' > debian/hime/DEBIAN/control.in + mv debian/hime/DEBIAN/control.in debian/hime/DEBIAN/control +fi +if [ -d debian/hime/usr/lib/gtk-3.0/immodules ]; then + mkdir -p debian/hime/usr/lib/gtk-3.0/3.0.0 + mv debian/hime/usr/lib/gtk-3.0/immodules debian/hime/usr/lib/gtk-3.0/3.0.0/ +fi +mkdir -p debian/hime/usr/lib/gtk-2.0/2.10.0 +mv debian/hime/usr/lib/gtk-2.0/immodules debian/hime/usr/lib/gtk-2.0/2.10.0/ +if [ -x /usr/lib/libgtk2.0-0/gtk-query-immodules-2.0 ]; then + /usr/lib/libgtk2.0-0/gtk-query-immodules-2.0 debian/hime/usr/lib/gtk-2.0/2.10.0/immodules/im-hime.so | grep hime | tail -n 1 >> debian/hime/usr/lib/gtk-2.0/2.10.0/immodule-files.d/hime.immodules +else + rm -fr debian/hime/usr/lib/gtk-2.0/2.10.0/immodule-files.d +fi +true diff --git a/distro/debian/compat b/distro/debian/compat new file mode 100644 index 00000000..7f8f011e --- /dev/null +++ b/distro/debian/compat @@ -0,0 +1 @@ +7 diff --git a/distro/debian/control b/distro/debian/control new file mode 100644 index 00000000..8eba60aa --- /dev/null +++ b/distro/debian/control @@ -0,0 +1,24 @@ +Source: hime +Section: utils +Priority: optional +Maintainer: Kan-Ru Chen +Build-Depends: debhelper (>= 7.0.50~), libgtk2.0-dev (>= 2.10.0), libxtst-dev, dpkg | libgtk-3-dev | libqt4-dev | libqt3-mt-dev | libanthy-dev | libchewing3-dev +Standards-Version: 3.9.1 + +Package: hime +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: im-switch | im-config, anthy, libchewing3 +Suggests: kasumi +Conflicts: hime-dev, hime-qt4-immodule, hime-qt3-immodule +Replaces: hime-dev, hime-qt4-immodule, hime-qt3-immodule +Provides: hime-dev, hime-qt4-immodule, hime-qt3-immodule +Description: an GTK+ based input method platform for Chinese users + Hime is an input method platform, which supports GTK+/QT immodule and XIM. + Hime is focused mainly on Traditional Chinese. However, it is also very useful + for Simplified Chinese, Japanese, and many other languages. + . + Input method table format of hime is almost as same as those of xcin and scim. + . + This package contains an GTK+ immodule. If you want to use QT immodule, please + install hime-qt3-immodule package. diff --git a/distro/debian/gen-deb b/distro/debian/gen-deb index b8a368bc..2287a334 100644 --- a/distro/debian/gen-deb +++ b/distro/debian/gen-deb @@ -1,193 +1,6 @@ #!/bin/sh +[ ! -e distro/debian ] && exec echo Please execute '"distro/debian/gen-deb"' under hime directory, thanks. rm -fr debian -patch -p1 < $0 -chmod 755 debian/rules +cp -r distro/debian . sed -i "s#9-9#`cat VERSION.hime | sed -e 's/.pre/~pre/' -e 's/$/-0/' -e 's/UNRELEASED/0UNRELEASED/'`#" debian/changelog -exec dpkg-buildpackage -b ---- a/debian/changelog -+++ b/debian/changelog -@@ -0,0 +1,5 @@ -+hime (9-9) experimental; urgency=low -+ -+ * New snapshot. -+ -+ -- Kan-Ru Chen Mon, 28 Feb 2011 18:07:18 +0800 ---- a/debian/ckqt.sh -+++ b/debian/ckqt.sh -@@ -0,0 +1,16 @@ -+#!/bin/sh -+[ ! -e debian/hime/usr/lib/qt4/plugins/inputmethods/im-hime.so ] && sed -i 's/, hime-qt4-immodule//' debian/hime/DEBIAN/control -+[ ! -e debian/hime/usr/lib/qt3/plugins/inputmethods/im-hime.so ] && sed -i 's/, hime-qt3-immodule//' debian/hime/DEBIAN/control -+[ ! -e debian/hime/usr/lib/hime/chewing-module.so ] && sed -i 's/, libchewing3//' debian/hime/DEBIAN/control -+if [ ! -e debian/hime/usr/lib/hime/anthy-module.so ]; then -+ grep -v 'Suggests: kasumi' debian/hime/DEBIAN/control | sed 's/, anthy//' > debian/hime/DEBIAN/control.in -+ mv debian/hime/DEBIAN/control.in debian/hime/DEBIAN/control -+fi -+if [ -d debian/hime/usr/lib/gtk-3.0/immodules ]; then -+ mkdir -p debian/hime/usr/lib/gtk-3.0/3.0.0 -+ mv debian/hime/usr/lib/gtk-3.0/immodules debian/hime/usr/lib/gtk-3.0/3.0.0/ -+fi -+mkdir -p debian/hime/usr/lib/gtk-2.0/2.10.0 -+mv debian/hime/usr/lib/gtk-2.0/immodules debian/hime/usr/lib/gtk-2.0/2.10.0/ -+/usr/lib/libgtk2.0-0/gtk-query-immodules-2.0 debian/hime/usr/lib/gtk-2.0/2.10.0/immodules/im-hime.so | grep hime | tail -n 1 >> debian/hime/usr/lib/gtk-2.0/2.10.0/immodule-files.d/hime.immodules -+true ---- a/debian/compat -+++ b/debian/compat -@@ -0,0 +1 @@ -+7 ---- a/debian/control -+++ b/debian/control -@@ -0,0 +1,24 @@ -+Source: hime -+Section: utils -+Priority: optional -+Maintainer: Kan-Ru Chen -+Build-Depends: debhelper (>= 7.0.50~), libgtk2.0-dev (>= 2.10.0), libxtst-dev, dpkg | libgtk-3-dev | libqt4-dev | libqt3-mt-dev | libanthy-dev | libchewing3-dev -+Standards-Version: 3.9.1 -+ -+Package: hime -+Architecture: any -+Depends: ${shlibs:Depends}, ${misc:Depends} -+Recommends: im-switch | im-config, anthy, libchewing3 -+Suggests: kasumi -+Conflicts: hime-dev, hime-qt4-immodule, hime-qt3-immodule -+Replaces: hime-dev, hime-qt4-immodule, hime-qt3-immodule -+Provides: hime-dev, hime-qt4-immodule, hime-qt3-immodule -+Description: an GTK+ based input method platform for Chinese users -+ Hime is an input method platform, which supports GTK+/QT immodule and XIM. -+ Hime is focused mainly on Traditional Chinese. However, it is also very useful -+ for Simplified Chinese, Japanese, and many other languages. -+ . -+ Input method table format of hime is almost as same as those of xcin and scim. -+ . -+ This package contains an GTK+ immodule. If you want to use QT immodule, please -+ install hime-qt3-immodule package. ---- a/debian/hime.immodules -+++ b/debian/hime.immodules -@@ -0,0 +1 @@ -+"/usr/lib/gtk-2.0/2.10.0/immodules/im-hime.so" ---- a/debian/im-switch/hime -+++ b/debian/im-switch/hime -@@ -0,0 +1,15 @@ -+XIM=hime -+XIM_PROGRAM=/usr/bin/hime -+XIM_ARGS= -+GTK_IM_MODULE=hime -+if [ ! -e /usr/lib/qt3/plugins/inputmethods/im-hime.so ]; then -+ QT_IM_MODULE=xim -+else -+ QT_IM_MODULE=hime -+fi -+if [ ! -e /usr/lib/qt4/plugins/inputmethods/im-hime.so ]; then -+ QT4_IM_MODULE=xim -+else -+ QT4_IM_MODULE=hime -+fi -+DEPENDS= ---- a/debian/install -+++ b/debian/install -@@ -0,0 +1,4 @@ -+im-client/hime-im-client.h usr/include -+im-client/hime-im-client-attr.h usr/include -+debian/im-switch/hime etc/X11/xinit/xinput.d -+debian/hime.immodules usr/lib/gtk-2.0/2.10.0/immodule-files.d ---- a/debian/links -+++ b/debian/links -@@ -0,0 +1,5 @@ -+usr/share/man/man1/hime-phoa2d.1.gz usr/share/man/man1/hime-phod2a.1.gz -+usr/share/man/man1/hime-sim2trad.1.gz usr/share/man/man1/hime-trad2sim.1.gz -+usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsd2a.1.gz -+usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsd2a32.1.gz -+usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsin2gtab-phrase.1.gz ---- a/debian/postinst -+++ b/debian/postinst -@@ -0,0 +1,32 @@ -+#!/bin/sh -+# postinst script for hime -+ -+set -e -+ -+ua_inst () { -+ update-alternatives \ -+ --install /etc/X11/xinit/xinput.d/$1 xinput-$1 \ -+ /etc/X11/xinit/xinput.d/$2 $3 ; -+} -+ -+case "$1" in -+ configure) -+ # Set up default -+ ua_inst all_ALL hime 0 -+ ua_inst zh_CN hime 30 -+ ua_inst zh_TW hime 50 -+ ;; -+ -+ abort-upgrade|abort-remove|abort-deconfigure) -+ -+ ;; -+ -+ *) -+ echo "postinst called with unknown argument \`$1'" >&2 -+ exit 1 -+ ;; -+esac -+ -+#DEBHELPER# -+ -+exit 0 ---- a/debian/prerm -+++ b/debian/prerm -@@ -0,0 +1,28 @@ -+#!/bin/sh -+# prerm script for hime -+ -+set -e -+ -+ua_remove () { -+ update-alternatives \ -+ --remove xinput-$1 \ -+ /etc/X11/xinit/xinput.d/$2 ; -+} -+ -+case "$1" in -+ remove|upgrade|deconfigure) -+ ua_remove all_ALL hime -+ ua_remove zh_CN hime -+ ua_remove zh_TW hime -+ ;; -+ failed-upgrade) -+ ;; -+ *) -+ echo "prerm called with unknown argument \`$1'" >&2 -+ exit 1 -+ ;; -+esac -+ -+#DEBHELPER# -+ -+exit 0 ---- a/debian/rules -+++ b/debian/rules -@@ -0,0 +1,23 @@ -+#!/usr/bin/make -f -+%: -+ dh $@ -+ -+override_dh_auto_configure: -+ sed -i 's~/usr/lib/~/usr/share/~' qt-im/Makefile -+ sed -i 's~/usr/$$(LIB)/~/usr/share/~' qt4-im/Makefile -+ sed -i 's~lib64~lib64foo~' configure -+ ./configure --prefix=/usr --use_i18n=Y --use_qt3=Y --qt3-moc-path=/usr/share/qt3/bin/moc --qt4-moc-path=/usr/share/qt4/bin/moc -+ -+override_dh_auto_clean: -+ $(MAKE) clean -+ sed -i 's~/usr/share/~/usr/lib/~' qt-im/Makefile -+ sed -i 's~/usr/share/~/usr/$$(LIB)/~' qt4-im/Makefile -+ sed -i 's~lib64foo~lib64~' configure -+ dh_clean -+ -+override_dh_shlibdeps: -+ dh_shlibdeps --exclude=im-hime.so --exclude=anthy-module.so --exclude=chewing-module.so -+ -+override_dh_gencontrol: -+ dh_gencontrol -+ sh debian/ckqt.sh +dpkg-buildpackage -b diff --git a/distro/debian/hime.immodules b/distro/debian/hime.immodules new file mode 100644 index 00000000..b571b486 --- /dev/null +++ b/distro/debian/hime.immodules @@ -0,0 +1 @@ +"/usr/lib/gtk-2.0/2.10.0/immodules/im-hime.so" diff --git a/distro/debian/im-switch/hime b/distro/debian/im-switch/hime new file mode 100644 index 00000000..32fff8d2 --- /dev/null +++ b/distro/debian/im-switch/hime @@ -0,0 +1,15 @@ +XIM=hime +XIM_PROGRAM=/usr/bin/hime +XIM_ARGS= +GTK_IM_MODULE=hime +if [ ! -e /usr/lib/qt3/plugins/inputmethods/im-hime.so ]; then + QT_IM_MODULE=xim +else + QT_IM_MODULE=hime +fi +if [ ! -e /usr/lib/qt4/plugins/inputmethods/im-hime.so ]; then + QT4_IM_MODULE=xim +else + QT4_IM_MODULE=hime +fi +DEPENDS= diff --git a/distro/debian/install b/distro/debian/install new file mode 100644 index 00000000..ecae3ecb --- /dev/null +++ b/distro/debian/install @@ -0,0 +1,4 @@ +src/im-client/hime-im-client.h usr/include +src/im-client/hime-im-client-attr.h usr/include +debian/im-switch/hime etc/X11/xinit/xinput.d +debian/hime.immodules usr/lib/gtk-2.0/2.10.0/immodule-files.d diff --git a/distro/debian/links b/distro/debian/links new file mode 100644 index 00000000..14114a78 --- /dev/null +++ b/distro/debian/links @@ -0,0 +1,5 @@ +usr/share/man/man1/hime-phoa2d.1.gz usr/share/man/man1/hime-phod2a.1.gz +usr/share/man/man1/hime-sim2trad.1.gz usr/share/man/man1/hime-trad2sim.1.gz +usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsd2a.1.gz +usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsd2a32.1.gz +usr/share/man/man1/hime-tsa2d32.1.gz usr/share/man/man1/hime-tsin2gtab-phrase.1.gz diff --git a/distro/debian/postinst b/distro/debian/postinst new file mode 100644 index 00000000..b33b964f --- /dev/null +++ b/distro/debian/postinst @@ -0,0 +1,32 @@ +#!/bin/sh +# postinst script for hime + +set -e + +ua_inst () { + update-alternatives \ + --install /etc/X11/xinit/xinput.d/$1 xinput-$1 \ + /etc/X11/xinit/xinput.d/$2 $3 ; +} + +case "$1" in + configure) + # Set up default + ua_inst all_ALL hime 0 + ua_inst zh_CN hime 30 + ua_inst zh_TW hime 50 + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/distro/debian/prerm b/distro/debian/prerm new file mode 100644 index 00000000..462a8e2b --- /dev/null +++ b/distro/debian/prerm @@ -0,0 +1,28 @@ +#!/bin/sh +# prerm script for hime + +set -e + +ua_remove () { + update-alternatives \ + --remove xinput-$1 \ + /etc/X11/xinit/xinput.d/$2 ; +} + +case "$1" in + remove|upgrade|deconfigure) + ua_remove all_ALL hime + ua_remove zh_CN hime + ua_remove zh_TW hime + ;; + failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/distro/debian/rules b/distro/debian/rules new file mode 100644 index 00000000..8fc31b8b --- /dev/null +++ b/distro/debian/rules @@ -0,0 +1,18 @@ +#!/usr/bin/make -f +%: + dh $@ + +override_dh_auto_configure: + sed -i 's~lib64~lib64foo~' configure + dh_auto_configure -- --prefix=/usr --use_qt3=Y --qt3-moc-path=/usr/share/qt3/bin/moc --qt4-moc-path=/usr/share/qt4/bin/moc + +override_dh_auto_clean: + sed -i 's~lib64foo~lib64~' configure + dh_auto_clean + +override_dh_shlibdeps: + dh_shlibdeps --exclude=im-hime.so --exclude=anthy-module.so --exclude=chewing-module.so + +override_dh_gencontrol: + dh_gencontrol + sh debian/ckqt.sh diff --git a/distro/fedora/Makefile b/distro/fedora/Makefile new file mode 100644 index 00000000..db07d278 --- /dev/null +++ b/distro/fedora/Makefile @@ -0,0 +1,14 @@ +SPEC = hime-fedora.spec +VERSION_FILE = ../../VERSION.hime + + +all: $(SPEC) + +hime-fedora.spec: hime-fedora.spec.in $(VERSION_FILE) + @echo "building $@ ..." + @rm -f $@ + @sed -e "s/__hime_version__/`cat $(VERSION_FILE)`/" < $< > $@ + +clean: + @rm -f $(SPEC) + diff --git a/distro/fedora/hime-fedora.spec.in b/distro/fedora/hime-fedora.spec.in index e58ac3e1..6aebbd88 100644 --- a/distro/fedora/hime-fedora.spec.in +++ b/distro/fedora/hime-fedora.spec.in @@ -108,7 +108,7 @@ if [ $1 -eq 0 ]; then fi %files -%doc AUTHORS gpl-2.0.txt lgpl-2.1.txt ChangeLog README.html +%doc AUTHORS gpl-2.0.txt lgpl-2.1.txt fdl-1.2.txt ChangeLog README.html %config %{_sysconfdir}/X11/xinit/xinput.d/hime.conf %{_bindir}/hime* %{_bindir}/gtab* diff --git a/icons/Makefile b/icons/Makefile index d31b0391..f211ca4a 100644 --- a/icons/Makefile +++ b/icons/Makefile @@ -1,5 +1,12 @@ include ../config.mak +all: + install: + install -d $(datadir)/pixmaps + install -m 644 hime.png $(datadir)/pixmaps install -d $(HIME_ICON_DIR_i) install -m 644 30x30/*.png $(HIME_ICON_DIR_i) + +clean: + diff --git a/man/Makefile b/man/Makefile index dda8fd39..d0d4c8f7 100644 --- a/man/Makefile +++ b/man/Makefile @@ -1,7 +1,12 @@ include ../config.mak -clean: - rm -f *~ +all: + install: install -d $(man1dir) install -m 644 *.1 $(man1dir) + +clean: + @echo "clean up" + @rm -f *~ + diff --git a/menu/Makefile b/menu/Makefile index 4c452bcc..37a50661 100644 --- a/menu/Makefile +++ b/menu/Makefile @@ -10,5 +10,8 @@ install: install -d $(datadir)/applications; \ install -m 644 hime-setup.desktop $(datadir)/applications; \ fi + clean: - rm -f $(MENUS) *~ + @echo "clean up" + @rm -f $(MENUS) *~ + diff --git a/scripts/Makefile b/scripts/Makefile index a1efa328..2e19da9e 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -7,5 +7,8 @@ all: $(SCRIPTS) install: install -d $(HIME_SCRIPT_DIR_i) install -m 755 $(SCRIPTS) $(HIME_SCRIPT_DIR_i) + clean: - rm -f *~ tags core.* + @echo "clean up" + @rm -f *~ tags core.* + diff --git a/src/IMdkit/Makefile b/src/IMdkit/Makefile index b0de8d23..0c6afc25 100644 --- a/src/IMdkit/Makefile +++ b/src/IMdkit/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak all: libXimd.a diff --git a/src/IMdkit/lib/Makefile b/src/IMdkit/lib/Makefile index f663b6b6..9899f042 100644 --- a/src/IMdkit/lib/Makefile +++ b/src/IMdkit/lib/Makefile @@ -1,4 +1,4 @@ -include ../../config.mak +include ../../../config.mak #CFLAGS = -c -O2 -fno-strength-reduce -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE -DFUNCPROTO=15 -DNARROWPROTO -DUNIXCONN -DTCPCONN -DXIM_t -DTRANS_SERVER CFLAGS = -c $(OPTFLAGS) -fno-strength-reduce -DXIM_t -DTRANS_SERVER diff --git a/src/Makefile b/src/Makefile index 044ed735..b47492e2 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,253 +1,316 @@ -OPTFLAGS=-g -include config.mak -include suffixes-rule +include ../config.mak -hime_tsin_o = tsin.o tsin-util.o win0.o win1.o tsin-parse.o -hime_pho_o = win-pho.o pho.o pho-util.o pho-sym.o table-update.o pho-dbg.o +CFLAGS= -DUNIX=1 $(WALL) $(OPTFLAGS) $(GTKINC) -I./IMdkit/include -I./im-client \ + -DHIME_TABLE_DIR=\"$(HIME_TABLE_DIR)\" \ + -DHIME_OGG_DIR=\"$(HIME_OGG_DIR)\" \ + -DDOC_DIR=\"$(DOC_DIR)\" \ + -DHIME_ICON_DIR=\"$(HIME_ICON_DIR)\" \ + -DHIME_SCRIPT_DIR=\"$(HIME_SCRIPT_DIR)\" -DHIME_BIN_DIR=\"$(HIME_BIN_DIR)\" \ + -DSYS_ICON_DIR=\"$(SYS_ICON_DIR)\" -DFREEBSD=$(FREEBSD) -DMAC_OS=$(MAC_OS) \ + -DG_DISABLE_SINGLE_INCLUDES -DG_DISABLE_DEPRECATED \ + -DGDK_DISABLE_SINGLE_INCLUDES -DGDK_DISABLE_DEPRECATED \ + -DGTK_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_DEPRECATED + +VERSION_FILE = ../VERSION.hime + +OBJ_IMSRV = im-addr.o im-dispatch.o im-srv.o hime-crypt.o + +HIME1_OBJ = win-message.pico win-sym.pico win-inmd-switch.pico pinyin.pico \ + win-pho-near.pico win-kbm.pico hime-module.pico pho2pinyin.pico +HIME2_OBJ = t2s-lookup.pico + + +hime_pho_o = win-pho.o pho.o pho-util.o pho-sym.o table-update.o pho-dbg.o hime_gtab_o = gtab.o win-gtab.o gtab-util.o gtab-list.o gtab-buf.o -HIME_SO= hime1.so hime2.so - -OBJS=hime.o eve.o util.o hime-conf.o hime-settings.o locale.o hime-icon.o about.o html-browser.o \ - hime-exec-script.o $(HIME_SO) pho-play.o cache.o gtk_bug_fix.o phrase-save-menu.o \ - $(hime_pho_o) $(hime_gtab_o) hime-common.o phrase.o t2s-lookup.o gtab-use-count.o \ - win-save-phrase.o unix-exec.o pho-kbm-name.o statistic.o tsin-scan.o hime-module.o lang.o \ - hime-module-cb.o gtab-init.o fullchar.o gtab-tsin-fname.o - -OBJS_TSLEARN=hime-tslearn.o util.o hime-conf.o pho-util.o tsin-util.o hime-send.o pho-sym.o \ - table-update.o locale.o hime-settings.o hime-common.o hime-icon.o pho-dbg.o \ - pho2pinyin.o pinyin.o lang.o gtab-list.o gtab-init.o fullchar.o \ - gtab-tsin-fname.o unix-exec.o gtab-util.o - -OBJS_TS_EDIT=hime-ts-edit.o util.o hime-conf.o pho-util.o tsin-util.o hime-send.o pho-sym.o \ - table-update.o locale.o hime-settings.o hime-common.o hime-icon.o pho-dbg.o \ - pho2pinyin.o pinyin.o lang.o gtab-list.o gtab-init.o fullchar.o \ - gtab-tsin-fname.o unix-exec.o gtab-util.o - -OBJS_JUYIN_LEARN=hime-juyin-learn.o locale.o util.o pho-util.o pho-sym.o pho2pinyin.o \ - hime-settings.o hime-conf.o table-update.o pinyin.o hime-icon.o pho-dbg.o -OBJS_hime-sim2trad=hime-sim2trad.o util.o hime2.so locale.o hime-conf.o hime-icon.o -OBJS_hime-phod2a=hime-phod2a.o pho-util.o hime-conf.o pho-sym.o table-update.o pho-dbg.o locale.o \ - hime-settings.o util.o -OBJS_hime-tsa2d32=hime-tsa2d32.o hime-send.o util.o pho-sym.o hime-conf.o locale.o pho-lookup.o \ -pinyin.o pho2pinyin.o pho-dbg.o -OBJS_hime-phoa2d=hime-phoa2d.o pho-sym.o hime-send.o hime-conf.o locale.o pho-lookup.o util.o pho-dbg.o -OBJS_kbmcv=kbmcv.o pho-sym.o util.o locale.o -OBJS_hime-tsd2a32=hime-tsd2a32.o pho-sym.o pho-dbg.o locale.o util.o gtab-dbg.o pho2pinyin.o \ - hime-conf.o pinyin.o -OBJS_cin2gtab=cin2gtab.o gtab-util.o util.o locale.o -OBJS_gtab2cin=gtab2cin.o gtab-util.o util.o locale.o -OBJS_gtab_merge=hime-gtab-merge.o gtab-util.o util.o locale.o -OBJS_hime_setup=hime-setup.o hime-conf.o util.o hime-send.o hime-settings.o html-browser.o \ - hime-setup-list.o locale.o hime-setup-pho.o about.o lang.o \ - hime-icon.o hime-setup-gtab.o gtab-list.o hime-exec-script.o pho-kbm-name.o hime-module-cb.o - -OBJS_hime_gb_toggle = hime-gb-toggle.o hime-conf.o util.o hime-send.o + +OBJS = hime.o eve.o util.o hime-conf.o hime-settings.o locale.o \ + hime-icon.o about.o html-browser.o \ + hime-exec-script.o pho-play.o cache.o gtk_bug_fix.o \ + phrase-save-menu.o \ + $(hime_pho_o) $(hime_gtab_o) \ + hime-common.o phrase.o t2s-lookup.o gtab-use-count.o \ + win-save-phrase.o unix-exec.o pho-kbm-name.o statistic.o tsin-scan.o \ + hime-module.o lang.o \ + hime-module-cb.o gtab-init.o fullchar.o gtab-tsin-fname.o + +OBJS_TSLEARN = hime-tslearn.o util.o hime-conf.o pho-util.o tsin-util.o \ + hime-send.o pho-sym.o table-update.o locale.o \ + hime-settings.o hime-common.o hime-icon.o pho-dbg.o \ + pho2pinyin.o pinyin.o lang.o gtab-list.o gtab-init.o fullchar.o \ + gtab-tsin-fname.o unix-exec.o gtab-util.o + +OBJS_TS_EDIT = hime-ts-edit.o util.o hime-conf.o pho-util.o tsin-util.o \ + hime-send.o pho-sym.o table-update.o locale.o \ + hime-settings.o hime-common.o hime-icon.o pho-dbg.o \ + pho2pinyin.o pinyin.o lang.o gtab-list.o gtab-init.o fullchar.o \ + gtab-tsin-fname.o unix-exec.o gtab-util.o + +OBJS_JUYIN_LEARN = hime-juyin-learn.o locale.o util.o pho-util.o pho-sym.o \ + pho2pinyin.o hime-settings.o hime-conf.o table-update.o pinyin.o \ + hime-icon.o pho-dbg.o + +OBJS_hime-sim2trad = hime-sim2trad.o util.o hime2.so locale.o hime-conf.o hime-icon.o + +OBJS_hime-phod2a = hime-phod2a.o pho-util.o hime-conf.o pho-sym.o table-update.o \ + pho-dbg.o locale.o hime-settings.o util.o + +OBJS_hime-tsa2d32 = hime-tsa2d32.o hime-send.o util.o pho-sym.o hime-conf.o \ + locale.o pho-lookup.o pinyin.o pho2pinyin.o pho-dbg.o + +OBJS_hime-phoa2d = hime-phoa2d.o pho-sym.o hime-send.o hime-conf.o locale.o \ + pho-lookup.o util.o pho-dbg.o + +OBJS_kbmcv = kbmcv.o pho-sym.o util.o locale.o + +OBJS_hime-tsd2a32 = hime-tsd2a32.o pho-sym.o pho-dbg.o locale.o util.o \ + gtab-dbg.o pho2pinyin.o hime-conf.o pinyin.o + +OBJS_cin2gtab = cin2gtab.o gtab-util.o util.o locale.o +OBJS_gtab2cin = gtab2cin.o gtab-util.o util.o locale.o +OBJS_gtab_merge = hime-gtab-merge.o gtab-util.o util.o locale.o +OBJS_hime_setup = hime-setup.o hime-conf.o util.o hime-send.o hime-settings.o \ + html-browser.o hime-setup-list.o locale.o hime-setup-pho.o about.o \ + lang.o hime-icon.o hime-setup-gtab.o gtab-list.o hime-exec-script.o \ + pho-kbm-name.o hime-module-cb.o + +OBJS_hime_gb_toggle = hime-gb-toggle.o hime-conf.o util.o hime-send.o OBJS_hime_kbm_toggle = hime-kbm-toggle.o hime-conf.o util.o hime-send.o -OBJS_hime_exit = hime-exit.o hime-conf.o util.o hime-send.o -OBJS_hime_message = hime-message.o hime-conf.o util.o hime-send.o -OBJS_pin_juyin = pin-juyin.o util.o pho-lookup.o locale.o pho-sym.o +OBJS_hime_exit = hime-exit.o hime-conf.o util.o hime-send.o +OBJS_hime_message = hime-message.o hime-conf.o util.o hime-send.o + +OBJS_pin_juyin = pin-juyin.o util.o pho-lookup.o locale.o pho-sym.o OBJS_tsin2gtab_phrase = hime-tsin2gtab-phrase.o hime-conf.o util.o locale.o \ pho-dbg.o pho-sym.o gtab-dbg.o lang.o + #WALL=-Wall ifeq ($(USE_XIM),Y) -IMdkitLIB = IMdkit/lib/libXimd.a -CFLAGS += -DUSE_XIM=1 -OBJS+=IC.o +IMdkitLIB = IMdkit/lib/libXimd.a +CFLAGS += -DUSE_XIM=1 +OBJS += IC.o endif ifeq ($(USE_TRAY),Y) -CFLAGS += -DTRAY_ENABLED=1 -OBJS += tray.o eggtrayicon.o tray-win32.o +CFLAGS += -DTRAY_ENABLED=1 +OBJS += tray.o eggtrayicon.o tray-win32.o endif ifeq ($(USE_I18N),Y) -CFLAGS += -DHIME_i18n_message=1 +CFLAGS += -DHIME_i18n_message=1 endif ifeq ($(USE_TSIN),Y) -CFLAGS += -DUSE_TSIN=1 -OBJS += $(hime_tsin_o) +hime_tsin_o = tsin.o tsin-util.o win0.o win1.o tsin-parse.o +CFLAGS += -DUSE_TSIN=1 +OBJS += $(hime_tsin_o) +endif + +ifeq ($(MAC_OS),1) +EXTRA_LDFLAGS=-bind_at_load endif -OBJ_IMSRV=im-addr.o im-dispatch.o im-srv.o hime-crypt.o -PROGS=hime hime-tsd2a32 hime-tsa2d32 hime-phoa2d hime-phod2a hime-tslearn hime-setup cin2gtab gtab2cin \ +HIME_SO = hime1.so hime2.so + +PROGS = hime \ + hime-tsd2a32 hime-tsa2d32 hime-phoa2d hime-phod2a \ + hime-tslearn hime-setup cin2gtab gtab2cin \ hime-juyin-learn hime-sim2trad hime-gb-toggle hime-message hime-gtab-merge \ hime-kbm-toggle hime-tsin2gtab-phrase hime-exit hime-ts-edit -PROGS_SYM=hime-trad2sim -PROGS_CV=kbmcv pin-juyin + +PROGS_SYM = hime-trad2sim + +PROGS_CV = kbmcv pin-juyin + + -all: $(PROGS) hime-trad2sim $(HIME_SO) $(DATA) $(PROGS_CV) hime-fedora.spec - $(MAKE) -C data +.SUFFIXES: .c .o .E .pico .cpp + +.cpp.o: + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -c $< +.c.o: + @echo " $< -> $@" + @$(CC) $(CFLAGS) -c $< +.c.pico: + @echo " $< -> $@" + @$(CC) $(CFLAGS) -c -fpic -o $@ $< +.cpp.pico: + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -c -fpic -o $@ $< +.c.E: + @echo " $< -> $@" + @$(CC) $(CFLAGS) -E -o $@ $< +.cpp.E: + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -E -o $@ $< + + +all: hime-version.h $(PROGS) $(PROGS_SYM) $(DATA) $(PROGS_CV) if [ $(BUILD_MODULE) = 'Y' ]; then $(MAKE) -C modules; fi - if [ $(USE_I18N) = 'Y' ]; then $(MAKE) -C po; fi if [ $(GTK_IM) = 'Y' ]; then $(MAKE) -C gtk-im; fi if [ $(GTK3_IM) = 'Y' ]; then $(MAKE) -C gtk3-im; fi if [ $(QT_IM) = 'Y' ]; then $(MAKE) -C qt-im; fi if [ $(QT4_IM) = 'Y' ]; then $(MAKE) -C qt4-im; fi -#gcc_ld_run_path=-Wl,-rpath,$(hime_ld_run_path) +hime1.so: $(HIME1_OBJ) + @echo "linking $@ ..." + @$(CCLD) $(SO_FLAGS) -o $@ $^ $(LDFLAGS) -hime: $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) - $(CCLD) $(EXTRA_LDFLAGS) $(gcc_ld_run_path) -o $@ $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) -lXtst $(LDFLAGS) -L/usr/X11R6/$(LIB) - rm -f core.* vgcore.* +hime2.so: $(HIME2_OBJ) + @echo "linking $@ ..." + @$(CCLD) $(SO_FLAGS) -o $@ $^ $(LDFLAGS) -hime-nocur: $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) - $(CCLD) -Wl,-rpath,$(himelibdir) $(EXTRA_LDFLAGS) -o $@ $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) -lXtst $(LDFLAGS) -L/usr/X11R6/$(LIB) - rm -f core.* +$(IMdkitLIB): + @echo "building $@ ..." + $(MAKE) -C IMdkit/lib -hime-tslearn: $(OBJS_TSLEARN) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_TSLEARN) -L./im-client -lhime-im-client $(LDFLAGS) +im-client/libhime-im-client.so: + @echo "building $@ ..." + $(MAKE) -C im-client -hime-ts-edit: $(OBJS_TS_EDIT) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_TS_EDIT) -L./im-client -lhime-im-client $(LDFLAGS) +hime: $(HIME_SO) $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) + @echo "linking $@ ..." + @$(CCLD) $(EXTRA_LDFLAGS) $(gcc_ld_run_path) -o $@ $^ -lXtst $(LDFLAGS) -L/usr/X11R6/$(LIB) + @rm -f core.* vgcore.* -hime-juyin-learn: $(OBJS_JUYIN_LEARN) - $(CCLD) -o $@ $(OBJS_JUYIN_LEARN) $(LDFLAGS) - rm -f core.* -hime-sim2trad: $(OBJS_hime-sim2trad) - $(CC) $(gcc_ld_run_path) -o $@ $(OBJS_hime-sim2trad) $(LDFLAGS) - rm -f core.* -hime-trad2sim: hime-sim2trad - ln -sf hime-sim2trad hime-trad2sim +hime-nocur: $(HIME_SO) $(OBJS) $(IMdkitLIB) $(OBJ_IMSRV) + @echo "linking $@ ..." + @$(CCLD) -Wl,-rpath,$(himelibdir) $(EXTRA_LDFLAGS) -o $@ $^ -lXtst $(LDFLAGS) -L/usr/X11R6/$(LIB) + @rm -f core.* -hime-setup: $(OBJS_hime_setup) im-client/libhime-im-client.so - rm -f core.* - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime_setup) -L./im-client -lhime-im-client $(LDFLAGS) +hime-tslearn: $(OBJS_TSLEARN) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -hime-phoa2d: $(OBJS_hime-phoa2d) im-client/libhime-im-client.so - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime-phoa2d) -L./im-client -lhime-im-client $(LDFLAGS) +hime-ts-edit: $(OBJS_TS_EDIT) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -hime-phod2a: $(OBJS_hime-phod2a) - $(CCLD) -lX11 -o $@ $(OBJS_hime-phod2a) $(LDFLAGS) +hime-juyin-learn: $(OBJS_JUYIN_LEARN) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) + @rm -f core.* -hime-tsa2d32: $(OBJS_hime-tsa2d32) im-client/libhime-im-client.so - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime-tsa2d32) -L./im-client -lhime-im-client $(LDFLAGS) +hime-sim2trad: $(OBJS_hime-sim2trad) + @echo "linking $@ ..." + @$(CC) $(gcc_ld_run_path) -o $@ $^ $(LDFLAGS) + @rm -f core.* -hime-tsd2a: - $(CCLD) -o $@ $(LDFLAGS) +hime-trad2sim: hime-sim2trad + ln -sf hime-sim2trad hime-trad2sim -hime-tsd2a32: $(OBJS_hime-tsd2a32) - $(CCLD) -o $@ $(OBJS_hime-tsd2a32) $(LDFLAGS) +hime-setup: $(OBJS_hime_setup) im-client/libhime-im-client.so + @echo "linking $@ ..." + @rm -f core.* + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -cin2gtab: $(OBJS_cin2gtab) - $(CCLD) -o $@ $(OBJS_cin2gtab) $(LDFLAGS) - rm -f data/*.gtab +hime-phoa2d: $(OBJS_hime-phoa2d) im-client/libhime-im-client.so + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -gtab2cin: $(OBJS_gtab2cin) - $(CCLD) -o $@ $(OBJS_gtab2cin) $(LDFLAGS) +hime-phod2a: $(OBJS_hime-phod2a) + @echo "linking $@ ..." + @$(CCLD) -lX11 -o $@ $^ $(LDFLAGS) -hime-gtab-merge: $(OBJS_gtab_merge) - $(CCLD) -o $@ $(OBJS_gtab_merge) $(LDFLAGS) +hime-tsa2d32: $(OBJS_hime-tsa2d32) im-client/libhime-im-client.so + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -kbmcv: $(OBJS_kbmcv) - $(CCLD) -o $@ $(OBJS_kbmcv) $(LDFLAGS) +#hime-tsd2a: +# $(CCLD) -o $@ $(LDFLAGS) -hime-gb-toggle: $(OBJS_hime_gb_toggle) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime_gb_toggle) -L./im-client -lhime-im-client $(LDFLAGS) +hime-tsd2a32: $(OBJS_hime-tsd2a32) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -hime-kbm-toggle: $(OBJS_hime_kbm_toggle) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime_kbm_toggle) -L./im-client -lhime-im-client $(LDFLAGS) +cin2gtab: $(OBJS_cin2gtab) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) + @rm -f data/*.gtab -hime-exit: $(OBJS_hime_exit) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime_exit) -L./im-client -lhime-im-client $(LDFLAGS) +gtab2cin: $(OBJS_gtab2cin) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -hime-message: $(OBJS_hime_message) - $(CCLD) $(gcc_ld_run_path) -o $@ $(OBJS_hime_message) -L./im-client -lhime-im-client $(LDFLAGS) +hime-gtab-merge: $(OBJS_gtab_merge) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -pin-juyin: $(OBJS_pin_juyin) - $(CCLD) -o $@ $(OBJS_pin_juyin) $(LDFLAGS) +kbmcv: $(OBJS_kbmcv) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -hime-tsin2gtab-phrase: $(OBJS_tsin2gtab_phrase) - $(CCLD) -o $@ $(OBJS_tsin2gtab_phrase) $(LDFLAGS) +hime-gb-toggle: $(OBJS_hime_gb_toggle) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -im-client/libhime-im-client.so: - $(MAKE) -C im-client +hime-kbm-toggle: $(OBJS_hime_kbm_toggle) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -hime-version.h: VERSION.hime - echo '#define HIME_VERSION "'`cat VERSION.hime`'"' > hime-version.h +hime-exit: $(OBJS_hime_exit) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -hime1_so += win-message.pico win-sym.pico \ -win-inmd-switch.pico pinyin.pico win-pho-near.pico win-kbm.pico hime-module.pico pho2pinyin.pico +hime-message: $(OBJS_hime_message) + @echo "linking $@ ..." + @$(CCLD) $(gcc_ld_run_path) -o $@ $^ -L./im-client -lhime-im-client $(LDFLAGS) -hime1.so: $(hime1_so) pho.o tsin.o eve.o gtab.o win-sym.o - $(CCLD) $(SO_FLAGS) -o $@ $(hime1_so) $(LDFLAGS) +pin-juyin: $(OBJS_pin_juyin) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -hime2_so= t2s-lookup.pico -hime2.so: $(hime2_so) hime-conf.o - $(CCLD) $(SO_FLAGS) -o $@ $(hime2_so) $(LDFLAGS) +hime-tsin2gtab-phrase: $(OBJS_tsin2gtab_phrase) + @echo "linking $@ ..." + @$(CCLD) -o $@ $^ $(LDFLAGS) -$(IMdkitLIB): - $(MAKE) -C IMdkit/lib -ibin: hime-nocur - install $(PROGS) $(bindir); \ - cp hime-nocur $(bindir)/hime; \ - rm -f $(bindir)/hime-trad2sim; ln -sf hime-sim2trad $(bindir)/hime-trad2sim - install $(HIME_SO) $(himelibdir) +hime-version.h: $(VERSION_FILE) + @echo "building $@ ... current version is '"`cat $<`"'" + @echo '#define HIME_VERSION "'`cat $<`'"' > $@ + +#ibin: hime-nocur +# install $(PROGS) $(bindir); \ +# cp hime-nocur $(bindir)/hime; \ +# rm -f $(bindir)/hime-trad2sim; ln -sf hime-sim2trad $(bindir)/hime-trad2sim +# install $(HIME_SO) $(himelibdir) install: - install -d $(datadir)/pixmaps - install -m 644 hime.png $(datadir)/pixmaps - $(MAKE) -C icons install + install -d $(bindir) + install $(PROGS) $(bindir) + rm -f $(bindir)/hime-trad2sim; ln -sf hime-sim2trad $(bindir)/hime-trad2sim install -d $(himelibdir) install $(HIME_SO) $(himelibdir) - install -d $(bindir) - $(MAKE) -C data install $(MAKE) -C im-client install if [ $(BUILD_MODULE) = 'Y' ]; then $(MAKE) -C modules install; fi if [ $(GTK_IM) = 'Y' ]; then $(MAKE) -C gtk-im install; fi if [ $(GTK3_IM) = 'Y' ]; then $(MAKE) -C gtk3-im install; fi if [ $(QT_IM) = 'Y' ]; then $(MAKE) -C qt-im install; fi if [ $(QT4_IM) = 'Y' ]; then $(MAKE) -C qt4-im install; fi - if [ $(prefix) = /usr/local ]; then \ - install -m 644 hime.png /usr/share/pixmaps; \ - install -d $(DOC_DIR); \ - install -m 644 README.html ChangeLog $(DOC_DIR); \ - install $(PROGS) $(bindir); \ - rm -f $(bindir)/hime-trad2sim; ln -sf hime-sim2trad $(bindir)/hime-trad2sim; \ - else \ - install -d $(DOC_DIR_i); \ - install -m 644 README.html ChangeLog $(DOC_DIR_i); \ - install $(PROGS) $(bindir); \ - rm -f $(bindir)/hime-trad2sim; ln -sf hime-sim2trad $(bindir)/hime-trad2sim; \ - fi - $(MAKE) -C scripts install - $(MAKE) -C menu install - $(MAKE) -C man install - if [ $(USE_I18N) = 'Y' ]; then $(MAKE) -C po install; fi clean: + @echo "clean up" $(MAKE) -C IMdkit clean - $(MAKE) -C data clean - $(MAKE) -C scripts clean $(MAKE) -C im-client clean $(MAKE) -C modules clean if [ $(GTK_IM) = 'Y' ]; then $(MAKE) -C gtk-im clean; fi if [ $(GTK3_IM) = 'Y' ]; then $(MAKE) -C gtk3-im clean; fi $(MAKE) -C qt-im clean $(MAKE) -C qt4-im clean - $(MAKE) -C man clean - $(MAKE) -C menu clean - $(MAKE) -C po clean - rm -f *.o *.E *.db *.pico *.so config.mak tags $(PROGS) hime-nocur $(PROGS_CV) \ - $(DATA) .depend hime-trad2sim hime.log hime-fedora.spec - find . '(' -name '.ted*' -o -name '*~' -o -name 'core.*' -o -name 'vgcore.*' ')' -exec rm {} \; + @rm -f *.o *.E *.db *.pico *.so tags $(PROGS) hime-nocur $(PROGS_CV) \ + $(DATA) .depend hime-trad2sim hime.log hime-fedora.spec + @find . '(' -name '.ted*' -o -name '*~' -o -name 'core.*' -o -name 'vgcore.*' ')' -exec rm {} \; .depend: - $(CCX) $(CFLAGS) -MM *.cpp > $@ - -config.mak: VERSION.hime configure - ./configure + @echo "building $@ ..." + @$(CCX) $(CFLAGS) -MM *.c > $@ -hime-fedora.spec: hime-fedora.spec.in - rm -f $@ - sed -e "s/__hime_version__/$(HIME_VERSION)/" < $< > $@ include .depend + diff --git a/src/gtk-im/Makefile b/src/gtk-im/Makefile index 6fe833ac..f563d9ce 100644 --- a/src/gtk-im/Makefile +++ b/src/gtk-im/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak OBJS = imhime.o gtkimcontexthime.o GTK2IM=gtk-2.0/immodules @@ -17,23 +17,28 @@ CFLAGS = $(OPTFLAGS) $(EXTRA_INC) $(GTKINC) -I../im-client -I.. -DUNIX=1 \ -I../IMdkit/include -DCLIENT_LIB=1 -DMAC_OS=$(MAC_OS) -DFREEBSD=$(FREEBSD) .c.o: - $(CC) -c -fPIC $(CFLAGS) -o $@ $< + @echo " $< -> $@" + @$(CC) -c -fPIC $(CFLAGS) -o $@ $< .c.E: - $(CC) -E $(CFLAGS) -o $@ $< + @echo " $< -> $@" + @$(CC) -E $(CFLAGS) -o $@ $< all: im-hime.so im-hime-cur.so im-hime.so: $(OBJS) ../im-client/libhime-im-client.so - $(CC) $(gcc_ld_run_path) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @$(CC) $(gcc_ld_run_path) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) + @rm -f core.* im-hime-cur.so: $(OBJS) ../im-client/libhime-im-client.so - $(CC) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @$(CC) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) + @rm -f core.* clean: - rm -f *.o *.so *~ core.* .depend *.E + @echo "clean up" + @rm -f *.o *.so *~ core.* .depend *.E install: if [ $(prefix) = /usr/local ]; then \ @@ -46,6 +51,7 @@ install: fi .depend: - $(CC) $(CFLAGS) -MM *.c > $@ + @echo "building $@ ..." + @$(CC) $(CFLAGS) -MM *.c > $@ include .depend diff --git a/src/gtk3-im/Makefile b/src/gtk3-im/Makefile index 4779b5e4..35258143 100644 --- a/src/gtk3-im/Makefile +++ b/src/gtk3-im/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak OBJS = imhime.o gtkimcontexthime.o GTK3IM=gtk-3.0/immodules @@ -17,23 +17,28 @@ CFLAGS = $(OPTFLAGS) $(EXTRA_INC) $(GTKINC) -I../im-client -I.. -DUNIX=1 \ -I../IMdkit/include -DCLIENT_LIB=1 -DMAC_OS=$(MAC_OS) -DFREEBSD=$(FREEBSD) .c.o: - $(CC) -c -fPIC $(CFLAGS) -o $@ $< + @echo " $< -> $@" + @$(CC) -c -fPIC $(CFLAGS) -o $@ $< .c.E: - $(CC) -E $(CFLAGS) -o $@ $< + @echo " $< -> $@" + @$(CC) -E $(CFLAGS) -o $@ $< all: im-hime.so im-hime-cur.so im-hime.so: $(OBJS) ../im-client/libhime-im-client.so - $(CC) $(gcc_ld_run_path) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @$(CC) $(gcc_ld_run_path) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) + @rm -f core.* im-hime-cur.so: $(OBJS) ../im-client/libhime-im-client.so - $(CC) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @$(CC) $(SO_FLAGS) $(OBJS) -L../im-client -lhime-im-client -o $@ $(LDFLAGS) + @rm -f core.* clean: - rm -f *.o *.so *~ core.* .depend *.E + @echo "clean up" + @rm -f *.o *.so *~ core.* .depend *.E install: if [ $(prefix) = /usr/local ]; then \ @@ -46,6 +51,7 @@ install: fi .depend: - $(CC) $(CFLAGS) -MM *.c > $@ + @echo "building $@ ..." + @$(CC) $(CFLAGS) -MM *.c > $@ include .depend diff --git a/src/im-client/Makefile b/src/im-client/Makefile index 0fb891ae..4c4759d9 100644 --- a/src/im-client/Makefile +++ b/src/im-client/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak SOFILE=libhime-im-client.so SOFILEVER=libhime-im-client.so.1.2.4 @@ -12,15 +12,20 @@ CFLAGS= -DUNIX=1 $(WALL) $(OPTFLAGS) -I. -I.. -I../IMdkit/include $(GTKINC) \ OBJS = hime-im-client.o im-addr.o hime-conf.o util.o hime-crypt-fpic.o .cpp.E: - $(CC) $(CFLAGS) -E -o $@ $< + @echo " $< -> $@" + @$(CC) $(CFLAGS) -E -o $@ $< .c.o: - $(CC) -c $(CFLAGS) $< + @echo " $< -> $@" + @$(CC) -c $(CFLAGS) $< + .cpp.o: - $(CC) -x c -c $(CFLAGS) $< + @echo " $< -> $@" + @$(CC) -x c -c $(CFLAGS) $< $(SOFILEVER): $(OBJS) - $(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) -lX11 -o $@ -L/usr/X11R6/lib + @echo "linking $@ ..." + @$(CC) $(SO_FLAGS) -Wl,-soname,libhime-im-client.so.1 $(OBJS) -lX11 -o $@ -L/usr/X11R6/lib ln -sf $(SOFILEVER) $(SOFILE) ln -sf $(SOFILEVER) $(SOFILE).1 if [ $(GTK_IM) = 'Y' ]; then $(MAKE) -C ../gtk-im; fi @@ -33,22 +38,28 @@ install: cd $(himelibdir); rm -f $(SOFILE); ln -s $(SOFILEVER) $(SOFILE); \ ln -sf $(SOFILEVER) $(SOFILE).1 -hime-conf.o: ../hime-conf.cpp - $(CCX) -c $(CFLAGS) -o $@ $< +hime-conf.o: ../hime-conf.c + @echo " $^ -> $@" + @$(CCX) -c $(CFLAGS) -o $@ $< -util.o: ../util.cpp - $(CCX) -c $(CFLAGS) -o $@ $< +util.o: ../util.c + @echo " $^ -> $@" + @$(CCX) -c $(CFLAGS) -o $@ $< -im-addr.o: ../im-addr.cpp - $(CCX) -c $(CFLAGS) -o $@ $< +im-addr.o: ../im-addr.c + @echo " $^ -> $@" + @$(CCX) -c $(CFLAGS) -o $@ $< -hime-crypt-fpic.o: ../hime-crypt.cpp - $(CCX) -c $(CFLAGS) -o $@ $< +hime-crypt-fpic.o: ../hime-crypt.c + @echo " $^ -> $@" + @$(CCX) -c $(CFLAGS) -o $@ $< clean: - rm -f *.o *.so *.so.* *~ *.E *.db config.mak tags core.* .depend + @echo "clean up" + @rm -f *.o *.so *.so.* *~ *.E *.db tags core.* .depend .depend: - $(CCX) $(CFLAGS) -MM *.cpp > $@ + @echo "building $@ ..." + @$(CCX) $(CFLAGS) -MM *.c > $@ include .depend diff --git a/src/modules/Makefile b/src/modules/Makefile index 60fc7722..b37bb469 100644 --- a/src/modules/Makefile +++ b/src/modules/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak include ../suffixes-rule CFLAGS+=-I.. -I../IMdkit/include @@ -18,19 +18,23 @@ all: $(HIME_MODULE) anthy_module_so = anthy.pico anthy-module.so: $(anthy_module_so) - $(CCLD) $(SO_FLAGS) -o $@ $(anthy_module_so) $(LDFLAGS) -lanthy + @echo "linking $@ ..." + @$(CCLD) $(SO_FLAGS) -o $@ $(anthy_module_so) $(LDFLAGS) -lanthy intcode_module_so = intcode.pico win-int.pico intcode-module.so: $(intcode_module_so) - $(CCLD) $(SO_FLAGS) -o $@ $(intcode_module_so) $(LDFLAGS) + @echo "linking $@ ..." + @$(CCLD) $(SO_FLAGS) -o $@ $(intcode_module_so) $(LDFLAGS) chewing_module_obj = chewing-conf.pico chewing_module_so = chewing.pico hime-setup-chewing.pico chewing-module.so: $(chewing_module_obj) $(chewing_module_so) - $(CCLD) $(SO_FLAGS) -o $@ $(chewing_module_obj) $(chewing_module_so) $(LDFLAGS) $(shell pkg-config --cflags --libs chewing) + @echo "linking $@ ..." + @$(CCLD) $(SO_FLAGS) -o $@ $(chewing_module_obj) $(chewing_module_so) $(LDFLAGS) $(shell pkg-config --cflags --libs chewing) install: install $(HIME_MODULE) $(himelibdir) clean: - rm -f *.pico *.so *.o + @echo "clean up" + @rm -f *.pico *.so *.o diff --git a/src/qt-im/Makefile b/src/qt-im/Makefile index 9c1fdf21..1f8cf545 100644 --- a/src/qt-im/Makefile +++ b/src/qt-im/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak QT=qt3 QTIM=$(QT)/plugins/inputmethods IMMODULES=$(libdir)/$(QTIM) @@ -10,14 +10,19 @@ LDFLAGS=-L../im-client -lhime-im-client -Wl,-rpath,$(himelibdir) `pkg-config qt- all: im-hime.so .cpp.E: - $(CXX) -E $(CFLAGS) $(INCS) $< > $@ + @echo " $< -> $@" + @$(CXX) -E $(CFLAGS) $(INCS) $< > $@ + .h.o: + @echo " $< -> $@" $(QT3_MOC_PATH) $< -o $<_moc.cpp $(CXX) -c -pipe $(CXXFLAGS) $(INCS) $<_moc.cpp -o $@ im-hime.so: $(OBJS) - $(CXX) $(gcc_ld_run_path) -fno-exceptions -shared -o $@ $(OBJS) $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @$(CXX) $(gcc_ld_run_path) -fno-exceptions -shared -o $@ $(OBJS) $(LDFLAGS) + @rm -f core.* + install: if [ $(prefix) = /usr/local ]; then \ install -d $(DESTDIR)/$(QT_IM_DIR); \ @@ -26,5 +31,8 @@ install: install -d $(IMMODULES); \ install -m 755 im-hime.so $(IMMODULES); \ fi + clean: - rm -f $(OBJS) im-hime.so *~ core.* *moc*.cpp *.E + @echo "clean up" + @rm -f $(OBJS) im-hime.so *~ core.* *moc*.cpp *.E + diff --git a/src/qt4-im/Makefile b/src/qt4-im/Makefile index 6253c335..867323c3 100644 --- a/src/qt4-im/Makefile +++ b/src/qt4-im/Makefile @@ -1,4 +1,4 @@ -include ../config.mak +include ../../config.mak QT=qt4 QTIM=$(QT)/plugins/inputmethods IMMODULES=$(libdir)/$(QTIM) @@ -12,15 +12,23 @@ LDFLAGS=-L../im-client -lhime-im-client `pkg-config QtCore QtGui --libs` all: im-hime.so .cpp.E: - $(CXX) -E $(CFLAGS) $(INCS) $< > $@ + @echo " $< -> $@" + @$(CXX) -E $(CFLAGS) $(INCS) $< > $@ + +.cpp.o: + @echo " $< -> $@" + @$(CXX) -c -o $@ $(CXXFLAGS) $(INCS) $< moc_hime-qt.cpp: hime-qt.h + @echo " $< -> $@" $(QT4_MOC_PATH) $< -o moc_hime-qt.cpp im-hime.so: $(OBJS) - export LD_RUN_PATH=$(himelibdir) ;\ - $(CXX) $(gcc_ld_run_path) -fno-exceptions -shared -o $@ $(OBJS) $(LDFLAGS) - rm -f core.* + @echo "linking $@ ..." + @export LD_RUN_PATH=$(himelibdir) ;\ + $(CXX) $(gcc_ld_run_path) -fno-exceptions -shared -o $@ $(OBJS) $(LDFLAGS) + @rm -f core.* + install: if [ $(prefix) = /usr/local ]; then \ install -d $(DESTDIR)/$(QT4_IM_DIR); \ @@ -29,10 +37,13 @@ install: install -d $(IMMODULES); \ install -m 755 im-hime.so $(IMMODULES); \ fi + clean: - rm -f $(OBJS) im-hime.so *~ core.* *moc*.cpp *.E .depend + @echo "clean up" + @rm -f $(OBJS) im-hime.so *~ core.* *moc*.cpp *.E .depend .depend: - $(CXX) $(CXXFLAGS) -MM *.cpp > $@ + @echo "building $@ ..." + @$(CXX) $(CXXFLAGS) -MM *.cpp > $@ include .depend diff --git a/src/suffixes-rule b/src/suffixes-rule index b4e10eb2..fdeb1250 100644 --- a/src/suffixes-rule +++ b/src/suffixes-rule @@ -1,15 +1,23 @@ .SUFFIXES: .c .o .E .pico .cpp .cpp.o: - $(CCX) $(CFLAGS) -c $< + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -c $< +.c.o: + @echo " $< -> $@" + @$(CC) $(CFLAGS) -c $< .c.pico: - $(CC) $(CFLAGS) -c -fpic -o $@ $< + @echo " $< -> $@" + @$(CC) $(CFLAGS) -c -fpic -o $@ $< .cpp.pico: - $(CCX) $(CFLAGS) -c -fpic -o $@ $< + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -c -fpic -o $@ $< .c.E: - $(CC) $(CFLAGS) -E -o $@ $< + @echo " $< -> $@" + @$(CC) $(CFLAGS) -E -o $@ $< .cpp.E: - $(CCX) $(CFLAGS) -E -o $@ $< + @echo " $< -> $@" + @$(CCX) $(CFLAGS) -E -o $@ $< CFLAGS= -DUNIX=1 $(WALL) $(OPTFLAGS) $(GTKINC) -I./IMdkit/include -I./im-client \