On 7/05/2013 8:17 AM, Jonathan Liu wrote:
On 7/05/2013 7:05 AM, Saul Wold wrote:
On 05/06/2013 05:31 AM, Jonathan Liu wrote:
Patches are now part of upstream or no longer needed.
Added new util-linux dependency for isohybrid.
Paths updated to reflect directory structure changes.
INCDIR isn't used by the build process during compilation which results
in the compiler not finding uuid/uuid.h from util-linux when compiling
isohybrid unless it exists on the host system. This was fixed by adding
-isystem ${STAGING_INCDIR} to CC when calling make.
I am not sure what's changing in all these version since you have not
added a changelog. This version still has trouble with building
isohybrid.
I am not sure what you are doing to test this, but I would like to
see a more information about how you are building and testing this
before I take another version and find it will fail.
I appreciate the work it takes to update a recipe, but we need to get
it correct and tested
v1 - Patch malformed by email client
v2 - Added util-linux-native dependency.
Resent patch directly using git send-email
isohybrid.c:39:23: fatal error: uuid/uuid.h: No such file or directory
v3 - Changed util-linux-native dependency to util-linux so ot will
work when building for target as well.
Recipe finds uuid/uuid.h but from my syslinux installed on my host so
it appeared everything compiled fine but it didn't.
v4 - Added -I${includedir} to CC when calling make.
This didn't work because includedir is /usr/include when it should
point to the /usr/include in the sysroot.
v5 - Changed -I${includedir} to -isystem ${includedir}.
Still didn't work because includedir is /usr/include when it should
point to the /usr/include in the sysroot.
I was changed to -isystem after reading GCC manual. I figured it was
better for it to search its local source files first because checking
system include directories like /usr/include.
v6 - Changed -isystem ${includedir} to -isystem ${STAGING_INCDIR}.
Testing:
I am using a custom image based on atom-pc core-image-minimal, with
.hddimage output.
Tested changes using "bitbake -c cleansstate syslinux syslinux-native;
bitbake syslinux syslinux-native".
For testing v6, did a clean rebuild of everything, renamed
/usr/include/uuid.h to /usr/include/uuid.h.bak on my host system and
tests it:
1. Fails without the patch - ok
2. Succeeds with the patch - ok
I have tested syslinux 4.06 booting with .hddimg on:
-Intel Desktop Board D2500HN (Atom D2500 with NM10 Express Chipset), by
writing .hddimg to real hard drive with Win32 Disk Imager and connecting
to the board
-qemu-system-i386
-qemu-system-i386 -nographic
The main reason for me upgrading to 4.06 is that earlier versions fail
to boot on the D2500HN board more than once. First boot works but
subsequent boots hang - it just prints SYSLINUX line, does nothing for a
while and reboots the system. I found mounting the hard drive on a
Windows system and unmounting it makes it boot again once. I finally got
it to boot reliably after writing syslinux 4.06 to the hard drive. I
tested syslinux 4.05 but it still had same booting issue.
Regards,
Jonathan
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core