LoginHomeBugs & FeaturesDocumentationDownloadForums
ID:104
Status:5 - New
Priority:1 - Request for Enhancement, e.g. asking for a feature
Scope:3 - Applies to all machines and operating systems
Subsystem:Unassigned
Summary:[LOTS OF PATCHES] Build + EBCDIC
Version:Trunk
Created By:alonbl
Assigned To:Unassigned
Fix Version:Unassigned
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:

Post File

Name/Time/DateFilename
alonbl
13:25 May 13, 2010
mxml.diff
alonbl
12:38 May 14, 2010
mxml-native-encoding.patch
alonbl
13:21 May 14, 2010
mxml.diff
alonbl
13:30 May 14, 2010
mxml.diff
alonbl
12:43 May 22, 2010
mxml-native-build.diff

Trouble Report Dialog:

Name/Time/DateText
alonbl
13:25 May 13, 2010
Hello,

I've just found out that libxml2 cannot work in EBCDIC environment. The reason is that the source encoded in ASCII and the library assume it can use '<' == UTF_CHAR, while '<' is in fact in EBCDIC.

Same goes to mxml, however, it is much simpler library, so I added ENCODE_NATIVE encoding, which does not perform any conversion. And it works now.

In order to support cross compile, windows mingw, and proper "make check", "make dist", "make distcheck", separate builddir I also converted the proprietary Makefile to automake.

I also used libtool to create libraries, which is much more simple and generic than the manual attempt.

Then I reorganized the autoconf, to finish with the rewrite.

I also removed the generated files, there is no reason to store them in subversion.

More work to do is to move library files into src/lib, tools into src/tools to make it even more organized.

Please review, I will be happy to work with you in order to merge this work.

I hope I got this right.
alonbl
12:40 May 14, 2010
mxml-native-encoding.patch is native only changes. It works in EBCDIC environment, which is important as libxml2 does not and cannot.

It just uses native encoding, no translation, so it actually works.

The patch is missing adding --with-native-encoding at autoconf to set the ENABLE_NATIVE_ENCODING in config.h
alonbl
12:47 May 22, 2010
I posted latest diff against trunk.

Builds on Linux-2.6 (Intel, ppc), Linux-2.4, Windows(MSVC+mingw), Solaris-8, Solaris-10 (intel, sparc), AIX-5.3, AIX-6.1, OS/390.

Support cross compile, "make dist", "make check" and more.

Using libtool, automake.
Any other way would make it much harder.