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 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.