Support 64-bit FreeBSD on the server side.
NOTE: currently only for FreeBSD 7.3 installs because that is the only set of boss/ops/fs packages I have built so far! This mostly involved minor changes to event agents. Too often we were passing a pointer to a "long" to *get_int32, which on a 64-bit x86 OS would fill the wrong half of a 64-bit variable. There was also one instance of TCL code that had to be tweaked to account for 32- vs 64-bit. These changes also required regeneration of SWIG stubs and an ugly change to the SWIG generated code to use va_copy rather than direct assignment in a couple of places. Also related to SWIG is ensuring that the components that go into the perl/python stub .so files are built with PIC. The amd64 linker requires this. The meta-ports had to be changed to reflect that linuxthreads and ulsshxmlrpcpp don't work on amd64. The former had little effect as we had mostly eliminated uses of linuxthreads already. The one thing that did change was that we do not build nfstrace on amd64 (and we don't currently use this anyway). Removing ulsshxmlrpcpp required switching to the new event scheduler (event/new_sched) that Ryan did awhile back. Note that it is only "new" in the sense that it uses a standard XMLRPC package, there should be no functional differences. However, to be safe we only use new_sched as the standard scheduler on 64-bit server installs. Finally, added support to elabinelab setup to do a 64-bit server install. Just specify FBSD73-64-STD as the boss/ops/fs osid and rc.mkelab should do the rest. That is pretty much it other than some random nits here and there.
Showing with 1480 additions and 709 deletions