> On Mar 2, 2017, at 7:56 AM, Andre <andre_...@hotmail.com> wrote:
> Hi All,
> I run 0.33 on a Mac and have a pretty large design.
> Tried to elaborate a design this afternoon and it came back with an error 
> advising Xcode needed permissions and then bailed out.
> Only solved by running the ghdl command under sudo and then came up with 
> commands for reading the license and agreeing to it.
> Once agreed all came through after this.

As Tristan commented ghdl uses the Xcode distribution linking loader.

There's a possibility using when using the ghdl-0.33 package that Apple's 
linker change in Xcode 7 will cause annoying warnings.

The change to fix a bug in outputting the minimum tool revision in object files 
can cause llvm to report a discrepancy during linking. llvm was accepting 
Apple's string value in the wrong place before llvm-3.8. After Apple changed to 
storing the right values in the right place llvm started generating warnings. 

The short term solution would to use Xcode 6.4 or it's command tools (cough, 
 cough). If you're using an earlier Xcode/command line tools you're safe. 
Alternatively you could live with the warnings, use the mcode version or build 
ghdl yourself.

> By the way is thee a plan to do a further release as a dpkg file for 
> something later than 0.33 ?

Building is as easy as specifying the right target once you have an Xcode 
installed (or command line tools), an llvm (with llvm-config installed) and an 
Ada (gnat).

Tristan has made it possible to use an llvm greater than the required so you 
can use 3.8.0 from llvm.org <http://llvm.org/>. Don't use llvm-3.5 it'll 
generate warnings during linking due to Apple's fix in Xcode 7 revealing a 
matching llvm defect, fixed in 3.8. I have checked the llvm-3.8.0 fix works 
with Xcode 7.1 and 7.2.

I last built Commit: afe8072bf5faa1dca1705a08e88818d454ff8758 [afe8072]
which was dated 18/19 Sep 2016 (international dateline depending), built Oct 4 
(local). This wasn't distributed. I'm planning on a new build shortly.

A new distribution package from me would depend on an actual ghdl release. I'm 
intending to go back to installing in /opt and linking to /usr/local (as in 
ghdl-0.31), allowing switching between versions with a command line tool (and 
permissions). It's also easier than contending with Homebrew for permissions. 
(Now there's an idea.... We hate's it, yes we does my precious. Nasty little 
Homebrew. Just gives us the fish!)

I'm not keeping up with MacOS (the Fisher-Price-ification of OS X despite an 
underlying UNIX), planning on switching back to Linux instead. The next package 
release will be my last. (Really, I have no use for a Touch Bar at the expense 
of a standard keyboard.)

Building ghdl yourself is easy.  I use the Adacore 
gnat-gpl-2015-x86_64-darwin-bin, the llvm clang+llvm-3.8.0-x86_64-apple-darwin 
(fixes the ld warning on linking). llvm-3.8 (and higher presumably) requires a 
full Xcode install using Xcode target platform determination. Keep your search 
path ore environmental variables straight pointing first to the right gnat and 
gcc and it's just a config and a make. The clang release includes llvm-config 
which Apple does not distribute.

We get anecdotal evidence there are some number of people building an llvm ghdl 
under OS X these days. The mcode version is really easy.

My packages were built with Packages 
<http://s.sudre.free.fr/Software/Packages/about.html>, and aren't signed. I'm 
too cheap^H^H^H^H^H principled to pay Apple for the privilege, having been a 
registered Apple Developer since 1991 (and it cost to join then, only a one 
time fee). ghdl isn't eligible for the app store anyway.

Releasing packages involves a lot of regression testing, ghdl validation is 
fairly easy, there can be a lot of work testing package install and un-install 
scripts and checking pkgutil receipts as well as ancillary scripts. A lot of 
care in is required in assembling packages, and watch your spelling, there's an 
error in one of the installer windows for ghdl-0.33, fewer than in the 0.31 

Ghdl-discuss mailing list

Reply via email to