Return to Bugs & Features · Post Text · Post File
| 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: | |
Trouble Report Files:
Post File
Trouble Report Dialog:
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. |
|