Compare commits

...
Sign in to create a new pull request.

73 commits

Author SHA1 Message Date
Adam Williamson
a6d35cf7e0 Enable autorelease 2026-08-10 23:41:38 -07:00
Adam Williamson
1b4294e9da Manually fix up changelog
The package was switched to autochangelog but not autorelease
between -3.fc44 and -4.fc45. This is not a valid configuration
and caused the changelog for every build since to be incorrect.

This updates the changelog file to contain a manually-corrected
history for the builds from -4.fc45 to -11.fc45 and my subsequent
yet-unbuilt changes. Next we will enable %autorelease so that
future builds will have matching releases and changelogs.
2026-08-10 23:41:34 -07:00
Adam Williamson
6998dc5e0e Make all scriptlets always exit 0, per policy
Beyond the fix in the previous commit, it is Fedora packaging
policy that all scriptlets must be made to always exit 0:

https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_syntax

This uses the recommended syntax from the policy to ensure
scriptlets always exit 0.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2026-08-07 09:05:49 -07:00
Adam Williamson
90851958cc odbcinst-generate - add Requires(post): coreutils
odbcinst-generate uses multiple commands from coreutils, and we
run it in %post of the package called odbcinst-generate, but the
package did not Requires(post): coreutils. It has few/no other
deps so can actually get ordered before coreutils in a system
install or image build transaction, causing the scriptlet to fail:

DEBUG util.py:461:  [280/788] Installing odbcinst-generate- 100% | 623.3 KiB/s |  23.7 KiB |  00m00s
DEBUG util.py:461:  >>> Running %post scriptlet: odbcinst-generate-0:2.3.14-11.fc45.noarch
DEBUG util.py:461:  >>> Non-critical error in %post scriptlet: odbcinst-generate-0:2.3.14-11.fc45.noarch
DEBUG util.py:461:  >>> Scriptlet output:
DEBUG util.py:461:  >>> /sbin/odbcinst-generate: line 26: mktemp: command not found
DEBUG util.py:461:  >>>
DEBUG util.py:461:  >>> [RPM] %post(odbcinst-generate-2.3.14-11.fc45.noarch) scriptlet failed, exit status 127
...
DEBUG util.py:461:  [289/788] Installing coreutils-0:9.11-6 100% |  73.1 MiB/s |   5.9 MiB |  00m00s

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2026-08-07 09:02:01 -07:00
Michal Schorm
2d0d309143 [Fedora 45 Change] Add drop-in directory infrastructure for ODBC driver registration
Replace the static '%config(noreplace) /etc/odbcinst.ini' with a
generated '%ghost' file assembled from per-driver drop-in snippets,
using RPM file triggers.

Drop-in infrastructure:
- Each driver package ships a static '.ini' snippet to
  '/usr/lib/odbc/odbcinst.d/' (vendor defaults)
- Administrators override or add drivers via '/etc/odbc/odbcinst.d/'
- '%transfiletriggerin' / '%transfiletriggerpostun' invoke
  'odbcinst-generate' whenever snippets are installed or removed
- 'odbcinst-generate' merges all snippets, resolves overrides, and
  atomically replaces '/etc/odbcinst.ini'

Shared subpackage ('odbcinst-generate'):
- Named driver-manager-neutral (not 'unixODBC-odbcinst-generate')
  because both unixODBC and iODBC are equal consumers — follows the
  pattern of neutral infrastructure packages like 'hicolor-icon-theme'
  and 'crypto-policies'
- 'BuildArch: noarch' — contains only a bash script, man page, license,
  '%ghost' config, '%dir' entries, and RPM file triggers; nothing compiled
- Contains 'odbcinst-generate', its man page, the drop-in directories,
  the '%ghost' config, and the RPM file triggers

Override semantics (stripped-name matching):
- The numeric prefix is stripped from each filename ('10-mariadb.ini'
  becomes 'mariadb.ini'); files sharing a stripped name compete
- Admin directory always wins over vendor directory for the same
  stripped name, regardless of numeric prefix
- Within the same directory, higher numeric prefix wins
- Output sections sorted alphabetically by stripped name
- Symlink to '/dev/null' disables a driver

This differs from the exact-filename matching used by 'sysctl.d',
'tmpfiles.d', and 'modprobe.d', where '/etc/' and '/usr/lib/' files
with different prefixes coexist and conflicting keys are resolved
individually. ODBC registration uses whole-section replacement
because each snippet declares a complete '[DriverName]' INI section
and merging keys from two '[MariaDB]' sections would be ambiguous.

Numeric prefix ranges:
- 10-29: distro vendor (Fedora-shipped driver packages)
- 30-49: third-party / out-of-tree (COPR, vendor RPMs)
- 50-99: administrator overrides and additions

Path resolution with multilib 'Driver64' support:
- Snippets use bare library names ('Driver = libmaodbc.so') for
  noarch portability
- 'odbcinst-generate' probes each bare name per-driver:
  '/usr/lib64/odbc/' and '/usr/lib/odbc/'
- When both 64-bit and 32-bit '.so' exist (multilib), emit
  'Driver = /usr/lib/odbc/...' and 'Driver64 = /usr/lib64/odbc/...'
- unixODBC selects the matching key based on the calling application's
  word size (compile-time '#ifdef PLATFORM64'), so both 64-bit and
  32-bit clients (e.g. Wine) load the correct driver
- When only one architecture is present, only 'Driver =' is emitted
- Same logic applies to 'Setup'/'Setup64'
- If not found in either directory, the bare name is left unchanged
  so unixODBC can still locate it via its compiled-in search path

iODBC multilib limitation:
- iODBC does not support the 'Driver64' key — its driver loading
  code ('_iodbcdm_driverload()' in 'iodbc/connect.c') reads only
  'Driver', and its dlopen wrapper ('DLL_OPEN' macro in
  'iodbcinst/dlf.h') calls 'dlopen()' directly with no multilib
  awareness or search-path fallback
- iODBC ignores unknown keys harmlessly, so the extra 'Driver64'
  line causes no errors — it is simply never read
- On iODBC-only hosts, 'Driver =' provides the correct path
  regardless (32-bit path when multilib, 64-bit when only one arch)

Migration ('%config(noreplace)' to '%ghost' transition):
- '%pretrans' Lua scriptlet parses '/etc/odbcinst.ini' for INI section
  headers and checks against known Fedora drivers ('PostgreSQL',
  'MySQL', 'FreeTDS', 'MariaDB', 'MDBTools', 'SQLITE', 'SQLITE3')
- Stock configs (only known sections) are silently dropped — the
  drop-in snippets regenerate equivalent entries
- Configs with unknown sections (user-added custom drivers) are saved
  as '.rpmsave' with a '%post' migration notice
- A checksum approach was not viable: 22 stock file variants across
  Fedora versions, plus 'sqliteodbc' '%post' injected arch-specific
  sections via 'odbcinst -i'; RPM's Lua has no digest functions

File additions:
- 'odbcinst-generate': regeneration script installed to '%{_bindir}'
- 'odbcinst-generate.1': man page documenting drop-in layout, override
  semantics, path resolution, multilib handling, file conflicts,
  numeric ranges, and design rationale vs other Fedora drop-in systems

This commit is part of a Fedora 45 Self Contained Change:
  https://fedoraproject.org/wiki/Changes/ODBC_stack_modernization

Substantial feedback provided by: Peter Lemenkov <plemenko@redhat.com>

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-07-29 12:39:26 +02:00
Michal Schorm
78ea12b156 [bugfix] Use 'mkdir -p' for ODBC plugin directory creation
On i686, '%{_libdir}' resolves to '/usr/lib' — the same path as
'%{_prefix}/lib'. When other mkdir calls in %install already create
'/usr/lib/odbc/' (e.g. for drop-in snippet directories), the bare
'mkdir' here fails with "File exists" because it lacks '-p'.

Switching to 'mkdir -p' makes the directory creation idempotent
regardless of the order of mkdir calls and whether '%{_libdir}'
coincides with '%{_prefix}/lib'.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-07-29 12:39:21 +02:00
Michal Schorm
c39f98009a [cleanup] Remove dead 'Conflicts: iodbc' from spec
This line was present from the very first spec import (commit fc5859a,
'unixODBC-1.8.12-2.src.rpm', Preston Brown, Jun 2000 — Red Hat Linux
"Winston" era).  No comment was ever attached explaining the reason.

The conflict existed because in 2000 both packages shipped:
- Config files via '%config %{_sysconfdir}/*' (catching '/etc/odbcinst.ini'
  and '/etc/odbc.ini')
- Standard ODBC headers ('sql.h', 'sqlext.h', 'sqltypes.h') directly
  in '/usr/include/'
- An ODBC driver manager library under the same soname

Since then, 'libiodbc' has been restructured to avoid all collisions:
- Different sonames: 'libiodbc.so.2' vs 'libodbc.so.2'
- Different binaries: 'iodbctest'/'iodbctestw' vs 'isql'/'odbcinst'
- Namespaced headers: '/usr/include/libiodbc/' vs '/usr/include/'
- Different pkg-config: 'libiodbc.pc' vs 'odbc.pc'
- No config files shipped by 'libiodbc' at all

On top of that, the Conflicts targets the package name 'iodbc', but
iODBC has been packaged as 'libiodbc' for years with no
'Provides: iodbc'.  The line is a no-op — it conflicts with a package
name that does not exist in Fedora.

'libiodbc' has never declared a reciprocal Conflicts on 'unixODBC'.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-07-20 01:51:27 +02:00
Fedora Release Engineering
6d744cedca Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 08:12:16 +00:00
Michal Schorm
0d08ac24fa Release bump for package rebuild 2026-06-26 15:56:34 +02:00
Michal Schorm
ce621dc9aa [performance] Enable '--enable-fastvalidate' to eliminate O(n) handle validation overhead
Without '--enable-fastvalidate', unixODBC validates every handle on every ODBC
API call by traversing a global linked list under a global mutex
('mutex_lists'). This is O(n) where n = total statement handles across all
connections, and the mutex serializes all threads. At scale (40+ concurrent
connections), aggregate cost grows as O(n^2) and dominates CPU time.

With '--enable-fastvalidate', handle validation becomes an O(1) magic-number
check with no locking. Per-connection statement iteration also switches from
global list filtering to per-connection linked lists.

Benchmark (Fedora Rawhide container, SQLite ODBC, best of 3 runs):

  Single-threaded — shows O(n) vs O(1) validation cost:

    Handles  Baseline ops/s  Fastvalidate ops/s  Speedup
        100       1,798,402           2,265,627    1.26x
      1,000         595,311           2,062,712    3.46x
      5,000         145,776           1,734,585   11.90x
     10,000          74,486           1,494,915   20.07x

  Multi-threaded — shows additional mutex contention:

    Handles  Threads  Baseline ops/s  Fastvalidate ops/s  Speedup
      5,000        4         134,947           1,171,034    8.68x
     10,000        4          69,269           1,174,854   16.96x
      5,000        8         128,174             983,613    7.67x
     10,000        8          66,955             984,302   14.70x
      5,000       16         120,639             602,676    5.00x
     10,000       16          66,279             598,478    9.03x

Baseline throughput drops 24x as handles scale from 100 to 10,000 (O(n)
validation), and flatlines with more threads — the global mutex serializes
all concurrent access. Fastvalidate stays nearly flat across handle counts
and scales with threads until cache contention dominates.

Tradeoff: the fast path uses a magic-number check instead of walking the
global list. It won't catch use-after-free of handles — but passing freed
handles is an application bug that causes undefined behavior regardless.

Driver name resolution via 'odbcinst.ini' confirmed working correctly with
fastvalidate (tested with 'isql' + SQLite driver in container — all 6
registered drivers visible, connection successful via driver name).

Cross-distribution precedent:
- Debian: enabled since 2017 (v2.3.4-1.1), motivated by Debian #819622
- Ubuntu: inherited from Debian
- openSUSE/SUSE: enabled since 2017 (bnc#1044970)

Resolves: RHEL-112733

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-06-26 15:42:23 +02:00
Michal Schorm
ee2604ba4b Bump release for multilib fix
Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-06-24 16:40:21 +02:00
Michal Schorm
7d4a39924e [bugfix] Fix multilib conflict for 'unixodbc.h' header
Upstream commit 5267d28 (between v2.3.9 and v2.3.10) added a new
'unixodbc.h' header, splitting out a subset of preprocessor constants
from 'unixodbc_conf.h' that are needed by the public 'sqltypes.h'
header.  This new file contains 'SIZEOF_LONG_INT' which is 4 on i686
and 8 on x86_64.

The spec applies '%multilib_fix_c_header' to 'unixodbc_conf.h' (which
still has its own arch-specific defines like 'SIZEOF_LONG', 'PLATFORM64'
and lib paths), but the new 'unixodbc.h' was never added.  Installing
both x86_64 and i686 'unixODBC-devel' simultaneously fails with an RPM
file-conflict error because both arches own '/usr/include/unixodbc.h'
with different content.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-06-24 16:40:10 +02:00
Michal Schorm
5a24f59a4d [design change] Enable ODBC driver search path, use bare library names in 'odbcinst.ini'
Set '--with-odbc-driver-path=%{_libdir}/odbc' in '%configure' so that
'libodbc' compiles in the arch-specific 'MODULEDIR' constant. Bare
driver library names (e.g. 'Driver = libmaodbc.so') now resolve
through 'lt_dlopen' search path, making 'odbcinst.ini'
architecture-independent.

This eliminates the need for 'Driver'/'Driver64' pairs and makes the
config file identical on all architectures (x86_64, i686, aarch64,
s390x, ppc64le).

Existing absolute paths continue to work — 'lt_dlopen' tries the
literal path first, falling back to 'MODULEDIR' only for bare names.

Cross-distro precedent: Debian family
--------------------------------------
The Debian family (Debian, Ubuntu, and all derivatives) is the only
distro family using this approach today.

The concept was introduced by Steve Langasek in 'unixodbc 2.2.14p2-3'
(2011-08-21) as a custom patch calling 'lt_dlsetsearchpath()' for
multiarch-clean relative driver paths:
  https://tracker.debian.org/news/174285/accepted-unixodbc-2214p2-3-source-amd64-into-unstable/

In '2.3.11-1' (2022-05-13), Hugh McMaster replaced the patch with the
upstream '--with-odbc-driver-path' configure option, using per-multiarch
paths ('$prefix/lib/<DEB_HOST_MULTIARCH>/odbc'):
  https://salsa.debian.org/debian/unixodbc/-/blob/debian/latest/debian/rules#L17

No other distro family (Fedora/RHEL, SUSE, Arch, Gentoo, Alpine,
FreeBSD, Mageia, Amazon Linux) uses '--with-odbc-driver-path' today.
The Fedora family (Fedora, RHEL, CentOS Stream) would be the second.

Known drawbacks and mitigations
-------------------------------
1. Debugging opacity: bare library names in config make it less
   obvious where the '.so' actually lives. Mitigated by the header
   comment in 'odbcinst.ini' explaining the mechanism, and by
   'odbc_config --ulen' / 'strace' being available for diagnosis.

2. Single search directory: 'MODULEDIR' is a single compiled-in path,
   not a colon-separated list. Drivers outside '%{_libdir}/odbc' still
   need absolute paths. This is fine — the directory is already
   established by BZ#2453060.

3. No per-arch override at config level: if a user needs to point
   one arch at a different driver, they must use an absolute path.
   The bare-name default covers the standard case; absolute paths
   remain the escape hatch.

4. Requires a package rebuild to change the path: 'MODULEDIR' is
   compiled into 'libodbc.so'. Changing the driver directory later
   means rebuilding 'unixODBC'. This is acceptable — the directory
   ('%{_libdir}/odbc') is unlikely to change, and has been standardized
   across the ODBC stack in BZ#2453060.

Relates: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-28 23:11:38 +02:00
Michal Schorm
53c76e18ca [cleanup] Drop obsolete 'keep-typedefs.patch'
Drop the 'keep-typedefs.patch' that re-adds four deprecated ODBC
typedefs ('SQLROWCOUNT', 'SQLROWSETSIZE', 'SQLTRANSID',
'SQLROWOFFSET') on 64-bit platforms. The patch has been carried
since 2009 and is no longer needed.

Background: unixODBC upstream commented out these typedefs on 64-bit
in version 2.2.13 (2008-11-18), following the Microsoft ODBC
specification which declares them unsupported on 64-bit ODBC. The
comment in 'sqltypes.h' reads: "These are not supported on 64bit
ODBC according to MS, removed, so use at your peril." On 32-bit,
upstream provides the typedefs natively — the patch only affected
64-bit builds.

Tom Lane added the patch in February 2009 (commit 'dea5432') during
the 2.2.14 rebase. The changelog notes "upstream fixed some mistakes
in the widths of some API datatypes for 64-bit platforms" — the patch
was a compatibility shim to prevent code breakage during the
transition.

Historical impact: the patch was genuinely needed in 2009.
FreeRADIUS required a Fedora spec fix 4 days after the unixODBC
update ("fix type usage in unixodbc to match new type usage in
unixodbc API", 2009-02-24). Debian, which did not carry an
equivalent patch, hit an FTBFS on psqlodbc in 2010 (Debian Bug
reliable fallback until commit 'c0fcf356' (2016-10-12). Since then,
the patch has been pure dead weight — every consumer either migrated
to ODBC 3.x types or added its own fallback. FreeTDS was never at
risk — its 'AC_CHECK_TYPES' fallback (commit '083e9b79', 2007-11-26)
predates the upstream removal by a full year.

The patch is safe to drop in 2026 because:

1. No other distribution carries it. Debian, Ubuntu, SUSE, Arch,
   Alpine, Gentoo, and FreeBSD all build their full ODBC stacks on
   64-bit without these typedefs. None have reported issues.

2. unixODBC's own headers do not use these types. The
   'SQLExtendedFetch()' declaration in 'sqlext.h' uses 'SQLLEN' and
   'SQLULEN' (ODBC 3.x types), not the deprecated 'SQLROWOFFSET'
   and 'SQLROWSETSIZE'. The DriverManager code does not reference
   them anywhere.

3. All 33 Fedora packages that build against 'unixODBC-devel' were
   audited — none use 'SQLROWSETSIZE', 'SQLROWOFFSET', 'SQLTRANSID',
   or 'SQLROWCOUNT' as typedefs. Every consumer uses the ODBC 3.x
   types ('SQLLEN'/'SQLULEN') exclusively.

4. The two ODBC driver packages that historically used these types
   have their own fallback mechanisms:
   - FreeTDS: 'AC_CHECK_TYPES([SQLROWSETSIZE, SQLROWOFFSET])' in
     'configure.ac', with '#ifndef HAVE_SQLROWSETSIZE' / '#define
     SQLROWSETSIZE SQLULEN' in 'odbc.h' (since 2007)
   - PostgreSQL ODBC: '#if defined(WITH_UNIXODBC) && (SIZEOF_LONG_INT
     != 8)' conditional that substitutes 'SQLULEN *' for
     'SQLROWSETSIZE *' on 64-bit (since 2016)

These typedefs were part of the ODBC 2.x API, primarily used in the
'SQLExtendedFetch()' function signature. ODBC 3.x (1995) deprecated
'SQLExtendedFetch()' in favor of 'SQLFetchScroll()', and the
associated types were deprecated along with it. The ecosystem has
fully migrated — no current code depends on unixODBC providing these
types on 64-bit.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-28 23:11:38 +02:00
Michal Schorm
e5ffb34c31 [bugfix] Remove dead 'Port' key from [FreeTDS] driver definition
The 'Port = 1433' line in the [FreeTDS] section of 'odbcinst.ini' is
dead configuration — the FreeTDS ODBC driver never reads it.

FreeTDS reads 'Port' via 'SQLGetPrivateProfileString(DSN, "Port", ...,
"odbc.ini")' in 'connectparams.c:142' — the second-to-last argument
is hardcoded to '"odbc.ini"', meaning the driver looks for 'Port'
exclusively in DSN definitions ('odbc.ini' or connection strings),
never in driver definitions ('odbcinst.ini').

The 'odbcinst.ini' driver section is only used by the DriverManager
for loading the '.so' file ('Driver'/'Driver64'), returning metadata
via 'SQLGetInfo()' ('Description', 'FileUsage'), and locating GUI
setup libraries ('Setup'/'Setup64'). 'Port' is not among the keys
the DriverManager reads from driver sections.

Origin of this line: it was suggested verbatim by the bug reporter
in rhbz#1448890, comment 0 (Kenny Tordeurs, 2017-05-08) as part of
a proposed FreeTDS config block. The reporter likely copied it from
a working DSN definition in 'odbc.ini' or from a FreeTDS tutorial.
Tomas Repik committed the suggestion verbatim in 'd93e3b3' on
2017-08-29 without noticing that 'Port' is a DSN-level key, not a
driver-level key.

No other distribution puts 'Port' in their FreeTDS driver definition:
  - SUSE: self-registers via scriptlet, no 'Port'
  - Debian/Ubuntu: drivers self-register, no 'Port'
  - Gentoo, Arch, Alpine, FreeBSD, Mageia: no FreeTDS 'odbcinst.ini'
    entry at all
  - CentOS Stream: inherited 'Port = 1433' from Fedora (same bug)

The line has no functional impact — it is silently ignored — but it
misleads administrators into thinking that setting 'Port' in
'odbcinst.ini' has an effect when it does not.

Relates: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-28 23:11:38 +02:00
Michal Schorm
fa09128298 [bugfix] Fix incorrect 'FileUsage' values in 'odbcinst.ini'
The 'FileUsage' key in ODBC driver definitions maps to the ODBC spec
constant returned by 'SQLGetInfo()' with 'SQL_FILE_USAGE' (info type 84).
The spec defines three values:

  0 = 'SQL_FILE_NOT_SUPPORTED' — the driver does not directly access
      files; it talks to a server (client/server architecture)
  1 = 'SQL_FILE_TABLE' — the driver treats files as tables
      (e.g., dBASE, CSV/text drivers)
  2 = 'SQL_FILE_CATALOG' — the driver treats files as databases/catalogs
      (e.g., Microsoft Access .mdb/.accdb, SQLite .db)

All Fedora entries had 'FileUsage = 1', which is wrong for every single
driver:

  - PostgreSQL, MySQL, MariaDB, FreeTDS are client/server drivers.
    Correct value: 0 ('SQL_FILE_NOT_SUPPORTED'). Since 0 is the default
    when the key is absent, the fix is to remove 'FileUsage' entirely.
    FreeTDS already omitted it (correct by accident).

  - MDBTools accesses Microsoft Access '.mdb'/'.accdb' files, which are
    self-contained databases (catalogs), not individual tables.
    Correct value: 2 ('SQL_FILE_CATALOG').

The incorrect 'FileUsage = 1' was cargo-culted from early 'odbcinst.ini'
templates. The origin is the unixODBC upstream documentation —
'README.VMS', the 'odbcinst.ini.5' man page, and the Administrator
Manual HTML docs all use PostgreSQL as the example and set
'FileUsage = 1', which is incorrect for a client/server driver.

Cross-distro comparison across 13 sources (Fedora, CentOS Stream, RHEL,
Debian, Ubuntu, SUSE, Mageia, Gentoo, Arch, Alpine, FreeBSD, plus
upstream source code) confirms the same mistake everywhere:

  - Fedora, CentOS Stream, RHEL: 'FileUsage = 1' on all drivers
  - Debian/Ubuntu: 'FileUsage = 1' in MDBTools and SQLite scriptlets
  - SUSE: 'FileUsage = 1' in SQLite scriptlets
  - Mageia: 'FileUsage = 1' in SQLite scriptlets
  - Gentoo, Arch, Alpine, FreeBSD: do not set 'FileUsage' at all
    (accidentally correct for client/server drivers via the default 0,
    but these distros don't configure file-based drivers)

Only two upstream sources have correct values:
  - PostgreSQL upstream: 'setup.c' and 'psqlodbc.reg' both hardcode
    'FileUsage=0' (Windows-specific code paths)
  - FreeTDS upstream: 'winsetup.c' hardcodes 'FileUsage=0%c'
    (Windows-specific code path)

No distro has correct values for file-based drivers (SQLite, MDBTools).
Both should be 2 ('SQL_FILE_CATALOG'), but every distro uses 1.

Why drivers work despite the wrong value: 'FileUsage' is metadata-only.
It is never read during driver loading ('lt_dlopen'), connection
establishment ('SQLConnect'/'SQLDriverConnect'), or query execution.
The DriverManager reads it exclusively when an application calls
'SQLGetInfo(SQL_FILE_USAGE)' — an informational query about driver
capabilities, not a control path.

In practice, 'SQL_FILE_USAGE' is almost never queried by applications.
The primary historical consumer was the ODBC cursor library (inside
'libodbc.so'), which used 'FileUsage' to decide client-side cursor
emulation strategy for file-based drivers. Modern applications and
frameworks (pyodbc, PHP PDO, Qt ODBC, Perl DBI::ODBC, R odbc, etc.)
do not check this value. The ODBC spec documents that 'SQL_FILE_USAGE'
affects how 'SQLTables()' catalog arguments are interpreted — e.g.,
a wrong 'FileUsage = 1' on PostgreSQL tells applications "directories
are catalogs and files are tables" — but no mainstream Linux ODBC
application alters its behavior based on this, so the bug has been
invisible for decades.

The fix is still correct: it aligns with the ODBC specification,
prevents wrong behavior in any application that does check
'SQL_FILE_USAGE', and corrects the value the DriverManager's
cursor library reads internally.

This commit:
  - Removes 'FileUsage' from [PostgreSQL], [MySQL], [MariaDB] (the
    default 0 is correct for client/server drivers)
  - Changes 'FileUsage' to 2 in [MDBTools] (file-based, catalog
    semantics)
  - Leaves [FreeTDS] unchanged (already correct — no 'FileUsage' key)

Relates: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-28 23:11:38 +02:00
Michal Schorm
ac0e80edaf [enhancement] Add missing 'Suggests' for all ODBC driver packages
Add 'freetds', 'mdbtools-odbc', and 'sqliteodbc' to the 'Suggests'
list, completing coverage of all 6 ODBC driver packages available
in Fedora.

All driver packages already have auto-generated ELF dependencies on
'libodbcinst.so.2' (or 'libodbc.so.2' for freetds), which resolve to
'unixODBC'. Explicit 'Requires' or 'Recommends' on driver packages
would be redundant per Fedora packaging guidelines:
  "Packages must not contain unnecessary explicit Requires on libraries."

--

Note on 'iODBC': an alternative ODBC driver manager ('libiodbc')
exists in Fedora, but it uses different sonames ('libiodbc.so.2' /
'libiodbcinst.so.2' vs 'libodbc.so.2' / 'libodbcinst.so.2').

The two implementations are not drop-in compatible at the ELF level.
All 6 Fedora ODBC drivers are compiled and linked against 'unixODBC'
— they would need to be recompiled against 'iODBC' to work with it.

The only Fedora package using 'iODBC' is 'poco-odbc', which
hardcodes 'BuildRequires: libiodbc-devel' despite POCO upstream
supporting both implementations.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-28 23:11:28 +02:00
Michal Schorm
61bcd6f4ac [enhancement] Add 'MDBTools' driver entry to 'odbcinst.ini'
The 'mdbtools-odbc' package ships 'libmdbodbc.so' (ANSI) and
'libmdbodbcW.so' (Unicode) into '%{_libdir}/odbc/', but has no
driver registration — it is invisible to ODBC applications after
install. Add an '[MDBTools]' section pointing to the Unicode variant.

This is the only Fedora ODBC driver missing from 'odbcinst.ini'.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-22 15:21:03 +02:00
Michal Schorm
f8bb121248 [refactor] Use consistent '%{_libdir}' macro syntax in '%files devel'
Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-22 13:19:29 +02:00
Michal Schorm
624ae4e682 Drop multilib-rpm-config usage on RHEL
multilib was dropped completely as of RHEL 10, and the macros are
expected to be dropped from RHEL 11.

Related: RHEL-178013
Related: https://github.com/fedora-eln/eln/issues/525

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-22 10:16:56 +00:00
Michal Schorm
e2b8e80c1e [bugfix] Fix FreeTDS driver path in odbcinst.ini (rhbz#2453060)
The freetds-libs package moved its ODBC plugin symlink from
/usr/lib{,64}/libtdsodbc.so to /usr/lib{,64}/odbc/libtdsodbc.so
per the BZ#2453060 standardization.  Update Driver/Driver64 to match.

Drop Setup/Setup64 entries for libtdsS.so — the setup libraries
(libtdsS.so, libodbcmyS.so, libodbcpsqlS.so) are built by unixODBC
but currently only shipped in -devel.  The GUI configuration path
that uses them (ODBCINSTGetProperties) needs a broader rework; for
now we focus on headless functionality.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-21 17:14:50 +02:00
Michal Schorm
69140f826b [bugfix] Fix MySQL driver path in odbcinst.ini
mysql-connector-odbc 9.x ships libmyodbc9w.so / libmyodbc9a.so with
a libmyodbc9.so convenience symlink.  The config still referenced the
old libmyodbc8.so which no longer exists, making the [MySQL] driver
entry non-functional.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-05-21 17:14:31 +02:00
Peter Lemenkov
aa5435da5f Let's preserve original changelog
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2026-04-16 23:09:35 +02:00
Michal Schorm
d4a6ebfe61 [design change] Rename ODBC plugin directory from 'unixODBC/' to 'odbc/'
Rename '%{_libdir}/unixODBC/' to '%{_libdir}/odbc/' for ODBC driver
plugins. The directory name is purely organizational (both unixODBC
and iODBC use full paths from 'odbcinst.ini', neither scans by
directory name), but 'odbc/' is the better convention because:

- Debian uses '%{_libdir}/odbc/' consistently for all ODBC drivers
  (mariadb, postgresql, freetds, sqliteodbc, mdbtools)
- It describes the directory contents (ODBC drivers) rather than
  the consumer (unixODBC driver manager)
- It is driver-manager-neutral
- mdbtools-odbc in Fedora already uses '%{_libdir}/odbc/'

Update 'odbcinst.ini' driver paths accordingly.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-04-15 20:56:04 +02:00
Michal Schorm
3e30709b7b Bump release for package rebuild
Related: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:22:24 +02:00
Michal Schorm
e4cd9d0fe0 [bugfix] Update PostgreSQL driver path in odbcinst.ini
Related: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:22:16 +02:00
Michal Schorm
23933ad836 [workaround] Remove broken Setup/Setup64 entries from PostgreSQL driver config
The Setup libraries (libodbcpsqlS.so) are built by the unixODBC source
tree but have been shipped in the -devel subpackage since the 2.3.11
rebase (2022). The odbcinst.ini Setup/Setup64 entries reference paths
that only exist when unixODBC-devel is installed, which is not a runtime
dependency. The MySQL and MariaDB sections already have no Setup entries.

Remove the dead entries for now; the underlying packaging issue is
tracked separately.

Related: rhbz#2453128

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:22:06 +02:00
Michal Schorm
dbb96c3c82 [bugfix] Update MariaDB driver path in odbcinst.ini
Related: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:21:47 +02:00
Michal Schorm
c67176ee40 [bugfix] Own %{_libdir}/unixODBC/ directory for ODBC connector plugins
Related: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:21:39 +02:00
Michal Schorm
0b4a4d634d [cleanup] Drop obsolete MySQL-5 driver config from odbcinst.ini
The [MySQL-5] section referenced mysql-connector-odbc from Fedora <=28,
which has been EOL since 2019.

Related: rhbz#2453060

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:21:32 +02:00
Michal Schorm
15fa936384 [enhancement] Switch to %autochangelog
Drop the manually maintained %changelog section and switch to
rpmautospec's %autochangelog macro. No changelog file is created;
the entire git history contributes to the generated changelog.

Co-Authored-By: Claude AI <noreply@anthropic.com>
2026-03-30 22:21:10 +02:00
Fedora Release Engineering
12770a47ba Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 19:37:36 +00:00
Michal Schorm
cd9e9ac89c Bump release to test Packit automation 2026-01-09 13:56:14 +01:00
Michal Schorm
beef89b5c2 Empty commit to test Packit automation 2026-01-09 13:36:35 +01:00
Michal Schorm
a43eb2b0fc Fix the Packit config 2026-01-09 13:04:46 +01:00
Michal Schorm
d1fd3a123a Rebase to 2.3.14
The c89 patch for CVE-2024-1013 was accepted by upstream:
  249bfcc511
2026-01-09 12:22:44 +01:00
Fedora Release Engineering
45b774c68f Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 19:48:14 +00:00
Fedora Release Engineering
b97fadd0fe Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-19 13:47:54 +00:00
Fedora Release Engineering
46d3d1ddf5 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-20 08:17:56 +00:00
Michal Schorm
6f09e4f929 [SPECfile bugfix] bcond macros can't contain dashes 2024-04-27 14:37:03 +02:00
Michal Schorm
b44aef21e6 Remove the README.dist
it doesn't contain any useful information anymore.

Furthermore it duplicatesd some of the content of the odbcinst.ini, but is out-dated now.

The only useful part - the suggestions - has been added to the package SPECfile.
2024-04-25 19:51:47 +02:00
Michal Schorm
03568dd684 Stop packaging 'NEWS' file. It's purpose and content was moved to 'ChangeLog' file that we already pack.
Furthermore, the 'NEWS' file isn't update anymore
2024-04-25 19:43:52 +02:00
Michal Schorm
6ac034cf32 Identify the GUI related parts and make them conitional 2024-04-25 19:41:34 +02:00
Michal Schorm
69f1e35d58 Use the correct way to disable building of the example drivers 2024-04-25 19:16:04 +02:00
Michal Schorm
9fb29c96cc no-op whitespace and intendation format update 2024-04-25 18:43:36 +02:00
Michal Schorm
dce421cb24 Fully disable building of the old example drivers not suitable for production usage 2024-04-25 18:36:42 +02:00
Michal Schorm
71e3b33ef1 [specfile enhancement] Use macros fro 'make build' / 'make install' 2024-04-25 06:12:10 +02:00
Michal Schorm
50734a9753 [specfile cleanup] The code seems to be aliasing safe now
I've tried with 2.3.12 release and 2.3.11 release, as I described here:
  https://github.com/lurcher/unixODBC/issues/29#issuecomment-2076277199
and I haven't encountered any issue with the package build.
2024-04-25 05:36:39 +02:00
Michal Schorm
da1390eab1 [specfile cleanup] Remove no longer relevant bits
I've reviewed the sources right after extracting from the source taraball, and then after the %prep phase.
In both cases, the relevant files do not need the correction anymore.

Here is the complete list of files that does not have the 0644 permission.

| > find unixODBC-2.3.12 -type f ! -perm 0644 -exec sh -c 'echo "File: $0, Permission: $(stat -c "%a" "$0")"' {} \;
|
| File: unixODBC-2.3.12/depcomp, Permission: 755
| File: unixODBC-2.3.12/install-sh, Permission: 755
| File: unixODBC-2.3.12/config.guess, Permission: 755
| File: unixODBC-2.3.12/ylwrap, Permission: 755
| File: unixODBC-2.3.12/configure, Permission: 755
| File: unixODBC-2.3.12/Interix/libtool, Permission: 755
| File: unixODBC-2.3.12/Interix/configure, Permission: 755
| File: unixODBC-2.3.12/compile, Permission: 755
| File: unixODBC-2.3.12/config.sub, Permission: 755
| File: unixODBC-2.3.12/missing, Permission: 755
|
2024-04-25 04:47:20 +02:00
Michal Schorm
c331855387 [rpmlint] Fix: UnixODBC.spec:268: W: non-break-space line 268, char 21 2024-04-25 03:20:45 +02:00
Florian Weimer
7f199a018e Fix out-of-bounds stack write (GCC 14 compatibility)
Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2024-01-29 08:36:29 +01:00
Fedora Release Engineering
1dad4482e8 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-27 07:08:53 +00:00
Miroslav Suchý
188aa7a1dd Correct SPDX license formula
The operator AND has to be upper case according to specification.
2024-01-15 22:11:33 +00:00
Michal Schorm
82b287392a [bugfix] Correctly mark the 'COPYING' file as a license
so it can be found with:
  rpm -q --licensefiles
2024-01-08 18:50:10 +01:00
Honza Horak
87ff0714b1 SPDX migration 2024-01-08 18:20:02 +01:00
Michal Schorm
07210a00d0 Fixes obsolete %patchN macros 2024-01-08 16:24:36 +01:00
Packit
cfab930728 2.3.12 upstream release
Upstream tag: 2.3.12
Upstream commit: c335dbf3

--

The unixODBC-c99.patch has been accepted by upstream:
  https://github.com/lurcher/unixODBC/pull/138
2024-01-08 16:21:46 +01:00
Michal Schorm
b3ef0a2a1c Add PACKIT configuration 2024-01-08 16:06:07 +01:00
Fedora Release Engineering
21eec61940 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-22 17:08:50 +00:00
Florian Weimer
ad00dfc6fe Port to C99
Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2023-04-13 10:14:36 +02:00
Fedora Release Engineering
9ac5a7185b Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-21 05:50:57 +00:00
Michal Schorm
98f9f57a27 Rebase to 2.3.11 2022-08-16 02:12:53 +02:00
Fedora Release Engineering
a0604fc32e Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 11:25:27 +00:00
Fedora Release Engineering
eb20b4a1b0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 03:33:02 +00:00
Fedora Release Engineering
d3c0213897 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 20:04:00 +00:00
Michal Schorm
c106725c85 Mention MariaDB driver comming from "mariadb-connector-odbc" package in the README 2021-07-02 05:48:20 +02:00
Michal Schorm
d95cec3b87 Fix the default configuration of MySQL driver comming from "mysql-connector-odbc" package
This change is applicable for Fedora >= 34
2021-07-02 05:48:09 +02:00
Fedora Release Engineering
ee5bd776a1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 22:41:51 +00:00
Tom Stellard
2790ad7410 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-09 00:25:09 +00:00
Michal Schorm
6b201b1f11 Remove %ldconfig_scriptlets macro
%ldconfig_scriptlets macro does not have any effect anymore
The macro expands to nothing in all active Fedora releases.

ldconfig is now ran only once per RPM transaction.
https://fedoraproject.org/wiki/Changes/Removing_ldconfig_scriptlets
2020-11-02 18:08:25 +00:00
Ondrej Dubaj
c328593ac3 Moved unversioned *.so shared libraries back to *-devel package.
Moved unversioned *.so plugins to %{_libdir}/unixODBC subdirectory
accroding to packaging guidelines:

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_devel_packages

Resolves: #1877720
2020-10-12 16:34:17 +02:00
Ondrej Dubaj
7ee5ec63ec rebased to version 2.3.9 2020-09-10 12:41:27 +02:00
Fedora Release Engineering
9c24f27537 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 13:19:29 +00:00
11 changed files with 1454 additions and 765 deletions

33
.packit.yaml Normal file
View file

@ -0,0 +1,33 @@
# See the documentation for more information:
# https://packit.dev/docs/configuration/
specfile_path: unixODBC.spec
# add or remove files that should be synced
files_to_sync:
- unixODBC.spec
- .packit.yaml
# name in upstream package repository or registry (e.g. in PyPI)
upstream_package_name: unixODBC
upstream_project_url: https://github.com/lurcher/unixODBC
# downstream (Fedora) RPM package name
downstream_package_name: unixODBC
jobs:
- job: pull_from_upstream
trigger: release
dist_git_branches:
- fedora-rawhide
- job: koji_build
trigger: commit
allowed_pr_authors: ["packit", "@db-sig"]
allowed_committers: ["packit", "@db-sig"]
dist_git_branches:
- fedora-all
- job: bodhi_update
trigger: commit
dist_git_branches:
- fedora-all

View file

@ -1,31 +0,0 @@
About unixODBC in this distribution
-----------------------------------
In addition to the unixODBC package itself, you will want to install some
or all of these related packages:
mysql-connector-odbc MySQL driver, needed to connect to MySQL databases
postgresql-odbc PostgreSQL driver, needed to connect to PostgreSQL
unixODBC-gui-qt Optional configuration management and test programs
The recommended driver definition for MySQL 8 is:
[MySQL]
Description = ODBC for MySQL 8
Driver = /usr/lib/libmyodbc8.so
Driver64 = /usr/lib64/libmyodbc8.so
FileUsage = 1
You can adjust the name (in square brackets) and the description, but
the other items should usually be used verbatim.
The recommended driver definition for PostgreSQL is:
[PostgreSQL]
Description = ODBC for PostgreSQL
Driver = /usr/lib/psqlodbcw.so
Setup = /usr/lib/libodbcpsqlS.so
Driver64 = /usr/lib64/psqlodbcw.so
Setup64 = /usr/lib64/libodbcpsqlS.so
FileUsage = 1

3
README.packit Normal file
View file

@ -0,0 +1,3 @@
This repository is maintained by packit.
https://packit.dev/
The file was generated using packit 0.80.0.post8+gf2b5fcbc.

636
changelog Normal file
View file

@ -0,0 +1,636 @@
* Fri Aug 07 2026 Adam Williamson <awilliam@redhat.com>
- odbcinst-generate - add Requires(post): coreutils
- Make all scriptlets always exit 0, per policy
* Wed Jul 29 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-11
- [cleanup] Remove dead 'Conflicts: iodbc' from spec
- [bugfix] Use 'mkdir -p' for ODBC plugin directory creation
- [Fedora 45 Change] Add drop-in directory infrastructure for ODBC driver registration
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.14-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Tue Jun 30 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-9
- [performance] Enable '--enable-fastvalidate' to eliminate O(n) handle validation overhead
* Thu Jun 25 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-8
- [bugfix] Fix multilib conflict for 'unixodbc.h' header
* Thu May 28 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-7
- [refactor] Use consistent '%{_libdir}' macro syntax in '%files devel'
- [enhancement] Add 'MDBTools' driver entry to 'odbcinst.ini'
- [enhancement] Add missing 'Suggests' for all ODBC driver packages
- [bugfix] Fix incorrect 'FileUsage' values in 'odbcinst.ini'
- [bugfix] Remove dead 'Port' key from [FreeTDS] driver definition
- [cleanup] Drop obsolete 'keep-typedefs.patch'
- [design change] Enable ODBC driver search path, use bare library names in
'odbcinst.ini'
* Fri May 22 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-6
- [bugfix] Fix MySQL driver path in odbcinst.ini
- [bugfix] Fix FreeTDS driver path in odbcinst.ini (rhbz#2453060)
- Drop multilib-rpm-config usage on RHEL
* Wed Apr 15 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-5
- [design change] Rename ODBC plugin directory from 'unixODBC/' to 'odbc/'
* Wed Apr 15 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-4
- [cleanup] Drop obsolete MySQL-5 driver config from odbcinst.ini
- [bugfix] Own %{_libdir}/unixODBC/ directory for ODBC connector plugins
- [bugfix] Update MariaDB driver path in odbcinst.ini
- [workaround] Remove broken Setup/Setup64 entries from PostgreSQL driver
config
- [bugfix] Update PostgreSQL driver path in odbcinst.ini
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.14-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Fri Jan 09 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-2
- Bump release to test Packit automation
* Fri Jan 09 2026 Michal Schorm <mschorm@redhat.com> - 2.3.14-1
- Rebase to 2.3.14
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.12-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.12-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.12-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 29 2024 Florian Weimer <fweimer@redhat.com> - 2.3.12-4
- Fix out-of-bounds stack write (GCC 14 compatibility)
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 05 2024 Honza Horak <hhorak@redhat.com> - 2.3.12-2
- SPDX migration
* Thu Sep 14 2023 Packit <hello@packit.dev> - 2.3.12-1
- New Release 2.3.12 (lurcher)
- Don't check state with shared env (lurcher)
- Add --enable-singleenv option (lurcher)
- Allow longer messages via SQLGetDiag (lurcher)
- Add --enable-utf8ini flag and coding (lurcher)
- Fix possible seg faults with SQLAPI and pooling (lurcher)
- Fix possible seg faults with SQLAPI and pooling (lurcher)
- Remove self-reference (Stefan)
- Avoid implicit function declarations, for C99 compatibility (Florian Weimer)
- Fix --enable-stats config error (lurcher)
- Allow diagnostics to be retrieved on SQL_NO_DATA (Kevin Adler)
- isql.1: Add information about passwords containing semicolons (Hugh McMaster)
- isql.1: Various text updates (Hugh McMaster)
- Export __clear_ini_cache from libodbcinst (lurcher)
- Revert "Add call to atexit to clear the ini cache" (lurcher)
- Add call to atexit to clear the ini cache (lurcher)
- Add extra iusql connectionstring syntax (lurcher)
- Allow longer connection strings (part 3) (lurcher)
- Allow longer connection strings (part 2) (lurcher)
- Allow longer connection strings (lurcher)
- Fixed Connection String (Stefan)
- Add extra connection syntax to isql help (lurcher)
- Add extra logging for ODBCINST connect settings (lurcher)
- Allow isql to handle SQLPrepare returning SQL_SUCCESS_WITH_INFO (and report warning) (lurcher)
- Allow isql to handle SQLPrepare returning SQL_SUCCESS_WITH_INFO (lurcher)
- Allow passing complete connection string into iusql (lurcher)
- Remove __get_connection from cursor lib (lurcher)
- Avoid failed build if clock_gettime() is not available (lurcher)
- Update change log (lurcher)
- DriverManager/_info.c: Get locale encoding on Windows. (Markus Mützel)
- DriverManager/drivermanager.h: fix build without threads (Fabrice Fontaine)
- Fix iconv handle leak with pooling (lurcher)
- Fix buffer overrun (lurcher)
- Create SECURITY.md (Nick Gorham)
- Move to 2.3.12pre (lurcher)
- Makefile.am: Do not install config.h (Hugh McMaster)
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.11-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Apr 13 2023 Florian Weimer <fweimer@redhat.com> - 2.3.11-3
- Port to C99
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Aug 16 2022 Michal Schorm <mschorm@redhat.com> - 2.3.11-1
- Rebase to 2.3.11
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.9-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.9-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jul 02 2021 Michal Schorm <mschorm@redhat.com> - 2.3.9-3
- Bump release after fix of the default configuration for MySQL driver
comming from "mysql-connector-odbc" package
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Sep 10 2020 Ondrej Dubaj <odubaj@redhat.com> - 2.3.9-1
- rebase to version 2.3.9
- move unversioned *.so files back to *-devel package
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.3.7-4
- Rebuild for readline 8.0
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Nov 30 2018 Michal Schorm <mschorm@redhat.com> - 2.3.7-2
- Bump for rebuild to ship updated configuration
* Sat Aug 11 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.7-1
- update to version 2.3.7
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Apr 27 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.6-1
- update to version 2.3.6
* Wed Mar 07 2018 Honza Horak <hhorak@redhat.com> - 2.3.5-3
- Bump for a rebuild
* Tue Feb 20 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.5-2
- cleanup autotool hacks
* Mon Feb 19 2018 Jan Staněk <jstanek@redhat.com> - 2.3.5-1
- Update to version 2.3.5
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jan 03 2018 Honza Horak <hhorak@redhat.com> - 2.3.4-9
- Include mariadb-connector-odbc driver spec in the odbcinst.ini
* Wed Aug 30 2017 Tomas Repik <trepik@redhat.com> - 2.3.4-8
- move libtdsS.so to the main package and add tds config to odbcinst.ini
- rhbz#1448890
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 2.3.4-4
- Rebuild for readline 7.x
* Wed Jun 22 2016 Pavel Raiskup <praiskup@redhat.com> - 2.3.4-3
- delegate multilib hacks to multilib-rpm-config package
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Sep 01 2015 Jan Stanek <jstanek@redhat.com> - 2.3.4-1
- Update to version 2.3.4
* Tue Aug 25 2015 Jan Stanek <jstanek@redhat.com> - 2.3.3-1
- Update to version 2.3.3
- Removed patches and sources included upstream
- Recreated so-version-bump.patch
* Wed Aug 12 2015 Jan Stanek <jstanek@redhat.com> - 2.3.2-8
- Backported changes necessary for building with new autotools version.
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Feb 18 2014 Jan Stanek <jstanek@redhat.com> - 2.3.2-4
- Added manual pages for iusql, dltest, odbc_config
* Fri Dec 06 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-3
- Renamed README.fedora to README.dist
* Thu Oct 24 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-2
- Add man page describing enviromental variables (#991018)
* Thu Oct 10 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-1
- Update to 2.3.2 version
- Removed extra man-pages and patch already shipped by upstream
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Jul 4 2013 Honza Horak <hhorak@redhat.com> 2.3.1-6
- Spec file clean-up
- Provide man pages created by Jan Stanek
* Thu Jul 4 2013 Honza Horak <hhorak@redhat.com> 2.3.1-5
- Fix Coverity patch
Resolves: #981060
* Tue Mar 19 2013 Tom Lane <tgl@redhat.com> 2.3.1-4
- Fix assorted small bugs found by Coverity
Related: #760877
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jan 10 2012 Tom Lane <tgl@redhat.com> 2.3.1-1
- Update to version 2.3.1. The main externally-visible change is that the
GUI programs are not part of the unixODBC tarball anymore, so they are no
longer in this package, and the unixODBC-kde sub-RPM has disappeared.
There is a separate package unixODBC-gui-qt that now provides those programs.
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Aug 31 2010 Tom Lane <tgl@redhat.com> 2.2.14-12
- Fix isql crash at EOF with -b option
Resolves: #628909
* Mon May 3 2010 Tom Lane <tgl@redhat.com> 2.2.14-11
- Re-add accidentally-removed desktop icon for ODBCConfig
Related: #587933
* Sat Mar 13 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.14-10
- BR qt-assistant-adp-devel
* Sat Dec 19 2009 Tom Lane <tgl@redhat.com> 2.2.14-9
- Fix bug preventing drivers from being selected in ODBCConfig
Resolves: #544852
* Wed Nov 25 2009 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.14-8
- Rebuild for Qt 4.6.0 RC1 in F13 (was built against Beta 1 with unstable ABI)
* Thu Oct 15 2009 Tom Lane <tgl@redhat.com> 2.2.14-7
- Clean up bogosity in multilib stub header support: ia64 should not be
listed (it's not multilib), sparcv9 isn't a possible uname -i output
* Fri Aug 21 2009 Tom Lane <tgl@redhat.com> 2.2.14-6
- Switch to building against qt4, not qt3. This means the DataManager,
DataManagerII, and odbctest applications are gone.
Resolves: #514064
- Use Driver64/Setup64 to eliminate need for hand-adjustment of odbcinst.ini
Resolves: #514688
- Fix misdeclaration of SQLBIGINT and SQLUBIGINT in generated header files
Resolves: #518623
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Jun 9 2009 Peter Lemenkov <lemenkov@gmail.com> - 2.2.14-4
- Properly install *.desktop files
- No need to ship INSTALL in docs
- Use macros instead of hardcoded /usr/share and /usr/include
- fixed permissions on some doc- and src-files
- Almost all rpmlint messages are gone now
* Sat Jun 06 2009 Dennis Gilmore <dennis@ausil.us> - 2.2.14-3
- add sparc support to the multilib includes header
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Fri Feb 20 2009 Tom Lane <tgl@redhat.com> 2.2.14-1
- Update to unixODBC 2.2.14. Note this involves an ABI break and a consequent
soname version bump, because upstream fixed some mistakes in the widths of
some API datatypes for 64-bit platforms. Also, the formerly embedded
mysql, postgresql, and text drivers have been removed. (For mysql and
postgresql, use the separate mysql-connector-odbc and postgresql-odbc
packages, which are far more up to date. The text driver is not currently
shipped by upstream at all, but might get revived as a separate SRPM later.)
- Stop shipping .a library files, per distro policy.
- Fixes for libtool 2.2.
* Mon Jul 28 2008 Tom Lane <tgl@redhat.com> 2.2.12-9
- Fix build failure caused by new default patch fuzz = 0 policy in rawhide.
* Fri Jun 13 2008 Tom Lane <tgl@redhat.com> 2.2.12-8
- Install icons in /usr/share/pixmaps, not /usr/share/icons as this package
has historically done; the former is considered correct.
* Fri Apr 4 2008 Tom Lane <tgl@redhat.com> 2.2.12-7
- Must BuildRequire qt3 now that Fedora has renamed qt4 to qt
Resolves: #440798
* Mon Feb 11 2008 Tom Lane <tgl@redhat.com> 2.2.12-6
- Move libodbcinst.so symlink into main package, since it's often dlopen'd
Related: #204882
- Clean up specfile's ugly coding for making base-vs-devel decisions
* Sun Dec 30 2007 Tom Lane <tgl@redhat.com> 2.2.12-5
- Add missing BuildRequires for flex.
Resolves: #427063
* Thu Aug 2 2007 Tom Lane <tgl@redhat.com> 2.2.12-4
- Update License tag to match code.
* Fri Apr 20 2007 Tom Lane <tgl@redhat.com> 2.2.12-3
- Make configure find correct Qt libraries when building on a multilib machine
* Mon Apr 16 2007 Tom Lane <tgl@redhat.com> 2.2.12-2
- Drop BuildRequires for kdelibs-devel
Resolves: #152717
- Clean up a few rpmlint complaints
* Wed Dec 6 2006 Tom Lane <tgl@redhat.com> 2.2.12-1
- Update to unixODBC 2.2.12.
- Add missing BuildPrereq for bison.
Resolves: #190427
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-7.1
- rebuild
* Mon Mar 27 2006 Tom Lane <tgl@redhat.com> 2.2.11-7
- Fix minor problems in desktop files (bug #185764)
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-6.2.1
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-6.2
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Mon Nov 21 2005 Tom Lane <tgl@redhat.com> 2.2.11-6
- Patch NO-vs-no discrepancy between aclocal/acinclude and recent autoconf
versions (not sure if this has been broken for a long time, or was just
exposed by modular X changeover).
- Apparently need to require libXt-devel too for modular X.
* Mon Nov 7 2005 Tom Lane <tgl@redhat.com> 2.2.11-5
- Adjust BuildPrereq for modular X.
* Sun Oct 16 2005 Florian La Roche <laroche@redhat.com> 2.2.11-4
- link against dependent libs
- fix some bugs to resolve unknown symbols ;-(
* Thu Sep 29 2005 Tom Lane <tgl@redhat.com> 2.2.11-3
- Force update of yac.h because the copy in the distributed tarball does not
match bison 2.0's numbering of symbols (bz #162676)
- Include documentation of text-file driver
- Use private libltdl so we can omit RTLD_GLOBAL from dlopen flags (bz #161399)
* Sat Sep 24 2005 Tom Lane <tgl@redhat.com> 2.2.11-2
- Remove Makefiles accidentally included in docs installation (bz #168819)
- Updates to keep newer libtool code from installing itself as part of package
* Fri Apr 8 2005 Tom Lane <tgl@redhat.com> 2.2.11-1
- Update to unixODBC 2.2.11
* Mon Mar 7 2005 Tom Lane <tgl@redhat.com> 2.2.10-3
- Rebuild with gcc4.
* Wed Jan 12 2005 Tim Waugh <twaugh@redhat.com> 2.2.10-2
- Rebuilt for new readline.
* Thu Oct 28 2004 Tom Lane <tgl@redhat.com> 2.2.10-1
- Update to unixODBC 2.2.10
* Wed Sep 22 2004 Tom Lane <tgl@redhat.com> 2.2.9-1
- Update to unixODBC 2.2.9
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Sat May 8 2004 Tom Lane <tgl@redhat.com> 2.2.8-5
- Backpatch fix for double-free error from upstream devel sources.
- rebuilt
* Wed May 5 2004 Tom Lane <tgl@redhat.com> 2.2.8-4
- Add dependency to ensure kde subpackage stays in sync with main
(needed because we moved odbctest from one pkg to the other,
cf bug #122478)
- rebuilt
* Wed Mar 10 2004 Tom Lane <tgl@redhat.com> 2.2.8-3
- Use installed libltdl
- rebuilt for Fedora Core 2
* Tue Mar 9 2004 Tom Lane <tgl@redhat.com> 2.2.8-2
- Rename lo_xxx() to odbc_lo_xxx() (bug #117211) (temporary until 2.2.9)
- rebuilt
* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Mon Mar 1 2004 Tom Lane <tgl@redhat.com>
- Update to 2.2.8
- rebuilt
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Thu Dec 4 2003 Joe Orton <jorton@redhat.com> 2.2.5-10
- rebuild to restore sqltypes.h after #111195
* Thu Oct 16 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-9
- Add XFree86-devel to the list of BuildPrereq. Did not bump
release as there is no need to rebuild.
* Thu Oct 16 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-9
- Add comments to the /etc/odbcinst.ini file regarding the proper
setup for MySQL and the origin of each library needed.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-8
- Move libodbcmyS.so to the main package as well. It is used the
same way as libodbcpsqlS.so.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-7
- Bumped the version so it rebuilds.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-4
- Revert previous change and special case libodbcpsql.so and
libodbcpsqlS.so instead. Here is the explanation (from Elliot
Lee):
".so files are only used at link time for normal dynamic libraries.
The libraries referred to here are being used as dynamically loaded
modules, so I guess moving those particular .so files back to the
main package would make sense, but the other .so files should stay
in the devel subpackage."
* Fri Oct 10 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-3
- Moved all the shared library symlinks to the main package.
They were deliberatedly being added to the devel package for
unknown reasons but this was forcing users to install the
devel package always.
- No need to special-case libodbc.so anymore
* Fri Sep 05 2003 Elliot Lee <sopwith@redhat.com> 2.2.5-2
- Run auto* so it rebuilds.
* Mon Jul 07 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-1
- Moved odbctest to the kde package to remove require on Qt stuff
from the main package.
- Removed stray "\" from doc/Makefile.am
- Applied libtool fix (provided by Alex Oliva) so that it build
with cross-compilers (which are used by 64 bit systems)
- Updated sources to the 2.2.5 community release
- Changed the included libtool to the 1.5-3 one so that
it properly link the libraries with the newly generated ones
and not with the ones installed on the build system (or give
an error if an old version is not installed (# 91110)
- Added new files for executable DataManagerII and icons LinuxODBC.xpm
and odbc.xpm
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
* Thu Jan 9 2003 Bill Nottingham <notting@redhat.com> 2.2.3-5
- debloat
* Tue Dec 17 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-4
- Run libtoolize etc.
* Thu Dec 12 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-3
- Rebuild to fix filelist errors...?
* Fri Nov 29 2002 Tim Powers <timp@redhat.com> 2.2.3-2
- remove unpackaged files from the buildroot
* Tue Nov 19 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-1
- Rebuild, update to 2.2.3
* Mon Aug 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.2-3
- Move libodbc.so to the main package, so programs dlopening
it don't break (#72653)
* Sat Aug 10 2002 Elliot Lee <sopwith@redhat.com>
- rebuilt with gcc-3.2 (we hope)
* Mon Jul 22 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.2-1
- 2.2.2
- desktop file changes (# 69371)
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Sun May 26 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Mon May 20 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.1-1
- 2.2.1
- Reenable other archs, as this should now build on 64 bit archs
* Sun May 19 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- add at least mainframe; should this really be a i386-only rpm?
* Wed Apr 17 2002 Bernhard Rosenkraenzer <bero@redhat.com> 2.2.0-5
- rebuild
* Fri Apr 5 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-4
- Avoid having files in more than one package (#62755)
* Tue Mar 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-3
- Don't include kde plugin .so as a devel symlink (#61039)
* Fri Mar 8 2002 Bernhard Rosenkraenzer <bero@redhat.com> 2.2.0-2
- Rebuild with KDE 3.x
* Tue Feb 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-1
- Just build on i386 now, there are 64 bit oddities
- 2.2.0
* Fri Jan 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.1.1-2
- move libodbcinstQ* to the kde subpackage
* Fri Jan 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.1.1-1
- 2.1.1
- minor cleanups
* Fri Dec 14 2001 Trond Eivind Glomsrd <teg@redhat.com> 2.0.7-5
- Rebuild
* Wed Sep 12 2001 Tim Powers <timp@redhat.com>
- rebuild with new gcc and binutils
* Sun Jun 24 2001 Than Ngo <than@redhat.com>
- rebuild against qt-2.3.1, kde-2.1.x
* Fri Jun 15 2001 Trond Eivind Glomsrd <teg@redhat.com>
- Better default odbcinst.ini
- Minor cleanups
* Wed Jun 6 2001 Trond Eivind Glomsrd <teg@redhat.com>
- 2.0.7
* Wed Apr 25 2001 Trond Eivind Glomsrd <teg@redhat.com>
- Fix for isql segfault on EOF/ctrl-d exit
* Fri Apr 20 2001 Trond Eivind Glomsrd <teg@redhat.com>
- 2.0.6
- add patch for 64 bit archs (dword shouldn't be "long int")
* Wed Feb 28 2001 Trond Eivind Glomsrd <teg@redhat.com>
- rebuild
* Tue Nov 28 2000 Trond Eivind Glomsrd <teg@redhat.com>
- 1.8.13
* Tue Oct 10 2000 Trond Eivind Glomsrd <teg@redhat.com>
- enable GUI now that we have KDE compiled with the standard
compiler
- move the applnk entries to the KDE package
* Thu Aug 24 2000 Nalin Dahyabhai <nalin@redhat.com>
- add the missing shared libs to the non-devel package
* Wed Aug 23 2000 Preston Brown <pbrown@redhat.com>
- 1.8.12 fixes problems with the postgresql driver
* Mon Jul 31 2000 Trond Eivind Glomsrd <teg@redhat.com>
- disable KDE subpackage to avoid the mess that is C++ binary
compatibility
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild
* Fri Jun 30 2000 Florian La Roche <laroche@redhat.com>
- improved QTDIR detection
* Wed Jun 28 2000 Trond Eivind Glomsrd <teg@redhat.com>
- 1.8.10
- use %%{_tmppath}
- update URL
- including two missing libraries
* Tue Jun 13 2000 Preston Brown <pbrown@redhat.com>
- 1.8.9
* Fri Jun 09 2000 Preston Brown <pbrown@redhat.com>
- adopted for Winston, changed to Red Hat packaging standards
* Tue Apr 18 2000 Murray Todd Williams <murray@codingapes.com>
- added a unixODBC-devel RPM to the group, added KDE links and icons to system
- all of which came from recommendations from Fredrick Meunier
- <Fredrick.Meunier@computershare.com.au>
* Mon Apr 17 2000 Murray Todd Williams <murray@codingapes.com>
- unixODBC-1.8.7
- moved install to $RPM_BUILD_ROOT so it didn't overrun existing files.

View file

@ -1,18 +0,0 @@
Upstream has decided to deprecate these typedefs, but experience so far
says that removing them just breaks code to little purpose.
diff -Naur unixODBC-2.2.14.orig/include/sqltypes.h unixODBC-2.2.14/include/sqltypes.h
--- unixODBC-2.2.14.orig/include/sqltypes.h 2008-10-31 12:21:53.000000000 -0400
+++ unixODBC-2.2.14/include/sqltypes.h 2009-02-16 13:28:50.000000000 -0500
@@ -170,6 +170,10 @@
typedef SQLUINTEGER SQLROWSETSIZE;
typedef SQLLEN SQLROWOFFSET;
*/
+typedef SQLULEN SQLROWCOUNT;
+typedef SQLULEN SQLROWSETSIZE;
+typedef SQLULEN SQLTRANSID;
+typedef SQLLEN SQLROWOFFSET;
#endif
#else
typedef long SQLINTEGER;

123
odbcinst-generate Normal file
View file

@ -0,0 +1,123 @@
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2026 Michal Schorm <mschorm@redhat.com>
#
# Regenerate /etc/odbcinst.ini from drop-in snippets.
#
# Merge order:
# 1. /usr/lib/odbc/odbcinst.d/*.ini (vendor, low-numbered prefixes)
# 2. /etc/odbc/odbcinst.d/*.ini (admin, high-numbered prefixes)
#
# Override rules:
# - Files are sorted by full basename (numeric prefix determines order)
# - When two files share the same name after stripping the numeric prefix
# (e.g., 10-mariadb.ini and 60-mariadb.ini), the higher-numbered one wins
# - A symlink to /dev/null disables the corresponding driver entry
#
# This script is called from RPM file triggers and %post.
# It must be safe to run at any time (idempotent).
set -eo pipefail
VENDOR_DIR=/usr/lib/odbc/odbcinst.d
ADMIN_DIR=/etc/odbc/odbcinst.d
TARGET=/etc/odbcinst.ini
tmpfile=$(mktemp "${TARGET}.XXXXXX")
resolved=""
trap 'rm -f "$tmpfile" "$resolved"' EXIT
cat > "$tmpfile" << 'HEADER'
# Auto-generated from drop-in snippets. Do not edit this file.
#
# Vendor defaults: /usr/lib/odbc/odbcinst.d/*.ini
# Admin overrides: /etc/odbc/odbcinst.d/*.ini
#
# To override a vendor driver, place a file with the same name
# (or higher numeric prefix) in /etc/odbc/odbcinst.d/.
# To disable a vendor driver, symlink its snippet to /dev/null:
# ln -sf /dev/null /etc/odbc/odbcinst.d/10-freetds.ini
#
# To apply changes after editing drop-in files, run:
# odbcinst-generate
HEADER
# Build an associative array: key → path (last writer wins by sort order)
declare -A snippets
# Process vendor first (lower priority), then admin (higher priority)
for dir in "$VENDOR_DIR" "$ADMIN_DIR"; do
[ -d "$dir" ] || continue
for f in "$dir"/*.ini; do
[ -e "$f" ] || continue
base=$(basename "$f")
# Strip numeric prefix for override matching: "10-mariadb.ini" → "mariadb.ini"
key="${base#[0-9][0-9]-}"
snippets["$key"]="$f"
done
done
# Sort keys and emit content
if [ ${#snippets[@]} -gt 0 ]; then
while IFS= read -r key; do
f="${snippets[$key]}"
# Symlink to /dev/null = disabled
if [ -L "$f" ] && [ "$(readlink -f "$f")" = "/dev/null" ]; then
continue
fi
[ -f "$f" ] || continue
echo "" >> "$tmpfile"
cat "$f" >> "$tmpfile"
done < <(printf '%s\n' "${!snippets[@]}" | sort)
fi
# Resolve bare library names (e.g. "libmaodbc.so") to absolute paths.
# unixODBC finds bare names via its compiled-in --with-odbc-driver-path,
# but iODBC requires absolute paths for dlopen(). Absolute paths also
# make the generated config self-documenting.
#
# Multilib: when a driver .so exists in both /usr/lib64/odbc/ and
# /usr/lib/odbc/ (e.g. both x86_64 and i686 RPMs installed), emit
# Driver= for the 32-bit path and Driver64= for the 64-bit path.
# unixODBC selects the matching key based on the calling application's
# word size. When only one architecture is present, only Driver= is
# emitted. Same for Setup/Setup64.
#
# If a bare name is not found in either directory, it is left unchanged
# so unixODBC can still find it via its built-in search path.
resolved=$(mktemp "${TARGET}.XXXXXX")
while IFS= read -r line; do
if [[ "$line" =~ ^((Driver|Setup)[[:space:]]*=[[:space:]]*)([^/[:space:]][^/[:space:]]*\.so[^/[:space:]]*)[[:space:]]*$ ]]; then
prefix="${BASH_REMATCH[1]}"
key="${BASH_REMATCH[2]}"
bare="${BASH_REMATCH[3]}"
in_lib64=""
in_lib32=""
[ -f "/usr/lib64/odbc/$bare" ] && in_lib64="/usr/lib64/odbc/$bare"
[ -f "/usr/lib/odbc/$bare" ] && in_lib32="/usr/lib/odbc/$bare"
if [ -n "$in_lib64" ] && [ -n "$in_lib32" ]; then
printf '%s%s\n' "$prefix" "$in_lib32"
printf '%s64 = %s\n' "$key" "$in_lib64"
elif [ -n "$in_lib64" ]; then
printf '%s%s\n' "$prefix" "$in_lib64"
elif [ -n "$in_lib32" ]; then
printf '%s%s\n' "$prefix" "$in_lib32"
else
printf '%s\n' "$line"
fi
else
printf '%s\n' "$line"
fi
done < "$tmpfile" > "$resolved"
mv "$resolved" "$tmpfile"
# Atomic replace
chmod 644 "$tmpfile"
mv "$tmpfile" "$TARGET"
trap - EXIT

357
odbcinst-generate.1 Normal file
View file

@ -0,0 +1,357 @@
.\" SPDX-License-Identifier: GPL-2.0-or-later
.\" Copyright (C) 2026 Michal Schorm <mschorm@redhat.com>
.TH ODBCINST\-GENERATE 1 "July 2026" "unixODBC" "User Commands"
.SH NAME
odbcinst\-generate \- regenerate /etc/odbcinst.ini from drop\-in snippets
.SH SYNOPSIS
.B odbcinst\-generate
.SH DESCRIPTION
.B odbcinst\-generate
assembles
.I /etc/odbcinst.ini
from drop\-in snippet files shipped by ODBC driver packages and
administrator overrides.
It is normally invoked automatically by RPM file triggers when driver
packages are installed or removed.
Administrators may also run it manually after editing drop\-in files.
.PP
The generated file is replaced atomically (write to a temporary file,
then rename).
The command is idempotent and safe to run at any time.
.SH DROP\-IN DIRECTORIES
.TP
.I /usr/lib/odbc/odbcinst.d/
Vendor defaults.
ODBC driver packages ship static
.B .ini
snippet files here.
These files are never modified by the administrator.
.TP
.I /etc/odbc/odbcinst.d/
Administrator overrides and additions.
Files placed here take precedence over vendor defaults.
.SH FILE NAMING
Snippet files are named
.IR NN \- name .ini ,
where
.I NN
is a two\-digit numeric prefix that controls merge order.
.PP
Recommended ranges:
.RS
.TP
.B 10\(en29
Distro vendor (Fedora\-shipped driver packages).
.TP
.B 30\(en49
Third\-party / out\-of\-tree (COPR packages, vendor RPMs such as
SeerODBC, Oracle Instant Client, etc.).
.TP
.B 50\(en99
Administrator overrides and additions.
.RE
.PP
The numeric prefix controls tie\-breaking within a single directory
(see
.BR "OVERRIDE SEMANTICS" ).
It does not affect output order; output sections are sorted
alphabetically by the stripped name.
.SH OVERRIDE SEMANTICS
Files from both directories are merged using
.B stripped\-name matching:
the numeric prefix is removed from each filename
.RI ( 10\-mariadb.ini
becomes
.IR mariadb.ini ),
and files that share the same stripped name compete.
Only one file per stripped name survives; the rest are discarded.
.PP
Tie\-breaking follows two rules, applied in order:
.IP 1. 4
.B Directory wins.
A file in the administrator directory
.RI ( /etc/odbc/odbcinst.d/ )
always takes precedence over a file with the same stripped name in the
vendor directory
.RI ( /usr/lib/odbc/odbcinst.d/ ),
regardless of numeric prefix.
.IP 2. 4
.B Higher prefix wins.
Within the same directory, the file with the higher numeric prefix wins.
For example,
.I 30\-mariadb.ini
overrides
.I 10\-mariadb.ini
when both reside in the vendor directory.
.PP
After tie\-breaking, the surviving snippets are sorted alphabetically by
their stripped name and concatenated to produce the output file.
.SH DISABLING A DRIVER
To disable a vendor\-shipped driver, create a symlink to
.I /dev/null
in the administrator directory:
.PP
.RS
.nf
ln \-sf /dev/null /etc/odbc/odbcinst.d/10\-freetds.ini
odbcinst\-generate
.fi
.RE
.PP
Symlinks pointing to
.I /dev/null
are detected and skipped during regeneration.
.SH PATH RESOLUTION
Snippet files should use bare library names for the
.B Driver
(and
.BR Setup )
keys:
.PP
.RS
.nf
Driver = libmaodbc.so
.fi
.RE
.PP
During generation,
.B odbcinst\-generate
resolves each bare name to an absolute, architecture\-correct path
by probing the filesystem per\-driver.
For each bare
.B .so
name, it checks both
.I /usr/lib64/odbc/
and
.IR /usr/lib/odbc/ .
.PP
.SS Multilib resolution
On a multilib system where both the 64\-bit and 32\-bit packages of
a driver are installed (e.g.\&
.I mariadb\-connector\-odbc.x86_64
and
.IR mariadb\-connector\-odbc.i686 ),
the generator emits two keys:
.PP
.RS
.nf
Driver = /usr/lib/odbc/libmaodbc.so
Driver64 = /usr/lib64/odbc/libmaodbc.so
.fi
.RE
.PP
unixODBC selects the matching key based on the calling application\(aqs
word size: a 64\-bit application reads
.BR Driver64 ,
a 32\-bit application (e.g.\& Wine) reads
.BR Driver .
The same logic applies to
.BR Setup / Setup64 .
.PP
When only one architecture is present, only
.B Driver
is emitted with that architecture\(aqs path.
If the bare name is not found in either directory, it is left unchanged
so that unixODBC can still locate it via its compiled\-in driver search
path.
.PP
.SS Edge cases
.IP \(bu 3
A 32\-bit\-only driver on a 64\-bit host is correctly resolved to
.I /usr/lib/odbc/
instead of
.IR /usr/lib64/odbc/ .
.IP \(bu 3
A third\-party driver whose shared library lives outside
.I /usr/lib*/odbc/
(e.g.\& in
.IR /usr/lib64/ )
is not rewritten to a non\-existent path.
.IP \(bu 3
iODBC does not recognize the
.B Driver64
key, but ignores unknown keys harmlessly.
On iODBC\-only hosts, the
.B Driver
key provides the correct path.
.PP
Absolute paths ensure the generated
.I odbcinst.ini
works with all ODBC driver managers (both unixODBC and iODBC) without
hard\-coding architecture directories.
Using bare names in snippets keeps them noarch\-portable: the same
.I .ini
file works on x86_64, aarch64, ppc64le, etc., because the generator
handles path differences at generation time.
.SH FILE CONFLICTS
Each snippet filename must be unique within its directory.
If two RPM packages ship the same file (e.g.\& both install
.IR 30\-oracle.ini ),
RPM will raise a file conflict and refuse to install both.
.PP
Third\-party packagers should choose unique names that include the
driver\(aqs identity, for example:
.PP
.RS
.nf
30\-seerodbc.ini
31\-oracle\-instantclient.ini
32\-snowflake.ini
.fi
.RE
.SH OUTPUT FILE
.TP
.I /etc/odbcinst.ini
The generated ODBC driver configuration file.
This file is marked as
.B %ghost
in the RPM package and should not be edited directly.
Changes will be overwritten on the next regeneration.
.SH EXIT STATUS
.TP
.B 0
Success.
.TP
.B >0
An error occurred (e.g.\& unable to write the output file).
.SH EXAMPLES
.SS Adding an administrator driver
Create a snippet with a bare library name and regenerate:
.PP
.RS
.nf
cat > /etc/odbc/odbcinst.d/60\-mydriver.ini << 'EOF'
[MyDriver]
Driver = libmydriver.so
EOF
odbcinst\-generate
.fi
.RE
.PP
If
.I libmydriver.so
exists only in
.IR /usr/lib64/odbc/ ,
the generated
.I /etc/odbcinst.ini
will contain the resolved absolute path:
.PP
.RS
.nf
[MyDriver]
Driver = /usr/lib64/odbc/libmydriver.so
.fi
.RE
.PP
If both 64\-bit and 32\-bit versions are installed, the output
contains both keys:
.PP
.RS
.nf
[MyDriver]
Driver = /usr/lib/odbc/libmydriver.so
Driver64 = /usr/lib64/odbc/libmydriver.so
.fi
.RE
.PP
If the library is not found in
.I /usr/lib*/odbc/
(e.g.\& it is installed in
.IR /usr/lib64/ ),
the bare name is kept as\-is.
.PP
.SS Vendor snippet (distro\-shipped)
A Fedora driver package installs a snippet in the vendor directory:
.PP
.RS
.nf
# Shipped as /usr/lib/odbc/odbcinst.d/10\-mariadb.ini
[MariaDB]
Driver = libmaodbc.so
.fi
.RE
.PP
.SS Overriding a vendor snippet
An administrator can override the MariaDB driver configuration
without modifying the vendor file:
.PP
.RS
.nf
cat > /etc/odbc/odbcinst.d/50\-mariadb.ini << 'EOF'
[MariaDB]
Driver = libmaodbc.so
Threading = 2
EOF
odbcinst\-generate
.fi
.RE
.PP
The administrator file wins because the admin directory always takes
precedence over the vendor directory for the same stripped name.
.SH NOTES
.SS Comparison with other Fedora drop\-in systems
Several Fedora packages use a similar dual\-directory drop\-in pattern:
.BR sysctl.d (5),
.BR tmpfiles.d (5),
.BR modprobe.d (5),
and
.BR systemd.unit (5).
Those systems use
.B exact filename matching
for overrides:
.I /etc/sysctl.d/10\-foo.conf
masks
.I /usr/lib/sysctl.d/10\-foo.conf
(same filename), but
.I /etc/sysctl.d/60\-foo.conf
and
.I /usr/lib/sysctl.d/10\-foo.conf
coexist as two separate files, with conflicting keys resolved
individually by lexicographic sort order.
.PP
That model works for key\-value configurations where individual
settings can be overridden independently.
ODBC driver registration is structurally different: each snippet
declares a complete
.BI [ DriverName ]
INI section, and merging individual keys from two
.B [MariaDB]
sections across files would be ambiguous and error\-prone.
The entire section is the atomic unit.
.PP
.B odbcinst\-generate
therefore uses
.B stripped\-name matching
instead: files that share the same name after removing the numeric
prefix compete, and only one survives (see
.BR "OVERRIDE SEMANTICS" ).
The administrator directory always wins for the same stripped name,
regardless of numeric prefix.
This is a deliberate deviation from the
.BR sysctl.d / tmpfiles.d
model, chosen because INI section overrides must be whole\-section
replacements.
.SS Numeric range convention
.BR sysctl.d (5)
documents ranges 10\(en40 for vendor packages and 60\(en90 for
local administration.
This system adds a third\-party band (30\(en49) because out\-of\-tree
ODBC drivers (COPR packages, vendor RPMs, third\-party connectors)
are a common use case that does not fit the distro vendor or
administrator categories.
See
.B FILE NAMING
for the full range table.
.SH AUTHORS
Michal Schorm <mschorm@redhat.com>
.SH COPYRIGHT
Copyright \(co 2026 Michal Schorm.
.br
Licensed under the GNU General Public License, version 2 or later.
.SH SEE ALSO
.BR odbcinst (1),
.BR odbcinst.ini (5),
.BR odbc.ini (5),
.BR unixODBC (7),
.BR sysctl.d (5),
.BR tmpfiles.d (5)

View file

@ -1,57 +1,35 @@
# Example driver definitions
#
# Drivers are resolved via the ODBC driver search path compiled into libodbc
# (--with-odbc-driver-path), so bare library names work for all architectures.
# For drivers installed outside the search path, use absolute paths instead.
# Driver from the postgresql-odbc package
# Setup from the unixODBC package
[PostgreSQL]
Description = ODBC for PostgreSQL
Driver = /usr/lib/psqlodbcw.so
Setup = /usr/lib/libodbcpsqlS.so
Driver64 = /usr/lib64/psqlodbcw.so
Setup64 = /usr/lib64/libodbcpsqlS.so
FileUsage = 1
Driver = psqlodbcw.so
# Driver from the mysql-connector-odbc package in Fedora >=29
# Setup from the unixODBC package
# Driver from the mysql-connector-odbc package
[MySQL]
Description = ODBC for MySQL 8
# mysql-connector-odbc package provides shared libraries with "w" or "a" suffix.
# 'w' stands for 'wide' or 'unicode' character set, 'a' stands for 'ANSI'
# Symlinks used in the configuration below lead to the 'w' variant by default
Driver = /usr/lib/libmyodbc8.so
Driver64 = /usr/lib64/libmyodbc8.so
FileUsage = 1
# Driver from the mysql-connector-odbc package in Fedora <=28
# Setup from the unixODBC package
[MySQL-5]
Description = ODBC for MySQL 5
# mysql-connector-odbc package provides shared libraries with "w" or "a" suffix.
# 'w' stands for 'wide' or 'unicode' character set, 'a' stands for 'ANSI'
# Symlinks used in the configuration below lead to the 'w' variant by default
Driver = /usr/lib/libmyodbc5.so
Driver64 = /usr/lib64/libmyodbc5.so
Setup = /usr/lib/libodbcmyS.so
Setup64 = /usr/lib64/libodbcmyS.so
FileUsage = 1
Description = ODBC for MySQL
Driver = libmyodbc9.so
# Driver from the freetds-libs package
# Setup from the unixODBC package
[FreeTDS]
Description = Free Sybase & MS SQL Driver
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/libtdsS.so
Driver64 = /usr/lib64/libtdsodbc.so
Setup64 = /usr/lib64/libtdsS.so
Port = 1433
Driver = libtdsodbc.so
# Driver from the mariadb-connector-odbc package
# Setup from the unixODBC package
[MariaDB]
Description = ODBC for MariaDB
Driver = /usr/lib/libmaodbc.so
Driver64 = /usr/lib64/libmaodbc.so
FileUsage = 1
Driver = libmaodbc.so
# Driver from the mdbtools-odbc package
[MDBTools]
Description = MDB Tools ODBC (Microsoft Access)
Driver = libmdbodbcW.so
FileUsage = 2

View file

@ -1,9 +1,154 @@
Set the major .so version to 2 for all unixODBC shared libraries, to reflect
the incompatible ABI changes in 2.2.14.
diff -up unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am.soname unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am
--- unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am.soname 2015-08-22 18:39:16.000000000 +0200
+++ unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am 2015-08-25 12:27:47.005775376 +0200
Note that we only patch 'Makefile.am' files and not 'Makefile.in' files,
as we use 'autoconf' instead of the 'configure' setup tool
--- unixODBC-2.3.11/DRVConfig/MiniSQL/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/MiniSQL/Makefile.am.patched 2022-05-19 10:56:27.087060411 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcminiS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcminiS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcminiS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcminiS_la_SOURCES = odbcminiS.c
--- unixODBC-2.3.11/DRVConfig/PostgreSQL/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/PostgreSQL/Makefile.am.patched 2022-05-19 10:56:27.090060438 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcpsqlS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcpsqlS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcpsqlS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcpsqlS_la_SOURCES = odbcpsqlS.c
--- unixODBC-2.3.11/DRVConfig/esoob/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/esoob/Makefile.am.patched 2022-05-19 10:56:27.093060465 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libesoobS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libesoobS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libesoobS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libesoobS_la_SOURCES = esoobS.c
--- unixODBC-2.3.11/DRVConfig/sapdb/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/sapdb/Makefile.am.patched 2022-05-19 10:56:27.096060492 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libsapdbS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libsapdbS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libsapdbS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libsapdbS_la_SOURCES = sapdb.c
--- unixODBC-2.3.11/DRVConfig/Oracle/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/Oracle/Makefile.am.patched 2022-05-19 10:56:27.098060510 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboraodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboraodbcS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+liboraodbcS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
liboraodbcS_la_SOURCES = oraodbcS.c
--- unixODBC-2.3.11/DRVConfig/Mimer/Makefile.am 2021-03-02 14:50:37.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/Mimer/Makefile.am.patched 2022-05-19 10:56:27.100060528 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libmimerS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libmimerS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libmimerS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libmimerS_la_SOURCES = mimerS.c
--- unixODBC-2.3.11/DRVConfig/MySQL/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/MySQL/Makefile.am.patched 2022-05-19 10:56:27.102060546 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcmyS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcmyS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcmyS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcmyS_la_SOURCES = odbcmyS.c
--- unixODBC-2.3.11/DRVConfig/txt/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/txt/Makefile.am.patched 2022-05-19 10:56:27.103060555 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbctxtS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbctxtS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbctxtS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbctxtS_la_SOURCES = drvcfg.c
--- unixODBC-2.3.11/DRVConfig/drvcfg1/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/drvcfg1/Makefile.am.patched 2022-05-19 10:56:27.105060573 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg1S.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcdrvcfg1S_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcdrvcfg1S_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcdrvcfg1S_la_SOURCES = drvcfg1.c
--- unixODBC-2.3.11/DRVConfig/oplodbc/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/oplodbc/Makefile.am.patched 2022-05-19 10:56:27.107060592 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboplodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboplodbcS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+liboplodbcS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
liboplodbcS_la_SOURCES = oplodbc.c
--- unixODBC-2.3.11/DRVConfig/tds/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/tds/Makefile.am.patched 2022-05-19 10:56:27.108060601 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libtdsS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libtdsS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libtdsS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libtdsS_la_SOURCES = tdsS.c
--- unixODBC-2.3.11/DRVConfig/drvcfg2/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/drvcfg2/Makefile.am.patched 2022-05-19 10:56:27.110060619 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg2S.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcdrvcfg2S_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcdrvcfg2S_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcdrvcfg2S_la_SOURCES = drvcfg2.c
--- unixODBC-2.3.11/DRVConfig/nn/Makefile.am 2021-03-02 14:44:29.000000000 +0100
+++ unixODBC-2.3.11/DRVConfig/nn/Makefile.am.patched 2022-05-19 10:56:27.112060637 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcnnS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcnnS_la_LDFLAGS = -module -no-undefined -version-info 1:0:0 -avoid-version -shared
+libodbcnnS_la_LDFLAGS = -module -no-undefined -version-info $(LIB_VERSION) -avoid-version -shared
libodbcnnS_la_SOURCES = drvcfg.c
--- unixODBC-2.3.11/Drivers/MiniSQL/Makefile.am 2018-01-02 11:48:19.000000000 +0100
+++ unixODBC-2.3.11/Drivers/MiniSQL/Makefile.am.patched 2022-05-19 10:56:27.114060655 +0200
@@ -193,6 +193,6 @@ EXTRA_DIST = \
_sqlFreeEnv.c \
_sqlFreeStmt.c
@ -12,33 +157,8 @@ diff -up unixODBC-2.3.3/Drivers/MiniSQL/Makefile.am.soname unixODBC-2.3.3/Driver
+libodbcmini_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) \
-L@msql_libraries@ -lmsql -module
diff -up unixODBC-2.3.3/Drivers/nn/Makefile.am.soname unixODBC-2.3.3/Drivers/nn/Makefile.am
--- unixODBC-2.3.3/Drivers/nn/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/nn/Makefile.am 2015-08-25 12:27:47.007775386 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libnn.la
AM_CPPFLAGS = -I@top_srcdir@/include -I.
-libnn_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libnn_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
EXTRA_DIST = \
nnconfig.h \
diff -up unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am.soname unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am
--- unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/Postgre7.1/Makefile.am 2015-08-25 12:27:47.009775396 +0200
@@ -3,7 +3,7 @@ lib_LTLIBRARIES = libodbcpsql.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
libodbcpsql_la_LDFLAGS = \
- -version-info 2:0:0 \
+ -version-info $(LIB_VERSION) \
-no-undefined \
$(LIBSOCKET) $(LIBNSL) \
-export-dynamic \
diff -up unixODBC-2.3.3/Drivers/template/Makefile.am.soname unixODBC-2.3.3/Drivers/template/Makefile.am
--- unixODBC-2.3.3/Drivers/template/Makefile.am.soname 2014-05-05 10:27:13.000000000 +0200
+++ unixODBC-2.3.3/Drivers/template/Makefile.am 2015-08-25 12:27:47.012775410 +0200
--- unixODBC-2.3.11/Drivers/template/Makefile.am 2022-05-02 16:52:53.000000000 +0200
+++ unixODBC-2.3.11/Drivers/template/Makefile.am.patched 2022-05-19 10:56:27.116060673 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libtemplate.la
AM_CPPFLAGS = -I@top_srcdir@/include -I. $(LTDLINCL)
@ -48,159 +168,14 @@ diff -up unixODBC-2.3.3/Drivers/template/Makefile.am.soname unixODBC-2.3.3/Drive
EXTRA_DIST = \
driver.h \
diff -up unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am.soname unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am
--- unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/drvcfg1/Makefile.am 2015-08-25 12:27:47.014775420 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg1S.la
--- unixODBC-2.3.11/Drivers/nn/Makefile.am 2018-01-02 11:48:19.000000000 +0100
+++ unixODBC-2.3.11/Drivers/nn/Makefile.am.patched 2022-05-19 10:56:27.118060691 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libnn.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
AM_CPPFLAGS = -I@top_srcdir@/include -I.
-libodbcdrvcfg1S_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcdrvcfg1S_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
-libnn_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libnn_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcdrvcfg1S_la_SOURCES = drvcfg1.c
diff -up unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am.soname unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am
--- unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/drvcfg2/Makefile.am 2015-08-25 12:27:47.016775430 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcdrvcfg2S.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcdrvcfg2S_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcdrvcfg2S_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcdrvcfg2S_la_SOURCES = drvcfg2.c
diff -up unixODBC-2.3.3/DRVConfig/esoob/Makefile.am.soname unixODBC-2.3.3/DRVConfig/esoob/Makefile.am
--- unixODBC-2.3.3/DRVConfig/esoob/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/esoob/Makefile.am 2015-08-25 12:27:47.017775434 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libesoobS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libesoobS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libesoobS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libesoobS_la_SOURCES = esoobS.c
diff -up unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am.soname unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am
--- unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/Mimer/Makefile.am 2015-08-25 12:27:47.019775444 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libmimerS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libmimerS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libmimerS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libmimerS_la_SOURCES = mimerS.c
diff -up unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/MiniSQL/Makefile.am 2015-08-25 12:27:47.020775449 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcminiS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcminiS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcminiS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcminiS_la_SOURCES = odbcminiS.c
diff -up unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/MySQL/Makefile.am 2015-08-25 12:27:47.023775464 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcmyS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcmyS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcmyS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcmyS_la_SOURCES = odbcmyS.c
diff -up unixODBC-2.3.3/DRVConfig/nn/Makefile.am.soname unixODBC-2.3.3/DRVConfig/nn/Makefile.am
--- unixODBC-2.3.3/DRVConfig/nn/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/nn/Makefile.am 2015-08-25 12:27:47.024775469 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcnnS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcnnS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcnnS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcnnS_la_SOURCES = drvcfg.c
diff -up unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am.soname unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am
--- unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/oplodbc/Makefile.am 2015-08-25 12:27:47.026775478 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboplodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboplodbcS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+liboplodbcS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
liboplodbcS_la_SOURCES = oplodbc.c
diff -up unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am.soname unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am
--- unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/Oracle/Makefile.am 2015-08-25 12:27:47.027775483 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = liboraodbcS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-liboraodbcS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+liboraodbcS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
liboraodbcS_la_SOURCES = oraodbcS.c
diff -up unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am.soname unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am
--- unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/PostgreSQL/Makefile.am 2015-08-25 12:27:47.029775493 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbcpsqlS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbcpsqlS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbcpsqlS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbcpsqlS_la_SOURCES = odbcpsqlS.c
diff -up unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am.soname unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am
--- unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/sapdb/Makefile.am 2015-08-25 12:27:47.031775503 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libsapdbS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libsapdbS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libsapdbS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libsapdbS_la_SOURCES = sapdb.c
diff -up unixODBC-2.3.3/DRVConfig/tds/Makefile.am.soname unixODBC-2.3.3/DRVConfig/tds/Makefile.am
--- unixODBC-2.3.3/DRVConfig/tds/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/tds/Makefile.am 2015-08-25 12:27:47.032775507 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libtdsS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libtdsS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libtdsS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libtdsS_la_SOURCES = tdsS.c
diff -up unixODBC-2.3.3/DRVConfig/txt/Makefile.am.soname unixODBC-2.3.3/DRVConfig/txt/Makefile.am
--- unixODBC-2.3.3/DRVConfig/txt/Makefile.am.soname 2014-05-05 10:26:41.000000000 +0200
+++ unixODBC-2.3.3/DRVConfig/txt/Makefile.am 2015-08-25 12:27:47.034775517 +0200
@@ -2,7 +2,7 @@ lib_LTLIBRARIES = libodbctxtS.la
AM_CPPFLAGS = -I@top_srcdir@/include $(LTDLINCL)
-libodbctxtS_la_LDFLAGS = -no-undefined -version-info 1:0:0 -module
+libodbctxtS_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION) -module
libodbctxtS_la_SOURCES = drvcfg.c
EXTRA_DIST = \
nnconfig.h \

View file

@ -1 +1 @@
SHA512 (unixODBC-2.3.7.tar.gz) = a87afeaaa0476f4ae6345c7021b3af52718944e599abb595c864d9126744a21341889802512a1de3ebaf86ac89e7f8b1bbd7f8f5285e8f4bccf928bd1585ff70
SHA512 (unixODBC-2.3.14.tar.gz) = 922caa7ed2ad97a194a2b66c9fb69bdebe62d1b74a729d726c79835b9fc13be60c7650c86031062a25b07021ff2c7a936ef9c366d4a148d290932bab453c864c

View file

@ -1,29 +1,54 @@
%bcond gui_related_parts 1
Name: unixODBC
Version: 2.3.14
Release: %{autorelease}
# See README: Programs are GPL, libraries are LGPL
# News Server library (Drivers/nn/yyparse.c) is GPLv3+
# (but that one is not compiled nor shipped)
License: GPL-2.0-or-later AND LGPL-2.1-or-later
Summary: A complete ODBC driver manager for Linux
Name: unixODBC
Version: 2.3.7
Release: 6%{?dist}
URL: http://www.unixODBC.org/
# Programs are GPL, libraries are LGPL, except News Server library is GPL.
License: GPLv2+ and LGPLv2+
URL: http://www.unixODBC.org/
Source: http://www.unixODBC.org/%{name}-%{version}.tar.gz
Source1: odbcinst.ini
Source5: README.dist
Source: http://www.unixODBC.org/%{name}-%{version}.tar.gz
Source2: odbcinst-generate
Source3: odbcinst-generate.1
Patch8: so-version-bump.patch
Patch9: keep-typedefs.patch
Patch8: so-version-bump.patch
Conflicts: iodbc
BuildRequires: automake autoconf libtool libtool-ltdl-devel bison flex
BuildRequires: make automake autoconf libtool libtool-ltdl-devel bison flex
BuildRequires: readline-devel
BuildRequires: multilib-rpm-config
%{!?rhel:BuildRequires: multilib-rpm-config}
# ODBC driver packages
Suggests: freetds
Suggests: mariadb-connector-odbc
Suggests: mdbtools-odbc
Suggests: mysql-connector-odbc
Suggests: postgresql-odbc
Suggests: sqliteodbc
# GUI management tool
Suggests: unixODBC-gui-qt
Requires: odbcinst-generate = %{version}-%{release}
%description
Install unixODBC if you want to access databases through ODBC.
You will also need the mariadb-connector-odbc package if you want to access
a MySQL or MariaDB database, and/or the postgresql-odbc package for PostgreSQL.
%package -n odbcinst-generate
Summary: Drop-in snippet generator for ODBC driver registration
BuildArch: noarch
Requires(post): coreutils
%description -n odbcinst-generate
Assembles /etc/odbcinst.ini from per-driver drop-in snippets shipped by
ODBC driver packages. Used by both unixODBC and iODBC driver managers.
%package devel
Summary: Development files for programs which will use the unixODBC library
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -33,46 +58,52 @@ The unixODBC package can be used to access databases through ODBC
drivers. If you want to develop programs that will access data through
ODBC, you need to install this package.
%prep
%setup -q
%patch8 -p1 -b .soname-bump
%patch9 -p1
chmod 0644 Drivers/MiniSQL/*.c
chmod 0644 Drivers/nn/*.c
chmod 0644 Drivers/template/*.c
chmod 0644 doc/ProgrammerManual/Tutorial/*.html
chmod 0644 doc/lst/*
chmod 0644 include/odbcinst.h
%patch -P8 -p1 -b .soname-bump
autoreconf -vfi
%build
# unixODBC 2.2.14 is not aliasing-safe
CFLAGS="%{optflags} -fno-strict-aliasing"
CXXFLAGS="$CFLAGS"
export CFLAGS CXXFLAGS
%configure --with-gnu-ld=yes --enable-threads=yes \
--enable-drivers=yes --enable-driverc=yes
%configure \
--with-gnu-ld=yes \
--enable-threads=yes \
--enable-fastvalidate \
--enable-drivers=no \
--with-odbc-driver-path=%{_libdir}/odbc \
%if %{with gui_related_parts}
--enable-driver-config=yes
%else
--enable-driver-config=no
%endif
# Get rid of the rpaths
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make all
%make_build
%install
make DESTDIR=$RPM_BUILD_ROOT install
install -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
%multilib_fix_c_header --file %{_includedir}/unixodbc_conf.h
%make_install
# add some explanatory documentation
cp %{SOURCE5} README.dist
# Drop-in directory infrastructure for ODBC driver registration
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/odbc/odbcinst.d
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/odbc/odbcinst.d
install -m755 %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/odbcinst-generate
install -m644 -D %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man1/odbcinst-generate.1
# remove obsolete Postgres drivers from the package (but not the setup code)
rm -f $RPM_BUILD_ROOT%{_libdir}/libodbcpsql.so*
# Create %ghost file so RPM tracks ownership of the generated config
touch $RPM_BUILD_ROOT%{_sysconfdir}/odbcinst.ini
%if %{undefined rhel}
%multilib_fix_c_header --file %{_includedir}/unixODBC/unixodbc_conf.h
%multilib_fix_c_header --file %{_includedir}/unixodbc.h
%endif
# Directory for ODBC connector/driver plugins
mkdir -p $RPM_BUILD_ROOT%{_libdir}/odbc
# copy text driver documentation into main doc directory
# currently disabled because upstream no longer includes text driver
@ -94,18 +125,16 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/libtool
find $RPM_BUILD_ROOT%{_libdir} -name "*.so.*" | sed "s|^$RPM_BUILD_ROOT||" > base-so-list
find $RPM_BUILD_ROOT%{_libdir} -name "*.so" | sed "s|^$RPM_BUILD_ROOT||" > devel-so-list
# move these to main package, they're often dlopened...
for lib in libodbc.so libodbcinst.so libodbcpsqlS.so libodbcmyS.so libtdsS.so
do
echo "%{_libdir}/$lib" >> base-so-list
grep -v "/$lib$" devel-so-list > devel-so-list.x
mv -f devel-so-list.x devel-so-list
done
%files -f base-so-list
%doc README COPYING AUTHORS ChangeLog NEWS doc
%doc README.dist
%config(noreplace) %{_sysconfdir}/odbc*
%license COPYING
%doc README AUTHORS ChangeLog
%if %{with gui_related_parts}
%doc doc
%endif
%config(noreplace) %{_sysconfdir}/odbc.ini
%{_bindir}/odbcinst
%{_bindir}/isql
%{_bindir}/dltest
@ -113,503 +142,107 @@ done
%{_bindir}/odbc_config
%{_bindir}/slencheck
%{_mandir}/man*/*
%exclude %{_mandir}/man1/odbcinst-generate.1*
# ODBC connector/driver plugins are placed here
%dir %{_libdir}/odbc
# Save user-modified odbcinst.ini before the %ghost transition removes it.
# RPM does not create .rpmsave when a file changes from %config to %ghost.
# Only run on first upgrade: skip if the drop-in directory already exists.
#
# To avoid nagging users who never customized the file, we parse it for
# INI section headers: if every [Section] matches a driver shipped by Fedora,
# the file is stock and needs no backup. Any unknown section means the user
# added a custom driver, so we preserve the file as .rpmsave.
%pretrans -p <lua>
local dropin = "/usr/lib/odbc/odbcinst.d"
if posix.stat(dropin) then
return
end
local path = "/etc/odbcinst.ini"
if not posix.stat(path) then
return
end
-- Drivers historically shipped by Fedora / RHEL in odbcinst.ini
local known = {
PostgreSQL = true,
MySQL = true,
["MySQL-5"] = true,
FreeTDS = true,
MariaDB = true,
MDBTools = true,
SQLITE = true,
SQLITE3 = true,
}
local custom = false
local f = io.open(path, "r")
if f then
for line in f:lines() do
-- Strip leading whitespace without Lua patterns (the "%%"
-- escape needed for Lua character classes conflicts with RPM
-- macro syntax in spec files, so we avoid patterns entirely).
local s = line
while s:sub(1,1) == " " or s:sub(1,1) == "\t" do
s = s:sub(2)
end
if s:sub(1,1) == "[" then
local close = s:find("]", 2, true)
if close and close > 2 then
local sect = s:sub(2, close - 1)
if not known[sect] then
custom = true
break
end
end
end
end
f:close()
end
-- Only save the file when it contains user-added driver sections
if custom then
local save = path .. ".rpmsave"
if not posix.stat(save) then
os.rename(path, save)
end
end
%post
if [ -f %{_sysconfdir}/odbcinst.ini.rpmsave ]; then
echo "NOTE: Your previous %{_sysconfdir}/odbcinst.ini was saved as" >&2
echo "%{_sysconfdir}/odbcinst.ini.rpmsave" >&2
echo "Driver registration is now handled by drop-in snippets." >&2
echo "To preserve custom drivers, copy their [sections] into files" >&2
echo "under %{_sysconfdir}/odbc/odbcinst.d/ and run:" >&2
echo " odbcinst-generate" >&2
fi
%files -n odbcinst-generate
%license exe/COPYING
%{_bindir}/odbcinst-generate
%{_mandir}/man1/odbcinst-generate.1*
%ghost %{_sysconfdir}/odbcinst.ini
%dir %{_prefix}/lib/odbc
%dir %{_prefix}/lib/odbc/odbcinst.d
%dir %{_sysconfdir}/odbc
%dir %{_sysconfdir}/odbc/odbcinst.d
%post -n odbcinst-generate
odbcinst-generate || :
# Regenerate odbcinst.ini when driver packages install drop-in snippets
%transfiletriggerin -n odbcinst-generate -- %{_prefix}/lib/odbc/odbcinst.d %{_sysconfdir}/odbc/odbcinst.d
odbcinst-generate || :
# Regenerate after driver packages are removed
%transfiletriggerpostun -n odbcinst-generate -- %{_prefix}/lib/odbc/odbcinst.d %{_sysconfdir}/odbc/odbcinst.d
odbcinst-generate || :
%files devel -f devel-so-list
%{_includedir}/*
%_libdir/pkgconfig/*.pc
%{_libdir}/pkgconfig/*.pc
%ldconfig_scriptlets
%changelog
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.3.7-4
- Rebuild for readline 8.0
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Nov 30 2018 Michal Schorm <mschorm@redhat.com> - 2.3.7-2
- Bump for rebuild to ship updated configuration
* Sat Aug 11 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.7-1
- update to version 2.3.7
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Apr 27 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.6-1
- update to version 2.3.6
* Wed Mar 07 2018 Honza Horak <hhorak@redhat.com> - 2.3.5-3
- Bump for a rebuild
* Tue Feb 20 2018 Pavel Raiskup <praiskup@redhat.com> - 2.3.5-2
- cleanup autotool hacks
* Mon Feb 19 2018 Jan Staněk <jstanek@redhat.com> - 2.3.5-1
- Update to version 2.3.5
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jan 03 2018 Honza Horak <hhorak@redhat.com> - 2.3.4-9
- Include mariadb-connector-odbc driver spec in the odbcinst.ini
* Wed Aug 30 2017 Tomas Repik <trepik@redhat.com> - 2.3.4-8
- move libtdsS.so to the main package and add tds config to odbcinst.ini
- rhbz#1448890
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 2.3.4-4
- Rebuild for readline 7.x
* Wed Jun 22 2016 Pavel Raiskup <praiskup@redhat.com> - 2.3.4-3
- delegate multilib hacks to multilib-rpm-config package
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Sep 01 2015 Jan Stanek <jstanek@redhat.com> - 2.3.4-1
- Update to version 2.3.4
* Tue Aug 25 2015 Jan Stanek <jstanek@redhat.com> - 2.3.3-1
- Update to version 2.3.3
- Removed patches and sources included upstream
- Recreated so-version-bump.patch
* Wed Aug 12 2015 Jan Stanek <jstanek@redhat.com> - 2.3.2-8
- Backported changes necessary for building with new autotools version.
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Feb 18 2014 Jan Stanek <jstanek@redhat.com> - 2.3.2-4
- Added manual pages for iusql, dltest, odbc_config
* Fri Dec 06 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-3
- Renamed README.fedora to README.dist
* Thu Oct 24 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-2
- Add man page describing enviromental variables (#991018)
* Thu Oct 10 2013 Jan Stanek <jstanek@redhat.com> - 2.3.2-1
- Update to 2.3.2 version
- Removed extra man-pages and patch already shipped by upstream
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Jul 4 2013 Honza Horak <hhorak@redhat.com> 2.3.1-6
- Spec file clean-up
- Provide man pages created by Jan Stanek
* Thu Jul 4 2013 Honza Horak <hhorak@redhat.com> 2.3.1-5
- Fix Coverity patch
Resolves: #981060
* Tue Mar 19 2013 Tom Lane <tgl@redhat.com> 2.3.1-4
- Fix assorted small bugs found by Coverity
Related: #760877
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jan 10 2012 Tom Lane <tgl@redhat.com> 2.3.1-1
- Update to version 2.3.1. The main externally-visible change is that the
GUI programs are not part of the unixODBC tarball anymore, so they are no
longer in this package, and the unixODBC-kde sub-RPM has disappeared.
There is a separate package unixODBC-gui-qt that now provides those programs.
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Aug 31 2010 Tom Lane <tgl@redhat.com> 2.2.14-12
- Fix isql crash at EOF with -b option
Resolves: #628909
* Mon May 3 2010 Tom Lane <tgl@redhat.com> 2.2.14-11
- Re-add accidentally-removed desktop icon for ODBCConfig
Related: #587933
* Sat Mar 13 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.14-10
- BR qt-assistant-adp-devel
* Sat Dec 19 2009 Tom Lane <tgl@redhat.com> 2.2.14-9
- Fix bug preventing drivers from being selected in ODBCConfig
Resolves: #544852
* Wed Nov 25 2009 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.14-8
- Rebuild for Qt 4.6.0 RC1 in F13 (was built against Beta 1 with unstable ABI)
* Thu Oct 15 2009 Tom Lane <tgl@redhat.com> 2.2.14-7
- Clean up bogosity in multilib stub header support: ia64 should not be
listed (it's not multilib), sparcv9 isn't a possible uname -i output
* Fri Aug 21 2009 Tom Lane <tgl@redhat.com> 2.2.14-6
- Switch to building against qt4, not qt3. This means the DataManager,
DataManagerII, and odbctest applications are gone.
Resolves: #514064
- Use Driver64/Setup64 to eliminate need for hand-adjustment of odbcinst.ini
Resolves: #514688
- Fix misdeclaration of SQLBIGINT and SQLUBIGINT in generated header files
Resolves: #518623
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Jun 9 2009 Peter Lemenkov <lemenkov@gmail.com> - 2.2.14-4
- Properly install *.desktop files
- No need to ship INSTALL in docs
- Use macros instead of hardcoded /usr/share and /usr/include
- fixed permissions on some doc- and src-files
- Almost all rpmlint messages are gone now
* Sat Jun 06 2009 Dennis Gilmore <dennis@ausil.us> - 2.2.14-3
- add sparc support to the multilib includes header
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Fri Feb 20 2009 Tom Lane <tgl@redhat.com> 2.2.14-1
- Update to unixODBC 2.2.14. Note this involves an ABI break and a consequent
soname version bump, because upstream fixed some mistakes in the widths of
some API datatypes for 64-bit platforms. Also, the formerly embedded
mysql, postgresql, and text drivers have been removed. (For mysql and
postgresql, use the separate mysql-connector-odbc and postgresql-odbc
packages, which are far more up to date. The text driver is not currently
shipped by upstream at all, but might get revived as a separate SRPM later.)
- Stop shipping .a library files, per distro policy.
- Fixes for libtool 2.2.
* Mon Jul 28 2008 Tom Lane <tgl@redhat.com> 2.2.12-9
- Fix build failure caused by new default patch fuzz = 0 policy in rawhide.
* Fri Jun 13 2008 Tom Lane <tgl@redhat.com> 2.2.12-8
- Install icons in /usr/share/pixmaps, not /usr/share/icons as this package
has historically done; the former is considered correct.
* Fri Apr 4 2008 Tom Lane <tgl@redhat.com> 2.2.12-7
- Must BuildRequire qt3 now that Fedora has renamed qt4 to qt
Resolves: #440798
* Mon Feb 11 2008 Tom Lane <tgl@redhat.com> 2.2.12-6
- Move libodbcinst.so symlink into main package, since it's often dlopen'd
Related: #204882
- Clean up specfile's ugly coding for making base-vs-devel decisions
* Sun Dec 30 2007 Tom Lane <tgl@redhat.com> 2.2.12-5
- Add missing BuildRequires for flex.
Resolves: #427063
* Thu Aug 2 2007 Tom Lane <tgl@redhat.com> 2.2.12-4
- Update License tag to match code.
* Fri Apr 20 2007 Tom Lane <tgl@redhat.com> 2.2.12-3
- Make configure find correct Qt libraries when building on a multilib machine
* Mon Apr 16 2007 Tom Lane <tgl@redhat.com> 2.2.12-2
- Drop BuildRequires for kdelibs-devel
Resolves: #152717
- Clean up a few rpmlint complaints
* Wed Dec 6 2006 Tom Lane <tgl@redhat.com> 2.2.12-1
- Update to unixODBC 2.2.12.
- Add missing BuildPrereq for bison.
Resolves: #190427
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-7.1
- rebuild
* Mon Mar 27 2006 Tom Lane <tgl@redhat.com> 2.2.11-7
- Fix minor problems in desktop files (bug #185764)
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-6.2.1
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 2.2.11-6.2
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Mon Nov 21 2005 Tom Lane <tgl@redhat.com> 2.2.11-6
- Patch NO-vs-no discrepancy between aclocal/acinclude and recent autoconf
versions (not sure if this has been broken for a long time, or was just
exposed by modular X changeover).
- Apparently need to require libXt-devel too for modular X.
* Mon Nov 7 2005 Tom Lane <tgl@redhat.com> 2.2.11-5
- Adjust BuildPrereq for modular X.
* Sun Oct 16 2005 Florian La Roche <laroche@redhat.com> 2.2.11-4
- link against dependent libs
- fix some bugs to resolve unknown symbols ;-(
* Thu Sep 29 2005 Tom Lane <tgl@redhat.com> 2.2.11-3
- Force update of yac.h because the copy in the distributed tarball does not
match bison 2.0's numbering of symbols (bz #162676)
- Include documentation of text-file driver
- Use private libltdl so we can omit RTLD_GLOBAL from dlopen flags (bz #161399)
* Sat Sep 24 2005 Tom Lane <tgl@redhat.com> 2.2.11-2
- Remove Makefiles accidentally included in docs installation (bz #168819)
- Updates to keep newer libtool code from installing itself as part of package
* Fri Apr 8 2005 Tom Lane <tgl@redhat.com> 2.2.11-1
- Update to unixODBC 2.2.11
* Mon Mar 7 2005 Tom Lane <tgl@redhat.com> 2.2.10-3
- Rebuild with gcc4.
* Wed Jan 12 2005 Tim Waugh <twaugh@redhat.com> 2.2.10-2
- Rebuilt for new readline.
* Thu Oct 28 2004 Tom Lane <tgl@redhat.com> 2.2.10-1
- Update to unixODBC 2.2.10
* Wed Sep 22 2004 Tom Lane <tgl@redhat.com> 2.2.9-1
- Update to unixODBC 2.2.9
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Sat May 8 2004 Tom Lane <tgl@redhat.com> 2.2.8-5
- Backpatch fix for double-free error from upstream devel sources.
- rebuilt
* Wed May 5 2004 Tom Lane <tgl@redhat.com> 2.2.8-4
- Add dependency to ensure kde subpackage stays in sync with main
(needed because we moved odbctest from one pkg to the other,
cf bug #122478)
- rebuilt
* Wed Mar 10 2004 Tom Lane <tgl@redhat.com> 2.2.8-3
- Use installed libltdl
- rebuilt for Fedora Core 2
* Tue Mar 9 2004 Tom Lane <tgl@redhat.com> 2.2.8-2
- Rename lo_xxx() to odbc_lo_xxx() (bug #117211) (temporary until 2.2.9)
- rebuilt
* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Mon Mar 1 2004 Tom Lane <tgl@redhat.com>
- Update to 2.2.8
- rebuilt
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Thu Dec 4 2003 Joe Orton <jorton@redhat.com> 2.2.5-10
- rebuild to restore sqltypes.h after #111195
* Thu Oct 16 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-9
- Add XFree86-devel to the list of BuildPrereq. Did not bump
release as there is no need to rebuild.
* Thu Oct 16 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-9
- Add comments to the /etc/odbcinst.ini file regarding the proper
setup for MySQL and the origin of each library needed.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-8
- Move libodbcmyS.so to the main package as well. It is used the
same way as libodbcpsqlS.so.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-7
- Bumped the version so it rebuilds.
* Tue Oct 14 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-4
- Revert previous change and special case libodbcpsql.so and
libodbcpsqlS.so instead. Here is the explanation (from Elliot
Lee):
".so files are only used at link time for normal dynamic libraries.
The libraries referred to here are being used as dynamically loaded
modules, so I guess moving those particular .so files back to the
main package would make sense, but the other .so files should stay
in the devel subpackage."
* Fri Oct 10 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-3
- Moved all the shared library symlinks to the main package.
They were deliberatedly being added to the devel package for
unknown reasons but this was forcing users to install the
devel package always.
- No need to special-case libodbc.so anymore
* Fri Sep 05 2003 Elliot Lee <sopwith@redhat.com> 2.2.5-2
- Run auto* so it rebuilds.
* Mon Jul 07 2003 Fernando Nasser <fnasser@redhat.com> 2.2.5-1
- Moved odbctest to the kde package to remove require on Qt stuff
from the main package.
- Removed stray "\" from doc/Makefile.am
- Applied libtool fix (provided by Alex Oliva) so that it build
with cross-compilers (which are used by 64 bit systems)
- Updated sources to the 2.2.5 community release
- Changed the included libtool to the 1.5-3 one so that
it properly link the libraries with the newly generated ones
and not with the ones installed on the build system (or give
an error if an old version is not installed (# 91110)
- Added new files for executable DataManagerII and icons LinuxODBC.xpm
and odbc.xpm
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
* Thu Jan 9 2003 Bill Nottingham <notting@redhat.com> 2.2.3-5
- debloat
* Tue Dec 17 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-4
- Run libtoolize etc.
* Thu Dec 12 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-3
- Rebuild to fix filelist errors...?
* Fri Nov 29 2002 Tim Powers <timp@redhat.com> 2.2.3-2
- remove unpackaged files from the buildroot
* Tue Nov 19 2002 Elliot Lee <sopwith@redhat.com> 2.2.3-1
- Rebuild, update to 2.2.3
* Mon Aug 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.2-3
- Move libodbc.so to the main package, so programs dlopening
it don't break (#72653)
* Sat Aug 10 2002 Elliot Lee <sopwith@redhat.com>
- rebuilt with gcc-3.2 (we hope)
* Mon Jul 22 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.2-1
- 2.2.2
- desktop file changes (# 69371)
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Sun May 26 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Mon May 20 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.1-1
- 2.2.1
- Reenable other archs, as this should now build on 64 bit archs
* Sun May 19 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- add at least mainframe; should this really be a i386-only rpm?
* Wed Apr 17 2002 Bernhard Rosenkraenzer <bero@redhat.com> 2.2.0-5
- rebuild
* Fri Apr 5 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-4
- Avoid having files in more than one package (#62755)
* Tue Mar 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-3
- Don't include kde plugin .so as a devel symlink (#61039)
* Fri Mar 8 2002 Bernhard Rosenkraenzer <bero@redhat.com> 2.2.0-2
- Rebuild with KDE 3.x
* Tue Feb 26 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.2.0-1
- Just build on i386 now, there are 64 bit oddities
- 2.2.0
* Fri Jan 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.1.1-2
- move libodbcinstQ* to the kde subpackage
* Fri Jan 11 2002 Trond Eivind Glomsrd <teg@redhat.com> 2.1.1-1
- 2.1.1
- minor cleanups
* Fri Dec 14 2001 Trond Eivind Glomsrd <teg@redhat.com> 2.0.7-5
- Rebuild
* Wed Sep 12 2001 Tim Powers <timp@redhat.com>
- rebuild with new gcc and binutils
* Sun Jun 24 2001 Than Ngo <than@redhat.com>
- rebuild against qt-2.3.1, kde-2.1.x
* Fri Jun 15 2001 Trond Eivind Glomsrd <teg@redhat.com>
- Better default odbcinst.ini
- Minor cleanups
* Wed Jun 6 2001 Trond Eivind Glomsrd <teg@redhat.com>
- 2.0.7
* Wed Apr 25 2001 Trond Eivind Glomsrd <teg@redhat.com>
- Fix for isql segfault on EOF/ctrl-d exit
* Fri Apr 20 2001 Trond Eivind Glomsrd <teg@redhat.com>
- 2.0.6
- add patch for 64 bit archs (dword shouldn't be "long int")
* Wed Feb 28 2001 Trond Eivind Glomsrd <teg@redhat.com>
- rebuild
* Tue Nov 28 2000 Trond Eivind Glomsrd <teg@redhat.com>
- 1.8.13
* Tue Oct 10 2000 Trond Eivind Glomsrd <teg@redhat.com>
- enable GUI now that we have KDE compiled with the standard
compiler
- move the applnk entries to the KDE package
* Thu Aug 24 2000 Nalin Dahyabhai <nalin@redhat.com>
- add the missing shared libs to the non-devel package
* Wed Aug 23 2000 Preston Brown <pbrown@redhat.com>
- 1.8.12 fixes problems with the postgresql driver
* Mon Jul 31 2000 Trond Eivind Glomsrd <teg@redhat.com>
- disable KDE subpackage to avoid the mess that is C++ binary
compatibility
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild
* Fri Jun 30 2000 Florian La Roche <laroche@redhat.com>
- improved QTDIR detection
* Wed Jun 28 2000 Trond Eivind Glomsrd <teg@redhat.com>
- 1.8.10
- use %%{_tmppath}
- update URL
- including two missing libraries
* Tue Jun 13 2000 Preston Brown <pbrown@redhat.com>
- 1.8.9
* Fri Jun 09 2000 Preston Brown <pbrown@redhat.com>
- adopted for Winston, changed to Red Hat packaging standards
* Tue Apr 18 2000 Murray Todd Williams <murray@codingapes.com>
- added a unixODBC-devel RPM to the group, added KDE links and icons to system
- all of which came from recommendations from Fredrick Meunier
- <Fredrick.Meunier@computershare.com.au>
* Mon Apr 17 2000 Murray Todd Williams <murray@codingapes.com>
- unixODBC-1.8.7
- moved install to $RPM_BUILD_ROOT so it didn't overrun existing files.
%autochangelog