Opened 10 years ago

Closed 10 years ago

#23 closed defect (fixed)

expat: Compile with GCC

Reported by: dmik Owned by:
Priority: major Milestone:
Component: Version:
Severity: Keywords:
Cc:

Description

I found that there is no up-to-date verson of the Expat XML parser library for OS/2. We need one. One of the use cases is the git http push function (very needed as many repositories are hosted though HTTP/HTTPS and we're moving to git slightly). See #19 for details.

It seems that the current Expat 2.1.0 CVS has some support for OS/2 already. At least, they claim that they support OS/2 when building with Watcom: http://expat.cvs.sourceforge.net/viewvc/expat/expat/watcom/?hideattic=0&pathrev=R_2_1_0.

It should be easy to adopt the build to GCC.

Change History (6)

comment:1 Changed 10 years ago by dmik

Type: taskdefect

Quick search shows that many DOS-related changes are marked with WATCOM. This should be extended to include OS2. We should also pay attention to pieces of code guarded with WIN32.

comment:2 Changed 10 years ago by dmik

Imported 2.1.0 sources (CVS tag R_2_1_0) and created trunk out of it in r738.

comment:3 Changed 10 years ago by dmik

As it turned out, expat needed autoconf and automate. I did that (see #24) but there is a new problem now: we miss libtool. I will try to see if it's easy to build it from sources (http://www.gnu.org/software/libtool/). There is also quite a recent version on hobbes — http://hobbes.nmsu.edu/download/pub/os2/dev/util/libtool-2.4.2.zip (from KOMH too).

comment:4 Changed 10 years ago by dmik

As it turned out, expat needed autoconf and automate. I did that (see #24) but there is a new problem now: we miss libtool. I will try to see if it's easy to build it from sources (http://www.gnu.org/software/libtool/). There is also quite a recent version on hobbes — http://hobbes.nmsu.edu/download/pub/os2/dev/util/libtool-2.4.2.zip (from KOMH too).

comment:5 Changed 10 years ago by dmik

After doing libtool and bootstrapping configure and all auxiliary files (including lt-main and such), expat builds now. I only added a small patch for OS/2 in r767.

There are two small problems though. There is still one place where \n gets incorrectly converted to n (see #29) - this time it's library name. As a result, we get a file named expat.dll but it's LIBRARY value is expatn which breaks everything.

Another libtool problem is that its install-sh script trims the .exe extension from the executable when copying it to the target location. Should be easy to fix too.

comment:6 Changed 10 years ago by dmik

Resolution: fixed
Status: newclosed

The remaining libtool problem was fixed in r768. The .exe problem turned out to be a Makefile.in bug. Fixed in r769. There is also a fix for bootstrapping in r770. All works well now. I will commit bootstrapped configure and other stuff needed for building when I'm done with all the tools' RPMs (autoconf/automake/libtool/m4) just to give it some more time for possible bug hunting.

All in all, this task is done. Short experiments with xmlwf.exe (simple XML document well-formedness checker) show that EXPAT works. Future bugs are to be reported as separate tickets. An RPM is about to be created within a few days.

Note: See TracTickets for help on using tickets.