From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: CHENG Gao Newsgroups: gmane.emacs.devel Subject: Carbon port emacs-unicode-2 build problem under MacOSX Date: Tue, 06 Nov 2007 20:02:20 +0800 Organization: cyberhut.org Message-ID: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1194350591 7130 80.91.229.12 (6 Nov 2007 12:03:11 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 6 Nov 2007 12:03:11 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Nov 06 13:03:15 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IpN9G-000050-RK for ged-emacs-devel@m.gmane.org; Tue, 06 Nov 2007 13:03:15 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IpN96-0005m4-63 for ged-emacs-devel@m.gmane.org; Tue, 06 Nov 2007 07:03:04 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IpN92-0005lx-6v for emacs-devel@gnu.org; Tue, 06 Nov 2007 07:03:00 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IpN90-0005lO-Vj for emacs-devel@gnu.org; Tue, 06 Nov 2007 07:02:59 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IpN90-0005lL-SR for emacs-devel@gnu.org; Tue, 06 Nov 2007 07:02:58 -0500 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IpN90-00030M-6d for emacs-devel@gnu.org; Tue, 06 Nov 2007 07:02:58 -0500 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1IpN8r-0000WG-0x for emacs-devel@gnu.org; Tue, 06 Nov 2007 12:02:49 +0000 Original-Received: from 222.94.199.221 ([222.94.199.221]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 06 Nov 2007 12:02:49 +0000 Original-Received: from chenggao by 222.94.199.221 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 06 Nov 2007 12:02:49 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 107 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 222.94.199.221 User-Agent: Gnus/5.110007 (No Gnus v0.7) Emacs/23.0.0 (darwin) Cancel-Lock: sha1:oxKUWwy3tzvh/j7jz7/1F34MTOs= X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:82653 Archived-At: My last successfully build was on May 26. Yesterday I gave it another try and found something. I reported twice before about failing owing to undefined symbols in macterm.c. The problem is from new mac_set_unicode_keystroke_event introduced by June 7 checkin (revision 1.47.2.56, Wed Jun 7 18:04:51 2006 UTC). The code: ,---- | static void | mac_set_unicode_keystroke_event (code, buf) | UniChar code; | struct input_event *buf; | { | int charset_id, c1, c2; | | if (code < 0x80) | { | buf->kind = ASCII_KEYSTROKE_EVENT; | buf->code = code; | } | else if (code < 0x100) | { | if (code < 0xA0) | charset_id = CHARSET_8_BIT_CONTROL; | else | charset_id = charset_latin_iso8859_1; | buf->kind = MULTIBYTE_CHAR_KEYSTROKE_EVENT; | buf->code = MAKE_CHAR (charset_id, code, 0); | } | else | { | if (code < 0x2500) | charset_id = charset_mule_unicode_0100_24ff, | code -= 0x100; | else if (code < 0x33FF) | charset_id = charset_mule_unicode_2500_33ff, | code -= 0x2500; | else if (code >= 0xE000) | charset_id = charset_mule_unicode_e000_ffff, | code -= 0xE000; | c1 = (code / 96) + 32, c2 = (code % 96) + 32; | buf->kind = MULTIBYTE_CHAR_KEYSTROKE_EVENT; | buf->code = MAKE_CHAR (charset_id, c1, c2); | } | } `---- CHARSET_8_BIT_CONTROL, charset_mule_unicode_0100_24ff, charset_mule_2500_33ff, charset_mule_unicode_e000_ffff used here are defined in any place. I reverted this funciton to previous as: ,---- | static void | mac_set_unicode_keystroke_event (code, buf) | UniChar code; | struct input_event *buf; | { | int charset_id, c1, c2; | | if (code < 0x80) | buf->kind = ASCII_KEYSTROKE_EVENT; | else | buf->kind = MULTIBYTE_CHAR_KEYSTROKE_EVENT; | buf->code = code; | } `---- Now macterm.c can be built. Another error (for building latest cvs source) is "Undefined symbols: _res_init_9". I googled and found a workaround, that's do ,---- | export LIBS=-lresolv `---- before "make bootstrap". (Original URL: http://groups.google.com.ua/group/gnu.emacs.bug/msg/70a2759b8d6069e1 ) Thus I can build emacs-unicode-2 successfully. Emacs running from terminal works ok. But Emacs.app (running from Finder) is not usable. For every keystroke (keyboard input or mouse click) I have to wait for several minutes. I think it's owing to my brutal revert of mac_set_unicode_keystrok_event which makes do_keystrokes dysfunction. Another possibility is workaround of "export LIBS=-lresolv". I have no idea. Or owing to merge of multi-tty code? >From reading this group (gmane.emacs.devel) I know Carbon port is treated as dead (really?). Even though I think I should report my finding in case someone is willing to try to get it work again. If Carbon port is treated as dead, and emacs-app (Cocoa port, http://emacs-app.sf.net) works well, is it possible that emacs-app be merged (as a branch in cvs or git repo) thus we MacOSX users can have an evolving Emacs? Sorry for disturbing everybody. -- Homo sum, humani being nil a me alienum puto