UIM.framework 向けの uim trunk に対する diff です。パスとキーの細かい設定と、Rosetta 向けの小さな変更だけです。
Index: scm/skk-custom.scm
===================================================================
--- scm/skk-custom.scm (revision 5027)
+++ scm/skk-custom.scm (working copy)
@@ -386,8 +386,7 @@
(lambda ()
skk-use-skkserv?))
-(define-custom 'skk-dic-file-name (string-append (sys-datadir)
- "/skk/SKK-JISYO.L")
+(define-custom 'skk-dic-file-name "/Library/Dictionaries/SKK/SKK-JISYO.L"
'(skk-dict dict-files)
'(pathname regular-file)
(N_ "System dictionary file")
Index: scm/tutcode-key-custom.scm
===================================================================
--- scm/tutcode-key-custom.scm (revision 5027)
+++ scm/tutcode-key-custom.scm (working copy)
@@ -53,7 +53,7 @@
(N_ "[TUT-Code] off")
(N_ "long description will be here"))
-(define-custom 'tutcode-kana-toggle-key '("<IgnoreShift>'")
+(define-custom 'tutcode-kana-toggle-key '("<IgnoreShift>'" "Private2")
'(tutcode-keys1 mode-transition)
'(key)
(N_ "[TUT-Code] toggle hiragana/katakana mode")
Index: scm/generic-key-custom.scm
===================================================================
--- scm/generic-key-custom.scm (revision 5027)
+++ scm/generic-key-custom.scm (working copy)
@@ -41,13 +41,13 @@
(N_ "long description will be here."))
-(define-custom 'generic-on-key '("zenkaku-hankaku" "<Shift> ")
+(define-custom 'generic-on-key '("zenkaku-hankaku" "<Shift> " "Private2")
'(global-keys1)
'(key)
(N_ "[Global] on")
(N_ "long description will be here"))
-(define-custom 'generic-off-key '("zenkaku-hankaku" "<Shift> ")
+(define-custom 'generic-off-key '("zenkaku-hankaku" "<Shift> " "Private1")
'(global-keys1)
'(key)
(N_ "[Global] off")
Index: uim/prime.c
===================================================================
--- uim/prime.c (revision 5027)
+++ uim/prime.c (working copy)
@@ -61,7 +61,7 @@
static FILE *primer, *primew;
static pid_t prime_pid = 0;
-static char *prime_command = "prime";
+static char *prime_command = "/Library/PRIME/bin/prime";
static char *prime_ud_path;
static int prime_fd = -1;
Index: uim/uim-helper.c
===================================================================
--- uim/uim-helper.c (revision 5027)
+++ uim/uim-helper.c (working copy)
@@ -48,6 +48,8 @@
#include <errno.h>
#include <sys/stat.h>
+#include <libkern/OSByteOrder.h>
+
#include "uim-internal.h"
#include "uim-helper.h"
#include "uim-util.h"
@@ -205,6 +207,9 @@
perror("getpeereid failed");
return -1;
}
+ if (euid > INT32_MAX)
+ euid = OSSwapInt32(euid);
+
if ((euid != 0) && (euid != getuid())) {
fprintf(stderr, "uid mismatch\n");
return -1;
Index: uim.pc.in
===================================================================
--- uim.pc.in (revision 5027)
+++ uim.pc.in (working copy)
@@ -1,6 +1,6 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
-includedir=@includedir@
+includedir=@prefix@/Headers
libdir=@libdir@
datarootdir=@datarootdir@
datadir=@datadir@
@@ -10,5 +10,5 @@
Name: uim
Description: multilingual input method library
Version: @VERSION@
-Cflags: -I${includedir}/uim
-Libs: -L${libdir} -luim-scm -luim @LIBINTL@ @LIBICONV@
+Cflags: -I${includedir}
+Libs: -framework UIM
次は、fwbuild スクリプトの diff です。ごちゃごちゃどうでもいい差分も含んでますが (すみません)、要点は新しく加わった、libuim-scm.la と libuim-bsdlook.la も UIM.framework に加えるということです。
diff -r fa605af03302 UIM/fwbuild
--- a/UIM/fwbuild Mon Jan 29 19:54:53 2007 +0900
+++ b/UIM/fwbuild Sun Oct 14 14:13:56 2007 +0900
@@ -19,9 +19,9 @@ cp -fv ../version.plist.in version.plist
cp -fv ../version.plist.in version.plist
export MACOSX_DEPLOYMENT_TARGET="10.3"
-PATH="${prefix}/bin:/Library/Anthy/bin:/Library/PRIME/bin:/Library/M17NLib/bin:/bin:/usr/bin"
+PATH="${prefix}/bin:/Library/Anthy/bin:/Library/PRIME/bin:/Library/M17NLib/bin:/sw/bin:/bin:/usr/bin:"
-#PATH="/opt/macuim/bin:$PATH" ./autogen.sh || exit 1
+PATH="/opt/macuim/bin:$PATH" ./autogen.sh || exit 1
perl -pi -e "s|\@VERSION\@|${version}|" *.plist
perl -pi -e "s|\@BUILD\@|${build}|" *.plist
@@ -34,13 +34,16 @@ CFLAGS="-I/opt/macuim/include -I/Library
CFLAGS="-I/opt/macuim/include -I/Library/M17NLib/include -I/Library/Anthy/include -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc" \
PKG_CONFIG="/opt/macuim/bin/pkg-config" \
PKG_CONFIG_PATH="/Library/PRIME/lib/pkgconfig:/Library/Anthy/lib/pkgconfig:/Library/M17NLib/lib/pkgconfig" \
-./configure --prefix=${prefix} --exec-prefix=${prefix} --enable-debug \
+./configure --prefix=${prefix} --exec-prefix=${prefix} \
--without-gtk2 --disable-fep --disable-applet \
- --with-x --disable-dependency-tracking || exit 1
+ --without-x --disable-dependency-tracking \
+ --enable-maintainer-mode --disable-backtrace \
+ --disable-strict-argcheck \
+ --with-anthy-utf8 || exit 1
perl -pi -e 's|-Werror||' uim/Makefile
-#mkdir -p ${dest}${prefix}/lib
+mkdir -p ${dest}${prefix}/lib
cd sigscheme
ln -s src/config.h .
@@ -58,6 +61,8 @@ gcc -dynamiclib -undefined dynamic_looku
gcc -dynamiclib -undefined dynamic_lookup \
-o uim/.libs/UIM \
uim/.libs/libuim_la*.o uim/.libs/libuim_custom_la*.o replace/.libs/libreplace.a \
+uim/.libs/libuim_scm_la*.o \
+uim/.libs/libuim_bsdlook_la*.o \
sigscheme/libgcroots/.libs/*.o \
-L/opt/macuim/lib -liconv -ldl -lintl \
-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc \
@@ -68,6 +73,8 @@ cd uim
perl -pi -e "s|^library_names=.*$|library_names='UIM'|" libuim.la
perl -pi -e "s|^library_names=.*$|library_names='UIM'|" libuim-custom.la
+perl -pi -e "s|^library_names=.*$|library_names='UIM'|" libuim-scm.la
+perl -pi -e "s|^library_names=.*$|library_names='UIM'|" libuim-bsdlook.la
make -w pkglibdir=${prefix}/pkglib || exit 1
@@ -76,10 +83,10 @@ make -w DESTDIR=${dest} pkglibdir=${pref
make -w DESTDIR=${dest} pkglibdir=${prefix}/pkglib \
install || exit 1
-cd xim
-make -w CXX="g++ -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc" || exit 1
-make -w DESTDIR=${dest} install || exit 1
-cd ..
+#cd xim
+#make -w CXX="g++ -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc" || exit 1
+#make -w DESTDIR=${dest} install || exit 1
+#cd ..
cd ${dest}/${prefix}
mv include/uim Headers
ビルドの仕方ですが、MacUIM/UIM ディレクトリで、svn checkout http://uim.googlecode.com/svn/trunk/ uim して、その uim ディレクトリの中で、svn co http://uim.googlecode.com/svn/sigscheme-trunk/ sigscheme して、さらに sigscheme ディレクトリの中で、svn co http://uim.googlecode.com/svn/libgcroots-trunk/ libgcroots します。あとは autotools を用意して、それぞれのディレクトリで ./autogen.sh しておいてから、uim ディレクトリにおいて、パッチを当てた fwbuild スクリプトを ../fwbuild 1.5.0 1 とでも動かせばいいです。その前に、Anthy ディレクトリで anthy-9100c をビルドし、 /Library/Anthy にインストールしておけば anthy plugin も作られます。
ということで、dual screen パッチを適用して、 uim trunk とanthy-9100c で作った MacUIM-0.5.2-3を一応置いておきます。Tiger 用 の Universal Binary になってます (テストしてません)。