You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Alberto Massari (JIRA)" <xe...@xml.apache.org> on 2005/08/10 12:12:35 UTC

[jira] Updated: (XERCESC-769) RFE: Xerces-C++ modularization - config for smaller builds/remove features

     [ http://issues.apache.org/jira/browse/XERCESC-769?page=all ]

Alberto Massari updated XERCESC-769:
------------------------------------

    Bugzilla Id:   (was: 15785)
           type: Improvement  (was: Bug)
    Description: 
The Xerces-C++ documentation briefly mentions that Xerces is "modularized", but 
it is not obvious to me how that works. I have managed to prune it (2.1) down 
to a smaller library mostly by
- removing DOM support
- removing schema support
- removing the IANA charset name list (will file a separate bug for this one)

DOM support was very easy to remove, but schema support is wired deeply into 
the XMLScanner/XMLScanner2 files and others. Another problem is that there are 
several util/ and validator/common/ files that are not used once schema is 
removed. Those files should be moved to the schema/ folder.

This is a Request For Enhancement for better layering and/or compile-time 
#ifdef flags to make this easier. Things to cut out would be schema, DOM, all 
validation, DTD. Some of these would of course require others to be cut too.

I have managed to build a Xerces 2.1 DLL with 708 kB instead of 1816 kB (Win32 
Release). This also is without net accessors, uses in-memory messages, and uses 
ICUTransService. I can send a .zip file of what I have (in this case please 
send me an email at markus.scherer (at) us.ibm.com).

markus

  was:
The Xerces-C++ documentation briefly mentions that Xerces is "modularized", but 
it is not obvious to me how that works. I have managed to prune it (2.1) down 
to a smaller library mostly by
- removing DOM support
- removing schema support
- removing the IANA charset name list (will file a separate bug for this one)

DOM support was very easy to remove, but schema support is wired deeply into 
the XMLScanner/XMLScanner2 files and others. Another problem is that there are 
several util/ and validator/common/ files that are not used once schema is 
removed. Those files should be moved to the schema/ folder.

This is a Request For Enhancement for better layering and/or compile-time 
#ifdef flags to make this easier. Things to cut out would be schema, DOM, all 
validation, DTD. Some of these would of course require others to be cut too.

I have managed to build a Xerces 2.1 DLL with 708 kB instead of 1816 kB (Win32 
Release). This also is without net accessors, uses in-memory messages, and uses 
ICUTransService. I can send a .zip file of what I have (in this case please 
send me an email at markus.scherer (at) us.ibm.com).

markus

    Environment: 
Operating System: All
Platform: All

  was:
Operating System: All
Platform: All


> RFE: Xerces-C++ modularization - config for smaller builds/remove features
> --------------------------------------------------------------------------
>
>          Key: XERCESC-769
>          URL: http://issues.apache.org/jira/browse/XERCESC-769
>      Project: Xerces-C++
>         Type: Improvement
>   Components: Build
>     Versions: 2.1.0
>  Environment: Operating System: All
> Platform: All
>     Reporter: Markus Scherer
>     Assignee: Alberto Massari

>
> The Xerces-C++ documentation briefly mentions that Xerces is "modularized", but 
> it is not obvious to me how that works. I have managed to prune it (2.1) down 
> to a smaller library mostly by
> - removing DOM support
> - removing schema support
> - removing the IANA charset name list (will file a separate bug for this one)
> DOM support was very easy to remove, but schema support is wired deeply into 
> the XMLScanner/XMLScanner2 files and others. Another problem is that there are 
> several util/ and validator/common/ files that are not used once schema is 
> removed. Those files should be moved to the schema/ folder.
> This is a Request For Enhancement for better layering and/or compile-time 
> #ifdef flags to make this easier. Things to cut out would be schema, DOM, all 
> validation, DTD. Some of these would of course require others to be cut too.
> I have managed to build a Xerces 2.1 DLL with 708 kB instead of 1816 kB (Win32 
> Release). This also is without net accessors, uses in-memory messages, and uses 
> ICUTransService. I can send a .zip file of what I have (in this case please 
> send me an email at markus.scherer (at) us.ibm.com).
> markus

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org