Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package pam_wrapper for openSUSE:Factory 
checked in at 2024-07-31 13:28:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pam_wrapper (Old)
 and      /work/SRC/openSUSE:Factory/.pam_wrapper.new.7232 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "pam_wrapper"

Wed Jul 31 13:28:32 2024 rev:16 rq:1190427 version:1.1.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/pam_wrapper/pam_wrapper.changes  2023-02-28 
12:48:33.460447511 +0100
+++ /work/SRC/openSUSE:Factory/.pam_wrapper.new.7232/pam_wrapper.changes        
2024-07-31 13:28:40.886294298 +0200
@@ -1,0 +2,8 @@
+Tue Jul 23 07:48:44 UTC 2024 - Andreas Schneider <[email protected]>
+
+- Update to version 1.1.7
+  https://gitlab.com/cwrap/pam_wrapper/-/blob/pam_wrapper-1.1.7/CHANGELOG
+- Removed pam_wrapper-fix-cmocka-1.1.6+-support.patch
+- Make pam_wrapper-devel-doc a noarch package
+
+-------------------------------------------------------------------

Old:
----
  pam_wrapper-1.1.4.tar.gz
  pam_wrapper-1.1.4.tar.gz.asc
  pam_wrapper-fix-cmocka-1.1.6+-support.patch

New:
----
  pam_wrapper-1.1.7.tar.gz
  pam_wrapper-1.1.7.tar.gz.asc

BETA DEBUG BEGIN:
  Old:  https://gitlab.com/cwrap/pam_wrapper/-/blob/pam_wrapper-1.1.7/CHANGELOG
- Removed pam_wrapper-fix-cmocka-1.1.6+-support.patch
- Make pam_wrapper-devel-doc a noarch package
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ pam_wrapper.spec ++++++
--- /var/tmp/diff_new_pack.xW0U6G/_old  2024-07-31 13:28:41.586323048 +0200
+++ /var/tmp/diff_new_pack.xW0U6G/_new  2024-07-31 13:28:41.590323213 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package pam_wrapper
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -22,9 +22,8 @@
 # Do NOT create library package or a devel package!
 #
 ############################# NOTE ##################################
-%bcond_without python2
 Name:           pam_wrapper
-Version:        1.1.4
+Version:        1.1.7
 Release:        0
 Summary:        A tool to test PAM applications and PAM modules
 License:        GPL-3.0-or-later
@@ -32,7 +31,6 @@
 Source0:        https://ftp.samba.org/pub/cwrap/%{name}-%{version}.tar.gz
 Source1:        https://ftp.samba.org/pub/cwrap/%{name}-%{version}.tar.gz.asc
 Source2:        %{name}-rpmlintrc
-Patch0:         pam_wrapper-fix-cmocka-1.1.6+-support.patch
 BuildRequires:  cmake
 BuildRequires:  doxygen
 BuildRequires:  libcmocka-devel
@@ -42,9 +40,6 @@
 BuildRequires:  pkgconfig(python3)
 Recommends:     cmake
 Recommends:     pkgconfig
-%if %{with python2}
-BuildRequires:  pkgconfig(python2)
-%endif
 
 %description
 This component of cwrap allows you to either test your PAM (Linux-PAM
@@ -81,20 +76,11 @@
 
 %package -n libpamtest-devel-doc
 Summary:        The libpamtest API documentation
+BuildArch:      noarch
 
 %description -n libpamtest-devel-doc
 Documentation for libpamtest development.
 
-%package -n python2-libpamtest
-Summary:        A python wrapper for libpamtest
-Requires:       libpamtest0 = %{version}-%{release}
-Requires:       pam_wrapper = %{version}-%{release}
-
-%description -n python2-libpamtest
-If you plan to develop python tests for a PAM module, you can use this
-library, which simplifies testing of modules. This subpackage includes
-the header files for libpamtest
-
 %package -n python3-libpamtest
 Summary:        A python wrapper for libpamtest
 Requires:       libpamtest0 = %{version}-%{release}
@@ -112,17 +98,14 @@
 # CMAKE_SKIP_RPATH:BOOL=OFF is required to run the tests!
 %cmake \
   -DUNIT_TESTING=ON \
-  -DCMAKE_SKIP_RPATH:BOOL=OFF
+  -DCMAKE_SKIP_RPATH:BOOL=OFF \
+  -DPYTHON_INSTALL_SITEARCH=%{python3_sitearch}
 %cmake_build
 %cmake_build doc
 
 %install
 %cmake_install
 
-%if %{without python2}
-rm -rf %{python2_sitearch}/pypamtest.so
-%endif
-
 %check
 %ctest
 
@@ -165,11 +148,6 @@
 %files -n libpamtest-devel-doc
 %doc build/doc/html
 
-%if %{with python2}
-%files -n python2-libpamtest
-%{python2_sitearch}/pypamtest.so
-%endif
-
 %files -n python3-libpamtest
 %{python3_sitearch}/pypamtest.so
 

++++++ pam_wrapper-1.1.4.tar.gz -> pam_wrapper-1.1.7.tar.gz ++++++
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/libpamtest.c.50591A3CF2F16696.idx and 
new/pam_wrapper-1.1.7/.cache/clangd/index/libpamtest.c.50591A3CF2F16696.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/libpamtest.h.5D17FC28842DB9A6.idx and 
new/pam_wrapper-1.1.7/.cache/clangd/index/libpamtest.h.5D17FC28842DB9A6.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pam_chatty.c.20FD0B741C24D56B.idx and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pam_chatty.c.20FD0B741C24D56B.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pam_get_items.c.0EF57BF2FB557FDA.idx 
and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pam_get_items.c.0EF57BF2FB557FDA.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pam_matrix.c.06B52DD1FD84DDA5.idx and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pam_matrix.c.06B52DD1FD84DDA5.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pam_set_items.c.4EB3C1ADFA19BBB6.idx 
and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pam_set_items.c.4EB3C1ADFA19BBB6.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pam_wrapper.c.88B9874C29C542E9.idx 
and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pam_wrapper.c.88B9874C29C542E9.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pwrap_compat.h.61E8526BE3F084B4.idx 
and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pwrap_compat.h.61E8526BE3F084B4.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/pypamtest.c.6EAB1E75E1074FD7.idx and 
new/pam_wrapper-1.1.7/.cache/clangd/index/pypamtest.c.6EAB1E75E1074FD7.idx 
differ
Binary files 
old/pam_wrapper-1.1.4/.cache/clangd/index/test_pam_wrapper.c.0DFC22A2864C2D78.idx
 and 
new/pam_wrapper-1.1.7/.cache/clangd/index/test_pam_wrapper.c.0DFC22A2864C2D78.idx
 differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/.clang-format 
new/pam_wrapper-1.1.7/.clang-format
--- old/pam_wrapper-1.1.4/.clang-format 1970-01-01 01:00:00.000000000 +0100
+++ new/pam_wrapper-1.1.7/.clang-format 2024-07-23 09:44:36.000000000 +0200
@@ -0,0 +1,33 @@
+# https://clang.llvm.org/docs/ClangFormatStyleOptions.html
+AlignAfterOpenBracket: Align
+AlignEscapedNewlines: Left
+AllowAllArgumentsOnNextLine: true
+AllowAllParametersOfDeclarationOnNextLine: false
+AllowShortFunctionsOnASingleLine: Empty
+AllowShortIfStatementsOnASingleLine: false
+AlwaysBreakAfterReturnType: None
+BasedOnStyle: LLVM
+BinPackArguments: false
+BinPackParameters: false
+BraceWrapping:
+    AfterEnum: false
+    AfterFunction: true
+    AfterStruct: false
+    AfterUnion: false
+    AfterExternBlock: true
+    BeforeElse: false
+    BeforeWhile: false
+    AfterControlStatement: MultiLine
+BreakBeforeBinaryOperators: None
+BreakBeforeBraces: Custom
+ColumnLimit: 80
+ContinuationIndentWidth: 8
+IndentCaseLabels: false
+IndentGotoLabels: false
+IndentWidth: 8
+PenaltyBreakAssignment: 200
+PenaltyBreakBeforeFirstCallParameter: 100
+PenaltyReturnTypeOnItsOwnLine: 1000
+SortIncludes: false
+UseTab: true
+WhitespaceSensitiveMacros: ['DEBUG']
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/libpamtest.c.50591A3CF2F16696.idx and 
new/pam_wrapper-1.1.7/.clangd/index/libpamtest.c.50591A3CF2F16696.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/libpamtest.h.5D17FC28842DB9A6.idx and 
new/pam_wrapper-1.1.7/.clangd/index/libpamtest.h.5D17FC28842DB9A6.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pam_chatty.c.20FD0B741C24D56B.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pam_chatty.c.20FD0B741C24D56B.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pam_get_items.c.0EF57BF2FB557FDA.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pam_get_items.c.0EF57BF2FB557FDA.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pam_matrix.c.06B52DD1FD84DDA5.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pam_matrix.c.06B52DD1FD84DDA5.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pam_set_items.c.4EB3C1ADFA19BBB6.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pam_set_items.c.4EB3C1ADFA19BBB6.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pam_wrapper.c.88B9874C29C542E9.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pam_wrapper.c.88B9874C29C542E9.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pwrap_compat.h.61E8526BE3F084B4.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pwrap_compat.h.61E8526BE3F084B4.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/pypamtest.c.6EAB1E75E1074FD7.idx and 
new/pam_wrapper-1.1.7/.clangd/index/pypamtest.c.6EAB1E75E1074FD7.idx differ
Binary files 
old/pam_wrapper-1.1.4/.clangd/index/test_pam_wrapper.c.0DFC22A2864C2D78.idx and 
new/pam_wrapper-1.1.7/.clangd/index/test_pam_wrapper.c.0DFC22A2864C2D78.idx 
differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/.editorconfig 
new/pam_wrapper-1.1.7/.editorconfig
--- old/pam_wrapper-1.1.4/.editorconfig 1970-01-01 01:00:00.000000000 +0100
+++ new/pam_wrapper-1.1.7/.editorconfig 2024-07-23 09:44:36.000000000 +0200
@@ -0,0 +1,23 @@
+root = true
+
+[*]
+charset = utf-8
+max_line_length = 80
+end_of_line = lf
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[*.{c,h}]
+indent_style = tab
+indent_size = 8
+tab_width = 8
+
+[*.cmake]
+indent_style = space
+indent_size = 4
+tab_width = 4
+
+[CMake*]
+indent_style = space
+indent_size = 4
+tab_width = 4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/.git new/pam_wrapper-1.1.7/.git
--- old/pam_wrapper-1.1.4/.git  1970-01-01 01:00:00.000000000 +0100
+++ new/pam_wrapper-1.1.7/.git  2024-07-23 07:37:40.000000000 +0200
@@ -0,0 +1 @@
+gitdir: /home/asn/workspace/prj/oss/pam_wrapper/.bare/worktrees/master
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/.gitlab-ci.yml 
new/pam_wrapper-1.1.7/.gitlab-ci.yml
--- old/pam_wrapper-1.1.4/.gitlab-ci.yml        2021-10-28 10:37:33.000000000 
+0200
+++ new/pam_wrapper-1.1.7/.gitlab-ci.yml        2024-07-23 09:44:36.000000000 
+0200
@@ -1,3 +1,4 @@
+---
 variables:
   GIT_DEPTH: 3
   BUILD_IMAGES_PROJECT: cmocka/gitlab-build-images
@@ -6,18 +7,22 @@
   TUMBLEWEED_BUILD: buildenv-tumbleweed
   UBUNTU_BUILD: buildenv-ubuntu
 
+stages:
+  - build
+  - test
+  - analysis
+
 centos7/x86_64:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$CENTOS7_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake3
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake3
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -25,18 +30,17 @@
       - obj/
 
 fedora/x86_64:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_INSTALL_PREFIX=/tmp/local
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure && make install
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_INSTALL_PREFIX=/tmp/local
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure && make install
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -44,17 +48,16 @@
       - obj/
 
 fedora/address-sanitizer:
+  stage: build
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=AddressSanitizer
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_BUILD_TYPE=AddressSanitizer
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -62,17 +65,16 @@
       - obj/
 
 fedora/undefined-sanitizer:
+  stage: analysis
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=UndefinedSanitizer
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON ..
-    && make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_BUILD_TYPE=UndefinedSanitizer
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON ..
+      && make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -80,32 +82,31 @@
       - obj/
 
 fedora/csbuild:
+  stage: analysis
   variables:
     GIT_DEPTH: 20
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
   script:
-  - |
-    if [[ -z "$CI_COMMIT_BEFORE_SHA" ]]; then
-        export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
-    fi
-
-    # Check if the commit exists in this branch
-    # This is not the case for a force push
-    git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export 
CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
-
-    export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
-
-  - csbuild
-    --build-dir=obj-csbuild
-    --prep-cmd="cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON 
-DUNIT_TESTING=ON @SRCDIR@"
-    --build-cmd "make clean && make -j$(nproc)"
-    --git-commit-range $CI_COMMIT_RANGE
-    --color
-    --print-current --print-fixed
-  tags:
-  - shared
+    - |
+      if [[ -z "$CI_COMMIT_BEFORE_SHA" ]]; then
+          export CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
+      fi
+
+      # Check if the commit exists in this branch
+      # This is not the case for a force push
+      git branch --contains $CI_COMMIT_BEFORE_SHA 2>/dev/null || export 
CI_COMMIT_BEFORE_SHA=$(git rev-parse "${CI_COMMIT_SHA}~15")
+
+      export CI_COMMIT_RANGE="$CI_COMMIT_BEFORE_SHA..$CI_COMMIT_SHA"
+
+    - csbuild
+      --build-dir=obj-csbuild
+      --prep-cmd="cmake -DCMAKE_BUILD_TYPE=Debug -DPICKY_DEVELOPER=ON 
-DUNIT_TESTING=ON @SRCDIR@"
+      --build-cmd "make clean && make -j$(nproc)"
+      --git-commit-range $CI_COMMIT_RANGE
+      --color
+      --print-current --print-fixed
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -113,41 +114,41 @@
       - obj-csbuild/
 
 freebsd/x86_64:
+  stage: test
   image:
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make && ctest --output-on-failure
+    - mkdir -p obj-freebsd && cd obj-freebsd && cmake
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make && ctest --output-on-failure
   tags:
-  - freebsd
+    - freebsd
   except:
-  - tags
+    - tags
   only:
-  - branches@cwrap/pam_wrapper
-  - branches@cryptomilk/pam_wrapper
+    - branches@cwrap/pam_wrapper
+    - branches@cryptomilk/pam_wrapper
   artifacts:
     expire_in: 1 week
     when: on_failure
     paths:
-      - obj/
+      - obj-freebsd/
   # pam_wrapper stopped to work with the latest OpenPAM version, this is a
   # bigger effort to investigate.
   allow_failure: true
 
 tumbleweed/x86_64/gcc:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -155,18 +156,17 @@
       - obj/
 
 tumbleweed/x86_64/gcc7:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -176,18 +176,17 @@
 # PICKY_DEVELOPER IS OFF
 # => https://github.com/python/cpython/pull/19133
 tumbleweed/x86_64/clang:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
-    -DPICKY_DEVELOPER=OFF
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
+      -DPICKY_DEVELOPER=OFF
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -197,20 +196,19 @@
 # PICKY_DEVELOPER IS OFF
 # => https://github.com/python/cpython/pull/19133
 tumbleweed/static-analysis:
+  stage: analysis
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD
   script:
-  - export CCC_CC=clang
-  - export CCC_CXX=clang++
-  - mkdir -p obj && cd obj && scan-build cmake
-    -DCMAKE_BUILD_TYPE=Debug
-    -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
-    -DPICKY_DEVELOPER=OFF
-    -DUNIT_TESTING=ON .. &&
-    scan-build --status-bugs -o scan make -j$(nproc)
-  tags:
-  - shared
+    - export CCC_CC=clang
+    - export CCC_CXX=clang++
+    - mkdir -p obj && cd obj && scan-build cmake
+      -DCMAKE_BUILD_TYPE=Debug
+      -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
+      -DPICKY_DEVELOPER=OFF
+      -DUNIT_TESTING=ON .. &&
+      scan-build --status-bugs -o scan make -j$(nproc)
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
@@ -218,17 +216,16 @@
       - obj/scan
 
 ubuntu/x86_64:
+  stage: test
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$UBUNTU_BUILD
   script:
-  - mkdir -p obj && cd obj && cmake
-    -DCMAKE_BUILD_TYPE=RelWithDebInfo
-    -DPICKY_DEVELOPER=ON
-    -DUNIT_TESTING=ON .. &&
-    make -j$(nproc) && ctest --output-on-failure
-  tags:
-  - shared
+    - mkdir -p obj && cd obj && cmake
+      -DCMAKE_BUILD_TYPE=RelWithDebInfo
+      -DPICKY_DEVELOPER=ON
+      -DUNIT_TESTING=ON .. &&
+      make -j$(nproc) && ctest --output-on-failure
   except:
-  - tags
+    - tags
   artifacts:
     expire_in: 1 week
     when: on_failure
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/CHANGELOG 
new/pam_wrapper-1.1.7/CHANGELOG
--- old/pam_wrapper-1.1.4/CHANGELOG     2021-10-28 10:37:33.000000000 +0200
+++ new/pam_wrapper-1.1.7/CHANGELOG     2024-07-23 10:23:05.000000000 +0200
@@ -1,6 +1,18 @@
 ChangeLog
 ==========
 
+version 1.1.7 (released 2023-07-23)
+  * Fix installation of python module
+
+version 1.1.6 (released 2023-07-23)
+  * Improve config dir creation if we have pam_start_confdir()
+  * Fixed PAM_WRAPPER_DISABLE_DEEPBIND
+  * Directly fail if we can't create the config dir
+
+version 1.1.5 (released 2023-08-08)
+  * Fixed building with Python 3.12
+  * Removed Python 2 support
+
 version 1.1.4 (released 2020-10-28)
   * NOTE: pam_wrapper stopped working with the latest OpenPAM on FreeBSD 12.
     Help is needed to add back support.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/CMakeLists.txt 
new/pam_wrapper-1.1.7/CMakeLists.txt
--- old/pam_wrapper-1.1.4/CMakeLists.txt        2021-10-28 10:37:33.000000000 
+0200
+++ new/pam_wrapper-1.1.7/CMakeLists.txt        2024-07-23 10:23:22.000000000 
+0200
@@ -11,7 +11,7 @@
 include(DefineCMakeDefaults)
 include(DefineCompilerFlags)
 
-project(pam_wrapper VERSION 1.1.4 LANGUAGES C)
+project(pam_wrapper VERSION 1.1.7 LANGUAGES C)
 
 # global needed variables
 set(APPLICATION_NAME ${PROJECT_NAME})
@@ -25,7 +25,7 @@
 #     Increment PATCH.
 set(LIBRARY_VERSION_MAJOR 0)
 set(LIBRARY_VERSION_MINOR 0)
-set(LIBRARY_VERSION_PATCH 7)
+set(LIBRARY_VERSION_PATCH 10)
 set(LIBRARY_VERSION 
"${LIBRARY_VERSION_MAJOR}.${LIBRARY_VERSION_MINOR}.${LIBRARY_VERSION_PATCH}")
 set(LIBRARY_SOVERSION ${LIBRARY_VERSION_MAJOR})
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/CompilerChecks.cmake 
new/pam_wrapper-1.1.7/CompilerChecks.cmake
--- old/pam_wrapper-1.1.4/CompilerChecks.cmake  2021-10-28 10:37:33.000000000 
+0200
+++ new/pam_wrapper-1.1.7/CompilerChecks.cmake  2024-07-23 07:37:40.000000000 
+0200
@@ -32,7 +32,8 @@
     add_c_compiler_flag("-Wpointer-arith" SUPPORTED_COMPILER_FLAGS)
     add_c_compiler_flag("-Werror=pointer-arith" SUPPORTED_COMPILER_FLAGS)
     add_c_compiler_flag("-Wdeclaration-after-statement" 
SUPPORTED_COMPILER_FLAGS)
-    add_c_compiler_flag("-Werror=declaration-after-statement" 
SUPPORTED_COMPILER_FLAGS)
+    # Not compatible with Python 3.12 headers
+    #add_c_compiler_flag("-Werror=declaration-after-statement" 
SUPPORTED_COMPILER_FLAGS)
     add_c_compiler_flag("-Wreturn-type" SUPPORTED_COMPILER_FLAGS)
     add_c_compiler_flag("-Werror=return-type" SUPPORTED_COMPILER_FLAGS)
     add_c_compiler_flag("-Wuninitialized" SUPPORTED_COMPILER_FLAGS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/cmake/Modules/FindCMocka.cmake 
new/pam_wrapper-1.1.7/cmake/Modules/FindCMocka.cmake
--- old/pam_wrapper-1.1.4/cmake/Modules/FindCMocka.cmake        2020-01-31 
14:16:24.000000000 +0100
+++ new/pam_wrapper-1.1.7/cmake/Modules/FindCMocka.cmake        1970-01-01 
01:00:00.000000000 +0100
@@ -1,49 +0,0 @@
-# - Try to find CMocka
-# Once done this will define
-#
-#  CMOCKA_ROOT_DIR - Set this variable to the root installation of CMocka
-#
-# Read-Only variables:
-#  CMOCKA_FOUND - system has CMocka
-#  CMOCKA_INCLUDE_DIR - the CMocka include directory
-#  CMOCKA_LIBRARIES - Link these to use CMocka
-#  CMOCKA_DEFINITIONS - Compiler switches required for using CMocka
-#
-#=============================================================================
-#  Copyright (c) 2011-2012 Andreas Schneider <[email protected]>
-#
-#  Distributed under the OSI-approved BSD License (the "License");
-#  see accompanying file Copyright.txt for details.
-#
-#  This software is distributed WITHOUT ANY WARRANTY; without even the
-#  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#  See the License for more information.
-#=============================================================================
-#
-
-find_path(CMOCKA_INCLUDE_DIR
-    NAMES
-        cmocka.h
-    PATHS
-        ${CMOCKA_ROOT_DIR}/include
-)
-
-find_library(CMOCKA_LIBRARY
-    NAMES
-        cmocka
-    PATHS
-        ${CMOCKA_ROOT_DIR}/include
-)
-
-if (CMOCKA_LIBRARY)
-  set(CMOCKA_LIBRARIES
-      ${CMOCKA_LIBRARIES}
-      ${CMOCKA_LIBRARY}
-  )
-endif (CMOCKA_LIBRARY)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CMocka DEFAULT_MSG CMOCKA_LIBRARIES 
CMOCKA_INCLUDE_DIR)
-
-# show the CMOCKA_INCLUDE_DIR and CMOCKA_LIBRARIES variables only in the 
advanced view
-mark_as_advanced(CMOCKA_INCLUDE_DIR CMOCKA_LIBRARIES)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/compile_commands.json 
new/pam_wrapper-1.1.7/compile_commands.json
--- old/pam_wrapper-1.1.4/compile_commands.json 2024-07-31 13:28:41.678326827 
+0200
+++ new/pam_wrapper-1.1.7/compile_commands.json 2024-07-31 13:28:41.686327155 
+0200
@@ -1 +1 @@
-symbolic link to 
/home/asn/workspace/projects/pam_wrapper/obj/compile_commands.json
+symbolic link to 
/home/asn/workspace/prj/oss/pam_wrapper/master/obj/compile_commands.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/doc/pam_matrix.8 
new/pam_wrapper-1.1.7/doc/pam_matrix.8
--- old/pam_wrapper-1.1.4/doc/pam_matrix.8      2015-12-10 16:38:34.000000000 
+0100
+++ new/pam_wrapper-1.1.7/doc/pam_matrix.8      2024-07-23 07:37:40.000000000 
+0200
@@ -34,7 +34,7 @@
 pam_matrix\&.so [\&...]
 .SH "DESCRIPTION"
 .sp
-Testing PAM application often requires to set up an authentication backend 
with as little effort as possible\&. The \fBpam_matrix\fR module allows to 
authenticate against a key\-value text file, provided by an option or with an 
environment variable\&.
+Testing PAM application often requires to set up an authentication backend 
with as little effort as possible\&. The \fBpam_matrix\fR module allows one to 
authenticate against a key\-value text file, provided by an option or with an 
environment variable\&.
 .SH "IMPORTANT"
 .sp
 pam_matrix is a \fBtest tool\fR\&. It should be considered completely insecure 
and never used outside test environments! As you\(cqll see when reading 
description of the options and actions, many of them don\(cqt make any sense in 
the real world and were added just to make tests possible\&.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/doc/pam_matrix.8.txt 
new/pam_wrapper-1.1.7/doc/pam_matrix.8.txt
--- old/pam_wrapper-1.1.4/doc/pam_matrix.8.txt  2015-12-10 16:38:34.000000000 
+0100
+++ new/pam_wrapper-1.1.7/doc/pam_matrix.8.txt  2024-07-23 07:37:40.000000000 
+0200
@@ -14,7 +14,7 @@
 DESCRIPTION
 -----------
 Testing PAM application often requires to set up an authentication backend with
-as little effort as possible. The *pam_matrix* module allows to authenticate
+as little effort as possible. The *pam_matrix* module allows one to 
authenticate
 against a key-value text file, provided by an option or with an environment
 variable.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/src/modules/pam_matrix.c 
new/pam_wrapper-1.1.7/src/modules/pam_matrix.c
--- old/pam_wrapper-1.1.4/src/modules/pam_matrix.c      2020-03-20 
15:01:55.000000000 +0100
+++ new/pam_wrapper-1.1.7/src/modules/pam_matrix.c      2024-07-23 
07:37:40.000000000 +0200
@@ -33,6 +33,10 @@
 #include <time.h>
 #include <stdint.h>
 
+#ifndef PATH_MAX
+#define PATH_MAX 4096
+#endif
+
 #ifndef discard_const
 #define discard_const(ptr) ((void *)((uintptr_t)(ptr)))
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/src/pam_wrapper.c 
new/pam_wrapper-1.1.7/src/pam_wrapper.c
--- old/pam_wrapper-1.1.4/src/pam_wrapper.c     2021-06-25 10:12:16.000000000 
+0200
+++ new/pam_wrapper-1.1.7/src/pam_wrapper.c     2024-07-23 09:44:36.000000000 
+0200
@@ -336,7 +336,7 @@
 
 #ifdef RTLD_DEEPBIND
        const char *env_preload = getenv("LD_PRELOAD");
-       const char *env_deepbind = getenv("UID_WRAPPER_DISABLE_DEEPBIND");
+       const char *env_deepbind = getenv("PAM_WRAPPER_DISABLE_DEEPBIND");
        bool enable_deepbind = true;
 
        /* Don't do a deepbind if we run with libasan */
@@ -749,6 +749,7 @@
 
 static int p_rmdirs(const char *path);
 
+#ifndef HAVE_PAM_START_CONFDIR
 static void pwrap_clean_stale_dirs(const char *dir)
 {
        size_t len = strlen(dir);
@@ -816,20 +817,18 @@
 
        return;
 }
+#endif /* HAVE_PAM_START_CONFDIR */
 
 #ifdef HAVE_PAM_START_CONFDIR
 static void pwrap_init(void)
 {
-       char tmp_config_dir[] = "/tmp/pam.X";
-       size_t len = strlen(tmp_config_dir);
+       const char *tmpdir = getenv("TMPDIR");
+       char *tmp_config_dir = NULL;
        const char *env;
-       struct stat sb;
        int rc;
-       unsigned i;
        ssize_t ret;
        FILE *pidfile;
        char pidfile_path[1024] = { 0 };
-       char letter;
 
        if (!pam_wrapper_enabled()) {
                return;
@@ -839,62 +838,33 @@
                return;
        }
 
-       /*
-        * The name is selected to match/replace /etc/pam.d
-        * We start from a random alphanum trying letters until
-        * an available directory is found.
-        */
-       letter = 48 + (getpid() % 70);
-       for (i = 0; i < 127; i++) {
-               if (isalpha(letter) || isdigit(letter)) {
-                       tmp_config_dir[len - 1] = letter;
-
-                       rc = lstat(tmp_config_dir, &sb);
-                       if (rc == 0) {
-                               PWRAP_LOG(PWRAP_LOG_TRACE,
-                                         "Check if pam_wrapper dir %s is a "
-                                         "stale directory",
-                                         tmp_config_dir);
-                               pwrap_clean_stale_dirs(tmp_config_dir);
-                       } else if (rc < 0) {
-                               if (errno != ENOENT) {
-                                       continue;
-                               }
-                               break; /* found */
-                       }
-               }
+       PWRAP_LOG(PWRAP_LOG_DEBUG, "Initialize pam_wrapper");
 
-               letter++;
-               letter %= 127;
+       if (tmpdir == NULL || strlen(tmpdir) == 0 ||
+           strlen(tmpdir) >= PATH_MAX - 12)
+       {
+               tmpdir = "/tmp";
        }
 
-       if (i == 127) {
-               PWRAP_LOG(PWRAP_LOG_ERROR,
-                         "Failed to find a possible path to create "
-                         "pam_wrapper config dir: %s",
-                         tmp_config_dir);
+       rc = asprintf(&pwrap.config_dir, "%s/pam.XXXXXX", tmpdir);
+       if (rc <= 0) {
+               PWRAP_LOG(PWRAP_LOG_ERROR, "Failed to create path");
                exit(1);
        }
 
-       PWRAP_LOG(PWRAP_LOG_DEBUG, "Initialize pam_wrapper");
-
-       pwrap.config_dir = strdup(tmp_config_dir);
-       if (pwrap.config_dir == NULL) {
+       tmp_config_dir = mkdtemp(pwrap.config_dir);
+       if (tmp_config_dir == NULL) {
                PWRAP_LOG(PWRAP_LOG_ERROR,
-                         "No memory");
+                         "Failed to create temporary directory based "
+                         "on template: %s",
+                         pwrap.config_dir);
                exit(1);
        }
+
        PWRAP_LOG(PWRAP_LOG_TRACE,
                  "pam_wrapper config dir: %s",
                  tmp_config_dir);
 
-       rc = mkdir(pwrap.config_dir, 0755);
-       if (rc != 0) {
-               PWRAP_LOG(PWRAP_LOG_ERROR,
-                         "Failed to create pam_wrapper config dir: %s - %s",
-                         tmp_config_dir, strerror(errno));
-       }
-
        /* Create file with the PID of the the process */
        ret = snprintf(pidfile_path, sizeof(pidfile_path),
                       "%s/pid", pwrap.config_dir);
@@ -1121,6 +1091,7 @@
                PWRAP_LOG(PWRAP_LOG_ERROR,
                          "Failed to create pam_wrapper config dir: %s - %s",
                          tmp_config_dir, strerror(errno));
+               exit(1);
        }
 
        /* Create file with the PID of the the process */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/src/python/CMakeLists.txt 
new/pam_wrapper-1.1.7/src/python/CMakeLists.txt
--- old/pam_wrapper-1.1.4/src/python/CMakeLists.txt     2021-10-28 
10:37:33.000000000 +0200
+++ new/pam_wrapper-1.1.7/src/python/CMakeLists.txt     2024-07-23 
07:37:40.000000000 +0200
@@ -1,10 +1,9 @@
 project(pypamtest C)
 
-add_subdirectory(python2)
 add_subdirectory(python3)
 
 if (WITH_WNO_CAST_FUNCTION_TYPE)
     set_source_files_properties(pypamtest.c
-                                DIRECTORY python2 python3
+                                DIRECTORY python3
                                 PROPERTIES COMPILE_OPTIONS 
"-Wno-cast-function-type")
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/src/python/python2/CMakeLists.txt 
new/pam_wrapper-1.1.7/src/python/python2/CMakeLists.txt
--- old/pam_wrapper-1.1.4/src/python/python2/CMakeLists.txt     2020-03-20 
15:01:55.000000000 +0100
+++ new/pam_wrapper-1.1.7/src/python/python2/CMakeLists.txt     1970-01-01 
01:00:00.000000000 +0100
@@ -1,45 +0,0 @@
-project(python2-pamtest C)
-
-if (NOT PYTHON2_LIBRARY)
-    unset(PYTHON_EXECUTABLE CACHE)
-    unset(PYTHON_INCLUDE_DIR CACHE)
-    unset(PYTHON_LIBRARY CACHE)
-    unset(PYTHON_SITELIB CACHE)
-    unset(PYTHONLIBS_FOUND CACHE)
-    unset(PYTHONLIBS_VERSION_STRING CACHE)
-
-    find_package(PythonLibs 2)
-    find_package(PythonInterp 2)
-    find_package(PythonSiteLibs 2)
-
-    if (PYTHONLIBS_FOUND)
-        set(PYTHON2_EXECUTABLE ${PYTHON_EXECUTABLE} CACHE FILEPATH 
"PYTHON2_EXECUTABLE")
-        set(PYTHON2_INCLUDE_DIR ${PYTHON_INCLUDE_DIR})
-        set(PYTHON2_LIBRARY ${PYTHON_LIBRARY})
-        set(PYTHON2_SITELIB ${PYTHON_SITELIB})
-    endif()
-
-    unset(PYTHON_EXECUTABLE CACHE)
-    unset(PYTHON_INCLUDE_DIR CACHE)
-    unset(PYTHON_LIBRARY CACHE)
-    unset(PYTHON_SITELIB CACHE)
-    unset(PYTHONLIBS_FOUND CACHE)
-    unset(PYTHONLIBS_VERSION_STRING CACHE)
-endif()
-
-if (PYTHON2_INCLUDE_DIR AND PYTHON2_LIBRARY AND PYTHON2_SITELIB)
-    include_directories(${CMAKE_BINARY_DIR})
-    include_directories(${pam_wrapper-headers_DIR})
-    include_directories(${PYTHON2_INCLUDE_DIR})
-
-    python_add_module(python2-pamtest ${pypamtest_SOURCE_DIR}/pypamtest.c)
-    target_link_libraries(python2-pamtest pamtest::pamtest ${PYTHON2_LIBRARY})
-    target_compile_options(python2-pamtest
-                           PRIVATE ${DEFAULT_C_COMPILE_FLAGS})
-    set_target_properties(python2-pamtest PROPERTIES OUTPUT_NAME "pypamtest")
-
-    install(TARGETS
-                python2-pamtest
-            DESTINATION
-                ${CMAKE_INSTALL_PREFIX}/${PYTHON2_SITELIB})
-endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/src/python/python3/CMakeLists.txt 
new/pam_wrapper-1.1.7/src/python/python3/CMakeLists.txt
--- old/pam_wrapper-1.1.4/src/python/python3/CMakeLists.txt     2020-03-20 
15:01:55.000000000 +0100
+++ new/pam_wrapper-1.1.7/src/python/python3/CMakeLists.txt     2024-07-23 
10:22:39.000000000 +0200
@@ -1,45 +1,26 @@
 project(python3-pamtest C)
 
-if (NOT PYTHON3_LIBRARY)
-    unset(PYTHON_EXECUTABLE CACHE)
-    unset(PYTHON_INCLUDE_DIR CACHE)
-    unset(PYTHON_LIBRARY CACHE)
-    unset(PYTHON_SITELIB CACHE)
-    unset(PYTHONLIBS_FOUND CACHE)
-    unset(PYTHONLIBS_VERSION_STRING CACHE)
-
-    find_package(PythonLibs 3)
-    find_package(PythonInterp 3)
-    find_package(PythonSiteLibs 3)
-
-    if (PYTHONLIBS_FOUND)
-        set(PYTHON3_LIBRARY ${PYTHON_LIBRARY})
-        set(PYTHON3_INCLUDE_DIR ${PYTHON_INCLUDE_DIR})
-        set(PYTHON3_SITELIB ${PYTHON_SITELIB})
-        set(PYTHON3_EXECUTABLE ${PYTHON_EXECUTABLE} CACHE FILEPATH 
"PYTHON3_EXECUTABLE")
-    endif()
-
-    unset(PYTHON_EXECUTABLE CACHE)
-    unset(PYTHON_INCLUDE_DIR CACHE)
-    unset(PYTHON_LIBRARY CACHE)
-    unset(PYTHON_SITELIB CACHE)
-    unset(PYTHONLIBS_FOUND CACHE)
-    unset(PYTHONLIBS_VERSION_STRING CACHE)
+find_package(Python 3.6 COMPONENTS Development Interpreter)
+# Allow to specify sitearch dir on the commandline
+if (NOT PYTHON_INSTALL_SITEARCH)
+    set(PYTHON_INSTALL_SITEARCH ${Python_SITEARCH})
 endif()
 
-if (PYTHON3_INCLUDE_DIR AND PYTHON3_LIBRARY AND PYTHON3_SITELIB)
-    include_directories(${CMAKE_BINARY_DIR})
-    include_directories(${pam_wrapper-headers_DIR})
-    include_directories(${PYTHON3_INCLUDE_DIR})
-
-    python_add_module(python3-pamtest ${pypamtest_SOURCE_DIR}/pypamtest.c)
-    target_link_libraries(python3-pamtest pamtest::pamtest ${PYTHON3_LIBRARY})
+if (Python_Development_FOUND)
+    add_library(python3-pamtest
+                MODULE ${pypamtest_SOURCE_DIR}/pypamtest.c)
     target_compile_options(python3-pamtest
                            PRIVATE ${DEFAULT_C_COMPILE_FLAGS})
-    set_target_properties(python3-pamtest PROPERTIES OUTPUT_NAME "pypamtest")
+    target_include_directories(python3-pamtest
+                               PRIVATE
+                                   ${pam_wrapper_BINARY_DIR}
+                                   ${pam_wrapper-headers_DIR})
+    target_link_libraries(python3-pamtest PRIVATE pamtest::pamtest 
Python::Python)
+    set_property(TARGET python3-pamtest PROPERTY PREFIX "")
+    set_property(TARGET python3-pamtest PROPERTY OUTPUT_NAME "pypamtest")
 
     install(TARGETS
                 python3-pamtest
             DESTINATION
-                ${CMAKE_INSTALL_PREFIX}/${PYTHON3_SITELIB})
+                ${PYTHON_INSTALL_SITEARCH})
 endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/tests/CMakeLists.txt 
new/pam_wrapper-1.1.7/tests/CMakeLists.txt
--- old/pam_wrapper-1.1.4/tests/CMakeLists.txt  2020-03-20 15:01:55.000000000 
+0100
+++ new/pam_wrapper-1.1.7/tests/CMakeLists.txt  2024-07-23 09:44:36.000000000 
+0200
@@ -1,5 +1,9 @@
 project(tests C)
 
+if (TARGET cmocka::cmocka)
+    set(CMOCKA_LIBRARY cmocka::cmocka)
+endif()
+
 set(PAM_MATRIX_PATH "${CMAKE_BINARY_DIR}/src/modules/pam_matrix.so")
 
 configure_file(services/matrix.in ${CMAKE_CURRENT_BINARY_DIR}/services/matrix 
@ONLY)
@@ -90,20 +94,12 @@
 endif()
 
 if (RUN_PYTHON_TESTS)
-    if (PYTHON2_EXECUTABLE)
-        add_test(NAME
-                    py2pamtest_test
-                 COMMAND
-                    ${PYTHON2_EXECUTABLE} 
${CMAKE_CURRENT_SOURCE_DIR}/pypamtest_test.py)
-
-        add_cmocka_test_environment(py2pamtest_test)
-    endif()
-
-    if (PYTHON3_EXECUTABLE)
+    find_package(Python 3.6 COMPONENTS Interpreter)
+    if (Python_Interpreter_FOUND)
         add_test(NAME
                     py3pamtest_test
                  COMMAND
-                    ${PYTHON3_EXECUTABLE} 
${CMAKE_CURRENT_SOURCE_DIR}/pypamtest_test.py)
+                    ${Python_EXECUTABLE} 
${CMAKE_CURRENT_SOURCE_DIR}/pypamtest_test.py)
 
         add_cmocka_test_environment(py3pamtest_test)
     endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pam_wrapper-1.1.4/tests/pypamtest_test.py 
new/pam_wrapper-1.1.7/tests/pypamtest_test.py
--- old/pam_wrapper-1.1.4/tests/pypamtest_test.py       2021-04-07 
09:20:58.000000000 +0200
+++ new/pam_wrapper-1.1.7/tests/pypamtest_test.py       2024-07-23 
07:37:40.000000000 +0200
@@ -20,7 +20,7 @@
         if sys.hexversion >= 0x3000000:
             self.modpath = os.path.join(os.getcwd(), "../src/python/python3")
         else:
-            self.modpath = os.path.join(os.getcwd(), "../src/python/python2")
+            self.assertTrue(False)
         self.system_path = sys.path[:]
         sys.path = [ self.modpath ]
 
@@ -142,12 +142,12 @@
         neo_password = "wrong_secret"
         tc = pypamtest.TestCase(pypamtest.PAMTEST_AUTHENTICATE)
 
-        self.assertRaisesRegexp(pypamtest.PamTestError,
-                                "Error \[2\]: Test case { pam_operation \[0\] "
-                                "expected_rv \[0\] flags \[0\] } "
-                                "returned \[\d\]",
-                                pypamtest.run_pamtest,
-                                "neo", "matrix_py", [tc], [ neo_password ])
+        self.assertRaisesRegex(pypamtest.PamTestError,
+                               "Error \[2\]: Test case { pam_operation \[0\] "
+                               "expected_rv \[0\] flags \[0\] } "
+                               "returned \[\d\]",
+                               pypamtest.run_pamtest,
+                               "neo", "matrix_py", [tc], [ neo_password ])
 
 if __name__ == "__main__":
     error = 0

++++++ pam_wrapper-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.xW0U6G/_old  2024-07-31 13:28:41.738329291 +0200
+++ /var/tmp/diff_new_pack.xW0U6G/_new  2024-07-31 13:28:41.742329455 +0200
@@ -5,8 +5,6 @@
 # Learn more at http://cwrap.org
 #
 addFilter("shlib-policy-name-error")
-addFilter("shared-lib-calls-exit")
 addFilter("shlib-fixed-dependency")
-addFilter("shlib-policy-missing-suffix")
 addFilter("devel-file-in-non-devel-package")
 

Reply via email to