

Using the iODBC GIT Tree


  Copyright (C) 1996-2021 OpenLink Software <iodbc@openlinksw.com>


Introduction

This document describes how to checkout a copy of the git tree for development
purposes. It also lists the packages that need to be installed prior to
generating the necessary scripts and Makefiles to build the project.
Git access is only needed for developers who want to actively track progress of
the iODBC source code and contribute bugfixes or enhancements to the project.
It requires basic knowledge of git itself, the general layout of open source
and GNU projects, the use of autoconf and automake etc, which is beyond the
scope of this document.
If you have any questions, please email us at iodbc@openlinksw.com.

Git Archive Server Access

For main development OpenLink Software will publish the iODBC tree to GitHub
and encourage everyone who is interested in tracking the project, to make an
account there.
Users who mainly just want to track the code can use the following command to
get a copy of the tree:

  $ git clone git://github.com/openlink/iODBC

At this point you can create your own work branch based on any of the branches
available, create bugfixes and commit them to your own branch and then use the
'git format-patch' command to generate the appropriate diffs to send to
iodbc@openlinksw.com
Developers are encouraged to fork the project using GitHub, create their own
branches to make enhancements/bugfixes and then send pull requests using the
excellent GitHub interface for the OpenLink team to examine and incorporate the
fixes into the master tree for an upcoming release.
Github has excellent_documentation on how to fork a project, send pull
requests, track the project etc.
OpenLink Software will continue to use sourceforge.net for the source tarball
releases and certain binary releases, and for completeness will also provides
read-only Git Archive access.
For more information check the iODBC_SourceForge_pages

Package Dependencies

To generate the configure script and all other build files necessary, please
make sure the following packages and recommended versions are installed on your
system.

  | Package  | Version  | From                               |
  | -------- | -------- | ---------------------------------- |
  | autoconf | 2.59     | ftp://ftp.gnu.org/pub/gnu/autoconf |
  | automake | 1.9.6    | ftp://ftp.gnu.org/pub/gnu/automake |
  | libtool  | 1.5.22   | ftp://ftp.gnu.org/pub/gnu/libtool  |
  | make     | 3.79.1   | http://www.gnu.org/software/make   |
  | gtk+     | 1.2.10   | ftp://ftp.gtk.org/pub/gtk/v1.2     |

and any GNU packages required by these.
The autogen.sh and configure scripts check for the presence and right version
of some of the required components.
The above version are the minimum recommended versions of these packages. Older
version of these packages can sometimes be used, but could cause build
problems.
To check the version number of the tools installed on your system, use one of
the following commands:

  $ autoconf --version
  $ automake --version
  $ libtoolize --version
  $ make --version
  $ gtk-config --version


Generate build files

To generate the configure script and all related build files, use one of the
following commands:

  $ autoreconf --install

or use the supplied script in your checkout directory:

  $ ./autogen.sh

If the above commands succeed without any error messages, please use the
following command to check out all the options you can use:

  $ ./configure --help

Certain build targets are only enabled when the --enable-maintainer-mode flag
is added to configure.
Please read the files INSTALL and README in this directory for further
information on how to configure the package and install it on your system.
