Index | Thread | Search

From:
Caspar Schutijser <caspar@schutijser.com>
Subject:
Re: Fix krename-5.0.2 with podofo-0.10.5
To:
Rafael Sadowski <rafael@sizeofvoid.org>
Cc:
ports@openbsd.org
Date:
Sat, 6 Sep 2025 21:13:34 +0200

Download raw body.

Thread
Hi,

On Sun, Aug 03, 2025 at 08:59:46PM +0200, Rafael Sadowski wrote:
> Fix krename-5.0.2 with podofo 0.10

I have a couple of comments below.

> -		textproc/podofo \
> +		textproc/podofo>=0.10 \

I think this is not needed, right? The patches you're adding make sure
they work with both "old" podofo and "new" (>= 0.10) podofo. If you drop
this bit, this can be committed now already while podofo 0.10 has not
been committed yet. I tested it just now, and it works fine with
the podofo version we currently have in the ports tree.

>  		devel/kf5/kcompletion \
>  		devel/kf5/kconfig \
>  		devel/kf5/kcoreaddons \
> diff --git a/sysutils/krename/patches/patch-cmake_modules_FindPoDoFo_cmake b/sysutils/krename/patches/patch-cmake_modules_FindPoDoFo_cmake
> new file mode 100644
> index 00000000000..2f5ff072cce
> --- /dev/null
> +++ b/sysutils/krename/patches/patch-cmake_modules_FindPoDoFo_cmake

Did you borrow this patch from somewhere? If so, it would be nice to
link to an URL.

> @@ -0,0 +1,60 @@
> +Index: cmake/modules/FindPoDoFo.cmake
> +--- cmake/modules/FindPoDoFo.cmake.orig
> ++++ cmake/modules/FindPoDoFo.cmake
> +@@ -36,16 +36,9 @@
> + # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
> + # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> + 
> +-find_path(PoDoFo_INCLUDE_DIRS
> +-  NAMES podofo/podofo.h
> +-)
> +-find_library(PoDoFo_LIBRARIES
> +-  NAMES libpodofo podofo
> +-)
> ++include(FindPkgConfig)
> ++pkg_search_module(PoDoFo libpodofo libpodofo-0)
> + 
> +-include(FindPackageHandleStandardArgs)
> +-find_package_handle_standard_args(PoDoFo DEFAULT_MSG PoDoFo_LIBRARIES PoDoFo_INCLUDE_DIRS)
> +-
> + set(PoDoFo_DEFINITIONS)
> + if(PoDoFo_FOUND)
> +   if(WIN32)
> +@@ -61,17 +54,19 @@ if(PoDoFo_FOUND)
> +     endif()
> +   endif()
> + 
> +-  # PoDoFo-0.9.5 unconditionally includes openssl/opensslconf.h in a public
> +-  # header. The fix is in https://sourceforge.net/p/podofo/code/1830/ and will
> +-  # hopefully be released soon with 0.9.6. Note that krename doesn't use
> +-  # OpenSSL in any way.
> +-  file(STRINGS "${PoDoFo_INCLUDE_DIRS}/podofo/base/podofo_config.h" PoDoFo_MAJOR_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_MAJOR[ \t]+[0-9]+$")
> +-  file(STRINGS "${PoDoFo_INCLUDE_DIRS}/podofo/base/podofo_config.h" PoDoFo_MINOR_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_MINOR[ \t]+[0-9]+$")
> +-  file(STRINGS "${PoDoFo_INCLUDE_DIRS}/podofo/base/podofo_config.h" PoDoFo_PATCH_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_PATCH[ \t]+[0-9]+$")
> ++  find_file(PoDoFo_CONFIG podofo_config.h PATHS ${PoDoFo_INCLUDE_DIRS} PATH_SUFFIXES auxiliary base)
> ++  file(STRINGS "${PoDoFo_CONFIG}" PoDoFo_MAJOR_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_MAJOR[ \t]+[0-9]+$")
> ++  file(STRINGS "${PoDoFo_CONFIG}" PoDoFo_MINOR_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_MINOR[ \t]+[0-9]+$")
> ++  file(STRINGS "${PoDoFo_CONFIG}" PoDoFo_PATCH_VER_LINE REGEX "^#define[ \t]+PODOFO_VERSION_PATCH[ \t]+[0-9]+$")
> +   string(REGEX REPLACE "^#define[ \t]+PODOFO_VERSION_MAJOR[ \t]+([0-9]+)$" "\\1" PoDoFo_MAJOR_VER "${PoDoFo_MAJOR_VER_LINE}")
> +   string(REGEX REPLACE "^#define[ \t]+PODOFO_VERSION_MINOR[ \t]+([0-9]+)$" "\\1" PoDoFo_MINOR_VER "${PoDoFo_MINOR_VER_LINE}")
> +   string(REGEX REPLACE "^#define[ \t]+PODOFO_VERSION_PATCH[ \t]+([0-9]+)$" "\\1" PoDoFo_PATCH_VER "${PoDoFo_PATCH_VER_LINE}")
> +   set(PoDoFo_VERSION "${PoDoFo_MAJOR_VER}.${PoDoFo_MINOR_VER}.${PoDoFo_PATCH_VER}")
> ++
> ++  # PoDoFo-0.9.5 unconditionally includes openssl/opensslconf.h in a public
> ++  # header. The fix is in https://sourceforge.net/p/podofo/code/1830/ and will
> ++  # hopefully be released soon with 0.9.6. Note that krename doesn't use
> ++  # OpenSSL in any way.
> +   if(PoDoFo_VERSION VERSION_EQUAL "0.9.5")
> +     find_package(OpenSSL)
> +     if (OpenSSL_FOUND)
> +@@ -82,6 +77,10 @@ if(PoDoFo_FOUND)
> +       message("OpenSSL NOT found, which is required for this version of PoDofo (0.9.5)")
> +     endif()
> +   endif()
> ++endif()
> ++
> ++if(PoDoFo_VERSION VERSION_GREATER_EQUAL 0.10.0)
> ++  set(CMAKE_CXX_STANDARD 17)
> + endif()
> + 
> + mark_as_advanced(PoDoFo_INCLUDE_DIRS PoDoFo_LIBRARIES PoDoFo_DEFINITIONS)
> diff --git a/sysutils/krename/patches/patch-src_podofoplugin_cpp b/sysutils/krename/patches/patch-src_podofoplugin_cpp
> new file mode 100644
> index 00000000000..200835f4f3b
> --- /dev/null
> +++ b/sysutils/krename/patches/patch-src_podofoplugin_cpp

Same.