From: Dan Nicolaescu <dann@gnu.org>
To: Angelo Graziosi <angelo.graziosi@alice.it>
Cc: Eli Zaretskii <eliz@gnu.org>, Ken Brown <kbrow1i@gmail.com>,
emacs <emacs-devel@gnu.org>
Subject: Re: Trunk bootstrap failure [Cygwin]
Date: Wed, 07 Jul 2010 12:22:36 -0400 [thread overview]
Message-ID: <yxq39vvcldf.fsf@fencepost.gnu.org> (raw)
In-Reply-To: <4C344500.9010906@alice.it> (Angelo Graziosi's message of "Wed\, 07 Jul 2010 11\:12\:32 +0200")
Angelo Graziosi <angelo.graziosi@alice.it> writes:
> Il 06/07/2010 17.19, Dan Nicolaescu ha scritto:
>> Angelo Graziosi<angelo.graziosi@alice.it> writes:
>>
>>> Il 06/07/2010 4.29, Dan Nicolaescu ha scritto:
>>>> Angelo Graziosi<angelo.graziosi@alice.it> writes:
>>>>
>>>>> Current trunk (rev. 100729) fails to bootstrap on Cygwin in this way:
>>>>>
>>>>> [...]
>>>>> gcc -c -Demacs -DHAVE_CONFIG_H -I. -I/tmp/emacs/src -D_REENTRANT
>>>>> -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
>>>>> -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0
>>>>> -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0
>>>>> -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1
>>>>> -I/usr/include/freetype2 -I/usr/include/libpng12
>>>>> -I/usr/include/freetype2 -D_REENTRANT -I/usr/include/librsvg-2
>>>>> -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
>>>>> -I/usr/include/gtk-2.0 -I/usr/include/cairo -I/usr/include/pixman-1
>>>>> -I/usr/include/freetype2 -I/usr/include/libpng12
>>>>> -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -DORBIT2=1
>>>>> -D_REENTRANT -I/usr/include/gconf/2 -I/usr/include/orbit-2.0
>>>>> -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include
>>>>> -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -g -O2
>>>>> -Wdeclaration-after-statement -Wno-pointer-sign -MMD -MF
>>>>> deps/ecrt0.d /tmp/emacs/src/ecrt0.c
>>>>> /tmp/emacs/src/ecrt0.c: In function ‘_start’:
>>>>> /tmp/emacs/src/ecrt0.c:74: error: too few arguments to function ‘start1’
>>>>> make[2]: *** [ecrt0.o] Error 1
>>>>> make[2]: Leaving directory `/tmp/emacs/build/src'
>>>>> make[1]: *** [src] Error 2
>>>>> make[1]: Leaving directory `/tmp/emacs/build'
>>>>> make: *** [bootstrap] Error 2
>>>>>
>>>>> The bootstrap I did on 01 July (rev. 100669) was fine.
>>>>
>>>> I reverted the conversion to standard C for ecrt0.c, it should be fine now.
>>>> cygwin is the only user for ecrt0.c
>>>> Can you please experiment changing
>>>> START_FILES='ecrt0.o'
>>>> to either:
>>>> START_FILES='pre-crt0.o'
>>>> or
>>>> START_FILES=
>>>> in emacs/configure
>>>> and see if any of those work?
>>>
>>> Both solutions, you suggest, fail.
>>
>> Thanks. Oh, well, someone would have to look at the details of the
>> cygwin build to figure out if this can be really done...
>
> Hmm... I have seen that on Cygwin:
>
> $ objdump.exe -p foo.exe | fgrep ImageBase
>
> returns always:
>
> ImageBase 00400000
>
> I have seen also that there are, in Emacs source tree, other systems
> (see src/s/mips.h, for example) which define 'TEXT_START 0x00400000'.
>
> So, not knowing how 'to read or write', I have applied these
> self-explanatory patches...
>
> ============
> --- configure.orig 2010-07-02 11:27:38.000000000 +0200
> +++ configure 2010-07-06 10:45:21.656250000 +0200
> @@ -5864,7 +5864,7 @@
> case $opsys in
> cygwin )
> LIB_MATH=
> - START_FILES='ecrt0.o'
> + START_FILES='pre-crt0.o'
> ;;
> darwin )
> ## Adding -lm confuses the dynamic linker, so omit it.
> --- cygwin.h.orig 2010-06-06 11:34:28.000000000 +0200
> +++ cygwin.h 2010-07-07 10:24:22.625000000 +0200
> @@ -112,5 +112,7 @@
> returns ENOSYS. A workaround is to set G_SLICE=always-malloc. */
> #define G_SLICE_ALWAYS_MALLOC
>
> +#define TEXT_START 0x00400000
> +
It looks like the start_of_text function is only used on AIX and
MSDOS, so you can get the same result by completely removing start_of_text, which makes the
#define TEXT_START
unnecessary.
I'll add the needed conditionals around start_of_text soon.
> ...and Emacs (rev. 100739) bootstraps fine...
>
> But, are those patches the best solution? Are we sure that in the
> future there will not pitfalls or drawbacks?
IMHO if you can run a few days without problems, it should be fine,
this should generate memory problems pretty fast if it's wrong...
>
> Eli, Ken, have you comments and/or suggestions?
>
> Thanks,
> Angelo.
next prev parent reply other threads:[~2010-07-07 16:22 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-05 23:35 Trunk bootstrap failure [Cygwin] Angelo Graziosi
2010-07-06 2:29 ` Dan Nicolaescu
2010-07-06 9:08 ` Angelo Graziosi
2010-07-06 15:19 ` Dan Nicolaescu
2010-07-07 9:12 ` Angelo Graziosi
2010-07-07 10:34 ` Eli Zaretskii
2010-07-07 12:11 ` Ken Brown
2010-07-07 16:22 ` Dan Nicolaescu [this message]
2010-07-08 0:16 ` Angelo Graziosi
2010-07-08 5:54 ` Dan Nicolaescu
2010-07-08 9:01 ` Angelo Graziosi
2010-07-08 10:09 ` Angelo Graziosi
2010-07-08 10:22 ` Eli Zaretskii
2010-07-08 10:32 ` Andreas Schwab
2010-07-08 23:07 ` Dan Nicolaescu
2010-07-09 13:49 ` Angelo Graziosi
2010-07-09 17:08 ` Dan Nicolaescu
2010-07-09 22:35 ` Angelo Graziosi
2010-07-10 1:36 ` Dan Nicolaescu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=yxq39vvcldf.fsf@fencepost.gnu.org \
--to=dann@gnu.org \
--cc=angelo.graziosi@alice.it \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=kbrow1i@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.