[Bug 494148] Review Request: soci - The database access library for C++ programmers

bugzilla at redhat.com bugzilla at redhat.com
Sun Apr 26 18:57:06 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=494148





--- Comment #18 from Michael Schwendt <bugs.michael at gmx.net>  2009-04-26 14:57:04 EDT ---
* About the %bcond_ macros, they shorten the setup of the conditional builds in
the spec file. Compared with what you do currently (evaluate the
--with/--without options, set a default if neither one is defined, throw an
error if both are defined, overwrites the values with options to pass to
%configure), it would reduce to

# Defaults:
%bcond_with empty
%bcond_without mysql
%bcond_without postgresql
%bcond_with sqlite3
%bcond_with odbc
%bcond_with firebird
%bcond_with oracle
%bcond_without nls

where all lines with "_with" are for features that are off by default and all
with "_without" are enabled by default. You can toggle these defaults simply by
replacing "with" with "without" and vice versa. No other changes (such as
evaluating _with/_without vars or reordering assignment of defaults) are
necessary. You query the features like:

%configure ...
%if %{with foo}
    --enable-backend-foo \
%else
    --disable-backend-foo \
%endif

%if ! %{with foo}
   # feature "foo" is disabled
   # do something
%endif

%if %{with foo}
%package foo
...
%endif

%{?with_foo:BuildRequires: foo-devel}

More examples in the RPM macros definition file.


* Something has truncated/damaged the extras-soci-doc package. It's down to
57KB with an empty main page and only a very few pages that either contain not
much or broken links to non-existent files.


* The  soci -> extras-soci  rename is incomplete:

$ extras-soci-config --libs
-lextras-soci
$ pkg-config --libs extras-soci
-lextras-soci_core  
$ rpm -ql extras-soci-devel|grep \.so$
/usr/lib/libsoci_core.so

Plus, currently, even without renamed libs, the extras-soci* packages would
conflict with an installation made with the pristine SOCI tarballs. One could
make the packages conflict explicitly using proper "Conflicts: ..." tags, but
they are not compatible/interchangable either due to the renamed files (e.g.
the pkg-config file, the M4 macro file, the -config script).

Do you want all the extras-soci* packages to be parallel installable with any
soci* package somebody may add to the dist? Do you want them to become
alternatives, i.e. interchangable and ABI+API compatible?

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.




More information about the package-review mailing list