README.chromium
1 Name: libxslt
2 URL: http://xmlsoft.org/XSLT
3 Version: 1.1.26
4 Security Critical: yes
5 License: MIT
6 License File: Copyright
7
8 Description:
9 This directory contains a partial snapshot of the libxslt library
10 with the following modification:
11
12 1) Modified win32/configure.js to be able to clobber a read-only Makefile
13 This consists of:
14 replace ---
15 fso.CopyFile(makefile, ".\\Makefile", true);
16 with ---
17 var new_makefile = ".\\Makefile";
18 var f = fso.FileExists(new_makefile);
19 if (f) {
20 var t = fso.GetFile(new_makefile);
21 t.Attributes =0;
22 }
23 fso.CopyFile(makefile, new_makefile, true);
24 done ---
25
26 2) Modified libxslt/security.c to use GetFileAttributesA instead of GetFileAttributes.
27
28 3) Modified configure to not generate Makefiles.
29 This consists of:
30 replace ---
31 ac_config_files="$ac_config_files Makefile....
32 with ---
33 ac_config_files="$ac_config_files libxslt/xsltconfig.h libxslt/xsltwin32config.h libexslt/exsltconfig.h xslt-config"
34 done ---
35
36 4) Modified xsltconfig.h options:
37 - Change LIBXSLT_VERSION_EXTRA define to ""
38 - Change the DEBUG_MEMORY define to #if 0
39 - Change the WITH_MODULES define to #if 0
40 - Change the "Locale support" section to #if 0
41 - For good measure, change the LIBXSLT_DEFAULT_PLUGINS_PATH() define to "NULL"
42
43 Current version: 1.1.26, plus the following patches:
44 - A fix to get more compact generated IDs (http://git.gnome.org/browse/libxslt/commit/?id=ecb6bcb8d1b7e44842edde3929f412d46b40c89f)
45 - Import pattern parsing fix for commit: http://git.gnome.org/browse/libxslt/commit/?id=fe5a4fa33eb85bce3253ed3742b1ea6c4b59b41b
46 - A fix for XSLT node checking (from upstream, commit pending).
47 - A fix for dictionary string usage.
48
49 5) Converted to utf-8 with: vim +"argdo write ++enc=utf-8" *.c
50
51 6) A change to pattern.c to better handle an error condition parsing a broken
52 expression.
53
54 To import a new snapshot of libxslt:
55
56 - Visit http://xmlsoft.org/XSLT/downloads.html and download the latest source
57 distribution.
58 - Copy the files into this directory, omitting files which have been omitted
59 here.
60 - Run build/generate-win32-headers.bat to re-generate the configuration
61 headers.
62 - On Linux, 'cd linux && sh ../configure --with-libxml-src=../../libxml/linux/'
63 to re-generate configuration headers.
64 - On Mac, 'cd mac && sh ../configure --with-libxml-src=../../libxml/mac/'
65 to re-generate configuration headers.
66 - Perform the modification above.
67 - Update this README to reflect the new version number.
68 - When creating your CL, make sure to "svn add" any new source files, but
69 don't ever add in the files not needed for the Chromium build. (e.g.
70 Changelog, configure, etc) -- these are just bloat.
71