1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 20:25:14 +03:00
Commit Graph

97 Commits

Author SHA1 Message Date
Nick Wellnhofer
17d505e2d2 Remove -Wredundant-decls
Some Python headers contain redundant redeclarations.
2022-09-02 18:33:36 +02:00
Nick Wellnhofer
4d911ebc08 Call AC_CHECK_* with multiple arguments 2022-09-02 18:33:36 +02:00
Nick Wellnhofer
75bd98a5ef Remove unused code in nanohttp.c
This was hidden behind an undocumented flag RES_USE_INET6.
2022-09-02 18:33:36 +02:00
Nick Wellnhofer
5bffa33a12 Stop including sys/types.h 2022-09-02 18:33:36 +02:00
Nick Wellnhofer
05fc6ee27c configure.ac: Remove checks for unused programs 2022-09-02 18:33:36 +02:00
Nick Wellnhofer
16ae1d8f71 Don't define WIN32 macro 2022-09-02 18:33:36 +02:00
Nick Wellnhofer
0f77167f76 Rework library detection in configure.ac
Migrate to AC_CHECK_LIB and AC_SEARCH_LIBS. Don't pollute CPPFLAGS,
LDFLAGS and LIBS.
2022-09-02 18:33:36 +02:00
Nick Wellnhofer
f2dda8e804 Rearrange configure.ac
Move some sections around and align headers.
2022-09-02 18:33:36 +02:00
Nick Wellnhofer
6a5c88cc5e Consolidate zlib and lzma detection
Don't depend on a global variable for flag backup. Now the blocks can be
moved freely around.
2022-09-02 18:33:36 +02:00
Nick Wellnhofer
59f2f60e3e Remove "runtime debugging"
This doesn't seem useful as configuration option.
2022-09-02 18:33:35 +02:00
Nick Wellnhofer
b4847d60b9 Consolidate simple API modules in configure.ac
Add some small consistency fixes.
2022-09-02 18:33:35 +02:00
Nick Wellnhofer
88a8757bfe Fix dependency resolution in configure.ac
This mainly fixes the case of disabling a single module, for example

    ./configure --without-xpath

Before, there were still a few cases where a module wouldn't be disabled
unless another module depending on it were disabled, too. Finding the
correct options to really disable some modules could be extremely hard
for casual users.

Now every --without option should reliably disable dependent modules
unless they were specifcally requested. In the latter case, a warning is
printed consistently.

Some missing dependencies were added and the logic was consolidated in a
single code section.
2022-09-02 18:33:35 +02:00
Nick Wellnhofer
14d38a7114 Don't build unneeded .c source files 2022-09-02 18:33:35 +02:00
Xi Ruoyao
df003c0aea build: require automake-1.16.3 or later
We need
https://git.savannah.gnu.org/cgit/automake.git/commit/?id=e21d46f
to avoid an error like

    checking for PYTHON... no
    configure: error: Package requirements (python-3.1) were not met:

    No package 'python-3.1' found

With python-3.10.

Partially fixes #392.

Note that there is another issue with python-3.10, like:

    checking for python... no
    checking for python2... no
    checking for python3... no
    checking for python3.9... no
    ...
    configure: error: no suitable Python interpreter found

Fixing this one will need to require bumping automake version again, but
the automake version containing this fix is not released yet.  And, this
is rather minor because most environment has "python3" as a symlink to
"python3.10" or whatever the latest python3.x installed.
2022-08-26 14:38:36 +00:00
Nick Wellnhofer
0f568c0b73 Consolidate private header files
Private functions were previously declared

- in header files in the root directory
- in public headers guarded with IN_LIBXML
- in libxml.h
- redundantly in source files that used them.

Consolidate all private header files in include/private.
2022-08-26 02:11:56 +02:00
Nick Wellnhofer
2bea68afb5 Bump version to 2.11.0
This will be the next release cut from the master branch.
2022-08-25 13:53:38 +02:00
Nick Wellnhofer
ae383bdb74 Release v2.10.0 2022-08-17 13:22:20 +02:00
Nick Wellnhofer
3c4e4bb726 Fix build with older pkg-config versions
The PKG_CHECK_VAR macro was introduced in pkg-config 0.28. Guard the
invocation with m4_ifdef.

Fixes #374.
2022-08-05 16:24:51 +02:00
Nick Wellnhofer
670701075b Add configuration flag for XPointer locations support
Add a new configuration flag that controls whether the outdated support
for XPointer locations (ranges and points) is enabled.

    --with-xptr-locs          # Autotools
    LIBXML2_WITH_XPTR_LOCS    # CMake

The latest spec for what it essentially an XPath extension seems to be
this working draft from 2002:

    https://www.w3.org/TR/xptr-xpointer/

The xpointer() scheme is listed as "being reviewed" in the XPointer
registry since at least 2006. libxml2 seems to be the only modern
software that tries to implement this spec, but the code has many bugs
and quality issues.

The flag defaults to "off" and support for this extensions has to be
requested explicitly. The relevant API functions are deprecated.
2022-04-21 02:41:58 +02:00
Christopher Degawa
f60e219325 configure: move XML_PRIVATE_LIBS after WIN32_EXTRA_LIBADD is set
currently the pkg-config file lacks -lws2_32 because WIN32_EXTRA_LIBADD
isn't set by the time XML_PRIVATE_LIBS is set

Signed-off-by: Christopher Degawa <ccom@randomderp.com>
2022-04-04 02:40:16 +00:00
Nick Wellnhofer
5ce893c0c4 Move regexp tests to runtest 2022-04-04 04:28:15 +02:00
Nick Wellnhofer
0cca7b511c Move testModule to new test suite
Invoke testModule when the modern test suite is run with 'make check'.
2022-04-04 04:18:07 +02:00
Nick Wellnhofer
f23ca9f9ea Move testThreads to new test suite
Invoke testThreads when the modern test suite is run with 'make check'.
2022-04-04 04:18:07 +02:00
Nick Wellnhofer
48b03c8479 Remove major parts of old test suite
Remove all the parts of the old test suite which are covered by
runtest.c for quite some time.

The following test programs are removed:

- testC14N
- testHTML
- testReader
- testRelax
- testSAX
- testSchemas
- testURI
- testXPath

This also removes a few results of unimportant tests only run by the old
test suite.
2022-04-04 04:14:55 +02:00
Nick Wellnhofer
1db151aceb Remove LIBS from XML_PRIVATE_LIBS 2022-04-03 14:37:45 +02:00
Nick Wellnhofer
cf6cd81c3e Add WIN32_EXTRA_LIBADD to XML_PRIVATE_LIBS 2022-04-03 14:08:45 +02:00
David Seifert
d47c52ac2b Avoid obsolescent test -a constructs
* POSIX calls the `-a` operator obsolescent and strongly discourages
  its use, instead recommending chaining `test` calls instead:
  https://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html
2022-04-02 19:43:06 +00:00
Nick Wellnhofer
c8ccb727b1 Move AM_MAINTAINER_MODE to AM section 2022-04-02 18:03:44 +02:00
James Hilliard
0f04d5a12b configure: check for icu DEFS
In some cases we need to add additional defs to build against icu if
icu has certain options configured.

ICU warns about this when building:

*** WARNING: You must set the following flags before code compiled against this ICU will function properly:

    -DU_DISABLE_RENAMING=1

We can fetch these flags from the icu pkgconfig and add them if
required.

This fixes symbol errors if ICU is built without renaming.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
2022-04-02 15:54:37 +00:00
David Seifert
5ccdfa43ff configure.ac: produce tar.xz only (GNOME policy)
* This is part of a policy from 2011:
  https://mail.gnome.org/archives/distributor-list/2011-September/msg00000.html
2022-04-02 15:00:59 +00:00
David Seifert
7bce30083a configure.ac: make AM_SILENT_RULES([yes]) unconditional
* No need to support Automake 1.10 anymore.
2022-04-02 15:00:59 +00:00
Nick Wellnhofer
1366c5693d Don't try to recreate COPYING symlink
Since automake is initialized with "foreign" for quite some while,
it shouldn't touch these files anymore.
2022-04-02 15:36:22 +02:00
David Seifert
5c71ada83a
Detect libm using libtool's macros 2022-03-30 16:51:17 +02:00
David Seifert
dff686883c
configure.ac: disable static libraries by default 2022-03-30 16:51:16 +02:00
David Seifert
9e30435358
python/Makefile.am: rely on global AM_INIT_AUTOMAKE
* Even Debian oldoldstable has Automake 1.15 available nowadays.
2022-03-30 16:51:14 +02:00
David Seifert
7a4037bea2
configure.ac: remove useless AC_SUBST
* CPPFLAGS/LDFLAGS are always substituted
2022-03-30 16:51:12 +02:00
Nick Wellnhofer
456a0bf6cb Remove --with-html-dir option
Install documentation in $(docdir).
2022-03-29 16:24:19 +02:00
Nick Wellnhofer
7458096766 Rework documentation build system
Since several generated files are under version control, their
timestamps are essentially random and rebuilding documentation using
Makefile rules can't work reliably. Simply add a phony rebuild target
that regenerates the whole documentation and other files
unconditionally.

    make -C doc rebuild
2022-03-29 16:24:19 +02:00
David Seifert
d9335077dd
Use AM_PATH_PYTHON/PKG_CHECK_MODULES for python bindings
* `AM_PATH_PYTHON` is a much more common idiom for building
  and installing python modules than writing your own.
* It also makes cross-compiling the python bindings possible.
  Previously the `PYTHON_CFLAGS`/`PYTHON_LIBS` would have been
  based on the `--build` python and not the `--host` python.
  By using `pkg-config`, we can always redirect the python-X.Y.pc.

Bug: https://bugs.gentoo.org/582130
2022-03-29 13:37:16 +02:00
Nick Wellnhofer
4a8c71eb7c Remove DOCBparser
This code has been broken and deprecated since version 2.6.0, released
in 2003. Because of a bug in commit 961b535c, DOCBparser.c was never
compiled since 2012. I couldn't find a Debian package using any of its
symbols, so it seems safe to remove this module.
2022-03-04 22:56:21 +01:00
Nick Wellnhofer
21ddad5284 Remove ICONV_CONST test
We can simply cast the offending pointer to (void *).
2022-03-04 22:08:58 +01:00
Nick Wellnhofer
5c009c668b Remove obsolete AC_HEADER checks 2022-03-02 01:31:56 +01:00
Nick Wellnhofer
72119afe00 Don't check for standard C89 library functions
Don't check for

- fprintf
- localtime
- printf
- rand
- sprintf
- srand
- sscanf
- strftime
- time
- vfprintf
- vsprintf

If the C99 functions snprintf and vsnprintf are missing, Trio is
enabled.
2022-03-02 01:14:08 +01:00
Nick Wellnhofer
776d15d383 Don't check for standard C89 headers
Don't check for

- ctype.h
- errno.h
- float.h
- limits.h
- math.h
- signal.h
- stdarg.h
- stdlib.h
- string.h
- time.h

Stop including non-standard headers

- malloc.h
- strings.h
2022-03-02 00:43:54 +01:00
Nick Wellnhofer
b66ce0bba8 Don't include ICU headers in public headers
There's no need to make these implementation details public.
2022-03-01 13:02:49 +01:00
Nick Wellnhofer
6117700e2c Remove special configuration for certain maintainers 2022-02-20 21:49:05 +01:00
Nick Wellnhofer
aeaf02c0a3 Disable docbook support by default
The docbook code is broken and has been deprecated for years.
2022-02-20 21:49:04 +01:00
Nick Wellnhofer
96889d195b Disable legacy support by default
If you need support for legacy APIs, you have to enable it explicitly:

    ./configure --with-legacy
2022-02-20 21:49:04 +01:00
Nick Wellnhofer
a0a0f3be93 Disable FTP support by default
In the unlikely case that you really need FTP support, you have to
enable it explicitly with:

    ./configure --with-ftp
2022-02-20 21:49:04 +01:00
Nick Wellnhofer
a075d256fd Release v2.9.13 2022-02-19 19:26:42 +01:00