[torqueusers] new build system ready!

Garrick Staples garrick at usc.edu
Thu Feb 2 18:01:36 MST 2006

I've got a new build system entirely based on autoconf+automake+libtool
is ready for testing.  It is based on Karsten Petersen's earlier work on
TORQUE 1.0.1 that was very integrated.

I've updated his work to modern TORQUE and expanded it to support
bi-arches, 'make distcheck', shared libs, a pbs-config script, 'make
packages', and building rpms.


I'm going out of town for 2 weeks, so everyone please hack at it while
I'm gone.  I'll integrate any suggestions/patches and merge the entire
mess into CVS when I get back.

I've done a fair amount of testing on i686/x86_64/ia64 RHEL3, sparc Sol9
w/ gcc 3.3.2 and goofy solaris make, and darwin7.9.  Please test
distcheck on all platforms.  Unfortunately, PBS_SERVER_HOME is still not
based on a standard automake variable, so PBS_SERVER_HOME must be set to
a directory that is writable by you.  e.g. 
  make PBS_SERVER_HOME=/tmp/torque/spool distcheck

All --set-foo options are now --with-foo.  --set-cc and --set-cflags are
gone; just set CC and CFLAGS.  -fPIC is used automatically.

Tcl/tk/x/gui options are enabled by default and should do the correct
thing by default on all platforms.  Test this!

There are few code changes to move some symbols into different objects
to support shared libs.  Only libpbs and libnet are installed (which
should be enough for maui and perl-PBS.  If other libs need to be
installed, that is easy to change (just compare
src/lib/LibXXX/Makefile.am with src/lib/Libpbs/Makefile.am.)

Just for fun, the location of libdir and includedir default to
/usr/lib/torque/lib and /usr/lib/torque/include.  PBS_SERVER_HOME
defaults to /var/torque.

Making a working 'pbs-config' was harder than I expected.  There is no
straight-forward mechanism to produce this script that includes link
args that hardcode lib paths.  I had to hack up the macro a little bit
to do what I wanted.  Also, I choose "pbs-config" and not
"torque-config" specifically so that other PBS implementations can use
the same scheme.

Make sure 'pbs-config --libs' does the right thing on all platforms.  I
think I have it wrong for darwin.

'make dist' works.  'make snap' will create a snapshot dist.  'make rpm'
works, but I want to expand that to build an rpm that matches the
current ./configure args.

Thanks in advance for testing and feedback!

Garrick Staples, Linux/HPCC Administrator
University of Southern California
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.supercluster.org/pipermail/torqueusers/attachments/20060202/0d233bc0/attachment.bin

More information about the torqueusers mailing list