This is an automated email from the ASF dual-hosted git repository.
swebb2066 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4cxx.git
The following commit(s) were added to refs/heads/master by this push:
new 069d400f Update web site (#437)
069d400f is described below
commit 069d400f75b4d5ac5050152c671eaac2e0a050ad
Author: Stephen Webb <[email protected]>
AuthorDate: Sun Dec 1 11:53:52 2024 +1100
Update web site (#437)
* Update web site relese date
* Improve instructions for building on Windows
---
src/site/CMakeLists.txt | 20 +++-
src/site/markdown/change-report-gh.md | 4 +-
.../{build-cmake.md => build-cmake.md.in} | 107 ++++++++++++++-------
3 files changed, 92 insertions(+), 39 deletions(-)
diff --git a/src/site/CMakeLists.txt b/src/site/CMakeLists.txt
index 2ee5db9d..55152f46 100644
--- a/src/site/CMakeLists.txt
+++ b/src/site/CMakeLists.txt
@@ -19,20 +19,36 @@ file(RELATIVE_PATH LOG4CXX_REL_BIN_TO_SRC_DIR
"${LOG4CXX_SOURCE_DIR}" "${CMAKE_C
find_package( Doxygen REQUIRED dot )
+set(APACHE_LOGGING_DOWNLOAD_URL "https://downloads.apache.org/logging/")
set(LOG4CXX_SOURCE_PACKAGE_FILE_NAME
"apache-log4cxx-${LOG4CXX_RELEASE_VERSION}")
set(LOG4CXX_SOURCE_MIRROR_URL
"https://www.apache.org/dyn/closer.cgi/logging/log4cxx/${LOG4CXX_RELEASE_VERSION}/${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}")
-set(APACHE_LOGGING_DISTRIBUTION_URL "https://www.apache.org/dist/logging")
set(LOG4CXX_DOCUMENTATION_URL "https://logging.apache.org/log4cxx")
-set(LOG4CXX_DISTRIBUTION_URL
"${APACHE_LOGGING_DISTRIBUTION_URL}/log4cxx/${LOG4CXX_RELEASE_VERSION}/${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}")
+set(LOG4CXX_DISTRIBUTION_URL
"${APACHE_LOGGING_DOWNLOAD_URL}/log4cxx/${LOG4CXX_RELEASE_VERSION}/${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}")
set(LOG4CXX_RELEASE_MANAGER "ASF Logging Services RM")
set(LOG4CXX_RELEASE_MANAGER_KEY "077E8893A6DCC33DD4A4D5B256E73BA9A0B592D0")
+set(EXPAT_DOWNLOAD_URL "https://github.com/libexpat/libexpat/releases")
+set(EXPAT_RELEASE_VERSION "2.6.4")
+set(EXPAT_SOURCE_PACKAGE_FILE_NAME "expat-${EXPAT_RELEASE_VERSION}")
+
+set(APACHE_APR_DOWNLOAD_URL "https://apr.apache.org/download.cgi")
+set(APACHE_APR_SOURCE_PACKAGE_URL "https://archive.apache.org/dist/apr")
+set(APR_RELEASE_VERSION "1.7.5")
+set(APR_SOURCE_PACKAGE_FILE_NAME "apr-${APR_RELEASE_VERSION}")
+set(APR_SOURCE_PACKAGE_FILE_URL
"${APACHE_APR_SOURCE_PACKAGE_URL}/${APR_SOURCE_PACKAGE_FILE_NAME}")
+set(APR_UTIL_RELEASE_VERSION "1.6.3")
+set(APR_UTIL_SOURCE_PACKAGE_FILE_NAME "apr-util-${APR_UTIL_RELEASE_VERSION}")
+set(APR_UTIL_SOURCE_PACKAGE_FILE_URL
"${APACHE_APR_SOURCE_PACKAGE_URL}/${APR_UTIL_SOURCE_PACKAGE_FILE_NAME}")
+
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/doxy/Doxyfile.in
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile )
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/markdown/download.md.in
${CMAKE_CURRENT_BINARY_DIR}/markdown/download.md )
+configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/markdown/development/build-cmake.md.in
+ ${CMAKE_CURRENT_BINARY_DIR}/markdown/development/build-cmake.md )
+
add_custom_target( doc_doxygen ALL
COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
WORKING_DIRECTORY ${LOG4CXX_SOURCE_DIR}
diff --git a/src/site/markdown/change-report-gh.md
b/src/site/markdown/change-report-gh.md
index 7e2d9938..6617001b 100644
--- a/src/site/markdown/change-report-gh.md
+++ b/src/site/markdown/change-report-gh.md
@@ -25,7 +25,7 @@ Change Log {#changelog}
| Version | Date | Description |
| ------------------- | ---------- | -------------------- |
-| [1.3.1](#rel_1_3_1) | 2024-11-XX | Bugfix release |
+| [1.3.1](#rel_1_3_1) | 2024-11-30 | Bugfix release |
| [1.3.0](#rel_1_3_0) | 2024-10-21 | Maintenance release |
| [1.2.0](#rel_1_2_0) | 2024-01-01 | Maintenance release |
| [1.1.0](#rel_1_1_0) | 2023-05-01 | General bugfix release |
@@ -48,7 +48,7 @@ Change Log {#changelog}
| [0.0.1](#rel_0_1) | 2003-05-31 | |
-## Release 1.3.1 - 2024-11-XX {#rel_1_3_1}
+## Release 1.3.1 - 2024-11-30 {#rel_1_3_1}
This is a minor bugfix release to fix issues found with 1.3.0.
diff --git a/src/site/markdown/development/build-cmake.md
b/src/site/markdown/development/build-cmake.md.in
similarity index 57%
rename from src/site/markdown/development/build-cmake.md
rename to src/site/markdown/development/build-cmake.md.in
index fcdfb918..d75e9954 100644
--- a/src/site/markdown/development/build-cmake.md
+++ b/src/site/markdown/development/build-cmake.md.in
@@ -43,7 +43,7 @@ Building with CMake {#build-cmake}
# Examples
-## Unix type systems
+## Unix type systems {#Linux}
Make sure cmake (3.13+), g++, gzip, zip and make are available.
On a Debian system these may be installed by:
@@ -55,9 +55,9 @@ $ sudo apt-get install build-essential cmake gzip zip
and the cmake cursors UI to configure Log4cxx options.
~~~
$ apt-get install libapr1-dev libaprutil1-dev
-$ wget
https://dlcdn.apache.org/logging/log4cxx/1.3.0/apache-log4cxx-1.3.0.tar.gz
-$ tar xf apache-log4cxx-1.3.0.tar.gz
-$ cd apache-log4cxx-1.3.0
+$ wget ${LOG4CXX_DISTRIBUTION_URL}.tar.gz
+$ tar xf ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}.tar.gz
+$ cd ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}
$ mkdir build
$ cd build
$ ccmake ..
@@ -68,52 +68,89 @@ $ sudo make install
2. Install libraries locally in $HOME/libraries and
statically bind APR into the Log4cxx DSO.
~~~
-$ wget https://archive.apache.org/dist/apr/apr-1.7.4.tar.bz2
-$ tar xf apr-1.7.4.tar.bz2
-$ cd apr-1.7.4
+$ wget ${APR_SOURCE_PACKAGE_FILE_URL}.tar.bz2
+$ tar xf ${APR_SOURCE_PACKAGE_FILE_NAME}.tar.bz2
+$ cd ${APR_SOURCE_PACKAGE_FILE_NAME}
$ CFLAGS=-fPIC ./configure --prefix=$HOME/libraries
$ make install
$ cd $HOME
-$ wget https://archive.apache.org/dist/apr/apr-util-1.6.3.bz2
-$ tar xf apr-util-1.6.3.bz2
-$ cd apr-util-1.6.3
+$ wget ${APR_UTIL_SOURCE_PACKAGE_FILE_URL}.tar.bz2
+$ tar xf ${APR_UTIL_SOURCE_PACKAGE_FILE_NAME}.tar.bz2
+$ cd ${APR_UTIL_SOURCE_PACKAGE_FILE_NAME}
$ CFLAGS=-fPIC ./configure --with-apr=$HOME/libraries --prefix=$HOME/libraries
$ make install
$ cd $HOME
-$ wget
https://dlcdn.apache.org/logging/log4cxx/1.3.0/apache-log4cxx-1.3.0.tar.gz
-$ tar xf apache-log4cxx-1.3.0.tar.gz
-$ cmake -S apache-log4cxx-1.3.0 -B build/log4cxx -DAPR_STATIC=yes
-DAPU_STATIC=yes -DCMAKE_PREFIX_PATH=$HOME/libraries
-DCMAKE_INSTALL_PREFIX=$HOME/Libraries -DCMAKE_BUILD_TYPE=Release
+$ wget ${LOG4CXX_DISTRIBUTION_URL}.tar.gz
+$ tar xf ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}.tar.gz
+$ cmake -S ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME} -B build/log4cxx
-DAPR_STATIC=yes -DAPU_STATIC=yes -DCMAKE_PREFIX_PATH=$HOME/libraries
-DCMAKE_INSTALL_PREFIX=$HOME/Libraries -DCMAKE_BUILD_TYPE=Release
$ cmake --build build/log4cxx --target install
~~~
-## Windows
+## Windows {#Windows}
1. The easiest way to get dependencies installed is to use vcpkg.
-Follow the directions at
https://github.com/microsoft/vcpkg#quick-start-windows and then install
-the dependencies needed using `vcpkg install apr apr-util`.
-Command-line utilities(zip, grep, sed) are available in the Git for Windows
distribution (C:/Program Files/Git/usr/bin/)
-or Msys2 can be downloaded from: https://www.msys2.org/ and by default will be
installed under C:/msys2/bin.
-Unless you pass BUILD_TESTING=off, the location of command-line utilities must
be provided
+
+ Use these commands to build and install Log4cxx.
+~~~
+> cd "%HOMEPATH%/Libraries"
+> git clone https://github.com/Microsoft/vcpkg.git
+> cd vcpkg
+> .\bootstrap-vcpkg.bat
+> vcpkg install log4cxx
+~~~
+
+ To link to Log4cxx to your application,
+add
"-DCMAKE_TOOLCHAIN_FILE=%HOMEPATH%/Libraries/vcpkg/scripts/buildsystems/vcpkg.cmake"
+to your cmake command line arguments.
+
+2. Build from source in \%HOMEPATH\%/Libraries.
+
+ Use your browser to download Windows source:
+ * Expat from ${EXPAT_DOWNLOAD_URL},
+ * APR and APR-Util from ${APACHE_APR_DOWNLOAD_URL} and
+ * Log4cxx from ${LOG4CXX_SOURCE_MIRROR_URL}.
+
+ Extract the source code into directories in \%HOMEPATH\%/Libraries named:
+ * ${EXPAT_SOURCE_PACKAGE_FILE_NAME}
+ * ${APR_SOURCE_PACKAGE_FILE_NAME}
+ * ${APR_UTIL_SOURCE_PACKAGE_FILE_NAME}
+ * ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME}.
+
+ Use these commands to build and install dependencies.
+~~~
+> cd "%HOMEPATH%/Libraries"
+> cmake -S ${EXPAT_SOURCE_PACKAGE_FILE_NAME} -B buildtrees/expat
"-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed"
+> cmake --build buildtrees/expat --target install --config Release
+> cmake -S ${APR_SOURCE_PACKAGE_FILE_NAME} -B buildtrees/apr
"-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed"
+> cmake --build buildtrees/apr --target install --config Release
+> set "CMAKE_PREFIX_PATH=%HOMEPATH%/Libraries/installed"
+> cmake -S ${APR_UTIL_SOURCE_PACKAGE_FILE_NAME} -B buildtrees/apr-util
"-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed"
+> cmake --build buildtrees/apr-util --target install --config Release
+~~~
+
+ Use these commands to build and install Log4cxx.
+~~~
+> cd "%HOMEPATH%/Libraries"
+> cmake -S ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME} -B buildtrees/log4cxx
"-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed" -DBUILD_TESTING=off
+> cmake --build buildtrees/log4cxx --target install --config Release
+~~~
+
+3. Build and run unit tests in \%HOMEPATH\%/Libraries.
+The location of command-line utilities must be provided
to the Log4cxx cmake build in the LOG4CXX_TEST_PROGRAM_PATH cmake variable.
+Command-line utilities (zip, grep, sed) are available in Msys2 which can be
downloaded
+from: https://www.msys2.org/ and by default will be installed under
C:/msys64/usr/bin.
-2. Building from source in %HOMEPATH%/Libraries.
-Use your browser to download source for Expat from github, APR and APR-Util
from https://archive.apache.org/dist/apr/
-and Log4cxx from https://dlcdn.apache.org/logging/log4cxx/1.3.0.
-Extract the source code into directories libexpat, apr-1.7.4, apr-util-1.6.3
and apache-log4cxx-1.3.0.
+ Build and install dependencies using the above commands, then use these
commands to build Log4cxx and run Log4cxx unit tests.
~~~
-$ cd %HOMEPATH%/Libraries
-$ cmake -S libexpat/expat -B buildtrees/expat
-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed
-$ cmake --build buildtrees/expat --target install --config Release
-$ cmake -S apr-1.7.4 -B buildtrees/apr
-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed
-$ cmake --build buildtrees/apr --target install --config Release
-$ set CMAKE_PREFIX_PATH=%HOMEPATH%/Libraries/installed
-$ cmake -S apr-util-1.6.3 -B buildtrees/apr-util
-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed
-$ cmake --build buildtrees/apr-util --target install --config Release
-$ cmake -S apache-log4cxx-1.3.0 -B buildtrees/log4cxx
-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed
-DLOG4CXX_TEST_PROGRAM_PATH=C:/Program Files/Git/usr/bin
-$ cmake --build buildtrees/log4cxx --target install --config Release
+> cd "%HOMEPATH%/Libraries"
+> cmake -S ${LOG4CXX_SOURCE_PACKAGE_FILE_NAME} -B buildtrees/log4cxx
"-DCMAKE_INSTALL_PREFIX=%HOMEPATH%/Libraries/installed"
"-DLOG4CXX_TEST_PROGRAM_PATH=C:/msys64/usr/bin"
+> cmake --build buildtrees/log4cxx --config Debug
+> cd buildtrees/log4cxx
+> ctest -C Debug --output-on-failure
~~~
-## Mac OS/X:
+## Mac OS/X {#MacOS}
APR and APR-Util are provided by the platform in Mac OS/X 10.5 and iODBC in
10.4.
@@ -130,7 +167,7 @@ $ make
$ sudo make install
~~~
-## FreeBSD:
+## FreeBSD {#FreeBSD}
APR, APR-Util, gzip and zip may be installed from the ports collection by: