From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ross Biro Newsgroups: gmane.emacs.bugs Subject: bug#13479: Cross Compiling for ARM Date: Thu, 17 Jan 2013 14:36:08 -0500 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=20cf307c9d64421da004d3811b38 X-Trace: ger.gmane.org 1358452947 9573 80.91.229.3 (17 Jan 2013 20:02:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 17 Jan 2013 20:02:27 +0000 (UTC) To: 13479@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Jan 17 21:02:46 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Tvvfh-0001dT-E2 for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Jan 2013 21:02:45 +0100 Original-Received: from localhost ([::1]:33585 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvfQ-0003Mc-GS for geb-bug-gnu-emacs@m.gmane.org; Thu, 17 Jan 2013 15:02:28 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:54969) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvfL-0003Lv-MW for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 15:02:26 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TvvfI-0000XU-UQ for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 15:02:23 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:60139) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvfI-0000XJ-QF for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 15:02:20 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1Tvvfy-0001ry-Pk for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 15:03:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Ross Biro Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Jan 2013 20:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 13479 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.13584529467137 (code B ref -1); Thu, 17 Jan 2013 20:03:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 17 Jan 2013 20:02:26 +0000 Original-Received: from localhost ([127.0.0.1]:37370 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TvvfN-0001r3-Io for submit@debbugs.gnu.org; Thu, 17 Jan 2013 15:02:26 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:36942) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TvvGr-0001Ff-FC for submit@debbugs.gnu.org; Thu, 17 Jan 2013 14:37:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TvvG6-00028r-99 for submit@debbugs.gnu.org; Thu, 17 Jan 2013 14:36:23 -0500 Original-Received: from lists.gnu.org ([208.118.235.17]:32775) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvG6-00028m-5l for submit@debbugs.gnu.org; Thu, 17 Jan 2013 14:36:18 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:48280) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvG2-0001XR-06 for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 14:36:18 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TvvFx-000271-L4 for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 14:36:13 -0500 Original-Received: from mail-vc0-f170.google.com ([209.85.220.170]:36411) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvvFx-00026q-GF for bug-gnu-emacs@gnu.org; Thu, 17 Jan 2013 14:36:09 -0500 Original-Received: by mail-vc0-f170.google.com with SMTP id fl11so2953855vcb.29 for ; Thu, 17 Jan 2013 11:36:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:sender:date:x-google-sender-auth:message-id :subject:from:to:content-type; bh=Cb/AgYjqHB4jhvoqnjF12EA+AjY/rQNET3yW3XdPl5I=; b=mCNsODBENczcoWRaNd6XEGIhVxWufPAND3VJiP9RFfh2vAojWrEsgJ9BMC6BJ+A/rv FAJsq2FIaQZGl6SPp1nbxJsGdG8daVpgNgdWS4+01u6tDJkkErINCk02WjKXRIKPQXmM 8zX31fLTOp1vkceI4T6HVyEIGr25onUKcain0BRvtXPRFe5T5ubp41QG5VPVNfgaeRWC jbjVdwrGocwvPRdNRKuIE7U5vyMmhqPKhC1Ib5ci0Xtidd0hBfgzVvnkzBc5dh6qb55c yb0nZ4vuU+upRs8FB8dsUzCMZeuNJkhUuV9knFiUEasO4ynJfXiPjmr4CQuQWWv9w1S7 v+8g== X-Received: by 10.52.33.11 with SMTP id n11mr5882867vdi.131.1358451368402; Thu, 17 Jan 2013 11:36:08 -0800 (PST) Original-Received: by 10.58.106.167 with HTTP; Thu, 17 Jan 2013 11:36:08 -0800 (PST) X-Google-Sender-Auth: asbDirrJogtIl6wEbJ5YExlCNn0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Mailman-Approved-At: Thu, 17 Jan 2013 15:02:24 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:69942 Archived-At: --20cf307c9d64421da004d3811b38 Content-Type: text/plain; charset=ISO-8859-1 I just more or less successfully compiled emacs-24.2 for a Samsung Chromebook. I did it by using the chrooted build environment for chromiumos. In the process I learned a couple of things. I used the configuration: ../emacs-24.2/configure --build=x86_64-pc-linux-gnu --host=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi --with-x-toolkit=no --with-xpm=no --with-jpeg=no --with-png=no --with-gif=no --with-tiff=no --without-xml2 --without-gnutls --without-x --without-dbus --with-crt-dir=/build/arm-generic/usr/lib/ Obviously, I also had to CANNOT_DUMP=yes as well. 1) It doesn't look like emacs has a concept of a BUILDCC. I like to set CC to the cross compiler since that seems to be what most things need. However make-docfile and test-distrib need to be built with the local compiler. Usually the path to the local compiler is stored in BUILDCC. I just changed the $(CC) to $(BUILDCC) in the makefile for those two file and everything compiled ok. 2) The lisp and leim directories really want a local copy of emacs to compile. Since I didn't have one available in the chrooted environment, I just used /bin/true. Suboptimal, but it let the compile complete. I didn't see an obvious way to set the path to an external emacs, I just edited the makefile. 3) Now, a real bug. With an undumpped emacs, window__resize_root_window_vertically is called before it's defined. Even putting if (initialzed) before the call didn't help. I had to put if (!EQ (XSYMBOL (Qwindow_resize_root_window_vertically)->function, Qunbound)) before the two calls to call2 (Qwindow_resize_root_window_vertically, in window.c. Now, I'm going to try to and some more libraries and do some additional testing. If anyone has questions, email me directly. Ross --20cf307c9d64421da004d3811b38 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

I just more or les= s successfully compiled emacs-24.2 for a Samsung Chromebook.=A0 I did it by= using the chrooted build environment for chromiumos.=A0 In the process I l= earned a couple of things.

I used the configuration:

../emacs-24.2/configure=A0 = --build=3Dx86_64-pc-linux-gnu --host=3Darm-none-linux-gnueabi --target=3Dar= m-none-linux-gnueabi --with-x-toolkit=3Dno --with-xpm=3Dno --with-jpeg=3Dno= --with-png=3Dno --with-gif=3Dno --with-tiff=3Dno=A0 --without-xml2 --witho= ut-gnutls --without-x --without-dbus --with-crt-dir=3D/build/arm-generic/us= r/lib/

Obviously, I also had to CANNOT_DUMP=3Dyes as well.

1) It doesn't look like emacs has a concept of a BUILDC= C.=A0 I like to set CC to the cross compiler since that seems to be what mo= st things need.=A0 However make-docfile and test-distrib need to be built w= ith the local compiler.=A0 Usually the path to the local compiler is stored= in BUILDCC.=A0 I just changed the $(CC) to $(BUILDCC) in the makefile for = those two file and everything compiled ok.

2) The lisp and leim directories really want a local copy of emac= s to compile.=A0 Since I didn't have one available in the chrooted envi= ronment, I just used /bin/true.=A0 Suboptimal, but it let the compile compl= ete.=A0 I didn't see an obvious way to set the path to an external emac= s, I just edited the makefile.

3) Now, a real bug.=A0 With an undumpped emacs, window__resize_ro= ot_window_vertically is called before it's defined.=A0 Even putting if = (initialzed) before the call didn't help.=A0 I had to put=A0 if (!EQ (X= SYMBOL (Qwindow_resize_root_window_vertically)->function, Qunbound)) bef= ore the two calls to=A0 call2 (Qwindow_resize_root_window_vertically,=A0 in= window.c.

Now, I'm going to try to and some more libraries and do some = additional testing.=A0 If anyone has questions, email me directly.

<= /div>=A0=A0=A0 Ross
--20cf307c9d64421da004d3811b38--