Earnest,
Apologies for the delay. I've been waiting for GNAT GPL16 to emerge before tackling the archy Ada updates. (Also been a bit flat out.)
"... a malicious user can dump a gcc or clang script in some bin
directory prepended to PATH and gprbuild will blindly use it."
I didn't know of this problem. Thanks for pointing it out.
"... they're going to add a standalone static gprbuild binary
which should help bootstrapping in the 2016 release."
This they have done. You're 'whining' has done some good ! ... :) . Yes, it should help simplify things considerably.
"... my approach is to build gprbuild using the static gprbuild, which also builds xmlada ..."
I will try to do the same.
"... they've at least added checksums for their over-http downloads."
Again, this they have done :) .
Sincere thanks for your comments (and successful efforts to improve the Ada ecosystem). My impression is that AdaCore is largely resistant to outside influences, so your efforts are doubly appreciated.
cheers,
charlie5.
Search Criteria
Package Details: gprbuild 1:25.0w-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/gprbuild.git (read-only, click to copy) |
---|---|
Package Base: | gprbuild |
Description: | Builder for multi-language systems. |
Upstream URL: | https://github.com/AdaCore/gprbuild/ |
Licenses: | custom, GPL3 |
Conflicts: | gprbuild-bootstrap |
Submitter: | None |
Maintainer: | charlie5 |
Last Packager: | charlie5 |
Votes: | 36 |
Popularity: | 0.033594 |
First Submitted: | 2010-02-03 13:25 (UTC) |
Last Updated: | 2024-05-31 06:07 (UTC) |
Dependencies (3)
- libgprAUR (libgpr-gitAUR)
- gprbuildAUR (gprbuild-gitAUR, gprbuild-bootstrapAUR) (make)
- python-sphinx (python-sphinx-gitAUR) (make)
Required by (60)
- ada-libfswatch (make)
- ada-libfswatch-git (make)
- ada-web-server (make)
- adaogg (make)
- adasat (make)
- ada_language_server (make)
- ada_language_server-git (make)
- ada_spawn (make)
- alire (make)
- alire-git (make)
- all-ada
- aunit (make)
- gnatcoll-core-git (make)
- gnatcoll-db2ada (make)
- gnatcoll-gmp (make)
- gnatcoll-gmp-git (make)
- gnatcoll-gnatinspect (make)
- gnatcoll-iconv (make)
- gnatcoll-iconv-git (make)
- gnatcoll-lzma (make)
- Show 40 more...
Sources (4)
- 0001-Makefile-build-relocatable-instead-of-static-binary.patch
- gpr.gpr-patch
- https://github.com/charlie5/archlinux-gnatstudio-support/raw/main/gnatstudio-sources-2024/gprbuild-25.0w-20240408-162DA-src.tar.gz
- https://github.com/charlie5/archlinux-gnatstudio-support/raw/main/gnatstudio-sources-2024/gprconfig-kb-25.0w-20240408-16484-src.tar.gz
Latest Comments
« First ‹ Previous 1 .. 4 5 6 7 8 9 10 11 Next › Last »
charlie5 commented on 2016-06-01 09:32 (UTC)
Earnest commented on 2016-05-15 12:53 (UTC) (edited on 2016-05-15 12:57 (UTC) by Earnest)
I've tried working with upstream Adacore to fix this build system and it's
hopeless.
They refuse to move from Debianisms and employ very sketchy practices such as
rolling over PATH to find tools.
This NIH could be solved nicely by honouring de facto environments such as CC
but no, instead a malicious user can dump a gcc or clang script in some bin
directory prepended to PATH and gprbuild will blindly use it.
They also offer no way to bootstrap gprbuild (other build systems, such as
make, don't seem to suffer from this insanity). Up until now they've only
provided a static gprbuild as part of their giant 300+MiB download, although
thanks to my whining they're going to add a standalone static gprbuild binary
which should help bootstrapping in the 2016 release.
Speaking of bootstrapping, my approach is to build gprbuild using the static
gprbuild, which also builds xmlada (PKGBUILD: <https://ptpb.pw/UGfU/sh>). Then
this gprbuild is used to build xmlada (PKGBUILD: <https://ptpb.pw/Tk_k/sh>)
proper and then the final gprbuild (PKGBUILD: <https://ptpb.pw/YP6n/sh>
(incomplete)). At this point gprbuild will also provide gprbuild-bootstrap as
a virtual package so any subsequent rebuilds can use it instead of going
through the static one.
* https://github.com/AdaCore/gprbuild/issues/2
* https://github.com/AdaCore/xmlada/issues/1
* https://github.com/AdaCore/xmlada/issues/2
Hopefully this can help to verify the initial compiler wasn't malicious IIRC
<http://www.dwheeler.com/trusting-trust/> as Adacore do not sign their
downloads, although again thanks to my whining they've at least added checksums
for their over-http downloads.
Either way, Adacore is a miserable clusterfuck and the only way to make
gprbuild and the Ada library ecosystem work on non-Debian distributions is to
patch/fork gprbuild.
(Or hope people who write Ada software are wise enough to also provide
Makefiles, but fat chance of that happening.)
charlie5 commented on 2016-02-01 08:04 (UTC)
"Perhaps it would be better to patch gprbuild to change the path it uses?" ... a better option, yes.
In fact, the gcc/gnat/gprbuild and gnat_util (which requires full gcc-ada rebuild) is, err, tricky, to sort out. There are also later issues with gdb not recognising Ada exceptions (such as Constraint_Error) when you want to set break point on a given exception, perhaps due to the gcc/gnat runtime not being built with debug symbols attached (i guess).
I, err, sort of inherited this job (so am glad of any help/advice).
I will try it locally, of course.
ids1024 commented on 2016-02-01 05:48 (UTC)
Installing that package works, though it is imperfect.
Perhaps it would be better to patch gprbuild to change the path it uses? I haven't looked at how difficult that would be.
charlie5 commented on 2016-02-01 05:46 (UTC)
I guess PKGBUILD depends settings musyt need attention ... will look properly tomorrow.
Sorry for inconvenience.
charlie5 commented on 2016-02-01 05:40 (UTC)
Ah,
Have you installed the 'prepare_gnat_util' package ? (It should provide the libgnat-5.3.0 link).
As you say, hackish ... any advice welcome.
ids1024 commented on 2016-02-01 04:54 (UTC)
@charlie5 It shows "gcc (GCC) 5.3.0"
The library seems to be named /usr/lib/libgnat-5.so rather than /usr/lib/libgnat-5.3.so like it is looking for. A symlink makes it compile, but that is a hack.
charlie5 commented on 2016-02-01 00:32 (UTC)
Hi ids1024,
What does this show ?
$ gcc --version
ids1024 commented on 2016-01-30 17:56 (UTC)
Trying to use gprbuild, I am getting the error "/usr/bin/ld: cannot find -lgnat-5.3"
charlie5 commented on 2015-11-21 09:09 (UTC)
Source URL is now updated.
It seems several of the Adacore packages source URL's have changed. The other packages should be updated now also.
Pinned Comments
charlie5 commented on 2023-09-16 01:56 (UTC)
hi @wvxvw
Apologies for these problems.
Can you please try the following ...
I've also redirected the doc build output to a log file.
Also, the Ada packages are now available in an unofficial Arch repository.
Thanks for reporting.
Regards.
charlie5 commented on 2023-07-09 16:43 (UTC) (edited on 2023-09-16 01:56 (UTC) by charlie5)
This package is available in the Arch Ada Repository.