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. _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel