Nothing wrong with your AutoFu whatsoever.

I'm not sure that AutoFu is the best solution here.

The implementation was done like 7 years ago, and the RFE
from Enrico for a clear policy wrto directory inclusion
in *.rpm behavior goes back even further.

Adding "Have it your own way!" AutoFu is just gonna
prolong the transition forevermore.

Ditto macros for persistence, and vendors for distros, and LSB for standards:

        All this "choice" makes it impossible to identify or implement or test
         "correct" RPM behavior.

All the behavior is contextually sensitive.

No matter what:

        Sooner or later you just gotta stop being lazy and actually
        fix your packages and determine a consistent policy for directories
        in *.rpm packages. "No time." == "The dog ate my homework."

73 de Jeff


On Feb 25, 2011, at 4:26 AM, Pinto Elia wrote:

>  RPM Package Manager, CVS Repository
>  http://rpm5.org/cvs/
>  ____________________________________________________________________________
> 
>  Server: rpm5.org                         Name:   Pinto Elia
>  Root:   /v/rpm/cvs                       Email:  devzero2...@rpm5.org
>  Module: rpm                              Date:   25-Feb-2011 10:26:35
>  Branch: rpm-5_4                          Handle: 2011022509263401
> 
>  Modified files:           (Branch: rpm-5_4)
>    rpm                     CHANGES configure.ac
>    rpm/lib                 depends.c
> 
>  Log:
>    permit in configure phase to enable the
>    optional-dirname-and-symlink-deps used by Mandriva and Ark today
>    (ref 
> https://blueprints.launchpad.net/rpm/+spec/rpm-split-vendor-config-in-autofu)
> 
>  Summary:
>    Revision    Changes     Path
>    1.3501.2.63 +3  -0      rpm/CHANGES
>    2.472.2.8   +13 -0      rpm/configure.ac
>    1.461.4.5   +4  -4      rpm/lib/depends.c
>  ____________________________________________________________________________
> 
>  patch -p0 <<'@@ .'
>  Index: rpm/CHANGES
>  ============================================================================
>  $ cvs diff -u -r1.3501.2.62 -r1.3501.2.63 CHANGES
>  --- rpm/CHANGES      24 Feb 2011 19:33:15 -0000      1.3501.2.62
>  +++ rpm/CHANGES      25 Feb 2011 09:26:34 -0000      1.3501.2.63
>  @@ -1,4 +1,7 @@
>   5.4.0 -> 5.4.1:
>  +    - devzero2000: permit in configure phase to enable the
>  +      optional-dirname-and-symlink-deps used by Mandriva and Ark today
>  +      (ref 
> https://blueprints.launchpad.net/rpm/+spec/rpm-split-vendor-config-in-autofu)
>       - proyvind: use expanded %{___NVRA} for 'rpm --last'.
>       - jbj: valgrind: fix: typ in macros building w/o <valgrind/valgrind.h>.
>       - proyvind: set mi->mi_count in rpmmiCount() when db cursor exists 
> rather
>  @@ .
>  patch -p0 <<'@@ .'
>  Index: rpm/configure.ac
>  ============================================================================
>  $ cvs diff -u -r2.472.2.7 -r2.472.2.8 configure.ac
>  --- rpm/configure.ac 9 Jan 2011 03:55:21 -0000       2.472.2.7
>  +++ rpm/configure.ac 25 Feb 2011 09:26:34 -0000      2.472.2.8
>  @@ -351,6 +351,19 @@
>       [ENABLE_BUILD_LAFILES],
>       [test ".$do_build_lafiles" = .yes])
> 
>  +dnl # optional sysmlink and parentdir dependency
>  +AC_ARG_ENABLE(
>  +    [dirname-and-symlink-deps],
>  +    AS_HELP_STRING([--disable-dirname-and-symlink-deps],[permit to disable 
> via macro the automatic dirname and symlink dependecy]),
>  +    [ do_optional_dirname_and_symlink_deps=$enableval ],
>  +    [ do_optional_dirname_and_symlink_deps=yes ])
>  +
>  +AS_IF([test "x$do_optional_dirname_and_symlink_deps" != xyes],
>  +  [ 
>  +  AC_DEFINE([RPM_OPTIONAL_DIRNAME_AND_SYMLINK_DEPS],[1],[permit to disable 
> via macro the automatic dirname and symlink dependecy])
>  +  ])
>  +
>  +
>   dnl # FIXME: partly Linux-specific only!?
>   dnl # (but at least it usually doesn't harm on other platforms)
>   CFLAGS="$CFLAGS -D_GNU_SOURCE -D_REENTRANT"
>  @@ .
>  patch -p0 <<'@@ .'
>  Index: rpm/lib/depends.c
>  ============================================================================
>  $ cvs diff -u -r1.461.4.4 -r1.461.4.5 depends.c
>  --- rpm/lib/depends.c        8 Jan 2011 23:10:10 -0000       1.461.4.4
>  +++ rpm/lib/depends.c        25 Feb 2011 09:26:35 -0000      1.461.4.5
>  @@ -1567,7 +1567,7 @@
>       int terminate = 2;              /* XXX terminate if rc >= terminate */
>       int rc;
>       int ourrc = 0;
>  -#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) /* 
> optional-dirname-and-symlink-deps */
>  +#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) || 
> defined(RPM_OPTIONAL_DIRNAME_AND_SYMLINK_DEPS) /* 
> optional-dirname-and-symlink-deps */
>       int dirname_deps;
>       int symlink_deps;
>   #endif
>  @@ -1646,7 +1646,7 @@
>       }
>       }
> 
>  -#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) /* 
> optional-dirname-and-symlink-deps */
>  +#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) || 
> defined(RPM_OPTIONAL_DIRNAME_AND_SYMLINK_DEPS) /* 
> optional-dirname-and-symlink-deps */
>       dirname_deps = 
> rpmExpandNumeric("%{?_check_dirname_deps}%{?!_check_dirname_deps:1}");
>       if (dirname_deps) {
>   #endif
>  @@ -1690,7 +1690,7 @@
>           /*@switchbreak@*/ break;
>       }
>       }
>  -#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) /* 
> optional-dirname-and-symlink-deps */
>  +#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) || 
> defined(RPM_OPTIONAL_DIRNAME_AND_SYMLINK_DEPS) /* 
> optional-dirname-and-symlink-deps */
>       }
> 
>       symlink_deps = 
> rpmExpandNumeric("%{?_check_symlink_deps}%{?!_check_symlink_deps:1}");
>  @@ -1738,7 +1738,7 @@
>           /*@switchbreak@*/ break;
>       }
>       }
>  -#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) /* 
> optional-dirname-and-symlink-deps */
>  +#if defined(RPM_VENDOR_MANDRIVA) || defined(RPM_VENDOR_ARK) || 
> defined(RPM_OPTIONAL_DIRNAME_AND_SYMLINK_DEPS) /* 
> optional-dirname-and-symlink-deps */
>       }
>   #endif    
> 
>  @@ .
> ______________________________________________________________________
> RPM Package Manager                                    http://rpm5.org
> CVS Sources Repository                                rpm-...@rpm5.org

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to