You are not logged in.

#1 2014-08-06 19:19:56

jjacky
Member
Registered: 2011-11-09
Posts: 347
Website

[solved] Why are those files not in the official package?

Here's the thing: I took the source files (PKGBUILD,gdb.install) of gdb-7.8-1 from https://www.archlinux.org/packages/extra/x86_64/gdb/ and compiled the package myself. In the resulting package file, I have two files that aren't in the official package:

/usr/lib/libbfd.a
/usr/lib/libopcodes.a

Obviously that means my package is invalid (those files are owned by binutils and that would be a file conflict). Now  it's easy enough to just remove them during package(); In fact, a few files are removed in package() to avoid such file conficts w/ binutils, but those two aren't on the list. So I'm confused... (FYI the build was done in a clean chroot, not that it would matter.)

To be clear, my question is: how/why are those files not included in the official package? Since I'm using the exact same source files, I expect to get the same results.... so, what am I missing here?

Thanks.

Last edited by jjacky (2014-08-06 21:58:50)

Offline

#2 2014-08-06 19:25:21

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: [solved] Why are those files not in the official package?

Your /etc/makepkg.conf probably has options=(staticlibs), whereas arch devs build in a chroot which has a makepkg.conf containing options=(!staticlibs).

Offline

#3 2014-08-06 19:42:48

jjacky
Member
Registered: 2011-11-09
Posts: 347
Website

Re: [solved] Why are those files not in the official package?

Nope, it does have !staticlibs -- Forgot to mention that indeed, but I actually checked to make sure the option was also used in the chroot, and it is. I also tried building the package "directly" (i.e. not in a chroot, simply running makepkg) just to see, and I also get those 2 files in the resulting package file.

OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug)

Offline

#4 2014-08-06 21:06:58

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [solved] Why are those files not in the official package?

$ pkgfile /usr/lib/libbfd.a
core/binutils
$ pkgfile /usr/lib/libopcodes.a
core/binutils

Offline

#5 2014-08-06 21:40:42

jjacky
Member
Registered: 2011-11-09
Posts: 347
Website

Re: [solved] Why are those files not in the official package?

Yes I know, that's not the issue. I know why they are not part of the official package, I'm asking why/how are they not included in the package file (by makepkg) on package creation. As I said, when I make the package myself (w/ source files from ABS) I have those files in the resulting package file, and obviously they're not in the official package file -- and I don't understand why.

Offline

#6 2014-08-06 21:57:02

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,456
Website

Re: [solved] Why are those files not in the official package?

I can't replicate that here - those files are not in the package I just built from the same PKGBUILD you linked to.


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#7 2014-08-06 21:58:08

jjacky
Member
Registered: 2011-11-09
Posts: 347
Website

Re: [solved] Why are those files not in the official package?

Ok, I think I got it. When building my packages I'm using pacman-git, not pacman-4.1 and that seems to be the reason.

With pacman-4.1, the !staticlibs option has makepkg remove all *.a files; However with the future 4.2 that is not the case anymore, only so if there' a matching *.so Since this is not the case here, those files aren't removed by makepkg anymore; it all makes sense now.

Thanks everyone.

Offline

Board footer

Powered by FluxBB