build: resolve cmake warning by specifying minimum version on first line
Done to resolve warning
CMake Warning (dev) at CMakeLists.txt:1 (project):
cmake_minimum_required() should be called prior to this top-level project()
call. Please see the cmake-commands(7) manual for usage documentation of
both commands.
This warning is for project developers. Use -Wno-dev to suppress it.
build: remove duplicated sources list from CMakeLists
CMake was bumped due to the dependency on list transformers, which were employed to always ensure that CMake is supplied the absolute path to source files.
In preparation for potential refactoring of the codebase into smaller, reusable libraries, headers should abstain from containing dependency-specific definitions, if possible
A dependent project shouldn't be concerned with what was used to build the library, assuming ideal circumstances. Keeping in line with that, forward declarations were employed to remove the libxml2 includes from the header.
Additional Notes
contrib: add .gitignore
build: resolve cmake warning by specifying minimum version on first line
build: remove duplicated sources list from CMakeLists
refactor: don't expose libxml2 headers, forward declare types instead
libxml2
includes from the header.