From: Reza A. <ar...@au...> - 2009-05-15 17:06:03
|
Hi Paul, On 15 May 2009, 10:03AM CDT, Paul Pryor <ppr...@gm...> wrote: > The reason is that even through we always use prefix '/opt/freeware' > for everything (the old /usr/opt/freeware is being discontinued) we > still install some binaries in /usr/bin, or /usr/linux/bin. Do we > continue to do this, and what are current rules (what goes into > /usr/bin, and what goes into /usr/linux/bin)? The actual binary goes into /opt/freeware/bin. We put a symlink in /usr/bin which points to that binary. However, if that symlink causes a name clash, (i.e. a GNU util with the same name as its AIX equivalent), we put that symlink in /usr/linux/bin instead. The end result is that in most cases, a user can use Toolbox programs via /usr/bin, without altering $PATH. The exception; to "override" AIX ls with GNU ls, the user would have to specifically call /usr/linux/bin/ls, or prepend /usr/linux/bin to $PATH. > And now that we have 64 bits - the 64 bit libraries (shared and > static) are installed in /opt/freeware/64/lib. Do we know that we > could combine 32 bits and 64 bits inside libraries (only on pSeries > platforms)? There are two cases: an AIX defacto library achive: libaix.a an "ELF-style" standalone shared object: libelf.so In the first case, we will have: /opt/freeware/lib/libaix.a (which contains both shr.o and shr_64.o) /opt/freeware/64/lib/libaix.a -> /opt/freeware/lib/libaix.a (symlink, not really necessary but illustrative that this library is 64-bit enabled) In the second, we have: /opt/freeware/lib/libelf.so (the 32-bit object) /opt/freeware/64/lib/libelf.so (the 64-bit object) The end result here is that in both cases, a user linking a 64-bit binary needs only to prepend -L/opt/freeware/64/lib to the link line. > Should we support use of libXXX.so or put it inside > libXXX.a? In general, we try to wrap all shared objects in an archive. However, we have not been mixing static objects and shared objects in the same archive. The reason is that this way usually required little to no modification of the source. Most of these packages can be configured to build "static libraries, shared libraries, or both". But not "all in one". Doing so would require more changes to their Makefiles, autotools, libtool, or what have you. > Do we need to support iSeries? What about AIX 4? What is the lowest > AIX release we need to support? You do not need to support iSeries, or AIX 4. In fact, the oldest supported level of AIX is now AIX 5.3. The main Toolbox build machine is currently 5.2, but we will eventually migrate it to 5.3. AIX is backwards-compatible, so if you build a binary on 5.3, it will work on any later level as well. <http://www-03.ibm.com/systems/power/software/aix/compatibility/index.html> > And finally, should we install by default 32 bit binaries, or 64 bit binaries? Unless it's really necessary to compile 64-bit, just use 32. There is a lot of code out there that is still not 64-bit safe. > I can contribute spec files or SRPMs - do you take any contributions? > Where do I send them to? Absolutely! You can send SRPMS to me. It takes a very long time for me to get approval to update things, to the aggravation of anyone reading this list, I'm sure. But I will do my best. -- Reza Arbab ar...@au... |