Revision: 7106
Author:   ek.kato
Date:     Mon May 23 23:22:35 2011
Log:      * configure.ac (osx-dcs) : Add check for OS X Dictionary Services.
* scm/annotation-custom.scm : New file.
  - (enable-annotation)
  - (annotation-agent)
  - (eb)
  - (eb-enable-for-annotation?)
  - (annotation-eb-dic-path)
  - (dict)
  - (annotation-dict-server)
  - (annotation-dict-servname)
  - (annotation-dict-database)
  - (annotation-dict-cache-words)
  - (filter)
  - (annotation-filter-server-setting?)
  - (annotation-filter-unix-domain-socket-path)
  - (annotation-filter-tcpserver-name)
  - (annotation-filter-tcpserver-port)
  - (annotation-filter-command)
    - Move definitions from im-custom.scm.
  - (annotation-agent-list) : New.  Remove uninstalled agents.
* scm/Makefile.am (SCM_FILES) : Add annotation-custom.scm.
* scm/init.scm : Load annotatino-custom.scm when loading
  annotation agent.
* scm/im-custom.scm : Move annotation related definitions into
  annotation-custom.scm.
* uim/osx-dcs.m : New file.  This makes dictionary services
  available for the annotation system.
* uim/Makefile.am
  - (uim_plugin_LTLIBRARIES) : Add libuim-osx-dcs.la.
  - (libuim_osx_dcs_la_SOURCES) : New.
  - (libuim_osx_dcs_la_OBJCFLAGS) : New.
  - (libuim_osx_dcs_la_LDFLAGS) : New.

http://code.google.com/p/uim/source/detail?r=7106

Added:
 /trunk/scm/annotation-custom.scm
 /trunk/uim/osx-dcs.m
Modified:
 /trunk/configure.ac
 /trunk/scm/Makefile.am
 /trunk/scm/im-custom.scm
 /trunk/scm/init.scm
 /trunk/uim/Makefile.am

=======================================
--- /dev/null
+++ /trunk/scm/annotation-custom.scm    Mon May 23 23:22:35 2011
@@ -0,0 +1,264 @@
+;;; annotation-custom.scm: Customization variables for annotation.scm
+;;;
+;;; Copyright (c) 2003-2011 uim Project http://code.google.com/p/uim/
+;;;
+;;; All rights reserved.
+;;;
+;;; Redistribution and use in source and binary forms, with or without
+;;; modification, are permitted provided that the following conditions
+;;; are met:
+;;; 1. Redistributions of source code must retain the above copyright
+;;;    notice, this list of conditions and the following disclaimer.
+;;; 2. Redistributions in binary form must reproduce the above copyright
+;;;    notice, this list of conditions and the following disclaimer in the
+;;;    documentation and/or other materials provided with the distribution.
+;;; 3. Neither the name of authors nor the names of its contributors
+;;; may be used to endorse or promote products derived from this software
+;;;    without specific prior written permission.
+;;;
+;;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND
+;;; ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+;;; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE +;;; FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+;;; OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+;;; HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +;;; LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+;;; OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+;;; SUCH DAMAGE.
+;;;;
+
+(require "i18n.scm")
+
+;;
+;; Annotation
+;;
+
+(define-custom 'enable-annotation? #t
+  '(annotation candwin)
+  '(boolean)
+  (N_ "Enable annotation")
+  (N_ "long description will be here."))
+
+(define annotation-agent-list
+  (lambda ()
+    (let ((has-eb? (require-dynlib "eb"))
+          (has-osx-dcs? (require-dynlib "osx-dcs")))
+      (if (not custom-full-featured?)
+        (begin
+          (dynlib-unload "eb")
+          (dynlib-unload "osx-dcs")))
+      (filter (lambda (x) x)
+              (list 'choice
+                    (if has-eb?
+                      (list 'eb
+                            (N_ "EB library")
+                            (N_ "EB library"))
+                      #f)
+                    (list 'dict
+                          (N_ "dict server")
+                          (N_ "dict server"))
+                    (list 'filter
+                          (N_ "Custom filter")
+                          (N_ "Custom filter"))
+                    (if has-osx-dcs?
+                      (list 'osx-dcs
+                            (N_ "OS X dictionary services")
+                            (N_ "OS X dictionary services"))
+                      #f)
+                    (list 'im
+                          (N_ "Input method itself")
+                          (N_ "long description will be here.")))))))
+
+(define-custom 'annotation-agent 'eb
+  '(annotation candwin)
+  (annotation-agent-list)
+  (N_ "Annotation agent name")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'annotation-agent
+  'custom-activity-hooks
+  (lambda ()
+    enable-annotation?))
+
+(custom-add-hook 'annotation-agent
+                 'custom-set-hooks
+                 (lambda ()
+                   (annotation-unload)
+                   (annotation-load
+                     (if enable-annotation?
+                       (symbol->string annotation-agent)
+                       #f))))
+
+;; EB Library support
+(define-custom-group 'eb
+                    (N_ "EB library")
+                    (N_ "long description will be here."))
+
+;; eb-enable-for-annotation? exists only for compatibility.
+;; You shouldn't add similar variables to other annotation agents.
+(define-custom 'eb-enable-for-annotation? #f
+  '(annotation eb)
+  '(boolean)
+  (N_ "Use EB library to search annotations")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'eb-enable-for-annotation?
+  'custom-activity-hooks
+  (lambda ()
+    (and enable-annotation?
+      (eq? annotation-agent 'eb))))
+
+(define-custom 'annotation-eb-dic-path
+  (string-append (sys-datadir) "/dict")
+  '(annotation eb)
+  '(pathname directory)
+  (N_ "The directory which contains EB dictionary file")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'annotation-eb-dic-path
+  'custom-activity-hooks
+  (lambda ()
+    (and enable-annotation?
+         eb-enable-for-annotation?
+         (eq? annotation-agent 'eb))))
+
+;; dict server support
+(define-custom-group 'dict
+                    (N_ "dict server")
+                    (N_ "long description will be here."))
+
+(define-custom 'annotation-dict-server
+  "dict.org"
+  '(annotation dict)
+  '(string ".*")
+  (N_ "Server address of dict")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-dict-servname
+  2628
+  '(annotation dict)
+  '(integer 0 65535)
+  (N_ "Server port of dict")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-dict-database
+  "web1913"
+  '(annotation dict)
+  '(string ".*")
+  (N_ "Database name of dict")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-dict-cache-words
+  256
+  '(annotation dict)
+  '(integer 0 65535)
+  (N_ "Number of cache of annotation")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'annotation-dict-server
+                'custom-activity-hooks
+                 (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'dict))))
+
+(custom-add-hook 'annotation-dict-servname
+                'custom-activity-hooks
+                 (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'dict))))
+
+(custom-add-hook 'annotation-dict-database
+                'custom-activity-hooks
+                 (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'dict))))
+
+(custom-add-hook 'annotation-dict-cache-words
+                'custom-activity-hooks
+                 (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'dict))))
+
+(define-custom-group 'filter
+                    (N_ "Custom filter")
+                    (N_ "long description will be here."))
+
+(define-custom 'annotation-filter-server-setting? 'pipe
+  '(annotation filter)
+  (list 'choice
+        (list 'unixdomain
+              (N_ "Unix domain")
+ (N_ "Use UNIX domain socket to communicate with custom filter."))
+        (list 'tcpserver
+              (N_ "TCP server")
+              (N_ "Use tcp server to communicate with custom filter"))
+        (list 'pipe
+              (N_ "Pipe")
+ (N_ "Use pipe. spawn new annotation-filter process to communicate with custom filter")))
+  (N_ "Custom filter connection setting")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'annotation-filter-server-setting?
+  'custom-activity-hooks
+  (lambda ()
+    (and enable-annotation?
+         (eq? annotation-agent 'filter))))
+
+
+(define-custom 'annotation-filter-unix-domain-socket-path "/path/of/socket"
+  '(annotation filter)
+  '(pathname regular-file)
+  (N_ "Path of custom filter socket")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-filter-tcpserver-name "localhost"
+  '(annotation filter)
+  '(string ".*")
+  (N_ "Custom filter server address")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-filter-tcpserver-port 6789
+  '(annotation filter)
+  '(integer 0 65535)
+  (N_ "Custom filter server port")
+  (N_ "long description will be here."))
+
+(define-custom 'annotation-filter-command "/path/of/filter-program"
+  '(annotation filter)
+  '(pathname regular-file)
+  (N_ "Path of custom filter")
+  (N_ "long description will be here."))
+
+(custom-add-hook 'annotation-filter-unix-domain-socket-path
+                'custom-activity-hooks
+                (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'filter)
+                        (eq? annotation-filter-server-setting?
+                             'unixdomain))))
+
+(custom-add-hook 'annotation-filter-tcpserver-name
+                'custom-activity-hooks
+                (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'filter)
+                        (eq? annotation-filter-server-setting?
+                             'tcpserver))))
+
+(custom-add-hook 'annotation-filter-tcpserver-port
+                'custom-activity-hooks
+                (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'filter)
+                        (eq? annotation-filter-server-setting?
+                             'tcpserver))))
+
+(custom-add-hook 'annotation-filter-command
+                'custom-activity-hooks
+                 (lambda ()
+                   (and enable-annotation?
+                        (eq? annotation-agent 'filter)
+                        (eq? annotation-filter-server-setting?
+                             'pipe))))
=======================================
--- /dev/null
+++ /trunk/uim/osx-dcs.m        Mon May 23 23:22:35 2011
@@ -0,0 +1,90 @@
+/*
+
+  Copyright (c) 2011 uim Project http://code.google.com/p/uim/
+
+  All rights reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions
+  are met:
+
+  1. Redistributions of source code must retain the above copyright
+     notice, this list of conditions and the following disclaimer.
+  2. Redistributions in binary form must reproduce the above copyright
+     notice, this list of conditions and the following disclaimer in the
+     documentation and/or other materials provided with the distribution.
+  3. Neither the name of authors nor the names of its contributors
+     may be used to endorse or promote products derived from this software
+     without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND
+  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+  OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+  SUCH DAMAGE.
+
+*/
+
+#include <config.h>
+
+#include <Cocoa/Cocoa.h>
+#include <iconv.h>
+
+#include "uim.h"
+#include "uim-scm.h"
+#include "uim-scm-abbrev.h"
+#include "uim-util.h"
+#include "dynlib.h"
+
+
+static uim_lisp
+osx_dcs_search_text(uim_lisp text_, uim_lisp encoding_)
+{
+  char *str;
+
+  NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+
+  const char *enc = NULLP(encoding_) ? "UTF-8" : REFER_C_STR(encoding_);
+  iconv_t cd = (iconv_t)uim_iconv->create("UTF-8", enc);
+  char *text = uim_iconv->convert(cd, REFER_C_STR(text_));
+  uim_iconv->release(cd);
+
+  if (!text)
+    str = strdup("");
+  else {
+    NSString *key = [NSString stringWithUTF8String:text];
+    NSString *value = (NSString *)DCSCopyTextDefinition(NULL,
+                                             (CFStringRef)key,
+                                             CFRangeMake(0, [key length]));
+    const char *s = [value UTF8String];
+
+    if (s) {
+      cd = (iconv_t)uim_iconv->create(enc, "UTF-8");
+      str = uim_iconv->convert(cd, s);
+      uim_iconv->release(cd);
+      CFRelease((CFStringRef)value);
+    } else
+      str = strdup("");
+  }
+  free(text);
+  [pool release];
+
+  return MAKE_STR_DIRECTLY(str);
+}
+
+void
+uim_plugin_instance_init(void)
+{
+  uim_scm_init_proc2("osx-dcs-search-text", osx_dcs_search_text);
+}
+
+void
+uim_plugin_instance_quit(void)
+{
+}
=======================================
--- /trunk/configure.ac Fri May 20 23:33:19 2011
+++ /trunk/configure.ac Mon May 23 23:22:35 2011
@@ -1150,6 +1150,28 @@
AC_DEFINE(HAVE_EBLIB, 1, [Define to 1 if you have EB library and header file])
 fi

+dnl test for OS X
+AC_ARG_WITH(osx-dcs,
+  AS_HELP_STRING([--with-osx-dcs],
+                [Build with OS X Dictionary Services @<:@default=no@:>@]),
+  [
+  if test "x$with_osx_dcs" = "xyes"; then
+    case $host_os in
+    darwin*)
+      use_osx_dcs="yes"
+      ;;
+    *)
+      use_osx_dcs="no"
+      ;;
+    esac
+  else
+    use_osx_dcs="no"
+  fi
+  ],
+   use_osx_dcs="no"
+)
+AM_CONDITIONAL(OSX_DCS, test x"$use_osx_dcs" = "xtrue")
+
 # Check whether user wants libedit support
 # This code was based on openssh-4.1p1

@@ -2020,6 +2042,7 @@
    Pref            : ${use_pref}
    DICT            : ${use_dict}
    EB              : ${use_eb}
+   OSX dictionary  : ${use_osx_dcs}
    libedit         : ${use_libedit}
    notify          : ${use_notify}
    Default toolkit : ${default_toolkit}
=======================================
--- /trunk/scm/Makefile.am      Sat Jan 22 10:13:48 2011
+++ /trunk/scm/Makefile.am      Mon May 23 23:22:35 2011
@@ -58,7 +58,7 @@
  http-client.scm http-server.scm \
  sxml-tools.scm sxpathlib.scm \
  annotation.scm annotation-eb.scm annotation-dict.scm \
- annotation-filter.scm \
+ annotation-filter.scm annotation-custom.scm \
  dynlib.scm \
  ct.scm \
  dict-socket.scm
=======================================
--- /trunk/scm/im-custom.scm    Sun May 15 21:23:46 2011
+++ /trunk/scm/im-custom.scm    Mon May 23 23:22:35 2011
@@ -577,220 +577,6 @@
                         (eq? bridge-show-with?
                              'time))))

-;;
-;; Annotation
-;;
-
-(define-custom 'enable-annotation? #t
-  '(annotation candwin)
-  '(boolean)
-  (N_ "Enable annotation")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-agent 'eb
-  '(annotation candwin)
-  (list 'choice
-    (list 'eb
-      (N_ "EB library")
-      (N_ "EB library"))
-    (list 'dict
-      (N_ "dict server")
-      (N_ "dict server"))
-    (list 'filter
-      (N_ "Custom filter")
-      (N_ "Custom filter"))
-    (list 'im
-      (N_ "Input method itself")
-      (N_ "long description will be here.")))
-  (N_ "Annotation agent name")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'annotation-agent
-  'custom-activity-hooks
-  (lambda ()
-    enable-annotation?))
-
-(custom-add-hook 'annotation-agent
-                 'custom-set-hooks
-                 (lambda ()
-                   (annotation-unload)
-                   (annotation-load
-                     (if enable-annotation?
-                       (symbol->string annotation-agent)
-                       #f))))
-
-;; EB Library support
-(define-custom-group 'eb
-                    (N_ "EB library")
-                    (N_ "long description will be here."))
-
-;; eb-enable-for-annotation? exists only for compatibility.
-;; You shouldn't add similar variables to other annotation agents.
-(define-custom 'eb-enable-for-annotation? #f
-  '(annotation eb)
-  '(boolean)
-  (N_ "Use EB library to search annotations")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'eb-enable-for-annotation?
-  'custom-activity-hooks
-  (lambda ()
-    (and enable-annotation?
-      (eq? annotation-agent 'eb))))
-
-(define-custom 'annotation-eb-dic-path
-  (string-append (sys-datadir) "/dict")
-  '(annotation eb)
-  '(pathname directory)
-  (N_ "The directory which contains EB dictionary file")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'annotation-eb-dic-path
-  'custom-activity-hooks
-  (lambda ()
-    (and enable-annotation?
-         eb-enable-for-annotation?
-         (eq? annotation-agent 'eb))))
-
-;; dict server support
-(define-custom-group 'dict
-                    (N_ "dict server")
-                    (N_ "long description will be here."))
-
-(define-custom 'annotation-dict-server
-  "dict.org"
-  '(annotation dict)
-  '(string ".*")
-  (N_ "Server address of dict")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-dict-servname
-  2628
-  '(annotation dict)
-  '(integer 0 65535)
-  (N_ "Server port of dict")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-dict-database
-  "web1913"
-  '(annotation dict)
-  '(string ".*")
-  (N_ "Database name of dict")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-dict-cache-words
-  256
-  '(annotation dict)
-  '(integer 0 65535)
-  (N_ "Number of cache of annotation")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'annotation-dict-server
-                'custom-activity-hooks
-                 (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'dict))))
-
-(custom-add-hook 'annotation-dict-servname
-                'custom-activity-hooks
-                 (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'dict))))
-
-(custom-add-hook 'annotation-dict-database
-                'custom-activity-hooks
-                 (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'dict))))
-
-(custom-add-hook 'annotation-dict-cache-words
-                'custom-activity-hooks
-                 (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'dict))))
-
-(define-custom-group 'filter
-                    (N_ "Custom filter")
-                    (N_ "long description will be here."))
-
-(define-custom 'annotation-filter-server-setting? 'pipe
-  '(annotation filter)
-  (list 'choice
-        (list 'unixdomain
-              (N_ "Unix domain")
- (N_ "Use UNIX domain socket to communicate with custom filter."))
-        (list 'tcpserver
-              (N_ "TCP server")
-              (N_ "Use tcp server to communicate with custom filter"))
-        (list 'pipe
-              (N_ "Pipe")
- (N_ "Use pipe. spawn new annotation-filter process to communicate with custom filter")))
-  (N_ "Custom filter connection setting")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'annotation-filter-server-setting?
-  'custom-activity-hooks
-  (lambda ()
-    (and enable-annotation?
-         (eq? annotation-agent 'filter))))
-
-
-(define-custom 'annotation-filter-unix-domain-socket-path "/path/of/socket"
-  '(annotation filter)
-  '(pathname regular-file)
-  (N_ "Path of custom filter socket")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-filter-tcpserver-name "localhost"
-  '(annotation filter)
-  '(string ".*")
-  (N_ "Custom filter server address")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-filter-tcpserver-port 6789
-  '(annotation filter)
-  '(integer 0 65535)
-  (N_ "Custom filter server port")
-  (N_ "long description will be here."))
-
-(define-custom 'annotation-filter-command "/path/of/filter-program"
-  '(annotation filter)
-  '(pathname regular-file)
-  (N_ "Path of custom filter")
-  (N_ "long description will be here."))
-
-(custom-add-hook 'annotation-filter-unix-domain-socket-path
-                'custom-activity-hooks
-                (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'filter)
-                        (eq? annotation-filter-server-setting?
-                             'unixdomain))))
-
-(custom-add-hook 'annotation-filter-tcpserver-name
-                'custom-activity-hooks
-                (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'filter)
-                        (eq? annotation-filter-server-setting?
-                             'tcpserver))))
-
-(custom-add-hook 'annotation-filter-tcpserver-port
-                'custom-activity-hooks
-                (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'filter)
-                        (eq? annotation-filter-server-setting?
-                             'tcpserver))))
-
-(custom-add-hook 'annotation-filter-command
-                'custom-activity-hooks
-                 (lambda ()
-                   (and enable-annotation?
-                        (eq? annotation-agent 'filter)
-                        (eq? annotation-filter-server-setting?
-                             'pipe))))
-
 ;;
 ;; uim-xim specific custom
 ;;
=======================================
--- /trunk/scm/init.scm Thu Jan  6 18:09:56 2011
+++ /trunk/scm/init.scm Mon May 23 23:22:35 2011
@@ -132,6 +132,7 @@
     (uim-notify-load (symbol->string notify-agent)))

 ;; redefine annotation-related procedures to use an annotation agent
+(require-custom "annotation-custom.scm")
 (and enable-annotation?
   (annotation-load (symbol->string annotation-agent)))

=======================================
--- /trunk/uim/Makefile.am      Thu May 27 18:53:01 2010
+++ /trunk/uim/Makefile.am      Mon May 23 23:22:35 2011
@@ -195,6 +195,13 @@
 libuim_eb_la_CFLAGS = @EBCONF_PTHREAD_CFLAGS@ -Wall
 endif

+if OSX_DCS
+uim_plugin_LTLIBRARIES += libuim-osx-dcs.la
+libuim_osx_dcs_la_SOURCES = osx-dcs.m
+libuim_osx_dcs_la_OBJCFLAGS = -x objective-c
+libuim_osx_dcs_la_LDFLAGS = -avoid-version -module -framework Cocoa
+endif
+
 uim_plugin_LTLIBRARIES += libuim-skk.la
 libuim_skk_la_SOURCES = skk.c bsdlook.h
 libuim_skk_la_LIBADD = libuim-scm.la libuim.la libuim-bsdlook.la @NETLIBS@

Reply via email to