From: Andrei Borzenkov <arvidjaar@gmail.com>
To: Jiri B <jirib@devio.us>
Cc: bug-grub@gnu.org, The development of GNU GRUB <grub-devel@gnu.org>
Subject: Re: [openbsd] 2.02-beta3: build fails - getroot.c:(.text+0x2b): undefined reference to `getrawpartition'
Date: Sun, 13 Mar 2016 08:41:27 +0300 [thread overview]
Message-ID: <56E4FD87.1040009@gmail.com> (raw)
In-Reply-To: <20160312195423.GS17281@wolfman.devio.us>
12.03.2016 22:54, Jiri B пишет:
> On Sat, Mar 12, 2016 at 09:29:15PM +0300, Andrei Borzenkov wrote:
>>> cc -Wall -W -Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissing-braces -Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes -Wcast-align -Wextra -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros -Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-declarations -Wformat=2 -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wn
o
>> -
>> unreachable-code -Wno-conversion -O2 -pipe -o grub-macbless util/grub_macbless-grub-macbless.o grub-core/osdep/grub_macbless-init.o grub-core/kern/emu/grub_macbless-argp_common.o libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/gnulib/libgnu.a /usr/local/lib/libintl.so.6.0 -L/usr/local/lib /usr/local/lib/libiconv.so.6.0 -lc -Wl,-rpath,/usr/local/lib
>>> libgrubkern.a(libgrubkern_a-hostdisk.o): In function `read_device_map':
>>> hostdisk.c:(.text+0x7ab): warning: warning: strcpy() is almost always misused, please use strlcpy()
>>> libgrubkern.a(libgrubkern_a-misc.o): In function `grub_util_get_path':
>>> misc.c:(.text+0x12a): warning: warning: sprintf() is often misused, please use snprintf()
>>> libgrubkern.a(libgrubkern_a-getroot.o): In function `grub_util_part_to_disk':
>>> getroot.c:(.text+0x2b): undefined reference to `getrawpartition'
>>>
>>
>> Does attached patch help?
>>
>> diff --git a/Makefile.util.def b/Makefile.util.def
>> index ed9b4c6..f9caccb 100644
>> --- a/Makefile.util.def
>> +++ b/Makefile.util.def
>> @@ -416,7 +416,7 @@ program = {
>> ldadd = libgrubgcry.a;
>> ldadd = libgrubkern.a;
>> ldadd = grub-core/gnulib/libgnu.a;
>> - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
>> + ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
>> };
>>
>> data = {
>
> Thank you, your diff makes compilation pass.
>
Good, pushed. Thanks for testing.
> Well, I see something went wrong now with compressing a file:
>
> $ tar tzvf /home/jirib/openbsd/packages/amd64/all/grub-2.02-beta3.tgz | grep lzma_decompress
> -r-xr-xr-x 1 root bin 3904 Jan 1 1970 lib/grub/i386-pc/lzma_decompress.image
> -r--r--r-- 1 root bin 134480024 Jan 1 1970 lib/grub/i386-pc/lzma_decompress.img
>
> It should not be 128MB, right? :)
>
No. Something went wrong with section addresses/offsets. Please test
2.02~beta2 - do you observe the same problem? Please upload
lzma_decompress.image. Where obcopy comes from (obcopy --version)? What
assembler is used?
> I uploaded whole build log here: http://devio.us/~jirib/grub.txt (2.3MB)
>
>>> -find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' |sort > po/POTFILES.in
>>> +find . -iname '*.[ch]' ! -path './grub-core/lib/libgcrypt-grub/*' ! -path './build-aux/*' ! -path './grub-core/lib/libgcrypt/src/misc.c' ! -path './grub-core/lib/libgcrypt/src/global.c' ! -path './grub-core/lib/libgcrypt/src/secmem.c' ! -path './util/grub-gen-widthspec.c' ! -path './util/grub-gen-asciih.c' |sort > po/POTFILES.in
>>> find util -iname '*.in' ! -name Makefile.in |sort > po/POTFILES-shell.in
>>>
>>
>> Hmm ... we support building on Windows which is case insensitive. What
>> are other options to compare full path name case insenstive?
>
> I can live with patching it. OpenBSD find doesn't have 'ipath' and IIUC
> it's not POSIX requiremement, so I doubt it will be implemented.
>
Why did you need it initially? Normally it is needed only when building
from GIT; tarball comes with generated files.
>>> Another thing - 'INSTALL' file says >= autoconf 2.60 is needed but
>>> it is >= 2.62 otherwise there is:
>>>
>>> "error: possibly undefined macro: AS_ECHO"
>>>
>>
>> Indeed. According to git log, AS_ECHO appeared first in 2.61a. What
>> version you have?
>
> IIUC it was firstly available in "normal" autoconf release in 2.62.
>
This does not answer my question - what autoconf version your system
ships with (i.e. - do we need to change configure.ac or simply update
INSTALL)?
>>> IIRC there's also a difference between NetBSD and OpenBSD regarding
>>> to disks. NetBSD uses eg. /dev/rwd0c for NetBSD part, /dev/rwd0d for
>>> whole disk, OpenBSD uses 'c' for whole disk and 'd' has no special
>>> reason.
>>>
>>
>> If I understand it correctly, getrawpartition() is supposed to handle it
>> (i.e. return entire disk partition number). What exactly does not work?
>
> The above comment was just comment. Not sure if there's real issue in
> grub code based on those NetBSD/OpenBSD differences.
>
OK, please test after lzma_decompress issue is solved and report problems.
next prev parent reply other threads:[~2016-03-13 5:41 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20160312165742.GR17281@wolfman.devio.us>
2016-03-12 18:29 ` [openbsd] 2.02-beta3: build fails - getroot.c:(.text+0x2b): undefined reference to `getrawpartition' Andrei Borzenkov
2016-03-12 19:54 ` Jiri B
2016-03-13 5:41 ` Andrei Borzenkov [this message]
2016-03-14 18:19 ` Jiri B
2016-03-14 18:46 ` Andrei Borzenkov
2016-03-17 10:12 ` Jiri B
2016-03-17 15:54 ` Andrei Borzenkov
2016-03-17 16:04 ` Vladimir 'phcoder' Serbinenko
2016-03-17 16:07 ` Andrei Borzenkov
2016-03-17 20:56 ` Jiri B
2016-03-18 3:26 ` Andrei Borzenkov
2016-03-18 13:01 ` Jiri B
2016-03-18 16:53 ` Andrei Borzenkov
2016-03-18 19:48 ` Vladimir 'phcoder' Serbinenko
2016-03-22 10:31 ` Jiri B
2016-03-22 17:48 ` Andrei Borzenkov
2016-03-24 3:55 ` Andrei Borzenkov
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=56E4FD87.1040009@gmail.com \
--to=arvidjaar@gmail.com \
--cc=bug-grub@gnu.org \
--cc=grub-devel@gnu.org \
--cc=jirib@devio.us \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).