It looks like flash_address() is missing a prototype in cfi.c which is causing link problems, but only if you are building -O0. You do that accidentally by overriding CFLAGS. The default CFLAGS is '-g -O2', but by setting it to '-I/opt/local/libusb-0.1.12/include' gcc defaults back to -O0.

Specifically, flash_address is defined in cfi.c and has the __inline__ attribute but there is no prototype. For -O0, inlining is ignored, so the callsites expect a function named flash_address to be generated, but gcc seems to not do so. For -O2, the callsites are inlined, so it builds.

Please try the attached patch.

Attachment: osx-cfi-flash_address-static.patch
Description: Binary data




Rick

On May 8, 2009, at 10:01 AM, Michael Fischer wrote:

Hello Rick,

here I use Xcode 3.0 and GCC 4.0.1, the setup for OpenOCD looks like:

./bootstrap

CFLAGS="-I/opt/local/libusb-0.1.12/include" \
LDFLAGS="-L/opt/local/libusb-0.1.12/lib -framework CoreFoundation - framework
IOKit" \
./configure --enable-maintainer-mode --enable-verbose-usb-comms -- enable-ver
bose-jtag-io \
--disable-werror --enable-jlink --prefix=/Users/mfischer/Projekte/ developmen
t/OpenOCD/release

But I have I got a lot of unresolved messages from libflash, that some
cfi_xxxx functions
could not found.

Attached is the config.log file from the setup. I have checkout the r1649
and use the
commands above.

Best regards,

Michael

-----Ursprungliche Nachricht-----
Von: Rick Altherr [mailto:[email protected]]
Gesendet: Freitag, 8. Mai 2009 00:18
An: Zach Welch
Cc: Michael Fischer; Openocd-Dev
Betreff: Re: [Openocd-development] Mac OS X: Broken build 1621 and above
(part 2)



On May 7, 2009, at 1:30 PM, Zach Welch wrote:

On Thu, 2009-05-07 at 21:27 +0200, Michael Fischer wrote:
Hello List,

the problem with r1621 can be solved if AC_PROG_CC_C99
is removed from configure.in. In this cas we have r1620.

But this is not solving the problem in the last version
r1649 if I remove AC_PROG_CC_C99 here too.

Can you provide more details about the C99 breakage?  You are the
first
person to report a problem, so I figure there is a workaround Darwin.

Cheers

Zach
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development


I saw no C99 breakage with r1649 but I didn't build all the possible
interfaces.  I did see that gcc was being invoked in gnu99 mode.

--
Rick Altherr
[email protected]

"He said he hadn't had a byte in three days. I had a short, so I split
it with him."
 -- Unsigned



<config.zip>

--
Rick Altherr
[email protected]

"He said he hadn't had a byte in three days. I had a short, so I split it with him."
 -- Unsigned



Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to