Re: ABI/architecture identification for packages

2012-03-21 Thread Alexander Leidinger

Quoting Bruce Cran br...@cran.org.uk (from Tue, 20 Mar 2012 14:26:42 +):


On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:


i386-32 and amd64-64 is weird and confusing.

IMO, you should go either with x86-{32,64} names, or with i386/amd64,
not with a mix.


Would we ever want to support something like x32 from Linux (which  
might be amd64-32)?

http://www.linuxplumbersconf.org/2011/ocw/sessions/531


Not related to x32, but related to the Linux keyword (yes, I'm in the  
wrong branch of this thread, but I don't have the root anymore):


Can you please explain how the linuxulator ports (linux_base-*) fit into this?

linux_base-f10 contains 32bit linux binaries, which run in the  
linuxulator on i386 and amd64. If someone steps up and finishes the  
64bit linux emulation on amd64, we would be able to use a  
linux_base(32) and a linux_base64 (or however we want to name them  
then) on amd64 (both at the same time). The content of the packages  
generated on i386 can be used on amd64 (both are generated from the  
same linux binary RPMs and the few FreeBSD modifications are rm's,  
symlinks and config changes).


Can you please explain and/or give examples which kind of metadata  
those ports would get?


Bye,
Alexander.

--
Preserve wildlife -- pickle a squirrel today!

http://www.Leidinger.netAlexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org   netchild @ FreeBSD.org  : PGP ID = 72077137

___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-21 Thread Baptiste Daroussin
On Wed, Mar 21, 2012 at 02:34:03PM +0100, Alexander Leidinger wrote:
 Quoting Bruce Cran br...@cran.org.uk (from Tue, 20 Mar 2012 14:26:42 +):
 
  On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:
 
  i386-32 and amd64-64 is weird and confusing.
 
  IMO, you should go either with x86-{32,64} names, or with i386/amd64,
  not with a mix.
 
  Would we ever want to support something like x32 from Linux (which  
  might be amd64-32)?
  http://www.linuxplumbersconf.org/2011/ocw/sessions/531
 
 Not related to x32, but related to the Linux keyword (yes, I'm in the  
 wrong branch of this thread, but I don't have the root anymore):
 
 Can you please explain how the linuxulator ports (linux_base-*) fit into this?
 
 linux_base-f10 contains 32bit linux binaries, which run in the  
 linuxulator on i386 and amd64. If someone steps up and finishes the  
 64bit linux emulation on amd64, we would be able to use a  
 linux_base(32) and a linux_base64 (or however we want to name them  
 then) on amd64 (both at the same time). The content of the packages  
 generated on i386 can be used on amd64 (both are generated from the  
 same linux binary RPMs and the few FreeBSD modifications are rm's,  
 symlinks and config changes).
 
 Can you please explain and/or give examples which kind of metadata  
 those ports would get?

for packages currently their will be two possible chain for the abi:
the abi defined here or any

any will be for scripts, data, etc.

I was thinking about giving a multi arch possibilities for packages for example:

arch: [freebsd:9:x86:32, freebsd:9:x86:64]

when a package can be installed in both i386 and amd64

and maybe in the Makefile:

PKGARCH=i386 amd64

or

PKGARCH=x86:32 x86:64

not decided yet

for scripts:

PKGARCH=any

But I haven't decided yet :)

regards,
Bapt


pgp4ILTHfkUB2.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-21 Thread Alexander Leidinger
Quoting Baptiste Daroussin b...@freebsd.org (from Wed, 21 Mar 2012  
14:59:20 +0100):



On Wed, Mar 21, 2012 at 02:34:03PM +0100, Alexander Leidinger wrote:
Quoting Bruce Cran br...@cran.org.uk (from Tue, 20 Mar 2012  
14:26:42 +):


 On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:

 i386-32 and amd64-64 is weird and confusing.

 IMO, you should go either with x86-{32,64} names, or with i386/amd64,
 not with a mix.

 Would we ever want to support something like x32 from Linux (which
 might be amd64-32)?
 http://www.linuxplumbersconf.org/2011/ocw/sessions/531

Not related to x32, but related to the Linux keyword (yes, I'm in the
wrong branch of this thread, but I don't have the root anymore):

Can you please explain how the linuxulator ports (linux_base-*) fit  
into this?


linux_base-f10 contains 32bit linux binaries, which run in the
linuxulator on i386 and amd64. If someone steps up and finishes the
64bit linux emulation on amd64, we would be able to use a
linux_base(32) and a linux_base64 (or however we want to name them
then) on amd64 (both at the same time). The content of the packages
generated on i386 can be used on amd64 (both are generated from the
same linux binary RPMs and the few FreeBSD modifications are rm's,
symlinks and config changes).

Can you please explain and/or give examples which kind of metadata
those ports would get?


for packages currently their will be two possible chain for the abi:
the abi defined here or any

any will be for scripts, data, etc.

I was thinking about giving a multi arch possibilities for packages  
for example:


arch: [freebsd:9:x86:32, freebsd:9:x86:64]

when a package can be installed in both i386 and amd64

and maybe in the Makefile:

PKGARCH=i386 amd64

or

PKGARCH=x86:32 x86:64

not decided yet

for scripts:

PKGARCH=any

But I haven't decided yet :)


This means that you do not try to compute this, you want to rely on  
metadata from humans.


How to you want to handle the common FreeBSD native port (has to be  
compiled, can be compiled without problems on all FreeBSD  
architectures (e.g. the Hello World. program), the binary only works  
on the architecture it was compiled for)? I assume you do not want to  
add PKGARCH=$(NATIVE_ARCH) to every port. Maybe  
PKGARCH?=$(NATIVE_ARCH) in bsd.port.mk?


Bye,
Alexander.

--
Men aren't attracted to me by my mind.
They're attracted by what I don't mind...
-- Gypsy Rose Lee

http://www.Leidinger.netAlexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org   netchild @ FreeBSD.org  : PGP ID = 72077137

___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-21 Thread Vitaly Magerya
Baptiste Daroussin wrote:
 when a package can be installed in both i386 and amd64
 
 and maybe in the Makefile:
 
 PKGARCH=  i386 amd64
 
 or
 
 PKGARCH=  x86:32 x86:64

Baptiste, if ABI/arch ids will leak out to port Makefiles (i.e. I will
need to care about them), then please leave them matching to the usual
FreeBSD arch names, i.e. i386 and amd64, not the new ones. For reasons
of consistency.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-21 Thread Baptiste Daroussin
On Wed, Mar 21, 2012 at 03:59:38PM +0100, Alexander Leidinger wrote:
 Quoting Baptiste Daroussin b...@freebsd.org (from Wed, 21 Mar 2012  
 14:59:20 +0100):
 
  On Wed, Mar 21, 2012 at 02:34:03PM +0100, Alexander Leidinger wrote:
  Quoting Bruce Cran br...@cran.org.uk (from Tue, 20 Mar 2012  
  14:26:42 +):
 
   On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:
  
   i386-32 and amd64-64 is weird and confusing.
  
   IMO, you should go either with x86-{32,64} names, or with i386/amd64,
   not with a mix.
  
   Would we ever want to support something like x32 from Linux (which
   might be amd64-32)?
   http://www.linuxplumbersconf.org/2011/ocw/sessions/531
 
  Not related to x32, but related to the Linux keyword (yes, I'm in the
  wrong branch of this thread, but I don't have the root anymore):
 
  Can you please explain how the linuxulator ports (linux_base-*) fit  
  into this?
 
  linux_base-f10 contains 32bit linux binaries, which run in the
  linuxulator on i386 and amd64. If someone steps up and finishes the
  64bit linux emulation on amd64, we would be able to use a
  linux_base(32) and a linux_base64 (or however we want to name them
  then) on amd64 (both at the same time). The content of the packages
  generated on i386 can be used on amd64 (both are generated from the
  same linux binary RPMs and the few FreeBSD modifications are rm's,
  symlinks and config changes).
 
  Can you please explain and/or give examples which kind of metadata
  those ports would get?
 
  for packages currently their will be two possible chain for the abi:
  the abi defined here or any
 
  any will be for scripts, data, etc.
 
  I was thinking about giving a multi arch possibilities for packages  
  for example:
 
  arch: [freebsd:9:x86:32, freebsd:9:x86:64]
 
  when a package can be installed in both i386 and amd64
 
  and maybe in the Makefile:
 
  PKGARCH=i386 amd64
 
  or
 
  PKGARCH=x86:32 x86:64
 
  not decided yet
 
  for scripts:
 
  PKGARCH=any
 
  But I haven't decided yet :)
 
 This means that you do not try to compute this, you want to rely on  
 metadata from humans.
 
 How to you want to handle the common FreeBSD native port (has to be  
 compiled, can be compiled without problems on all FreeBSD  
 architectures (e.g. the Hello World. program), the binary only works  
 on the architecture it was compiled for)? I assume you do not want to  
 add PKGARCH=$(NATIVE_ARCH) to every port. Maybe  
 PKGARCH?=$(NATIVE_ARCH) in bsd.port.mk?

well is pkgarch isn't defined pkgng will fall back on the system one, so you do
not need to add it in bsd.port.mk neither in the port Makefile

regards,
Bapt


pgpWsIs0MeARm.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-21 Thread Baptiste Daroussin
On Wed, Mar 21, 2012 at 05:18:07PM +0200, Vitaly Magerya wrote:
 Baptiste Daroussin wrote:
  when a package can be installed in both i386 and amd64
  
  and maybe in the Makefile:
  
  PKGARCH=i386 amd64
  
  or
  
  PKGARCH=x86:32 x86:64
 
 Baptiste, if ABI/arch ids will leak out to port Makefiles (i.e. I will
 need to care about them), then please leave them matching to the usual
 FreeBSD arch names, i.e. i386 and amd64, not the new ones. For reasons
 of consistency.

The is the reason of the or :) the problem will occurs with the old way
when arm and mips package support will be generalized

regards,
Bapt


pgpZ5M5rFo52V.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Poul-Henning Kamp
In message 20120319215802.gc1...@azathoth.lan, Baptiste Daroussin writes:

On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:
 Hi all,
 
 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)
 
 here is the identification I propose:
 
 arch-class-os-majorversion(-archi_specific_extension)

Given how sparse this name-space is, you'll have less than 50
different values, you might want to consider something more compact,
such as a single letter for all components, and the version number last:

X2F9= x64-32-freebsd-9
X4F10   = x64-64-freebsd-10
A2FB9   = arm-32-freebsd-eb_oabi-9

By the time we run out of ASCII or even Unicode characters, we have
other problems.

-- 
Poul-Henning Kamp   | UNIX since Zilog Zeus 3.20
p...@freebsd.org | TCP/IP since RFC 956
FreeBSD committer   | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Alexander Pyhalov

Hello.

On 03/20/2012 10:24, Poul-Henning Kamp wrote:

In message20120319215802.gc1...@azathoth.lan, Baptiste Daroussin writes:


On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:

here is the identification I propose:

arch-class-os-majorversion(-archi_specific_extension)


Given how sparse this name-space is, you'll have less than 50
different values, you might want to consider something more compact,
such as a single letter for all components, and the version number last:

X2F9= x64-32-freebsd-9
X4F10   = x64-64-freebsd-10
A2FB9   = arm-32-freebsd-eb_oabi-9

By the time we run out of ASCII or even Unicode characters, we have
other problems.



And what is a purpose of making non-human-friendly platform identifiers? 
I think, you'll gain nothing by this, but will create an unnecessary 
complication.



--
Best regards,
Alexander Pyhalov,
system administrator of Computer Center of Southern Federal University
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Baptiste Daroussin
On Tue, Mar 20, 2012 at 06:24:37AM +, Poul-Henning Kamp wrote:
 In message 20120319215802.gc1...@azathoth.lan, Baptiste Daroussin writes:
 
 On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:
  Hi all,
  
  In order to identify architectures I need to find a uniq id for every
  possibilities (for pkgng)
  
  here is the identification I propose:
  
  arch-class-os-majorversion(-archi_specific_extension)
 
 Given how sparse this name-space is, you'll have less than 50
 different values, you might want to consider something more compact,
 such as a single letter for all components, and the version number last:
 
 X2F9  = x64-32-freebsd-9
 X4F10 = x64-64-freebsd-10
 A2FB9 = arm-32-freebsd-eb_oabi-9
 
 By the time we run out of ASCII or even Unicode characters, we have
 other problems.
 

While I tend to agree to compact/short identifier on the principle, I don't
really like the obfuscation it brings, I prefer this to remain humain readable,
at a point or another it could be shown to users (you are trying to install an
x86-64-freebsd-10 package on a x86-32-freebsd-9 system if more understandable 
than you are trying to install a X4F10 package on a X2F9 system.)

regards,
Bapt


pgptXx1a4l73k.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Baptiste Daroussin
On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:
 Hi all,
 
 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)
 
 here is the identification I propose:
 
 arch-class-os-majorversion(-archi_specific_extension)
 
 arch can be one of the following:
 
 - x86 for i386 and amd64 (discussed with kib)
 - powerpc for powerpc and powerpc64
 - arm
 - mips
 - sparc
 
 class may be:
 - 32 bits
 - 64 bits
 
 os will always be freebsd :) (lower case)
 
 majorversion the freebsd major version (10 9 8)
 
 achi_specific_extension currently only mips and arm are concerned,
 for arm could be:
 el_oabi
 eb_oabi
 el_eabi
 eb_eabi
 
 (I don't know how to get arm version or hardfp/softfp from the elf)
 
 for mips I don't know much.
 
 for ia64, I have strictly no idea what I should set.
 
 Everything is read from the elf file
 
 for example:
 x86-64-freebsd-10
 x86-32-freebsd-8
 arm-32-freebsd-10-el_oabi
 
 Please help me to improve this to get the better identification to have the 
 best
 possible to determine which package can be installed where.
 
 while proposing information please tell me how to get the information
 (dynamically)
 
 regards,
 Bapt

Another question (by rwatson) that comes here is should we keep the architecture
names that freebsd uses to avoid confusion or should we try to use more accurate
names?

powerpc-64-freebsd-9 - powerpc64-64-freebsd-9
x86-32-freebsd-9 - i386-32-freebsd-9
x86-64-freebsd-9 - amd64-64-freebsd-9
etc.

An example of implementation can be find here:
https://github.com/pkgng/pkgng/blob/master/libpkg/pkg_elf.c#L157

PS: Feel free to submit fixes/improvements to the code :)

regards,
Bapt


pgpD0DjAlcHIL.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Konstantin Belousov
On Tue, Mar 20, 2012 at 10:19:36AM +0100, Baptiste Daroussin wrote:
 On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:
  Hi all,
  
  In order to identify architectures I need to find a uniq id for every
  possibilities (for pkgng)
  
  here is the identification I propose:
  
  arch-class-os-majorversion(-archi_specific_extension)
  
  arch can be one of the following:
  
  - x86 for i386 and amd64 (discussed with kib)
  - powerpc for powerpc and powerpc64
  - arm
  - mips
  - sparc
  
  class may be:
  - 32 bits
  - 64 bits
  
  os will always be freebsd :) (lower case)
  
  majorversion the freebsd major version (10 9 8)
  
  achi_specific_extension currently only mips and arm are concerned,
  for arm could be:
  el_oabi
  eb_oabi
  el_eabi
  eb_eabi
  
  (I don't know how to get arm version or hardfp/softfp from the elf)
  
  for mips I don't know much.
  
  for ia64, I have strictly no idea what I should set.
  
  Everything is read from the elf file
  
  for example:
  x86-64-freebsd-10
  x86-32-freebsd-8
  arm-32-freebsd-10-el_oabi
  
  Please help me to improve this to get the better identification to have the 
  best
  possible to determine which package can be installed where.
  
  while proposing information please tell me how to get the information
  (dynamically)
  
  regards,
  Bapt
 
 Another question (by rwatson) that comes here is should we keep the 
 architecture
 names that freebsd uses to avoid confusion or should we try to use more 
 accurate
 names?
 
 powerpc-64-freebsd-9 - powerpc64-64-freebsd-9
 x86-32-freebsd-9 - i386-32-freebsd-9
 x86-64-freebsd-9 - amd64-64-freebsd-9
i386-32 and amd64-64 is weird and confusing.

IMO, you should go either with x86-{32,64} names, or with i386/amd64,
not with a mix.
 etc.
 
 An example of implementation can be find here:
 https://github.com/pkgng/pkgng/blob/master/libpkg/pkg_elf.c#L157
 
 PS: Feel free to submit fixes/improvements to the code :)
 
 regards,
 Bapt




pgpRB2KwxM3NO.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Alexander Yerenkow
IMHO,
32 / 64  = easily parsable and represent integer.

i386/amd64 - wellknown names, but this info about processor bits not lies
in math.
My point is i386 is arch, so can be kept, while 32 is processor bit count.
If you'll keep 32/64 various checks in side software will be simple (if you
have 32 bit processor, then this info is bundled in 32),
while if you consider using i386 string as storage of information about
32 bit, it not so elegant.
Also, linuxes has come to i386- i586- i686- mess, and many their scripts
looks overbloated when they checks if system really 32 bit.

Just my point of view :)
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Chuck Burns
We should probably pad the version number, and shorten things up.. 
similar to:


package-1.2-fbsd09.1-x86.pkg
package-1.2-fbsd09.1-x64.pkg
package-1.2-fbsd09.1-ppc.pkg
package-1.2-fbsd09.1-ppc64.pkg
package-1.2-fbsd09.1-arm.pkg

For app Package version 1.2, on FreeBSD 9.1
drop the .1 for .0 versions.

The reason for the padding is to help with sorting, at least until 
freebsd 100.0 comes out. :P


Chuck Burns

On 3/20/2012 5:40 AM, Alexander Yerenkow wrote:

IMHO,
32 / 64  = easily parsable and represent integer.

i386/amd64 - wellknown names, but this info about processor bits not lies
in math.
My point is i386 is arch, so can be kept, while 32 is processor bit count.
If you'll keep 32/64 various checks in side software will be simple (if you
have 32 bit processor, then this info is bundled in 32),
while if you consider using i386 string as storage of information about
32 bit, it not so elegant.
Also, linuxes has come to i386- i586- i686- mess, and many their scripts
looks overbloated when they checks if system really 32 bit.

Just my point of view :)
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Bruce Cran

On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:

 i386-32 and amd64-64 is weird and confusing.
 
 IMO, you should go either with x86-{32,64} names, or with i386/amd64,
 not with a mix.

Would we ever want to support something like x32 from Linux (which might be 
amd64-32)?
http://www.linuxplumbersconf.org/2011/ocw/sessions/531

-- 
Bruce Cran___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Baptiste Daroussin
On Tue, Mar 20, 2012 at 07:20:52AM -0500, Chuck Burns wrote:
 We should probably pad the version number, and shorten things up.. 
 similar to:
 
 package-1.2-fbsd09.1-x86.pkg
 package-1.2-fbsd09.1-x64.pkg
 package-1.2-fbsd09.1-ppc.pkg
 package-1.2-fbsd09.1-ppc64.pkg
 package-1.2-fbsd09.1-arm.pkg
 
 For app Package version 1.2, on FreeBSD 9.1
 drop the .1 for .0 versions.
 
 The reason for the padding is to help with sorting, at least until 
 freebsd 100.0 comes out. :P
 
 Chuck Burns
 

I'm not on changing the package name, this information will be in the manifest.

the packagename will remain name-version.txz

regards,
Bapt


pgpFvahJw3xYO.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Konstantin Belousov
On Tue, Mar 20, 2012 at 02:26:42PM +, Bruce Cran wrote:
 
 On 20 Mar 2012, at 10:20, Konstantin Belousov wrote:
 
  i386-32 and amd64-64 is weird and confusing.
  
  IMO, you should go either with x86-{32,64} names, or with i386/amd64,
  not with a mix.
 
 Would we ever want to support something like x32 from Linux (which might be 
 amd64-32)?
 http://www.linuxplumbersconf.org/2011/ocw/sessions/531
 
Yes, we do want to support this.
In which form, and when, I have no good answer.

We can propose some name for the architecture when the work starts.


pgpK9JMzXmuRw.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-20 Thread Andriy Gapon
on 20/03/2012 16:39 Baptiste Daroussin said the following:
 On Tue, Mar 20, 2012 at 07:20:52AM -0500, Chuck Burns wrote:
 We should probably pad the version number, and shorten things up.. 
 similar to:

 package-1.2-fbsd09.1-x86.pkg
 package-1.2-fbsd09.1-x64.pkg
 package-1.2-fbsd09.1-ppc.pkg
 package-1.2-fbsd09.1-ppc64.pkg
 package-1.2-fbsd09.1-arm.pkg

 For app Package version 1.2, on FreeBSD 9.1
 drop the .1 for .0 versions.

 The reason for the padding is to help with sorting, at least until 
 freebsd 100.0 comes out. :P

 Chuck Burns

 
 I'm not on changing the package name, this information will be in the 
 manifest.
 
 the packagename will remain name-version.txz

So no plans for cross-arch package repos? :)
IMO, it could be useful to reflect arch metadata in the package name.
BTW, some packaging systems also have a noarch indicator for packages that
contain purely stuff like documentation or images (or shell scripts, etc).

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-20 Thread Baptiste Daroussin
On Tue, Mar 20, 2012 at 05:18:12PM +0200, Andriy Gapon wrote:
 on 20/03/2012 16:39 Baptiste Daroussin said the following:
  On Tue, Mar 20, 2012 at 07:20:52AM -0500, Chuck Burns wrote:
  We should probably pad the version number, and shorten things up.. 
  similar to:
 
  package-1.2-fbsd09.1-x86.pkg
  package-1.2-fbsd09.1-x64.pkg
  package-1.2-fbsd09.1-ppc.pkg
  package-1.2-fbsd09.1-ppc64.pkg
  package-1.2-fbsd09.1-arm.pkg
 
  For app Package version 1.2, on FreeBSD 9.1
  drop the .1 for .0 versions.
 
  The reason for the padding is to help with sorting, at least until 
  freebsd 100.0 comes out. :P
 
  Chuck Burns
 
  
  I'm not on changing the package name, this information will be in the 
  manifest.
  
  the packagename will remain name-version.txz
 
 So no plans for cross-arch package repos? :)
 IMO, it could be useful to reflect arch metadata in the package name.
 BTW, some packaging systems also have a noarch indicator for packages that
 contain purely stuff like documentation or images (or shell scripts, etc).

This is then plan except that I prefer calling it any than noarch :)

No need to change the package name for that.

If you want the package name to reflect the real abi it will be from far too
long :)

The indication is in the the repository metadata, it is enough most of the time,
if we are on adding it to the package name what do you want to see in ?
OS?
majorversion?
arch?
32/64bits?
incompatible abi/extension?

You will get the same problem that I'm trying to solve except that it will gives
you very very long package names.

regards,
Bapt


pgpEIOcIwI2QW.pgp
Description: PGP signature


ABI/architecture identification for packages

2012-03-19 Thread Baptiste Daroussin
Hi all,

In order to identify architectures I need to find a uniq id for every
possibilities (for pkgng)

here is the identification I propose:

arch-class-os-majorversion(-archi_specific_extension)

arch can be one of the following:

- x86 for i386 and amd64 (discussed with kib)
- powerpc for powerpc and powerpc64
- arm
- mips
- sparc

class may be:
- 32 bits
- 64 bits

os will always be freebsd :) (lower case)

majorversion the freebsd major version (10 9 8)

achi_specific_extension currently only mips and arm are concerned,
for arm could be:
el_oabi
eb_oabi
el_eabi
eb_eabi

(I don't know how to get arm version or hardfp/softfp from the elf)

for mips I don't know much.

for ia64, I have strictly no idea what I should set.

Everything is read from the elf file

for example:
x86-64-freebsd-10
x86-32-freebsd-8
arm-32-freebsd-10-el_oabi

Please help me to improve this to get the better identification to have the best
possible to determine which package can be installed where.

while proposing information please tell me how to get the information
(dynamically)

regards,
Bapt


pgprvLkMjQp0L.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-19 Thread Baptiste Daroussin
On Mon, Mar 19, 2012 at 10:35:08PM +0100, Baptiste Daroussin wrote:
 Hi all,
 
 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)
 
 here is the identification I propose:
 
 arch-class-os-majorversion(-archi_specific_extension)
 
 arch can be one of the following:
 
 - x86 for i386 and amd64 (discussed with kib)
 - powerpc for powerpc and powerpc64
 - arm
 - mips
 - sparc
 
 class may be:
 - 32 bits
 - 64 bits
 
 os will always be freebsd :) (lower case)
 
 majorversion the freebsd major version (10 9 8)
 
 achi_specific_extension currently only mips and arm are concerned,
 for arm could be:
 el_oabi
 eb_oabi
 el_eabi
 eb_eabi
 
 (I don't know how to get arm version or hardfp/softfp from the elf)

Fixed thanks cognet just missing the arm version now

 
 for mips I don't know much.
 
 for ia64, I have strictly no idea what I should set.
 
 Everything is read from the elf file
 
 for example:
 x86-64-freebsd-10
 x86-32-freebsd-8
 arm-32-freebsd-10-el_oabi
 
 Please help me to improve this to get the better identification to have the 
 best
 possible to determine which package can be installed where.
 
 while proposing information please tell me how to get the information
 (dynamically)
 
 regards,
 Bapt




pgp60gsUuHxha.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-19 Thread Eitan Adler
On Mon, Mar 19, 2012 at 5:35 PM, Baptiste Daroussin b...@freebsd.org wrote:
 Hi all,

 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)

 arch-class-os-majorversion(-archi_specific_extension)

 os will always be freebsd :) (lower case)

So why bother?



-- 
Eitan Adler
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-19 Thread Baptiste Daroussin
On Mon, Mar 19, 2012 at 06:01:23PM -0400, Eitan Adler wrote:
 On Mon, Mar 19, 2012 at 5:35 PM, Baptiste Daroussin b...@freebsd.org wrote:
  Hi all,
 
  In order to identify architectures I need to find a uniq id for every
  possibilities (for pkgng)
 
  arch-class-os-majorversion(-archi_specific_extension)
 
  os will always be freebsd :) (lower case)
 
 So why bother?

because some people from other oses are interested in pkgng (not work started on
this)
because some vendors might want to change it.
So I read it from the elf note section

regards,
Bapt


pgpE66l8Oqw60.pgp
Description: PGP signature


Re: ABI/architecture identification for packages

2012-03-19 Thread Matthew Seaman
On 19/03/2012 22:04, Baptiste Daroussin wrote:
 On Mon, Mar 19, 2012 at 06:01:23PM -0400, Eitan Adler wrote:
 On Mon, Mar 19, 2012 at 5:35 PM, Baptiste Daroussin b...@freebsd.org wrote:
 Hi all,

 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)

 arch-class-os-majorversion(-archi_specific_extension)

 os will always be freebsd :) (lower case)

 So why bother?
 
 because some people from other oses are interested in pkgng (not work started 
 on
 this)
 because some vendors might want to change it.
 So I read it from the elf note section

What about if the package happens to contain linux executables?

Cheers,

Matthew


-- 
Dr Matthew J Seaman MA, D.Phil.   7 Priory Courtyard
  Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate
JID: matt...@infracaninophile.co.uk   Kent, CT11 9PW



signature.asc
Description: OpenPGP digital signature


Re: ABI/architecture identification for packages

2012-03-19 Thread Nathan Whitehorn

On 03/19/12 14:35, Baptiste Daroussin wrote:

Hi all,

In order to identify architectures I need to find a uniq id for every
possibilities (for pkgng)

here is the identification I propose:

arch-class-os-majorversion(-archi_specific_extension)

arch can be one of the following:

- x86 for i386 and amd64 (discussed with kib)
- powerpc for powerpc and powerpc64
- arm
- mips
- sparc

class may be:
- 32 bits
- 64 bits

os will always be freebsd :) (lower case)

majorversion the freebsd major version (10 9 8)

achi_specific_extension currently only mips and arm are concerned,
for arm could be:
el_oabi
eb_oabi
el_eabi
eb_eabi



One brief comment here: the output of uname -p (arm, armeb, etc.) is 
meant to encode the ABI completely. All platforms with the same uname -p 
should be able to execute each other's binaries. Why not just a sequence 
of `uname -p`-`uname -s`-`uname -r` (or some subset of uname -r)? That 
should be enough to completely encode compatibility information on 
almost any operating system.

-Nathan
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ABI/architecture identification for packages

2012-03-19 Thread Garrett Cooper
On Mon, Mar 19, 2012 at 5:41 PM, Nathan Whitehorn
nwhiteh...@freebsd.org wrote:
 On 03/19/12 14:35, Baptiste Daroussin wrote:

 Hi all,

 In order to identify architectures I need to find a uniq id for every
 possibilities (for pkgng)

 here is the identification I propose:

 arch-class-os-majorversion(-archi_specific_extension)

 arch can be one of the following:

 - x86 for i386 and amd64 (discussed with kib)
 - powerpc for powerpc and powerpc64
 - arm
 - mips
 - sparc

 class may be:
 - 32 bits
 - 64 bits

 os will always be freebsd :) (lower case)

 majorversion the freebsd major version (10 9 8)

 achi_specific_extension currently only mips and arm are concerned,
 for arm could be:
 el_oabi
 eb_oabi
 el_eabi
 eb_eabi


 One brief comment here: the output of uname -p (arm, armeb, etc.) is meant
 to encode the ABI completely. All platforms with the same uname -p should be
 able to execute each other's binaries. Why not just a sequence of `uname
 -p`-`uname -s`-`uname -r` (or some subset of uname -r)? That should be
 enough to completely encode compatibility information on almost any
 operating system.

The only tricky thing is that many OSes don't agree on branding. I
don't know how far bapt and crew are willing to go to make pkgng OS
agnostic.
Thanks,
-Garrett
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org