expat-1.95.1: build comments
Nelson H. F. Beebe
beebe@math.utah.edu
Wed, 6 Jun 2001 15:09:06 -0600 (MDT)
I've made build attempts for expat-1.95.1 on these platforms:
Sun SPARC Solaris 2.7
Sun SPARC GNU/Linux 2.2.19-6.2.1 (Red Hat 6.2)
SGI Origin 200 IRIX 6.5
Intel Pentium III GNU/Linux 2.2.17-14smp (Red Hat 6.2)
Intel Pentium II FreeBSD 4.1.1
IBM SP/2 AIX 4.3.2.0
IBM PowerPC AIX 4.2
HP/Intel IA-64 GNU/Linux 2.2.17-14smp (Red Hat 6.2) [via HP NUE emulator on IA-32]
HP 9000/712 HP-UX 10.20
DEC Alpha GNU/Linux 2.2.19-6.2.1 (Red Hat 6.2)
Compaq/DEC Alpha OSF/1 4.0F
Apple Power Mac 233MHz GNU/Linux 2.2.15pre9
Apple Macintosh PPC G3 Rhapsody 5.6
Apple Macintosh PPC G3 Darwin 1.3.3
They were successful on most, but there are few (likely) easy-to-fix
problems:
(1) The Makefile should have a check target, even it if just a dummy one:
check:
@echo This package does not yet have an installation suite
There should also be other GNU standard Makefile targets,
including all, distclean, mostlyclean, maintainer-clean, and
uninstall. See the Makefile standards in emacs help node
"(Standards) Standard Targets".
Once those are in place, then one can say
./configure && make all check install
or
./configure --prefix=/some/other/dir && make all check install
everywhere. These recipes already work for almost all GNUware
developed in the last five years or so.
(2) The private typedef for stack_t in engine.[ch] conflicts with a
typedef in system header files on at least IBM AIX 4.x. I had to
make source code changes to work around that problem: I just
renamed stack_t to Stack_t, but expat should have a more
distinctive name for that type.
(3) "make distclean" does not reduce the distribution directory to its
original state: I find these left over
% find . -mtime -1 -type f
./lib/xmlparse.B
./lib/xmltok.B
./lib/xmlrole.B
./config.cache
./Makefile
It is imperative to remove config.cache and Makefile, since they
are tuned by configure to a specific environment.
(4) Compilation on SGI IRIX 6.5 with c89 produces these failures:
c89 -DHAVE_CONFIG_H -DPACKAGE=\"expat\"
-DVERSION=\"expat_1.95.1\" -I. -I.. -g
-Wp,-MD,.deps/xmlparse.pp -c xmlparse.c -DPIC -o
.libs/xmlparse.lo
cc-1574 c89: ERROR
The definition of macro %sq is not valid.
cc-1005 c89: ERROR
The source file ".deps/xmlparse.pp" is unavailable.
2 catastrophic errors detected in the compilation of ".deps/xmlparse.pp".
c89 -DHAVE_CONFIG_H -DPACKAGE=\"expat\"
-DVERSION=\"expat_1.95.1\" -I. -I.. -g -Wp,-MD,.deps/xmltok.pp
-c xmltok.c -DPIC -o .libs/xmltok.lo
cc-1574 c89: ERROR
The definition of macro %sq is not valid.
cc-1005 c89: ERROR
The source file ".deps/xmltok.pp" is unavailable.
2 catastrophic errors detected in the compilation of ".deps/xmltok.pp".
c89 -DHAVE_CONFIG_H -DPACKAGE=\"expat\"
-DVERSION=\"expat_1.95.1\" -I. -I.. -g
-Wp,-MD,.deps/xmlrole.pp -c xmlrole.c -DPIC -o
.libs/xmlrole.lo
cc-1574 c89: ERROR
The definition of macro %sq is not valid.
cc-1005 c89: ERROR
The source file ".deps/xmlrole.pp" is unavailable.
2 catastrophic errors detected in the compilation of ".deps/xmlrole.pp".
I was able to do the build by switching to gcc.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- Center for Scientific Computing FAX: +1 801 585 1640, +1 801 581 4148 -
- University of Utah Internet e-mail: beebe@math.utah.edu -
- Department of Mathematics, 322 INSCC beebe@acm.org beebe@computer.org -
- 155 S 1400 E RM 233 beebe@ieee.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe -
-------------------------------------------------------------------------------