This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Fwd: [Lsb-build] Where to install lsbdev tools?]


The LSB is addressing something that looks a bit like
a cross-toolchain layout decision.  I thought I'd forward
one of the messages in the thread to this list
to make people (Hi, Kai!) aware of the discussion.
- Dan

-------- Original Message --------
Subject: [Lsb-build] Where to install lsbdev tools?
Date: Mon, 15 Dec 2003 04:23:14 -0800
From: Matt Taggart <taggart@debian.org>
To: lsb-build@linuxbase.org

Hi lsb-build,

I'm working on Debian packages for the various lsbdev tools. By default the
tarballs from the FSG ftp site are all configured to install to /usr/local.
Recently we discussed the need to have multiple versions installed on the same
system. That makes sense, people will want to be able to develop for multiple
versions and also for 32/64 or even i386/ia64. The current proposal for where
to put things is option #8 in this document,

http://www.linuxbase.org/talks/20031210.html

For example the various versions might be installed in,

/opt/lsb/2.0/ppc/lib/<stubs>
/opt/lsb/2.0/ppc/include/<headers>
/opt/lsb/1.3/ppc/bin/lsbdev-cc
/opt/lsb/1.3/ppc64/lib/<stubs>
/opt/lsb/1.3/ppc64/include/<headers>
/opt/lsb/2.0/ppc64/bin/lsbdev-cc
etc.

Then you just add the version you want to your $PATH and go. Those locations
make sense for the LSB workgroup produced packages, but where are distro
provided and local administrator installs supposed to go?

Here's a guess for the stubs/headers,

<INSTALL_DIR>/lib/lsb/2.0/ppc/<stubs>
<INSTALL_DIR>/include/lsb/2.0/ppc/<headers>
<INSTALL_DIR>/lib/lsb/2.0/ppc64/<stubs>
<INSTALL_DIR>/include/lsb/2.0/ppc64/<headers>
etc.

Where INSTALL_DIR would be /usr for the distro install and /usr/local for the
sysadmin install. That's the least insane option I can think of. [1]

Do those paths look right? If so the source is going to need to some changes
to allow for specifying install paths for lib and include and they can't be
relative to a general install root since, as you can see above, that's not
always consistent.

OK, now the hard question: Where to the lsbdev-cc binaries go?
Creating directories under <INSTALL_DIR>/bin is generally not done. If the
binaries are to go directly in <INSTALL_DIR>/bin then the user would need some
way of specifying what version and arch they wanted(maybe name the binary
accordingly like lsbdev-cc-ppc64-2.0 or use environment variables, both suck).

--
Matt Taggart
taggart@debian.org

[1] Here's some brain teasers

Given the recent discussion about 32/64 libraries maybe it should be,

<INSTALL_DIR>/lib/lsb/2.0/<stubs>
<INSTALL_DIR>/include/lsb/2.0/<headers>
<INSTALL_DIR>/lib64/lsb/2.0/<stubs>
<INSTALL_DIR>/include64/lsb/2.0/<headers>

but I guess we haven't finished that debate yet, and that doesn't handle
i386/ia64 either.

Also maybe we need to add "share/" in there somewhere so you can export it to
other systems :)



_______________________________________________
Lsb-build mailing list
Lsb-build@mail.freestandards.org
http://mail.freestandards.org/cgi-bin/mailman/listinfo/lsb-build




------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]