Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libdxfrw for openSUSE:Factory checked in at 2021-05-08 22:07:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libdxfrw (Old) and /work/SRC/openSUSE:Factory/.libdxfrw.new.2988 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libdxfrw" Sat May 8 22:07:35 2021 rev:9 rq:891398 version:1.0.1+git.20200429 Changes: -------- --- /work/SRC/openSUSE:Factory/libdxfrw/libdxfrw.changes 2019-05-25 13:21:19.916312087 +0200 +++ /work/SRC/openSUSE:Factory/.libdxfrw.new.2988/libdxfrw.changes 2021-05-08 22:08:45.169395667 +0200 @@ -1,0 +2,27 @@ +Tue May 04 06:47:19 UTC 2021 - jsl...@suse.cz + +- Update to version 1.0.1+git.20200429: + * Fix includes install dir + * Export target as libdxfrw::libdxfrw to keep consistency with Conan packages + * Add archive destination in install + * Install DXFRW::dxfrw target + * Remove duplicate target properties + * Remove version from pkg-config file + * Let CMake handle C++11 compiler definition + * Change minimal required CMake version to 3.0 + * cmake: add doc target + * README.md: fix typo + * cmake: generate and install pkgconfig + * cmake: add one for dwg2dxf + * cmake: set library VERSIONs + * cmake: use GNUInstallDirs +- add patches (build fixes) + * libdxfrw.pc.in-fix-expansion-and-include-path.patch + * drw_header-fix-indentation-level.patch +- remove patches (they got upstreamed) + * 0001-cmake-use-GNUInstallDirs.patch + * 0002-cmake-set-library-VERSIONs.patch + * 0003-cmake-add-one-for-dwg2dxf.patch + * 0004-cmake-generate-and-install-pkgconfig.patch + +------------------------------------------------------------------- Old: ---- 0001-cmake-use-GNUInstallDirs.patch 0002-cmake-set-library-VERSIONs.patch 0003-cmake-add-one-for-dwg2dxf.patch 0004-cmake-generate-and-install-pkgconfig.patch libdxfrw-0.6.3+git.20190501.tar.xz New: ---- drw_header-fix-indentation-level.patch libdxfrw-1.0.1+git.20200429.tar.xz libdxfrw.pc.in-fix-expansion-and-include-path.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libdxfrw.spec ++++++ --- /var/tmp/diff_new_pack.hEJ9wR/_old 2021-05-08 22:08:45.621393709 +0200 +++ /var/tmp/diff_new_pack.hEJ9wR/_new 2021-05-08 22:08:45.625393692 +0200 @@ -1,7 +1,7 @@ # # spec file for package libdxfrw # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2021 SUSE LLC # Copyright (c) 2015 Asterios Dramis <asterios.dra...@gmail.com>. # # All modifications and additions to the file contributed by third parties @@ -17,20 +17,18 @@ # -%define so_ver 0 +%define so_ver 1 Name: libdxfrw -Version: 0.6.3+git.20190501 +Version: 1.0.1+git.20200429 Release: 0 Summary: Library to read and write DXF files License: GPL-2.0-or-later Group: Development/Libraries/C and C++ -Url: https://github.com/LibreCAD/libdxfrw/ +URL: https://github.com/LibreCAD/libdxfrw/ Source0: %{name}-%{version}.tar.xz -Patch0: 0001-cmake-use-GNUInstallDirs.patch -Patch1: 0002-cmake-set-library-VERSIONs.patch -Patch2: 0003-cmake-add-one-for-dwg2dxf.patch -Patch3: 0004-cmake-generate-and-install-pkgconfig.patch +Patch0: libdxfrw.pc.in-fix-expansion-and-include-path.patch +Patch1: drw_header-fix-indentation-level.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: ninja @@ -63,8 +61,7 @@ ascii and binary form. %prep -%setup -q -%autopatch -p1 +%autosetup -p1 %build %define __builder ninja @@ -82,8 +79,10 @@ %defattr(-,root,root,-) %doc AUTHORS ChangeLog README TODO %license COPYING -%{_includedir}/libdxfrw0/ -%{_libdir}/pkgconfig/libdxfrw0.pc +%{_includedir}/libdxfrw/ +%{_libdir}/pkgconfig/libdxfrw.pc +%dir %{_libdir}/cmake/libdxfrw/ +%{_libdir}/cmake/libdxfrw/*.cmake %{_libdir}/libdxfrw.so %files tools ++++++ _service ++++++ --- /var/tmp/diff_new_pack.hEJ9wR/_old 2021-05-08 22:08:45.649393588 +0200 +++ /var/tmp/diff_new_pack.hEJ9wR/_new 2021-05-08 22:08:45.649393588 +0200 @@ -4,7 +4,7 @@ <param name="scm">git</param> <param name="changesgenerate">enable</param> <param name="filename">libdxfrw</param> - <param name="versionformat">0.6.3+git.%cd</param> + <param name="versionformat">@PARENT_TAG@+git.%cd</param> </service> <service mode="disabled" name="recompress"> <param name="file">*.tar</param> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.hEJ9wR/_old 2021-05-08 22:08:45.669393502 +0200 +++ /var/tmp/diff_new_pack.hEJ9wR/_new 2021-05-08 22:08:45.669393502 +0200 @@ -1,4 +1,4 @@ <servicedata> <service name="tar_scm"> <param name="url">git://github.com/LibreCAD/libdxfrw/</param> - <param name="changesrevision">ba4b597ebfd86a0ca903c5fdc335143f7db236e2</param></service></servicedata> \ No newline at end of file + <param name="changesrevision">16642a70cb8865742467f6bc1d8c3618deee8432</param></service></servicedata> \ No newline at end of file ++++++ drw_header-fix-indentation-level.patch ++++++ From: Jiri Slaby <jsl...@suse.cz> Date: Tue, 4 May 2021 11:17:47 +0200 Subject: drw_header: fix indentation level Patch-mainline: Submitted pr#21 References: compiler warning fix The compiler complains about weird indentation level in drw_header.cpp: ../src/drw_header.cpp: In member function 'void DRW_Header::write(dxfWriter*, DRW::Version)': ../src/drw_header.cpp:474:5: warning: this 'else' clause does not guard... [-Wmisleading-indentation] 474 | else | ^~~~ ../src/drw_header.cpp:476:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'else' 476 | writer->writeString(9, "$DIMSAH"); | ^~~~~~ Fix this by pushing it one level left. Signed-off-by: Jiri Slaby <jsl...@suse.cz> --- src/drw_header.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/drw_header.cpp b/src/drw_header.cpp index 4812360c6091..ac8f65f35c0a 100644 --- a/src/drw_header.cpp +++ b/src/drw_header.cpp @@ -473,11 +473,11 @@ void DRW_Header::write(dxfWriter *writer, DRW::Version ver){ writer->writeInt16(70, varInt); else writer->writeInt16(70, 0); - writer->writeString(9, "$DIMSAH"); - if (getInt("$DIMSAH", &varInt)) - writer->writeInt16(70, varInt); - else - writer->writeInt16(70, 0); + writer->writeString(9, "$DIMSAH"); + if (getInt("$DIMSAH", &varInt)) + writer->writeInt16(70, varInt); + else + writer->writeInt16(70, 0); writer->writeString(9, "$DIMBLK1"); if (getStr("$DIMBLK1", &varStr)) if (ver == DRW::AC1009) -- 2.31.1 ++++++ libdxfrw-0.6.3+git.20190501.tar.xz -> libdxfrw-1.0.1+git.20200429.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/CMakeLists.txt new/libdxfrw-1.0.1+git.20200429/CMakeLists.txt --- old/libdxfrw-0.6.3+git.20190501/CMakeLists.txt 2019-05-01 19:50:15.000000000 +0200 +++ new/libdxfrw-1.0.1+git.20200429/CMakeLists.txt 2020-04-29 19:23:17.000000000 +0200 @@ -1,6 +1,14 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) -PROJECT (DXFRW) -ADD_DEFINITIONS(-std=c++11) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0) + +cmake_policy(SET CMP0048 NEW) +project(DXFRW VERSION 1.0.1) + +include(GNUInstallDirs) + +set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) + +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD_REQUIRED ON) # SOURCE FILES set(libdxfrw_srcs @@ -59,16 +67,69 @@ src/libdxfrw.h ) - -# DEBUGGING PATHS -get_property(dirs DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES) -foreach(dir ${dirs}) - message(STATUS "dir='${dir}'") -endforeach() +set(LIBDXFRW_INSTALL_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR}/libdxfrw) -add_library(dxfrw SHARED ${libdxfrw_srcs} ${libdxfrw_hdrs}) +add_library(dxfrw ${libdxfrw_srcs} ${libdxfrw_hdrs}) +set_target_properties(dxfrw PROPERTIES + VERSION "${PROJECT_VERSION}" + SOVERSION "${PROJECT_VERSION_MAJOR}" + EXPORT_NAME libdxfrw +) +target_compile_features(dxfrw PUBLIC cxx_std_11) +target_include_directories(dxfrw + PUBLIC + $<INSTALL_INTERFACE:${LIBDXFRW_INSTALL_INCLUDEDIR}> +) + +add_custom_command(OUTPUT doc/html/index.html + COMMAND doxygen ARGS ${CMAKE_CURRENT_SOURCE_DIR}/libdxfrw.dox + MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/libdxfrw.dox + VERBATIM) + +add_custom_target(doc + DEPENDS doc/html/index.html) + +add_subdirectory(dwg2dxf) # INSTALLATION -install(TARGETS dxfrw DESTINATION lib) -set(HDRSUBDIR "/libdxfrw0/") -install(FILES ${installdxfrw_hdrs} DESTINATION include${HDRSUBDIR}) +set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/libdxfrw) + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libdxfrw.pc.in libdxfrw.pc) + +install(TARGETS dxfrw + EXPORT libdxfrw-targets + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) + +install(EXPORT libdxfrw-targets + FILE libdxfrwTargets.cmake + NAMESPACE libdxfrw:: + DESTINATION ${INSTALL_CONFIGDIR} +) + +include(CMakePackageConfigHelpers) +configure_package_config_file(${CMAKE_CURRENT_LIST_DIR}/cmake/libdxfrwConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/libdxfrwConfig.cmake + INSTALL_DESTINATION ${INSTALL_CONFIGDIR} +) +write_basic_package_version_file( + ${CMAKE_CURRENT_BINARY_DIR}/libdxfrwConfigVersion.cmake + VERSION ${PROJECT_VERSION} + COMPATIBILITY AnyNewerVersion +) + +install(FILES + ${installdxfrw_hdrs} + DESTINATION ${LIBDXFRW_INSTALL_INCLUDEDIR} +) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/libdxfrw.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig +) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/libdxfrwConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/libdxfrwConfigVersion.cmake + DESTINATION ${INSTALL_CONFIGDIR} +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/README.md new/libdxfrw-1.0.1+git.20200429/README.md --- old/libdxfrw-0.6.3+git.20190501/README.md 2019-05-01 19:50:15.000000000 +0200 +++ new/libdxfrw-1.0.1+git.20200429/README.md 2020-04-29 19:23:17.000000000 +0200 @@ -10,7 +10,7 @@ http://sourceforge.net/projects/libdxfrw -WARNING: This project is a fork to add a CMakeLists.txt for some of our downstream project's in LibreCAD to make compiling and following this project easer. +WARNING: This project is a fork to add a CMakeLists.txt for some of our downstream project's in LibreCAD to make compiling and following this project easier. ========== Building and installing the library diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/cmake/libdxfrwConfig.cmake new/libdxfrw-1.0.1+git.20200429/cmake/libdxfrwConfig.cmake --- old/libdxfrw-0.6.3+git.20190501/cmake/libdxfrwConfig.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/libdxfrw-1.0.1+git.20200429/cmake/libdxfrwConfig.cmake 2020-04-29 19:23:17.000000000 +0200 @@ -0,0 +1,5 @@ +get_filename_component(DXFRW_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) + +if(NOT TARGET libdxfrw::libdxfrw) + include("${DXFRW_CMAKE_DIR}/libdxfrwTargets.cmake") +endif() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/conanfile.py new/libdxfrw-1.0.1+git.20200429/conanfile.py --- old/libdxfrw-0.6.3+git.20190501/conanfile.py 1970-01-01 01:00:00.000000000 +0100 +++ new/libdxfrw-1.0.1+git.20200429/conanfile.py 2020-04-29 19:23:17.000000000 +0200 @@ -0,0 +1,33 @@ +from conans import ConanFile, CMake + + +class LibdxfrwConan(ConanFile): + name = "libdxfrw" + version = "1.0.0" + license = "GPL2" + url = "https://github.com/LibreCAD/libdxfrw" + description = "C++ library to read/write DXF files in binary and ascii form and to read DWG from r14 to v2015" + topics = ("dxf", "dwg") + settings = "os", "compiler", "build_type", "arch" + options = {"shared": [True, False]} + default_options = {"shared": False} + generators = "cmake" + + def source(self): + self.run("git clone --branch " + self.version + " https://github.com/LibreCAD/libdxfrw.git") + + def build(self): + cmake = self._configure_cmake() + cmake.build() + + def package(self): + cmake = self._configure_cmake() + cmake.install() + + def _configure_cmake(self): + cmake = CMake(self) + cmake.configure(source_folder="libdxfrw") + return cmake + + def package_info(self): + self.cpp_info.libs = ["dxfrw"] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/dwg2dxf/CMakeLists.txt new/libdxfrw-1.0.1+git.20200429/dwg2dxf/CMakeLists.txt --- old/libdxfrw-0.6.3+git.20190501/dwg2dxf/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/libdxfrw-1.0.1+git.20200429/dwg2dxf/CMakeLists.txt 2020-04-29 19:23:17.000000000 +0200 @@ -0,0 +1,10 @@ +add_definitions(-Wall) +include_directories(../src) + +include(GNUInstallDirs) + +add_executable(dwg2dxf dx_iface.cpp main.cpp dx_iface.h dx_data.h) +target_link_libraries(dwg2dxf dxfrw) + +install(TARGETS dwg2dxf DESTINATION "${CMAKE_INSTALL_BINDIR}") +install(FILES dwg2dxf.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdxfrw-0.6.3+git.20190501/libdxfrw.pc.in new/libdxfrw-1.0.1+git.20200429/libdxfrw.pc.in --- old/libdxfrw-0.6.3+git.20190501/libdxfrw.pc.in 2019-05-01 19:50:15.000000000 +0200 +++ new/libdxfrw-1.0.1+git.20200429/libdxfrw.pc.in 2020-04-29 19:23:17.000000000 +0200 @@ -1,10 +1,10 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ +prefix=${CMAKE_INSTALL_PREFIX} +exec_prefix=${CMAKE_INSTALL_PREFIX} +libdir=|${CMAKE_INSTALL_FULL_LIBDIR} +includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR} Name: libdxfrw Description: c++ library to read/write dxf files in binary and ascii form -Version: @PACKAGE_VERSION@ +Version: ${PROJECT_VERSION} Libs: -L${libdir} -ldxfrw -Cflags: -I${includedir}/libdxfrw@LIBRARY_AGE@ +Cflags: -I${includedir}/libdxfrw${PROJECT_VERSION_MAJOR} ++++++ libdxfrw.pc.in-fix-expansion-and-include-path.patch ++++++ From: Jiri Slaby <jsl...@suse.cz> Date: Tue, 4 May 2021 11:02:42 +0200 Subject: libdxfrw.pc.in: fix expansion and include path Patch-mainline: Submitted pr#21 References: pkgconfig fix The include dirs are processed by cmake's configure_file since commit 3431cc658681 (Fix building of pkgconfig on Windows). That means every dollar referenced variables are expanded. But ${libdir} and ${includedir} are meant as pkgconfig variables, so should not be expanded. Fix this by @ONLY option of configure_file (and change all ${X} references to @X@). And since commit 70ff2fe82faf (Install DXFRW::dxfrw target), include files have no version number in the path. They reside in /usr/include/libdxfrw/*. Fix this too by removing the version suffix. Signed-off-by: Jiri Slaby <jsl...@suse.cz> --- CMakeLists.txt | 2 +- libdxfrw.pc.in | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b35cd1a270e9..a57c47139340 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -94,7 +94,7 @@ add_subdirectory(dwg2dxf) # INSTALLATION set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/libdxfrw) -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libdxfrw.pc.in libdxfrw.pc) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libdxfrw.pc.in libdxfrw.pc @ONLY) install(TARGETS dxfrw EXPORT libdxfrw-targets diff --git a/libdxfrw.pc.in b/libdxfrw.pc.in index 6ab886d99060..3a8b8a4579e7 100644 --- a/libdxfrw.pc.in +++ b/libdxfrw.pc.in @@ -1,10 +1,10 @@ -prefix=${CMAKE_INSTALL_PREFIX} -exec_prefix=${CMAKE_INSTALL_PREFIX} -libdir=|${CMAKE_INSTALL_FULL_LIBDIR} -includedir=${CMAKE_INSTALL_FULL_INCLUDEDIR} +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=@CMAKE_INSTALL_PREFIX@ +libdir=|@CMAKE_INSTALL_FULL_LIBDIR@ +includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ Name: libdxfrw Description: c++ library to read/write dxf files in binary and ascii form -Version: ${PROJECT_VERSION} +Version: @PROJECT_VERSION@ Libs: -L${libdir} -ldxfrw -Cflags: -I${includedir}/libdxfrw${PROJECT_VERSION_MAJOR} +Cflags: -I${includedir}/libdxfrw -- 2.31.1