Change over to GNU build system - part 1
git-svn-id: https://svn.code.sf.net/p/flaim/code/trunk@1056 0109f412-320b-0410-ab79-c3e0c5ffbbe6
This commit is contained in:
+11
@@ -0,0 +1,11 @@
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
SUBDIRS = ftk flaim sql xflaim
|
||||
|
||||
rpms srcrpm:
|
||||
for dir in $(SUBDIRS); do \
|
||||
$(MAKE) -C $$dir $@; \
|
||||
done
|
||||
|
||||
.PHONY: rpms srcrpm
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([flaim-projects], [1.0])
|
||||
AC_CANONICAL_SYSTEM
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([dlopen])
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SUBDIRS([ftk flaim sql xflaim])
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
AC_OUTPUT
|
||||
|
||||
+2
-3
@@ -1,4 +1,3 @@
|
||||
Daniel Sanders (dsanders@novell.com)
|
||||
Andrew Hodgkinson (ahodgkinson@novell.com)
|
||||
Andrew Hodgkinson <ahodgkinson@novell.com>
|
||||
Daniel Sanders <dsanders@novell.com>
|
||||
|
||||
... and many others ...
|
||||
|
||||
+110
-15
@@ -1,8 +1,59 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
FLAIM database engine
|
||||
Copyright (c) 1991-2008 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
svn2cl.xsl
|
||||
Copyright (C) 2004, 2005, 2006 Arthur de Jong.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. The name of the author may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
@@ -10,7 +61,7 @@
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
@@ -55,7 +106,7 @@ modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
@@ -111,8 +162,8 @@ modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
@@ -158,7 +209,7 @@ Library.
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
@@ -216,7 +267,7 @@ instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
@@ -267,7 +318,7 @@ Library will still fall under Section 6.)
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
@@ -329,7 +380,7 @@ restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
@@ -370,7 +421,7 @@ subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
@@ -422,7 +473,7 @@ conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
@@ -432,7 +483,7 @@ decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
@@ -455,5 +506,49 @@ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
FLAIM database engine
|
||||
Copyright (c) 1991-2007 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; version 2.1
|
||||
of the License.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
On a Debian system, a copy of the GNU LGPL is installed in
|
||||
/usr/share/common-licenses/LGPL
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
svn2cl.xsl
|
||||
Copyright (C) 2004, 2005, 2006 Arthur de Jong.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. The name of the author may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+189
@@ -0,0 +1,189 @@
|
||||
2008-06-25 John Calcote <john.calcote@gmail.com>
|
||||
|
||||
* Added GNU Autotools build system.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
OLD CHANGELOG INFORMATION APPENDED BELOW THIS POINT
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Thu Mar 29 08:45:10 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Fixed problem of accessing FlmRecord object before it was constructed.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 09:08:00 CEST 2007 - aj@suse.de
|
||||
|
||||
- Add BuildRequires for ncurses-devel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 10 15:46:50 CET 2007 - aj@suse.de
|
||||
|
||||
- Add defattr.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 8 14:20:19 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Changes to support Ubuntu packages, including 64-bit.
|
||||
- Needed to lock the record cache mutex in FlmRecord::Release just before deleting the object to prevent a race condition.
|
||||
- Changed license to LGPL.
|
||||
- Updated copyright.
|
||||
- Added pragmas for windows to remove compiler warnings for VC6 compiler.
|
||||
- Fixed keyword substitution tokens.
|
||||
- Added FlmReadFully() and enhanced the base64 decoder.
|
||||
- Removed commands in makefile that was outputting provides to the spec file.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 2 00:51:49 CET 2007 - ro@suse.de
|
||||
|
||||
- remove self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 16 16:15:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed .exe files from package.
|
||||
- Removed /zp1 compiler switch and added pragmas to do one-byte packing on structures.
|
||||
- Getting rid of references to gv_FlmSysData.
|
||||
- Needed to add a (FLMUINT) cast to a FLMBOOL before it can be cast as a void *.
|
||||
- Fixed mis-typed member of OPT_INFO structure.
|
||||
- Fixed Linux compiler warnings.
|
||||
- Changed several places that needed to access pDbInfo->pProgress instead of just Progress.
|
||||
- Support for Ubuntu and Debian packages
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 29 21:16:21 CEST 2006 - aj@suse.de
|
||||
|
||||
- Remove explicit self-provides
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 8 13:21:13 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for 64 bit numbers.
|
||||
- Modified to use aligned buffers to improve direct I/O efficiency.
|
||||
- Modified block cache allocator to make more efficient use of memory.
|
||||
- Added option to allow disabling of direct I/O on Linux and Unix platforms.
|
||||
- Enhancements to reduce the overhead of growing and shrinking files.
|
||||
- Modified async I/O to make better reuse of available buffers when writes complete out of order.
|
||||
- Fixed some memory leaks and other minor defects.
|
||||
- Added more asserts to debug code.
|
||||
- Enhancements and improvements to the field ID table inside of FlmRecord object.
|
||||
- Updated doxygen document to be more accurate.
|
||||
- Added a gigatest utility for testing bulk loads.
|
||||
- Added more unit tests.
|
||||
- Various tweaks for better support of various platforms and compilers.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 27 14:41:47 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Needed to make some typedefs public for Solaris 8.
|
||||
- Also fixed so that flaimtk.h is copied from ftk.h when building srcdist
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 01:15:10 CEST 2006 - ro@suse.de
|
||||
|
||||
- removed buggy self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 22 16:47:31 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Modified common toolkit formatter to support colors when logging.
|
||||
- Modified to use common formatter in toolkit for logging.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 20 12:57:13 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Logger client was not being set up properly in common toolkit.
|
||||
- Fixed a Netware build issue
|
||||
- Fixed an OS X compiler warning
|
||||
- Fixed linux compiler warning
|
||||
- Needed to lock/unlock the random generator mutex when getting a random number.
|
||||
- f_printf needed to call fflush.
|
||||
- Base 64 decoder needed to return success instead of eof hit.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 19 09:00:27 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Restructured code to use new common toolkit
|
||||
- Support for Netware, including unit tests
|
||||
- Fixed various memory leaks and enabled memory tracking for debug builds.
|
||||
- Made some changes for how async I/O is supported on Solaris.
|
||||
- Fixed various compiler warnings on various platforms.
|
||||
- Added more documentation.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 1 13:30:07 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 30 11:37:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Sparc Linux and OpenSuse 10.1
|
||||
- Various Makefile changes for HP-UX, OS X, and Solaris
|
||||
- Various code cleanups to support a common toolkit
|
||||
- Got rid of timeouts for internal transactions.
|
||||
- Removed some unused methods from the FlmRecord class.
|
||||
- Fixed defect where partial blocks were being written at the end of database files
|
||||
- Fixed race condition that was causing memory to be double-freed.
|
||||
- Added better support for atomic operations on various Unix and Linux platforms.
|
||||
- Allow application to exceed hardcoded cache limits when setting a hard cache limit.
|
||||
- Changed RCODE to be an enumerated type - for easier documentation in doxygen.
|
||||
- Fixed various compiler issues for solaris platform
|
||||
- Added support for large binary and text fields (up to 4 GB)
|
||||
- Added async and direct I/O support for Linux and Solaris
|
||||
- Added new field table for level one fields inside FlmRecords to speed up searches.
|
||||
- Added support for Netware
|
||||
- Fixed double mutex lock issue.
|
||||
- Added support for building Windows binaries with Visual Studio 8.
|
||||
- Modified slab manager on Solaris to use regular malloc calls instead of mmap.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 28 13:41:42 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Intel MAC and __sparc49 (64 bit) platforms
|
||||
- Initialized variables to quiet compiler warnings
|
||||
- Got rid of unneeded internal functions
|
||||
- Various fixes for Windows - support for vc8 compiler, workaround to compiler issues with inline methods
|
||||
- Fixedup copyright notice in one source file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 11:14:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Changed naming convention for shared library to conform to standard - should be no need for SONAME fix now.
|
||||
- Added dbshell utility.
|
||||
- Started adding support for using autotools.
|
||||
- Fixed bug on FlmDbReduceSize - needed to quit when encountering a block in a not-yet-deleted b-tree
|
||||
- Added various new unit tests.
|
||||
- Fixed various compiler warnings.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 16:21:11 CET 2006 - ro@suse.de
|
||||
|
||||
- install the SONAME at least as symlink (should be the real file)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 09:49:29 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed make.exe and printf.exe from package.
|
||||
- Added support for Ubuntu and Debian
|
||||
- Simplified how unit tests are created.
|
||||
- Added some new unit tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 13:14:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed libflaim.pc to specify includedir and Cflags:
|
||||
- Also changed name: to Name:
|
||||
- Modified Makefile to use macros for outputting $ and % characters
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 09:13:02 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for PowerPC architectures
|
||||
- Changed so that revision number for RPMs will match version number
|
||||
- in SVN repository.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 1 11:54:08 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Initial submission
|
||||
|
||||
|
||||
+19
-1
@@ -1 +1,19 @@
|
||||
SUBDIRS = src util
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
EXTRA_DIST = GNUMakefile debian netware
|
||||
|
||||
SUBDIRS = $(subdirs) src util sample docs obs
|
||||
|
||||
doc_DATA = AUTHORS ChangeLog COPYING INSTALL NEWS README
|
||||
|
||||
rpms srcrpm: dist
|
||||
$(MAKE) -C obs $(AM_MAKEFLAGS) $@
|
||||
rpmarch=`rpm --showrc | grep ^build\ arch | sed 's/\(.*: \)\(.*\)/\2/'`; \
|
||||
test -z $$rpmarch || ( mv $$rpmarch/* .; rm -rf $$rpmarch )
|
||||
-rm -rf $(distdir)
|
||||
|
||||
dist-hook:
|
||||
-rm -rf `find $(distdir) -name .svn`
|
||||
|
||||
.PHONY: srcrpm rpms
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
FLAIM Release 4.10
|
||||
------------------
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
FLAIM - FLexible Adaptable Information Management
|
||||
-------------------------------------------------
|
||||
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Run this to generate all the initial makefiles, etc.
|
||||
|
||||
srcdir=`dirname $0`
|
||||
test -z "$srcdir" && srcdir=.
|
||||
|
||||
ORIGDIR=`pwd`
|
||||
cd $srcdir
|
||||
PROJECT=flaim
|
||||
TEST_TYPE=-f
|
||||
FILE=src/flaim.h
|
||||
|
||||
DIE=0
|
||||
|
||||
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
|
||||
echo
|
||||
echo "You must have autoconf installed to compile $PROJECT."
|
||||
echo "Download the appropriate package for your distribution,"
|
||||
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
|
||||
DIE=1
|
||||
}
|
||||
|
||||
(automake --version) < /dev/null > /dev/null 2>&1 || {
|
||||
echo
|
||||
echo "You must have automake installed to compile $PROJECT."
|
||||
echo "Download the appropriate package for your distribution,"
|
||||
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
|
||||
DIE=1
|
||||
}
|
||||
|
||||
if test "$DIE" -eq 1; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
test $TEST_TYPE $FILE || {
|
||||
echo "You must run this script in the top-level $PROJECT directory"
|
||||
exit 1
|
||||
}
|
||||
|
||||
aclocal $ACLOCAL_FLAGS
|
||||
echo "aclocal done"
|
||||
libtoolize --force --copy
|
||||
echo "libtoolize done"
|
||||
autoheader
|
||||
echo "autoheader done"
|
||||
automake --add-missing --copy $am_opt
|
||||
echo "automake done"
|
||||
autoconf
|
||||
echo "autoconf done"
|
||||
cd $ORIGDIR
|
||||
|
||||
echo
|
||||
echo "Now type 'configure' and 'make' to compile $PROJECT. You can do this"
|
||||
echo "in a separate build directory if you wish"
|
||||
Vendored
-4
@@ -1,4 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo OSTYPE = $OSTYPE > config.in
|
||||
echo HOSTTYPE = $HOSTTYPE >> config.in
|
||||
+144
-87
@@ -1,116 +1,173 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_INIT([flaim], [4.8], [flaim-bug@novell.com])
|
||||
AM_INIT_AUTOMAKE
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([FLAIM], [4.10], [flaim-users@forge.novell.com])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror])
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([dlopen])
|
||||
|
||||
AC_PREREQ(2.59)
|
||||
AC_LANG(C++)
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([src/flaim.h])
|
||||
AC_CONFIG_HEADER([config.h])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_CC
|
||||
AC_PROG_CPP
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_MAKE_SET
|
||||
AC_PROG_LIBTOOL
|
||||
AC_PROG_INSTALL
|
||||
|
||||
# Checks for optional programs.
|
||||
AC_PROG_TRY_DOXYGEN
|
||||
|
||||
# Configure FTKLIB and FTKINC variables.
|
||||
AC_ARG_VAR([FTKLIB], [The PATH wherein libflaimtk.la can be found.])
|
||||
AC_ARG_VAR([FTKINC], [The PATH wherein flaimtk.h can be found.])
|
||||
|
||||
# Ensure that both or neither FTK paths were specified.
|
||||
if (test -n "$FTKLIB" && test -z "$FTKINC") || \
|
||||
(test -n "$FTKINC" && test -z "$FTKLIB"); then
|
||||
AC_MSG_ERROR([Specify both FTK library and include paths, or neither.])
|
||||
fi
|
||||
|
||||
# Not specified? Check for FTK in standard places.
|
||||
if test -z "$FTKLIB"; then
|
||||
# Check for flaim tool kit as a sub-project.
|
||||
if test -d "$srcdir/ftk"; then
|
||||
AC_CONFIG_SUBDIRS([ftk])
|
||||
FTKINC='$(top_srcdir)/ftk/src'
|
||||
FTKLIB='$(top_builddir)/ftk/src'
|
||||
else
|
||||
# Check for flaim tool kit as a super-project.
|
||||
if test -d "$srcdir/../ftk"; then
|
||||
FTKINC='$(top_srcdir)/../ftk/src'
|
||||
FTKLIB='$(top_builddir)/../ftk/src'
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Still empty? Check for *installed* flaim tool kit.
|
||||
if test -z "$FTKLIB"; then
|
||||
AC_CHECK_LIB([flaimtk], [ftkFastChecksum],
|
||||
[AC_CHECK_HEADERS([flaimtk.h])
|
||||
LIBS="-lflaimtk $LIBS"],
|
||||
[AC_MSG_ERROR([No FLAIM Took Kit found. Terminating.])])
|
||||
fi
|
||||
|
||||
# AC_SUBST command line variables from FTKLIB and FTKINC.
|
||||
if test -n "$FTKLIB"; then
|
||||
AC_SUBST([FTK_LTLIB], ["$FTKLIB/libflaimtk.la"])
|
||||
AC_SUBST([FTK_INCLUDE], ["-I$FTKINC"])
|
||||
fi
|
||||
|
||||
# Configure options: --enable-debug[=no].
|
||||
AC_ARG_ENABLE([debug],
|
||||
[AS_HELP_STRING([--enable-debug],
|
||||
[enable debug code (default is no)])],
|
||||
[debug="$withval"], [debug=no])
|
||||
|
||||
# Check for doxygen program.
|
||||
if test -z "$DOXYGEN"; then
|
||||
echo "-----------------------------------------"
|
||||
echo " No Doxygen program found - continuing"
|
||||
echo " without Doxygen documentation support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_DOXYGEN], [test "x$DOXYGEN" != x])
|
||||
|
||||
# Checks for libraries.
|
||||
AC_CHECK_LIB([ncurses], [initscr])
|
||||
AC_CHECK_LIB([dl], [dlopen])
|
||||
AC_CHECK_LIB([m], [log10])
|
||||
AC_CHECK_LIB([nsl], [gethostname])
|
||||
AC_CHECK_LIB([pthread], [pthread_create])
|
||||
AC_CHECK_LIB([socket], [socket])
|
||||
|
||||
# Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h malloc.h memory.h netdb.h netinet/in.h stddef.h stdlib.h string.h strings.h sys/param.h sys/socket.h sys/statvfs.h sys/time.h sys/vfs.h unistd.h utime.h])
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_HEADER_STDBOOL
|
||||
AC_C_CONST
|
||||
AC_C_INLINE
|
||||
AC_TYPE_MODE_T
|
||||
AC_TYPE_PID_T
|
||||
AC_TYPE_SIZE_T
|
||||
AC_HEADER_TIME
|
||||
AC_STRUCT_TM
|
||||
AC_C_VOLATILE
|
||||
|
||||
# Checks for library functions.
|
||||
AC_FUNC_LSTAT
|
||||
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
|
||||
AC_FUNC_MEMCMP
|
||||
AC_FUNC_MKTIME
|
||||
AC_FUNC_MMAP
|
||||
AC_FUNC_SELECT_ARGTYPES
|
||||
AC_TYPE_SIGNAL
|
||||
AC_FUNC_STAT
|
||||
AC_CHECK_FUNCS([atexit fdatasync ftruncate getcwd gethostbyaddr gethostbyname gethostname gethrtime gettimeofday inet_ntoa localtime_r memmove memset mkdir munmap pstat_getdynamic realpath rmdir select setenv socket strcasecmp strncasecmp strrchr strstr])
|
||||
AC_CHECK_FUNCS([atexit strchr])
|
||||
|
||||
#
|
||||
# Generic DEBUG support - default is OFF
|
||||
# ON means with symbols, no optimization, DEBUG is defined
|
||||
# OFF means with symbols, full optimization, NDEBUG is defined
|
||||
# Configure compiler and platform flags and options.
|
||||
# This stuff was in the original makefile...
|
||||
# Personally, I believe -O2 does as good a job as
|
||||
# a hand-coded set of optimization flags...
|
||||
gcc_opt_flags="-O -foptimize-sibling-calls
|
||||
-fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks
|
||||
-frerun-cse-after-loop -frerun-loop-opt -fgcse
|
||||
-fgcse-lm -fgcse-sm -fdelete-null-pointer-checks
|
||||
-fexpensive-optimizations -fregmove -fsched-interblock
|
||||
-fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -fcrossjumping"
|
||||
|
||||
AC_ARG_ENABLE(debug,
|
||||
AS_HELP_STRING([--enable-debug], [Turn on debugging (default is OFF)]),
|
||||
[case "${enableval}" in
|
||||
yes) debug=yes ;;
|
||||
no) debug=no ;;
|
||||
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
|
||||
esac], [debug=no])
|
||||
AM_CONDITIONAL(DEBUG, test x$debug = xyes)
|
||||
AM_CONDITIONAL(NDEBUG, test x$debug = xno)
|
||||
if test x$debug = xyes; then
|
||||
AC_DEFINE(DEBUG, 1, [Defined for debug builds])
|
||||
else
|
||||
AC_DEFINE(NDEBUG, 1, [Defined for non-debug builds])
|
||||
# Enable g++ specific compiler flags.
|
||||
# Currently, enabling all warnings displays the type-pun error dozens
|
||||
# of times, and of course enabling warnings as werrors breaks the build
|
||||
#if test "x$CXX" = "xg++"; then
|
||||
# CXXFLAGS="$CXXFLAGS -Wall -Werror"
|
||||
# CXXFLAGS="$CXXFLAGS $gcc_opt_flags"
|
||||
#fi
|
||||
|
||||
# Configure DEBUG source code, if requested.
|
||||
if test "x$debug" = xyes; then
|
||||
AC_DEFINE([FLM_DEBUG], [], [Define to enable FLAIM debug features])
|
||||
fi
|
||||
|
||||
#
|
||||
# Set C/C++ compiler-specific warning/optimization/option flags
|
||||
# Configure global pre-processor definitions.
|
||||
AC_DEFINE([_REENTRANT], [], [Define for reentrant code])
|
||||
AC_DEFINE([_LARGEFILE64_SOURCE], [], [Define for 64-bit data files])
|
||||
AC_DEFINE([_LARGEFILE_SOURCE], [], [Define for 64-bit data files])
|
||||
|
||||
CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
|
||||
# Configure supported platforms' compiler and linker flags.
|
||||
case $host in
|
||||
sparc-*-solaris*)
|
||||
LDFLAGS="$LDFLAGS -R /usr/lib/lwp"
|
||||
if "x$CXX" != "xg++"; then
|
||||
if "x$debug" = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -xO3"
|
||||
fi
|
||||
SUN_STUDIO_COMPILER=`"$CXX" -V | grep "Sun C++"`
|
||||
if "x$SUN_STUDIO_COMPILER" = "xSun C++"; then
|
||||
CXXFLAGS="$CXXFLAGS -errwarn=%all -errtags -erroff=hidef,inllargeuse,doubunder"
|
||||
fi
|
||||
fi ;;
|
||||
|
||||
if test x$GCC = xyes; then
|
||||
# GCC: turn on all warnings, set warnings as errors
|
||||
# disable optimization for debug builds
|
||||
# enable high-level optimizations for non-debug builds
|
||||
CXXFLAGS="$CXXFLAGS -Wall -Werror"
|
||||
if test x$debug = xyes; then
|
||||
CXXFLAGS="$CXXFLAGS -O0"
|
||||
else
|
||||
CXXFLAGS="$CXXFLAGS -O3 -fgcse-sm"
|
||||
fi
|
||||
elif $CC -V 2>&1 | grep "WorkShop Compilers"; then
|
||||
# Solaris Workshop: enable optimizations for debug builds
|
||||
CXXFLAGS="$CXXFLAGS -errwarn=%all -errtags -erroff=hidef,inllargeuse"
|
||||
if test x$debug = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -fast"
|
||||
if echo $CC | grep "xarch=v9"; then
|
||||
# -fast sets -xarch=v8 disabling 64-bit mode, enable it again
|
||||
CXXFLAGS="$CXXFLAGS -xarch=v9"
|
||||
fi
|
||||
fi
|
||||
elif echo $host_os | grep -i "osf" >/dev/null; then
|
||||
# OSF: enable standard C (shouldn't be necessary)
|
||||
# enable optimizations for non-debug builds
|
||||
CXXFLAGS="$CXXFLAGS -std"
|
||||
if test x$debug = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -O"
|
||||
fi
|
||||
else
|
||||
# everything else: take a wild guess (shouldn't need this)
|
||||
if test x$debug = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -O"
|
||||
fi
|
||||
fi
|
||||
*-apple-darwin*)
|
||||
AC_DEFINE([OSX], [],
|
||||
[Define if building on Apple OSX.]) ;;
|
||||
|
||||
AC_CONFIG_FILES([Makefile src/Makefile util/Makefile])
|
||||
*-*-aix*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
CXXFLAGS="$CXXFLAGS -qthreaded -qstrict -q$build_bits"
|
||||
LDFLAGS="$LDFLAGS -q$build_bits -X$build_bits"
|
||||
fi ;;
|
||||
|
||||
*-*-hpux*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
# Disable "Placement operator delete invocation is not yet implemented" warning
|
||||
CXXFLAGS="$CXXFLAGS +W930"
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
docs/Makefile
|
||||
docs/doxygen/Makefile
|
||||
docs/doxygen/doxyfile
|
||||
obs/flaim.spec
|
||||
obs/Makefile
|
||||
sample/Makefile
|
||||
src/Makefile
|
||||
util/Makefile])
|
||||
AC_OUTPUT
|
||||
|
||||
echo "
|
||||
FLAIM Database Library ($PACKAGE_NAME) version $PACKAGE_VERSION
|
||||
Prefix.........: $prefix
|
||||
Debug Build....: $debug
|
||||
C++ Compiler...: $CXX $CXXFLAGS $CPPFLAGS
|
||||
Linker.........: $LD $LDFLAGS $LIBS
|
||||
FTK Library....: ${FTKLIB:-INSTALLED}
|
||||
FTK Include....: ${FTKINC:-INSTALLED}
|
||||
Doxygen........: ${DOXYGEN:-NONE}
|
||||
"
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
@@ -0,0 +1,13 @@
|
||||
EXTRA_DIST = flaim_4_database_format.doc FLAIMArchitecture.odg\
|
||||
FLAIMArchitecture.png introduction_to_flaim_4.doc
|
||||
|
||||
if HAVE_DOXYGEN
|
||||
SUBDIRS = doxygen
|
||||
endif
|
||||
|
||||
doc_DATA =\
|
||||
flaim_4_database_format.doc\
|
||||
FLAIMArchitecture.odg\
|
||||
FLAIMArchitecture.png\
|
||||
introduction_to_flaim_4.doc
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
docpkg = $(PACKAGE_TARNAME)-doxy-$(PACKAGE_VERSION).tar.gz
|
||||
|
||||
doc_DATA = $(docpkg)
|
||||
|
||||
$(docpkg): doxygen.stamp
|
||||
tar chof - html | gzip -9 -c >$@
|
||||
|
||||
doxygen.stamp: doxyfile
|
||||
$(DOXYGEN) $(DOXYFLAGS) $<
|
||||
echo Timestamp > $@
|
||||
|
||||
CLEANFILES = doxywarn.txt doxygen.stamp $(docpkg)
|
||||
|
||||
clean-local:
|
||||
-rm -rf html
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# Desc: Doxyfile 1.4.6
|
||||
# Tabs: 3
|
||||
#
|
||||
# Copyright (c) 2006-2007 Novell, Inc. All Rights Reserved.
|
||||
# Copyright (c) 2007 Novell, Inc. All Rights Reserved.
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
@@ -26,9 +26,9 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
PROJECT_NAME = "FLAIM"
|
||||
PROJECT_NUMBER =
|
||||
OUTPUT_DIRECTORY = build/docs
|
||||
PROJECT_NAME = @PACKAGE_NAME@
|
||||
PROJECT_NUMBER = @PACKAGE_VERSION@
|
||||
OUTPUT_DIRECTORY = .
|
||||
CREATE_SUBDIRS = NO
|
||||
OUTPUT_LANGUAGE = English
|
||||
USE_WINDOWS_ENCODING = YES
|
||||
@@ -48,7 +48,7 @@ ABBREVIATE_BRIEF = "The $name class" \
|
||||
ALWAYS_DETAILED_SEC = NO
|
||||
INLINE_INHERITED_MEMB = NO
|
||||
FULL_PATH_NAMES = NO
|
||||
STRIP_FROM_PATH = ""
|
||||
STRIP_FROM_PATH = @top_srcdir@
|
||||
STRIP_FROM_INC_PATH =
|
||||
SHORT_NAMES = NO
|
||||
JAVADOC_AUTOBRIEF = YES
|
||||
@@ -101,7 +101,7 @@ WARN_IF_UNDOCUMENTED = YES
|
||||
WARN_IF_DOC_ERROR = YES
|
||||
WARN_NO_PARAMDOC = NO
|
||||
WARN_FORMAT = "$file:$line: $text"
|
||||
WARN_LOGFILE =
|
||||
WARN_LOGFILE = doxywarn.txt
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the input files
|
||||
#---------------------------------------------------------------------------
|
||||
@@ -0,0 +1,17 @@
|
||||
dnl @synopsis AC_PROG_TRY_DOXYGEN
|
||||
dnl
|
||||
dnl AC_PROG_TRY_DOXYGEN tests for an existing doxygen program.
|
||||
dnl It sets or uses the environment variable DOXYGEN.
|
||||
dnl
|
||||
dnl You can use the DOXYGEN variable in your Makefile.in, with
|
||||
dnl @DOXYGEN@.
|
||||
dnl
|
||||
dnl @category Doxygen
|
||||
dnl @author John Calcote <john.calcote@gmail.com>
|
||||
dnl @version 2008-06-24
|
||||
dnl @license AllPermissive
|
||||
|
||||
AC_DEFUN([AC_PROG_TRY_DOXYGEN],[
|
||||
AC_REQUIRE([AC_EXEEXT])dnl
|
||||
test -z "$DOXYGEN" && AC_CHECK_PROGS([DOXYGEN], [doxygen$EXEEXT])dnl
|
||||
])
|
||||
Binary file not shown.
@@ -0,0 +1,26 @@
|
||||
rpmspec = $(PACKAGE_TARNAME).spec
|
||||
|
||||
rpmmacros =\
|
||||
--define='_rpmdir $(PWD)'\
|
||||
--define='_srcrpmdir $(PWD)'\
|
||||
--define='_sourcedir $(PWD)'\
|
||||
--define='_specdir $(PWD)'\
|
||||
--define='_builddir $(PWD)'
|
||||
|
||||
rpmopts = --nodeps --buildroot='$(PWD)/_rpm'
|
||||
|
||||
rpmcheck:
|
||||
@which rpmbuild &> /dev/null; \
|
||||
if [ $$? -ne 0 ]; then \
|
||||
echo "*** This make target requires an rpm-based linux distribution."; \
|
||||
(exit 1); exit 1; \
|
||||
fi
|
||||
|
||||
srcrpm: rpmcheck $(rpmspec)
|
||||
rpmbuild -bs $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
rpms: rpmcheck $(rpmspec)
|
||||
rpmbuild -ba $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
.PHONY: rpmcheck srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
Name: @PACKAGE_TARNAME@
|
||||
BuildRequires: gcc-c++ libstdc++-devel doxygen
|
||||
Requires: libstdc++
|
||||
Summary: FLAIM is a database library.
|
||||
URL: http://forge.novell.com/modules/xfmod/project/?flaim
|
||||
Version: @PACKAGE_VERSION@
|
||||
Release: 1
|
||||
License: GPL
|
||||
Vendor: Novell, Inc.
|
||||
Group: Development/Libraries/C and C++
|
||||
Source: %{name}-%{version}.tar.gz
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
FLAIM is a database library.
|
||||
|
||||
Authors:
|
||||
--------
|
||||
dsanders@novell.com
|
||||
ahodgkinson@novell.com
|
||||
|
||||
%package devel
|
||||
Summary: FLAIM static library and header file
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description devel
|
||||
FLAIM is a database library.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%configure
|
||||
make
|
||||
|
||||
%install
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
make DESTDIR=${RPM_BUILD_ROOT} install
|
||||
if test -f ${RPM_BUILD_ROOT}/usr/include/flaimtk.h; then
|
||||
rm ${RPM_BUILD_ROOT}/usr/include/flaimtk.h
|
||||
rm ${RPM_BUILD_ROOT}/usr/lib64/libflaimtk.*
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share/doc/ftk
|
||||
fi
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_datadir}/doc/%{name}/AUTHORS
|
||||
%doc %{_datadir}/doc/%{name}/ChangeLog
|
||||
%doc %{_datadir}/doc/%{name}/COPYING
|
||||
%doc %{_datadir}/doc/%{name}/INSTALL
|
||||
%doc %{_datadir}/doc/%{name}/NEWS
|
||||
%doc %{_datadir}/doc/%{name}/README
|
||||
%doc %{_datadir}/doc/%{name}/%{name}-doxy-%{version}.tar.gz
|
||||
%doc %{_datadir}/doc/%{name}/FLAIMArchitecture.odg
|
||||
%doc %{_datadir}/doc/%{name}/FLAIMArchitecture.png
|
||||
%doc %{_datadir}/doc/%{name}/flaim_4_database_format.doc
|
||||
%doc %{_datadir}/doc/%{name}/introduction_to_flaim_4.doc
|
||||
%{_libdir}/libflaim.la
|
||||
%{_libdir}/libflaim.so*
|
||||
%{_bindir}/flmcheckdb
|
||||
%{_bindir}/flmrebuild
|
||||
%{_bindir}/flmsample
|
||||
%{_bindir}/flmview
|
||||
%{_bindir}/flmdbshell
|
||||
%{_bindir}/flmgigatest
|
||||
|
||||
%files devel
|
||||
%{_libdir}/libflaim.a
|
||||
%{_includedir}/flaim.h
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
bin_PROGRAMS = sample
|
||||
|
||||
FLAIM_INC=-I$(top_srcdir)/src
|
||||
FLAIM_LIB=../src/libflaim.la
|
||||
|
||||
sample_SOURCES = sample.cpp
|
||||
sample_CPPFLAGS = $(FLAIM_INC) $(FTK_INCLUDE)
|
||||
sample_LDADD = $(FLAIM_LIB)
|
||||
|
||||
@@ -0,0 +1,121 @@
|
||||
lib_LTLIBRARIES = libflaim.la
|
||||
include_HEADERS = flaim.h
|
||||
|
||||
libflaim_la_SOURCES = \
|
||||
checksum.cpp \
|
||||
fblob.cpp \
|
||||
fcs.cpp \
|
||||
fcs.h \
|
||||
fdbcnfig.cpp \
|
||||
fdbcopy.cpp \
|
||||
fdb.cpp \
|
||||
fdbremov.cpp \
|
||||
fdbrenam.cpp \
|
||||
fdict.cpp \
|
||||
fdict.h \
|
||||
ffilehdr.cpp \
|
||||
fgedcom.cpp \
|
||||
filesys.h \
|
||||
flaimsys.h \
|
||||
flbackup.cpp \
|
||||
flchkdb.cpp \
|
||||
flclose.cpp \
|
||||
flconvrt.cpp \
|
||||
flcreate.cpp \
|
||||
fldbglog.cpp \
|
||||
flerror.cpp \
|
||||
flindex.cpp \
|
||||
flkeyret.cpp \
|
||||
flmimon.cpp \
|
||||
flmimon.h \
|
||||
flmstat.cpp \
|
||||
flmstat.h \
|
||||
flopen.cpp \
|
||||
flrddrct.cpp \
|
||||
flreduce.cpp \
|
||||
flsweep.cpp \
|
||||
flupdate.cpp \
|
||||
flverify.cpp \
|
||||
fmisc.cpp \
|
||||
f_nici.cpp \
|
||||
f_nici.h \
|
||||
fntable.cpp \
|
||||
fnumber.cpp \
|
||||
fpackoff.h \
|
||||
fpackon.h \
|
||||
fqcur.cpp \
|
||||
fqdecl.cpp \
|
||||
fqeval.cpp \
|
||||
fqget.cpp \
|
||||
fqkeys.cpp \
|
||||
fqlog.cpp \
|
||||
fqopt.cpp \
|
||||
fqparse.cpp \
|
||||
fqprep.cpp \
|
||||
fqread.cpp \
|
||||
fqsrch.cpp \
|
||||
fqstack.cpp \
|
||||
fquery.h \
|
||||
frebuild.cpp \
|
||||
frec.cpp \
|
||||
frecset.cpp \
|
||||
fsblk_u.cpp \
|
||||
fscomblk.cpp \
|
||||
fsconvrt.cpp \
|
||||
fscounts.cpp \
|
||||
fscursor.cpp \
|
||||
fscursor.h \
|
||||
fsdatacu.cpp \
|
||||
fsdelelm.cpp \
|
||||
fsinselm.cpp \
|
||||
fslfile.cpp \
|
||||
fslfileu.cpp \
|
||||
fsnext.cpp \
|
||||
fsprev.cpp \
|
||||
fsrecget.cpp \
|
||||
fsrecupd.cpp \
|
||||
fsrefspl.cpp \
|
||||
fsrefupd.cpp \
|
||||
fssearch.cpp \
|
||||
fssplblk.cpp \
|
||||
fstructs.h \
|
||||
fsv.cpp \
|
||||
fsv.h \
|
||||
fsysdata.cpp \
|
||||
ftext.cpp \
|
||||
ftrans.cpp \
|
||||
furl.cpp \
|
||||
furl.h \
|
||||
imonbase.cpp \
|
||||
imonchk.cpp \
|
||||
imonerr.cpp \
|
||||
imonfact.cpp \
|
||||
imonfdb.cpp \
|
||||
imonffil.cpp \
|
||||
imonfhsh.cpp \
|
||||
imonfram.cpp \
|
||||
imonfsys.cpp \
|
||||
imonix.cpp \
|
||||
imonlhdr.cpp \
|
||||
imonqury.cpp \
|
||||
imonrche.cpp \
|
||||
imonrec.cpp \
|
||||
imonscfg.cpp \
|
||||
imonsche.cpp \
|
||||
imonsel.cpp \
|
||||
imonstat.cpp \
|
||||
imonutil.cpp \
|
||||
kybuild.cpp \
|
||||
kycollat.cpp \
|
||||
kyget.cpp \
|
||||
lock.cpp \
|
||||
rcache.cpp \
|
||||
recover.cpp \
|
||||
rfl.cpp \
|
||||
rfl.h \
|
||||
scache.cpp \
|
||||
translog.cpp
|
||||
|
||||
libflaim_la_CPPFLAGS = $(FTK_INCLUDE)
|
||||
libflaim_la_LIBADD = $(FTK_LTLIB)
|
||||
libflaim_la_LDFLAGS = -version-info 5:2:0
|
||||
+1
-1
@@ -29,7 +29,7 @@
|
||||
#ifndef FLAIM_H
|
||||
#define FLAIM_H
|
||||
|
||||
#include "flaimtk.h"
|
||||
#include <flaimtk.h>
|
||||
|
||||
#ifdef FLM_PACK_STRUCTS
|
||||
#pragma pack(push, 1)
|
||||
|
||||
@@ -27,6 +27,10 @@
|
||||
#ifndef FLAIMSYS_H
|
||||
#define FLAIMSYS_H
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include "flaim.h"
|
||||
|
||||
#if defined( FLM_WIN)
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// Desc: Placeholder for FLAIM's cross-platform toolkit public definitions
|
||||
// and interfaces
|
||||
//
|
||||
// Tabs: 3
|
||||
//
|
||||
// Copyright (c) 2006-2007 Novell, Inc. All Rights Reserved.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; version 2.1
|
||||
// of the License.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Library Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, contact Novell, Inc.
|
||||
//
|
||||
// To contact Novell about this file by physical or electronic mail,
|
||||
// you may find current contact information at www.novell.com.
|
||||
//
|
||||
// $Id$
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#include "ftk.h"
|
||||
@@ -0,0 +1,69 @@
|
||||
EXTRA_DIST = ha_flaim.cpp ha_flaim.h rflread.cpp rflread.h viewrfl.cpp
|
||||
|
||||
## Utility Programs
|
||||
|
||||
bin_PROGRAMS = flmcheckdb flmrebuild flmview flmdbshell flmgigatest
|
||||
|
||||
flmcheckdb_SOURCES = checkdb.cpp
|
||||
flmcheckdb_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
flmcheckdb_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
flmrebuild_SOURCES = rebuild.cpp
|
||||
flmrebuild_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
flmrebuild_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
flmview_SOURCES = \
|
||||
flmarg.h \
|
||||
viewblk.cpp \
|
||||
view.cpp \
|
||||
viewdisp.cpp \
|
||||
viewedit.cpp \
|
||||
viewfhdr.cpp \
|
||||
view.h \
|
||||
viewlfil.cpp \
|
||||
viewlhdr.cpp \
|
||||
viewmenu.cpp \
|
||||
viewsrch.cpp
|
||||
flmview_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
flmview_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
flmdbshell_SOURCES = \
|
||||
dbshell.cpp \
|
||||
dbshell.h \
|
||||
flm_edit.cpp \
|
||||
flm_edit.h
|
||||
flmdbshell_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
flmdbshell_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
flmgigatest_SOURCES = gigatest.cpp gigatest.h
|
||||
flmgigatest_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
flmgigatest_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
## Utility Convenience Library
|
||||
|
||||
noinst_LTLIBRARIES = libutil.la
|
||||
|
||||
libutil_la_SOURCES = \
|
||||
flm_dlst.cpp \
|
||||
flm_dlst.h \
|
||||
flm_lutl.cpp \
|
||||
flm_lutl.h \
|
||||
sharutil.cpp \
|
||||
sharutil.h
|
||||
libutil_la_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
|
||||
## Check Programs
|
||||
|
||||
check_PROGRAMS = ut_basictest
|
||||
check_HEADERS = flmunittest.h
|
||||
|
||||
ut_basictest_SOURCES = basic_test.cpp flmunittest.cpp
|
||||
ut_basictest_CPPFLAGS = -I$(top_srcdir)/src $(FTK_INCLUDE)
|
||||
ut_basictest_LDADD = libutil.la ../src/libflaim.la
|
||||
|
||||
## Unit Tests
|
||||
|
||||
TESTS = ut_basictest
|
||||
|
||||
clean-local:
|
||||
-rm -rf samplebackup samplerestore.*
|
||||
+2
-3
@@ -1,4 +1,3 @@
|
||||
Daniel Sanders (dsanders@novell.com)
|
||||
Andrew Hodgkinson (ahodgkinson@novell.com)
|
||||
Andrew Hodgkinson <ahodgkinson@novell.com>
|
||||
Daniel Sanders <dsanders@novell.com>
|
||||
|
||||
... and many others ...
|
||||
|
||||
+80
-15
@@ -1,8 +1,29 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
FLAIM cross-platform toolkit
|
||||
Copyright (c) 2000-2008 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
@@ -10,7 +31,7 @@
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
@@ -55,7 +76,7 @@ modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
@@ -111,8 +132,8 @@ modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
@@ -158,7 +179,7 @@ Library.
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
@@ -216,7 +237,7 @@ instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
@@ -267,7 +288,7 @@ Library will still fall under Section 6.)
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
@@ -329,7 +350,7 @@ restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
@@ -370,7 +391,7 @@ subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
@@ -422,7 +443,7 @@ conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
@@ -432,7 +453,7 @@ decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
@@ -455,5 +476,49 @@ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
FLAIM cross-platform toolkit
|
||||
Copyright (c) 2000-2007 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; version 2.1
|
||||
of the License.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
On a Debian system, a copy of the GNU LGPL is installed in
|
||||
/usr/share/common-licenses/LGPL
|
||||
@@ -0,0 +1,4 @@
|
||||
2008-06-25 John Calcote <john.calcote@gmail.com>
|
||||
|
||||
* Added GNU Autotools build system.
|
||||
|
||||
|
||||
+237
@@ -0,0 +1,237 @@
|
||||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006, 2007 Free Software Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
Briefly, the shell commands `./configure; make; make install' should
|
||||
configure, build, and install this package. The following
|
||||
more-detailed instructions are generic; see the `README' file for
|
||||
instructions specific to this package.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, and a
|
||||
file `config.log' containing compiler output (useful mainly for
|
||||
debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If you are using the cache, and at
|
||||
some point `config.cache' contains results you don't want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You need `configure.ac' if
|
||||
you want to change it or regenerate `configure' using a newer version
|
||||
of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system.
|
||||
|
||||
Running `configure' might take a while. While running, it prints
|
||||
some messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
6. Often, you can also type `make uninstall' to remove the installed
|
||||
files again.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that the
|
||||
`configure' script does not know about. Run `./configure --help' for
|
||||
details on some of the pertinent environment variables.
|
||||
|
||||
You can give `configure' initial values for configuration parameters
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c99 CFLAGS=-g LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you can use GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
With a non-GNU `make', it is safer to compile the package for one
|
||||
architecture at a time in the source code directory. After you have
|
||||
installed the package for one architecture, use `make distclean' before
|
||||
reconfiguring for another architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' installs the package's commands under
|
||||
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
||||
can specify an installation prefix other than `/usr/local' by giving
|
||||
`configure' the option `--prefix=PREFIX'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
|
||||
PREFIX as the prefix for installing programs and libraries.
|
||||
Documentation and other data files still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=DIR' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' cannot figure out automatically,
|
||||
but needs to determine by the type of machine the package will run on.
|
||||
Usually, assuming the package is built to be run on the _same_
|
||||
architectures, `configure' can figure that out, but if it prints a
|
||||
message saying it cannot guess the machine type, give it the
|
||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name which has the form:
|
||||
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
where SYSTEM can have one of these forms:
|
||||
|
||||
OS KERNEL-OS
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the machine type.
|
||||
|
||||
If you are _building_ compiler tools for cross-compiling, you should
|
||||
use the option `--target=TYPE' to select the type of system they will
|
||||
produce code for.
|
||||
|
||||
If you want to _use_ a cross compiler, that generates code for a
|
||||
platform different from the build platform, you should specify the
|
||||
"host" platform (i.e., that on which the generated programs will
|
||||
eventually be run) with `--host=TYPE'.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share, you
|
||||
can create a site shell script called `config.site' that gives default
|
||||
values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Defining Variables
|
||||
==================
|
||||
|
||||
Variables not defined in a site shell script can be set in the
|
||||
environment passed to `configure'. However, some packages may run
|
||||
configure again during the build, and the customized values of these
|
||||
variables may be lost. In order to avoid this problem, you should set
|
||||
them in the `configure' command line, using `VAR=value'. For example:
|
||||
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
||||
`configure' recognizes the following options to control how it operates.
|
||||
|
||||
`--help'
|
||||
`-h'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--version'
|
||||
`-V'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Enable the cache: use and save the results of the tests in FILE,
|
||||
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
||||
disable caching.
|
||||
|
||||
`--config-cache'
|
||||
`-C'
|
||||
Alias for `--cache-file=config.cache'.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
EXTRA_DIST = GNUMakefile debian netware
|
||||
|
||||
SUBDIRS = src util obs
|
||||
|
||||
if HAVE_DOXYGEN
|
||||
SUBDIRS += docs
|
||||
endif
|
||||
|
||||
doc_DATA = AUTHORS ChangeLog COPYING INSTALL NEWS README
|
||||
|
||||
rpms srcrpm: dist
|
||||
$(MAKE) -C obs $(AM_MAKEFLAGS) $@
|
||||
rpmarch=`rpm --showrc | grep ^build\ arch | sed 's/\(.*: \)\(.*\)/\2/'`; \
|
||||
test -z $$rpmarch || ( mv $$rpmarch/* .; rm -rf $$rpmarch )
|
||||
-rm -rf $(distdir)
|
||||
|
||||
dist-hook:
|
||||
-rm -rf `find $(distdir) -name .svn`
|
||||
|
||||
.PHONY: srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
FTK - FLAIM Tool Kit
|
||||
--------------------
|
||||
|
||||
|
||||
@@ -0,0 +1,158 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([FTK], [1.2], [flaim-users@forge.novell.com])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror])
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([dlopen])
|
||||
|
||||
AC_LANG(C++)
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([src/flaimtk.h])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_INSTALL
|
||||
|
||||
# Checks for optional programs.
|
||||
AC_PROG_TRY_DOXYGEN
|
||||
|
||||
# Configure options: --enable-debug[=no].
|
||||
AC_ARG_ENABLE([debug],
|
||||
[AS_HELP_STRING([--enable-debug],
|
||||
[enable debug code (default is no)])],
|
||||
[debug="$withval"], [debug=no])
|
||||
|
||||
# Configure option: --enable-openssl[=no].
|
||||
AC_ARG_ENABLE([openssl],
|
||||
[AS_HELP_STRING([--enable-openssl],
|
||||
[enable the use of openssl (default is no)])],
|
||||
[openssl="$withval"], [openssl=no])
|
||||
|
||||
# Check for doxygen program.
|
||||
if test -z "$DOXYGEN"; then
|
||||
echo "-----------------------------------------"
|
||||
echo " No Doxygen program found - continuing"
|
||||
echo " without Doxygen documentation support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_DOXYGEN], [test -n "$DOXYGEN"])
|
||||
|
||||
# Checks for libraries.
|
||||
AC_CHECK_LIB([ncurses], [initscr])
|
||||
AC_CHECK_LIB([pthread], [pthread_create])
|
||||
AC_CHECK_LIB([rt], [aio_suspend])
|
||||
if test "x$openssl" = xyes; then
|
||||
AC_DEFINE([FLM_OPENSSL], [], [Define to use openssl])
|
||||
AC_CHECK_LIB([ssl], [SSL_new])
|
||||
AC_CHECK_LIB([crypto], [CRYPTO_add])
|
||||
AC_CHECK_LIB([dl], [dlopen])
|
||||
AC_CHECK_LIB([z], [gzopen])
|
||||
fi
|
||||
|
||||
# Checks for header files.
|
||||
AC_HEADER_RESOLV
|
||||
AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h malloc.h netdb.h netinet/in.h stddef.h stdlib.h string.h strings.h sys/mount.h sys/param.h sys/socket.h sys/statfs.h sys/statvfs.h sys/time.h sys/vfs.h unistd.h utime.h])
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_HEADER_STDBOOL
|
||||
AC_C_INLINE
|
||||
AC_TYPE_INT32_T
|
||||
AC_TYPE_MODE_T
|
||||
AC_TYPE_PID_T
|
||||
AC_TYPE_SIZE_T
|
||||
AC_CHECK_MEMBERS([struct stat.st_blksize])
|
||||
AC_TYPE_UINT16_T
|
||||
AC_TYPE_UINT32_T
|
||||
AC_TYPE_UINT8_T
|
||||
|
||||
# Checks for library functions.
|
||||
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
|
||||
AC_FUNC_MALLOC
|
||||
AC_FUNC_MKTIME
|
||||
AC_CHECK_FUNCS([atexit fdatasync ftruncate getcwd gethostbyaddr gethostbyname gethostname gethrtime gettimeofday inet_ntoa localtime_r memmove memset mkdir pstat_getdynamic realpath rmdir select socket strchr strrchr strstr])
|
||||
|
||||
# Configure compiler and platform flags and options.
|
||||
# This stuff was in the original makefile...
|
||||
# Personally, I believe -O2 does as good a job as
|
||||
# a hand-coded set of optimization flags...
|
||||
gcc_opt_flags="-O -foptimize-sibling-calls
|
||||
-fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks
|
||||
-frerun-cse-after-loop -frerun-loop-opt -fgcse
|
||||
-fgcse-lm -fgcse-sm -fdelete-null-pointer-checks
|
||||
-fexpensive-optimizations -fregmove -fsched-interblock
|
||||
-fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -fcrossjumping"
|
||||
|
||||
# Enable g++ specific compiler flags.
|
||||
# Currently, enabling all warnings displays the type-pun error dozens
|
||||
# of times, and of course enabling warnings as werrors breaks the build
|
||||
#if test "x$CXX" = "xg++"; then
|
||||
# CXXFLAGS="$CXXFLAGS -Wall -Werror"
|
||||
# CXXFLAGS="$CXXFLAGS $gcc_opt_flags"
|
||||
#fi
|
||||
|
||||
# Configure DEBUG source code, if requested.
|
||||
if test "x$debug" = xyes; then
|
||||
AC_DEFINE([FLM_DEBUG], [], [Define to enable FLAIM debug features])
|
||||
fi
|
||||
|
||||
# Configure global pre-processor definitions.
|
||||
AC_DEFINE([_REENTRANT], [], [Define for reentrant code])
|
||||
AC_DEFINE([_LARGEFILE64_SOURCE], [], [Define for 64-bit data files])
|
||||
AC_DEFINE([_LARGEFILE_SOURCE], [], [Define for 64-bit data files])
|
||||
|
||||
# Configure supported platforms' compiler and linker flags.
|
||||
case $host in
|
||||
sparc-*-solaris*)
|
||||
LDFLAGS="$LDFLAGS -R /usr/lib/lwp"
|
||||
if "x$CXX" != "xg++"; then
|
||||
if "x$debug" = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -xO3"
|
||||
fi
|
||||
SUN_STUDIO_COMPILER=`"$CXX" -V | grep "Sun C++"`
|
||||
if "x$SUN_STUDIO_COMPILER" = "xSun C++"; then
|
||||
CXXFLAGS="$CXXFLAGS -errwarn=%all -errtags -erroff=hidef,inllargeuse,doubunder"
|
||||
fi
|
||||
fi ;;
|
||||
|
||||
*-apple-darwin*)
|
||||
AC_DEFINE([OSX], [],
|
||||
[Define if building on Apple OSX.]) ;;
|
||||
|
||||
*-*-aix*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
CXXFLAGS="$CXXFLAGS -qthreaded -qstrict"
|
||||
fi ;;
|
||||
|
||||
*-*-hpux*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
# Disable "Placement operator delete invocation is not yet implemented" warning
|
||||
CXXFLAGS="$CXXFLAGS +W930"
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
docs/Makefile
|
||||
docs/doxyfile
|
||||
obs/Makefile
|
||||
obs/ftk.spec
|
||||
src/Makefile
|
||||
util/Makefile])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
echo "
|
||||
FLAIM Tool Kit ($PACKAGE_NAME) version $PACKAGE_VERSION
|
||||
Prefix.........: $prefix
|
||||
Debug Build....: $debug
|
||||
Using OpenSSL..: $openssl
|
||||
C++ Compiler...: $CXX $CXXFLAGS $CPPFLAGS
|
||||
Linker.........: $LD $LDFLAGS $LIBS
|
||||
Doxygen........: ${DOXYGEN:-NONE}
|
||||
"
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
docpkg = $(PACKAGE_TARNAME)-doxy-$(PACKAGE_VERSION).tar.gz
|
||||
|
||||
doc_DATA = $(docpkg)
|
||||
|
||||
$(docpkg): doxygen.stamp
|
||||
tar chof - html | gzip -9 -c >$@
|
||||
|
||||
doxygen.stamp: doxyfile
|
||||
$(DOXYGEN) $(DOXYFLAGS) $<
|
||||
echo Timestamp > $@
|
||||
|
||||
CLEANFILES = doxywarn.txt doxygen.stamp $(docpkg)
|
||||
|
||||
clean-local:
|
||||
-rm -rf html
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
DOXYGEN Documentation
|
||||
---------------------
|
||||
|
||||
The files in this directory are used to build doxygen documentation from
|
||||
the source code in this project. The doxyfile is a Doxygen configuration
|
||||
file.
|
||||
|
||||
@@ -26,9 +26,9 @@
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
PROJECT_NAME = "FTK"
|
||||
PROJECT_NUMBER =
|
||||
OUTPUT_DIRECTORY = build/docs
|
||||
PROJECT_NAME = @PACKAGE_NAME@
|
||||
PROJECT_NUMBER = @PACKAGE_VERSION@
|
||||
OUTPUT_DIRECTORY = .
|
||||
CREATE_SUBDIRS = NO
|
||||
OUTPUT_LANGUAGE = English
|
||||
USE_WINDOWS_ENCODING = YES
|
||||
@@ -48,7 +48,7 @@ ABBREVIATE_BRIEF = "The $name class" \
|
||||
ALWAYS_DETAILED_SEC = NO
|
||||
INLINE_INHERITED_MEMB = NO
|
||||
FULL_PATH_NAMES = NO
|
||||
STRIP_FROM_PATH = ""
|
||||
STRIP_FROM_PATH = @top_srcdir@
|
||||
STRIP_FROM_INC_PATH =
|
||||
SHORT_NAMES = NO
|
||||
JAVADOC_AUTOBRIEF = YES
|
||||
@@ -101,7 +101,7 @@ WARN_IF_UNDOCUMENTED = YES
|
||||
WARN_IF_DOC_ERROR = YES
|
||||
WARN_NO_PARAMDOC = NO
|
||||
WARN_FORMAT = "$file:$line: $text"
|
||||
WARN_LOGFILE =
|
||||
WARN_LOGFILE = doxywarn.txt
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the input files
|
||||
#---------------------------------------------------------------------------
|
||||
@@ -0,0 +1,17 @@
|
||||
dnl @synopsis AC_PROG_TRY_DOXYGEN
|
||||
dnl
|
||||
dnl AC_PROG_TRY_DOXYGEN tests for an existing doxygen program.
|
||||
dnl It sets or uses the environment variable DOXYGEN.
|
||||
dnl
|
||||
dnl You can use the DOXYGEN variable in your Makefile.in, with
|
||||
dnl @DOXYGEN@.
|
||||
dnl
|
||||
dnl @category Doxygen
|
||||
dnl @author John Calcote <john.calcote@gmail.com>
|
||||
dnl @version 2008-06-24
|
||||
dnl @license AllPermissive
|
||||
|
||||
AC_DEFUN([AC_PROG_TRY_DOXYGEN],[
|
||||
AC_REQUIRE([AC_EXEEXT])dnl
|
||||
test -z "$DOXYGEN" && AC_CHECK_PROGS([DOXYGEN], [doxygen$EXEEXT])dnl
|
||||
])
|
||||
Binary file not shown.
@@ -0,0 +1,26 @@
|
||||
rpmspec = $(PACKAGE_TARNAME).spec
|
||||
|
||||
rpmmacros =\
|
||||
--define='_rpmdir $(PWD)'\
|
||||
--define='_srcrpmdir $(PWD)'\
|
||||
--define='_sourcedir $(PWD)'\
|
||||
--define='_specdir $(PWD)'\
|
||||
--define='_builddir $(PWD)'
|
||||
|
||||
rpmopts = --nodeps --buildroot='$(PWD)/_rpm'
|
||||
|
||||
rpmcheck:
|
||||
@which rpmbuild &> /dev/null; \
|
||||
if [ $$? -ne 0 ]; then \
|
||||
echo "*** This make target requires an rpm-based linux distribution."; \
|
||||
(exit 1); exit 1; \
|
||||
fi
|
||||
|
||||
srcrpm: rpmcheck $(rpmspec)
|
||||
rpmbuild -bs $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
rpms: rpmcheck $(rpmspec)
|
||||
rpmbuild -ba $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
.PHONY: rpmcheck srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
OpenSuSE Build System (OBS)
|
||||
---------------------------
|
||||
|
||||
The OpenSuSE Build System is available at http://build.opensuse.org. This
|
||||
really cool project allows individual contributors to become the package
|
||||
maintainer for their own package repositories. It also provides a nice
|
||||
compile farm, with the ability to produce packages for rpm and debian
|
||||
based systems, including OpenSuSE, SuSE Linux Enterprise (SLE), RedHat
|
||||
Fedora, Debian, Ubuntu, CentOS and more.
|
||||
|
||||
The files in this directory are used only in the process of building various
|
||||
binary packages on the OpenSuSE Build System. The only exception to this
|
||||
statement is the rpm spec file, which is also used to build rpm files from
|
||||
the command line using "make rpms".
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
Name: @PACKAGE_TARNAME@
|
||||
BuildRequires: gcc-c++ libstdc++ libstdc++-devel doxygen
|
||||
Summary: FTK is the FLAIM cross-platfomr toolkit.
|
||||
URL: http://forge.novell.com/modules/xfmod/project/?flaim
|
||||
Version: @PACKAGE_VERSION@
|
||||
Release: 1
|
||||
License: GPL
|
||||
Vendor: Novell, Inc.
|
||||
Group: Development/Libraries/C and C++
|
||||
Source: %{name}-%{version}.tar.gz
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
FTK is the FLAIM cross-platform toolkit.
|
||||
|
||||
Authors:
|
||||
--------
|
||||
dsanders@novell.com
|
||||
ahodgkinson@novell.com
|
||||
|
||||
%package devel
|
||||
Summary: FTK static library and header file
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description devel
|
||||
FTK is the FLAIM cross-platform toolkit.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%configure
|
||||
make
|
||||
|
||||
%install
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
make DESTDIR=${RPM_BUILD_ROOT} install
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_datadir}/doc/%{name}/AUTHORS
|
||||
%doc %{_datadir}/doc/%{name}/ChangeLog
|
||||
%doc %{_datadir}/doc/%{name}/COPYING
|
||||
%doc %{_datadir}/doc/%{name}/COPYRIGHT
|
||||
%doc %{_datadir}/doc/%{name}/INSTALL
|
||||
%doc %{_datadir}/doc/%{name}/NEWS
|
||||
%doc %{_datadir}/doc/%{name}/README
|
||||
%doc %{_datadir}/doc/%{name}/%{name}-doxy-%{version}.tar.gz
|
||||
%{_libdir}/libflaimtk.la
|
||||
%{_libdir}/libflaimtk.so*
|
||||
|
||||
%files devel
|
||||
%{_libdir}/libflaimtk.a
|
||||
%{_includedir}/flaimtk.h
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
EXTRA_DIST = ftknlm.h
|
||||
|
||||
lib_LTLIBRARIES = libflaimtk.la
|
||||
include_HEADERS = flaimtk.h
|
||||
|
||||
libflaimtk_la_SOURCES = \
|
||||
ftkarg.cpp \
|
||||
ftkbtree.cpp \
|
||||
ftkcmem.cpp \
|
||||
ftkcoll.cpp \
|
||||
ftkcsum.cpp \
|
||||
ftkdir.cpp \
|
||||
ftkdynbtree.cpp \
|
||||
ftkdynrset.cpp \
|
||||
ftkdynrset.h \
|
||||
ftkerror.cpp \
|
||||
ftkfsys.cpp \
|
||||
ftkftx.cpp \
|
||||
ftkhttp.cpp \
|
||||
ftkini.cpp \
|
||||
ftkiobuf.cpp \
|
||||
ftklock.cpp \
|
||||
ftklog.cpp \
|
||||
ftkmem.cpp \
|
||||
ftkmfh.cpp \
|
||||
ftkmisc.cpp \
|
||||
ftknet.cpp \
|
||||
ftknlm.cpp \
|
||||
ftkntab.cpp \
|
||||
ftkprntf.cpp \
|
||||
ftkrand.cpp \
|
||||
ftkrset.cpp \
|
||||
ftksem.cpp \
|
||||
ftkstrm.cpp \
|
||||
ftksupr.cpp \
|
||||
ftktext.cpp \
|
||||
ftkthrd.cpp \
|
||||
ftktime.cpp \
|
||||
ftksys.h \
|
||||
ftkunix.cpp \
|
||||
ftkwin.cpp \
|
||||
ftkxml.cpp
|
||||
|
||||
libflaimtk_la_LDFLAGS = -version-info 0:0:0
|
||||
|
||||
@@ -443,6 +443,8 @@
|
||||
#else
|
||||
#error Platform not supported
|
||||
#endif
|
||||
|
||||
#define FLMEXPC FLMEXTC FLMEXP
|
||||
|
||||
/****************************************************************************
|
||||
Desc: Argument lists
|
||||
@@ -1057,9 +1059,9 @@
|
||||
Desc: Startup and shutdown
|
||||
****************************************************************************/
|
||||
|
||||
RCODE FLMAPI ftkStartup( void);
|
||||
FLMEXPC RCODE FLMAPI ftkStartup( void);
|
||||
|
||||
void FLMAPI ftkShutdown( void);
|
||||
FLMEXPC void FLMAPI ftkShutdown( void);
|
||||
|
||||
/****************************************************************************
|
||||
Desc: Global data
|
||||
@@ -23,7 +23,7 @@
|
||||
// $Id$
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#include "ftk.h"
|
||||
#include "flaimtk.h"
|
||||
#include "ftkdynrset.h"
|
||||
|
||||
#define HASH_POS(vp) \
|
||||
|
||||
+6
-6
@@ -27,8 +27,12 @@
|
||||
#ifndef FTKSYS_H
|
||||
#define FTKSYS_H
|
||||
|
||||
#include "ftk.h"
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include "flaimtk.h"
|
||||
|
||||
#ifdef FLM_NLM
|
||||
#if !defined( FLM_RING_ZERO_NLM) && !defined( FLM_LIBC_NLM)
|
||||
#define FLM_LIBC_NLM
|
||||
@@ -117,10 +121,6 @@
|
||||
****************************************************************************/
|
||||
#if defined( FLM_UNIX)
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#ifdef FLM_OSX
|
||||
#include <sys/resource.h>
|
||||
#include <sys/param.h>
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
FTKINC=-I$(top_srcdir)/src
|
||||
FTKLIB=../src/libflaimtk.la
|
||||
|
||||
check_PROGRAMS = ftktest
|
||||
|
||||
ftktest_SOURCES = ftktest.cpp
|
||||
ftktest_CPPFLAGS = $(FTKINC)
|
||||
ftktest_LDADD = $(FTKLIB)
|
||||
|
||||
TESTS = ftktest
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
// $Id$
|
||||
//-------------------------------------------------------------------------
|
||||
|
||||
#include "ftk.h"
|
||||
#include "flaimtk.h"
|
||||
|
||||
#define F_ATOM_TEST_THREADS 64
|
||||
#define F_ATOM_TEST_ITERATIONS 100000
|
||||
@@ -4327,7 +4327,7 @@ int main(
|
||||
}
|
||||
|
||||
if( RC_BAD( rc = pArgSet->addArg( "port", "listener port for RPC requests",
|
||||
TRUE, F_ARG_OPTION, F_ARG_CONTENT_UNSIGNED_INT, 1, 65535)))
|
||||
TRUE, F_ARG_OPTION, F_ARG_CONTENT_UNSIGNED_INT, (FLMUINT)1, (FLMUINT)65535)))
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
@@ -1,182 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 08:45:10 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Fixed problem of accessing FlmRecord object before it was constructed.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 09:08:00 CEST 2007 - aj@suse.de
|
||||
|
||||
- Add BuildRequires for ncurses-devel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 10 15:46:50 CET 2007 - aj@suse.de
|
||||
|
||||
- Add defattr.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 8 14:20:19 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Changes to support Ubuntu packages, including 64-bit.
|
||||
- Needed to lock the record cache mutex in FlmRecord::Release just before deleting the object to prevent a race condition.
|
||||
- Changed license to LGPL.
|
||||
- Updated copyright.
|
||||
- Added pragmas for windows to remove compiler warnings for VC6 compiler.
|
||||
- Fixed keyword substitution tokens.
|
||||
- Added FlmReadFully() and enhanced the base64 decoder.
|
||||
- Removed commands in makefile that was outputting provides to the spec file.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 2 00:51:49 CET 2007 - ro@suse.de
|
||||
|
||||
- remove self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 16 16:15:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed .exe files from package.
|
||||
- Removed /zp1 compiler switch and added pragmas to do one-byte packing on structures.
|
||||
- Getting rid of references to gv_FlmSysData.
|
||||
- Needed to add a (FLMUINT) cast to a FLMBOOL before it can be cast as a void *.
|
||||
- Fixed mis-typed member of OPT_INFO structure.
|
||||
- Fixed Linux compiler warnings.
|
||||
- Changed several places that needed to access pDbInfo->pProgress instead of just Progress.
|
||||
- Support for Ubuntu and Debian packages
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 29 21:16:21 CEST 2006 - aj@suse.de
|
||||
|
||||
- Remove explicit self-provides
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 8 13:21:13 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for 64 bit numbers.
|
||||
- Modified to use aligned buffers to improve direct I/O efficiency.
|
||||
- Modified block cache allocator to make more efficient use of memory.
|
||||
- Added option to allow disabling of direct I/O on Linux and Unix platforms.
|
||||
- Enhancements to reduce the overhead of growing and shrinking files.
|
||||
- Modified async I/O to make better reuse of available buffers when writes complete out of order.
|
||||
- Fixed some memory leaks and other minor defects.
|
||||
- Added more asserts to debug code.
|
||||
- Enhancements and improvements to the field ID table inside of FlmRecord object.
|
||||
- Updated doxygen document to be more accurate.
|
||||
- Added a gigatest utility for testing bulk loads.
|
||||
- Added more unit tests.
|
||||
- Various tweaks for better support of various platforms and compilers.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 27 14:41:47 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Needed to make some typedefs public for Solaris 8.
|
||||
- Also fixed so that flaimtk.h is copied from ftk.h when building srcdist
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 01:15:10 CEST 2006 - ro@suse.de
|
||||
|
||||
- removed buggy self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 22 16:47:31 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Modified common toolkit formatter to support colors when logging.
|
||||
- Modified to use common formatter in toolkit for logging.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 20 12:57:13 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Logger client was not being set up properly in common toolkit.
|
||||
- Fixed a Netware build issue
|
||||
- Fixed an OS X compiler warning
|
||||
- Fixed linux compiler warning
|
||||
- Needed to lock/unlock the random generator mutex when getting a random number.
|
||||
- f_printf needed to call fflush.
|
||||
- Base 64 decoder needed to return success instead of eof hit.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 19 09:00:27 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Restructured code to use new common toolkit
|
||||
- Support for Netware, including unit tests
|
||||
- Fixed various memory leaks and enabled memory tracking for debug builds.
|
||||
- Made some changes for how async I/O is supported on Solaris.
|
||||
- Fixed various compiler warnings on various platforms.
|
||||
- Added more documentation.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 1 13:30:07 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 30 11:37:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Sparc Linux and OpenSuse 10.1
|
||||
- Various Makefile changes for HP-UX, OS X, and Solaris
|
||||
- Various code cleanups to support a common toolkit
|
||||
- Got rid of timeouts for internal transactions.
|
||||
- Removed some unused methods from the FlmRecord class.
|
||||
- Fixed defect where partial blocks were being written at the end of database files
|
||||
- Fixed race condition that was causing memory to be double-freed.
|
||||
- Added better support for atomic operations on various Unix and Linux platforms.
|
||||
- Allow application to exceed hardcoded cache limits when setting a hard cache limit.
|
||||
- Changed RCODE to be an enumerated type - for easier documentation in doxygen.
|
||||
- Fixed various compiler issues for solaris platform
|
||||
- Added support for large binary and text fields (up to 4 GB)
|
||||
- Added async and direct I/O support for Linux and Solaris
|
||||
- Added new field table for level one fields inside FlmRecords to speed up searches.
|
||||
- Added support for Netware
|
||||
- Fixed double mutex lock issue.
|
||||
- Added support for building Windows binaries with Visual Studio 8.
|
||||
- Modified slab manager on Solaris to use regular malloc calls instead of mmap.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 28 13:41:42 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Intel MAC and __sparc49 (64 bit) platforms
|
||||
- Initialized variables to quiet compiler warnings
|
||||
- Got rid of unneeded internal functions
|
||||
- Various fixes for Windows - support for vc8 compiler, workaround to compiler issues with inline methods
|
||||
- Fixedup copyright notice in one source file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 11:14:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Changed naming convention for shared library to conform to standard - should be no need for SONAME fix now.
|
||||
- Added dbshell utility.
|
||||
- Started adding support for using autotools.
|
||||
- Fixed bug on FlmDbReduceSize - needed to quit when encountering a block in a not-yet-deleted b-tree
|
||||
- Added various new unit tests.
|
||||
- Fixed various compiler warnings.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 16:21:11 CET 2006 - ro@suse.de
|
||||
|
||||
- install the SONAME at least as symlink (should be the real file)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 09:49:29 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed make.exe and printf.exe from package.
|
||||
- Added support for Ubuntu and Debian
|
||||
- Simplified how unit tests are created.
|
||||
- Added some new unit tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 13:14:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed libflaim.pc to specify includedir and Cflags:
|
||||
- Also changed name: to Name:
|
||||
- Modified Makefile to use macros for outputting $ and % characters
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 09:13:02 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for PowerPC architectures
|
||||
- Changed so that revision number for RPMs will match version number
|
||||
- in SVN repository.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 1 11:54:08 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Initial submission
|
||||
|
||||
@@ -1,172 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 08:47:22 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Modified so that the java and xedit targets do not require the svn revision to be calculated.
|
||||
- Added support for building with an openssl-enabled toolkit.
|
||||
- Added public to Query class constructor (JAVA).
|
||||
- Increased buffer size for con_printf.
|
||||
- Fixed help for export command in xshell utility.
|
||||
- Fixed exportXML JAVA method to add a null character to string for C++ layer .
|
||||
- Changed JAVA setupQueryExpr method to produce a UTF8 string for C++ layer.
|
||||
- Needed to release an open file stream in the import command.
|
||||
- Changed PosIStream to IStream in JAVA code.
|
||||
- Query parser needed to resolve the name when no prefix was specified using a NULL namespace.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 13:16:58 CEST 2007 - aj@suse.de
|
||||
|
||||
- Add BuildRequires for ncurses-devel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 9 08:56:19 CET 2007 - aj@suse.de
|
||||
|
||||
- Add defattr.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 8 14:20:19 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Changed license to LGPL.
|
||||
- Fixed keyword substitution tokens.
|
||||
- Added code to automatically start a read transaction (if needed) when iterating over a result set.
|
||||
- Added code to handle the 'xml' namespace prefix.
|
||||
- Added FlmReadFully() and enhanced the base64 decoder.
|
||||
- Removed commands in makefile that was outputting provides to the spec file.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 2 00:52:07 CET 2007 - ro@suse.de
|
||||
|
||||
- remove self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 16 16:10:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed .exe files from package.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 17 16:40:11 CEST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed various issues for Solaris builds: warnings, unit tests crash, and alignment issues.
|
||||
- Various enhancements and bug fixes in the B-Tree code.
|
||||
- Changes to remove 1-byte packing (zp1) flags from build.
|
||||
- Fixed bug in storeTextAsBinary().
|
||||
- Added C# bindings.
|
||||
- Updated javadoc documentation.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 29 21:17:13 CEST 2006 - aj@suse.de
|
||||
|
||||
- Removed self-provides on devel subpackage.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 8 13:30:47 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Enhanced and updated the Java interfaces to be more complete, including javadoc.
|
||||
- Modified Makefile to generate javadoc documentation.
|
||||
- Got the Java XEdit utility working again.
|
||||
- Modified to use aligned buffers to improve direct I/O efficiency.
|
||||
- Modified block cache allocator to make more efficient use of memory.
|
||||
- Added option to allow disabling of direct I/O on Linux and Unix platforms.
|
||||
- Enhancements to reduce the overhead of growing and shrinking files.
|
||||
- Modified async I/O to make better reuse of available buffers when writes complete out of order.
|
||||
- Fixed some memory leaks and other minor defects.
|
||||
- Various tweaks for better support of various platforms and compilers.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 27 14:43:35 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Needed to make some typedefs public for Solaris 8.
|
||||
- Also fixed so that xflaimtk.h is copied from ftk.h when building srcdist
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jun 25 01:26:42 CEST 2006 - ro@suse.de
|
||||
|
||||
- removed buggy self-provides on devel subpackage
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 15:44:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Changed to depend on java2-devel-packages instead of java2
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 22 16:46:11 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Modified common toolkit formatter to support colors when logging.
|
||||
- Modified to use common formatter in toolkit for logging.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 20 12:59:32 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Logger client was not being set up properly in common toolkit.
|
||||
- Fixed a Netware build issue
|
||||
- Fixed an OS X compiler warning
|
||||
- Fixed linux compiler warning
|
||||
- Needed to lock/unlock the random generator mutex when getting a random number.
|
||||
- f_printf needed to call fflush.
|
||||
- Base 64 decoder needed to return success instead of eof hit.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 19 09:03:38 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Moved the super-file handle into FTK.
|
||||
- Fixed various memory leaks in the unit tests.
|
||||
- Support for builing ring zero NLMs on Netware.
|
||||
- Moved dynamic result set code to common toolkit.
|
||||
- Added more asserts.
|
||||
- Fixed more compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 1 13:32:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 30 11:37:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added JNI support.
|
||||
- Added password parameter to the backup method.
|
||||
- Modified to use a common toolkit layer for various functions that are common to FLAIM and XFLAIM
|
||||
- Added support for Sparc Linux and OpenSuse 10.1
|
||||
- Various Makefile changes for HP-UX, OS X, and Solaris
|
||||
- Various code cleanups to support a common toolkit
|
||||
- Got rid of timeouts for internal transactions.
|
||||
- Fixed defect where partial blocks were being written at the end of database files
|
||||
- Fixed race condition that was causing memory to be double-freed.
|
||||
- Added better support for atomic operations on various Unix and Linux platforms.
|
||||
- Allow application to exceed hardcoded cache limits when setting a hard cache limit.
|
||||
- Changed all RCODE values so they are different from those in toolkit.
|
||||
- Fixed various compiler issues for solaris platform
|
||||
- Added support for Netware
|
||||
- Added support for building Windows binaries with Visual Studio 8.
|
||||
- Modified slab manager on Solaris to use regular malloc calls instead of mmap.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 28 13:48:00 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Intel MAC platform and __sparc49 (64 bit solaris).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 11:28:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Started adding support for using autotools
|
||||
- Changed naming convention for shared library to conform to standard.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 09:53:07 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed make.exe and printf.exe from package.
|
||||
- Added support for Ubuntu and Debian
|
||||
- Simplified how unit tests are created.
|
||||
- Added some new unit tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 13:17:00 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed libflaim.pc to specify includedir and Cflags:
|
||||
- Also changed name: to Name:
|
||||
- Modified Makefile to use macros for outputting $ and % characters
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 10:11:53 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Initial Revision
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
Andrew Hodgkinson <ahodgkinson@novell.com>
|
||||
Daniel Sanders <dsanders@novell.com>
|
||||
|
||||
+524
@@ -0,0 +1,524 @@
|
||||
FLAIMSQL SQL library built on FLAIM technology
|
||||
Copyright (c) 2007-2008 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
2008-06-25 John Calcote <john.calcote@gmail.com>
|
||||
|
||||
* Added GNU Autotools build system.
|
||||
|
||||
+237
@@ -0,0 +1,237 @@
|
||||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006, 2007 Free Software Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
Briefly, the shell commands `./configure; make; make install' should
|
||||
configure, build, and install this package. The following
|
||||
more-detailed instructions are generic; see the `README' file for
|
||||
instructions specific to this package.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, and a
|
||||
file `config.log' containing compiler output (useful mainly for
|
||||
debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or simply `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If you are using the cache, and at
|
||||
some point `config.cache' contains results you don't want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You need `configure.ac' if
|
||||
you want to change it or regenerate `configure' using a newer version
|
||||
of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system.
|
||||
|
||||
Running `configure' might take a while. While running, it prints
|
||||
some messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
6. Often, you can also type `make uninstall' to remove the installed
|
||||
files again.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that the
|
||||
`configure' script does not know about. Run `./configure --help' for
|
||||
details on some of the pertinent environment variables.
|
||||
|
||||
You can give `configure' initial values for configuration parameters
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c99 CFLAGS=-g LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you can use GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
With a non-GNU `make', it is safer to compile the package for one
|
||||
architecture at a time in the source code directory. After you have
|
||||
installed the package for one architecture, use `make distclean' before
|
||||
reconfiguring for another architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' installs the package's commands under
|
||||
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
||||
can specify an installation prefix other than `/usr/local' by giving
|
||||
`configure' the option `--prefix=PREFIX'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
|
||||
PREFIX as the prefix for installing programs and libraries.
|
||||
Documentation and other data files still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=DIR' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' cannot figure out automatically,
|
||||
but needs to determine by the type of machine the package will run on.
|
||||
Usually, assuming the package is built to be run on the _same_
|
||||
architectures, `configure' can figure that out, but if it prints a
|
||||
message saying it cannot guess the machine type, give it the
|
||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name which has the form:
|
||||
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
where SYSTEM can have one of these forms:
|
||||
|
||||
OS KERNEL-OS
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the machine type.
|
||||
|
||||
If you are _building_ compiler tools for cross-compiling, you should
|
||||
use the option `--target=TYPE' to select the type of system they will
|
||||
produce code for.
|
||||
|
||||
If you want to _use_ a cross compiler, that generates code for a
|
||||
platform different from the build platform, you should specify the
|
||||
"host" platform (i.e., that on which the generated programs will
|
||||
eventually be run) with `--host=TYPE'.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share, you
|
||||
can create a site shell script called `config.site' that gives default
|
||||
values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Defining Variables
|
||||
==================
|
||||
|
||||
Variables not defined in a site shell script can be set in the
|
||||
environment passed to `configure'. However, some packages may run
|
||||
configure again during the build, and the customized values of these
|
||||
variables may be lost. In order to avoid this problem, you should set
|
||||
them in the `configure' command line, using `VAR=value'. For example:
|
||||
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
||||
`configure' recognizes the following options to control how it operates.
|
||||
|
||||
`--help'
|
||||
`-h'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--version'
|
||||
`-V'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Enable the cache: use and save the results of the tests in FILE,
|
||||
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
||||
disable caching.
|
||||
|
||||
`--config-cache'
|
||||
`-C'
|
||||
Alias for `--cache-file=config.cache'.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
EXTRA_DIST = GNUMakefile
|
||||
|
||||
SUBDIRS = $(subdirs) src obs
|
||||
|
||||
doc_DATA = AUTHORS ChangeLog COPYING INSTALL NEWS README
|
||||
|
||||
rpms srcrpm: dist
|
||||
$(MAKE) -C obs $(AM_MAKEFLAGS) $@
|
||||
rpmarch=`rpm --showrc | grep ^build\ arch | sed 's/\(.*: \)\(.*\)/\2/'`; \
|
||||
test -z $$rpmarch || ( mv $$rpmarch/* .; rm -rf $$rpmarch )
|
||||
-rm -rf $(distdir)
|
||||
|
||||
dist-hook:
|
||||
-rm -rf `find $(distdir) -name .svn`
|
||||
|
||||
.PHONY: srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
FLAIMSQL - SQL library built on FLAIM technology
|
||||
------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,166 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([SQLFLAIM], [6.0], [flaim-users@forge.novell.com])
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror])
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([dlopen])
|
||||
|
||||
AC_LANG(C++)
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([src/flaimsql.h])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_INSTALL
|
||||
|
||||
# Checks for optional programs.
|
||||
AC_PROG_TRY_DOXYGEN
|
||||
|
||||
# Configure FTKLIB and FTKINC variables.
|
||||
AC_ARG_VAR([FTKLIB], [The PATH wherein libflaimtk.la can be found.])
|
||||
AC_ARG_VAR([FTKINC], [The PATH wherein flaimtk.h can be found.])
|
||||
|
||||
# Ensure that both or neither FTK paths were specified.
|
||||
if (test -n "$FTKLIB" && test -z "$FTKINC") || \
|
||||
(test -n "$FTKINC" && test -z "$FTKLIB"); then
|
||||
AC_MSG_ERROR([Specify both FTK library and include paths, or neither.])
|
||||
fi
|
||||
|
||||
# Not specified? Check for FTK in standard places.
|
||||
if test -z "$FTKLIB"; then
|
||||
# Check for flaim tool kit as a sub-project.
|
||||
if test -d "$srcdir/ftk"; then
|
||||
AC_CONFIG_SUBDIRS([ftk])
|
||||
FTKINC='$(top_srcdir)/ftk/src'
|
||||
FTKLIB='$(top_builddir)/ftk/src'
|
||||
else
|
||||
# Check for flaim tool kit as a super-project.
|
||||
if test -d "$srcdir/../ftk"; then
|
||||
FTKINC='$(top_srcdir)/../ftk/src'
|
||||
FTKLIB='$(top_builddir)/../ftk/src'
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Still empty? Check for *installed* flaim tool kit.
|
||||
if test -z "$FTKLIB"; then
|
||||
AC_CHECK_LIB([flaimtk], [ftkFastChecksum],
|
||||
[AC_CHECK_HEADERS([flaimtk.h])
|
||||
LIBS="-lflaimtk $LIBS"],
|
||||
[AC_MSG_ERROR([No FLAIM Took Kit found. Terminating.])])
|
||||
fi
|
||||
|
||||
# AC_SUBST command line variables from FTKLIB and FTKINC.
|
||||
if test -n "$FTKLIB"; then
|
||||
AC_SUBST([FTK_LTLIB], ["$FTKLIB/libflaimtk.la"])
|
||||
AC_SUBST([FTK_INCLUDE], ["-I$FTKINC"])
|
||||
fi
|
||||
|
||||
# Configure options: --enable-debug[=no].
|
||||
AC_ARG_ENABLE([debug],
|
||||
[AS_HELP_STRING([--enable-debug],
|
||||
[enable debug code (default is no)])],
|
||||
[debug="$withval"], [debug=no])
|
||||
|
||||
# Check for doxygen program.
|
||||
if test -z "$DOXYGEN"; then
|
||||
echo "-----------------------------------------"
|
||||
echo " No Doxygen program found - continuing"
|
||||
echo " without Doxygen documentation support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_DOXYGEN], [test "x$DOXYGEN" != x])
|
||||
|
||||
# Checks for libraries.
|
||||
|
||||
# Checks for header files.
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_HEADER_STDBOOL
|
||||
AC_C_INLINE
|
||||
|
||||
# Checks for library functions.
|
||||
|
||||
# Configure compiler and platform flags and options.
|
||||
# This stuff was in the original makefile...
|
||||
# Personally, I believe -O2 does as good a job as
|
||||
# a hand-coded set of optimization flags...
|
||||
gcc_opt_flags="-O -foptimize-sibling-calls
|
||||
-fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks
|
||||
-frerun-cse-after-loop -frerun-loop-opt -fgcse
|
||||
-fgcse-lm -fgcse-sm -fdelete-null-pointer-checks
|
||||
-fexpensive-optimizations -fregmove -fsched-interblock
|
||||
-fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -fcrossjumping"
|
||||
|
||||
# Enable g++ specific compiler flags.
|
||||
# Currently, enabling all warnings displays the type-pun error dozens
|
||||
# of times, and of course enabling warnings as werrors breaks the build
|
||||
#if test "x$CXX" = "xg++"; then
|
||||
# CXXFLAGS="$CXXFLAGS -Wall -Werror"
|
||||
# CXXFLAGS="$CXXFLAGS $gcc_opt_flags"
|
||||
#fi
|
||||
|
||||
# Configure DEBUG source code, if requested.
|
||||
if test "x$debug" = xyes; then
|
||||
AC_DEFINE([FLM_DEBUG], [], [Define to enable FLAIM debug features])
|
||||
fi
|
||||
|
||||
# Configure global pre-processor definitions.
|
||||
AC_DEFINE([_REENTRANT], [], [Define for reentrant code])
|
||||
AC_DEFINE([_LARGEFILE64_SOURCE], [], [Define for 64-bit data files])
|
||||
AC_DEFINE([_LARGEFILE_SOURCE], [], [Define for 64-bit data files])
|
||||
|
||||
# Configure supported platforms' compiler and linker flags.
|
||||
case $host in
|
||||
sparc-*-solaris*)
|
||||
LDFLAGS="$LDFLAGS -R /usr/lib/lwp"
|
||||
if "x$CXX" != "xg++"; then
|
||||
if "x$debug" = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -xO3"
|
||||
fi
|
||||
SUN_STUDIO_COMPILER=`"$CXX" -V | grep "Sun C++"`
|
||||
if "x$SUN_STUDIO_COMPILER" = "xSun C++"; then
|
||||
CXXFLAGS="$CXXFLAGS -errwarn=%all -errtags -erroff=hidef,inllargeuse,doubunder"
|
||||
fi
|
||||
fi ;;
|
||||
|
||||
*-apple-darwin*)
|
||||
AC_DEFINE([OSX], [],
|
||||
[Define if building on Apple OSX.]) ;;
|
||||
|
||||
*-*-aix*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
CXXFLAGS="$CXXFLAGS -qthreaded -qstrict -q$build_bits"
|
||||
LDFLAGS="$LDFLAGS -q$build_bits -X$build_bits"
|
||||
fi ;;
|
||||
|
||||
*-*-hpux*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
# Disable "Placement operator delete invocation is not yet implemented" warning
|
||||
CXXFLAGS="$CXXFLAGS +W930"
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
obs/sqlflaim.spec
|
||||
obs/Makefile
|
||||
src/Makefile])
|
||||
AC_OUTPUT
|
||||
|
||||
echo "
|
||||
FLAIM SQL Database Library ($PACKAGE_NAME) version $PACKAGE_VERSION
|
||||
Prefix.........: $prefix
|
||||
Debug Build....: $debug
|
||||
C++ Compiler...: $CXX $CXXFLAGS $CPPFLAGS
|
||||
Linker.........: $LD $LDFLAGS $LIBS
|
||||
FTK Library....: ${FTKLIB:-INSTALLED}
|
||||
FTK Include....: ${FTKINC:-INSTALLED}
|
||||
Doxygen........: ${DOXYGEN:-NONE}
|
||||
"
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
dnl @synopsis AC_PROG_TRY_DOXYGEN
|
||||
dnl
|
||||
dnl AC_PROG_TRY_DOXYGEN tests for an existing doxygen program.
|
||||
dnl It sets or uses the environment variable DOXYGEN.
|
||||
dnl
|
||||
dnl You can use the DOXYGEN variable in your Makefile.in, with
|
||||
dnl @DOXYGEN@.
|
||||
dnl
|
||||
dnl @category Doxygen
|
||||
dnl @author John Calcote <john.calcote@gmail.com>
|
||||
dnl @version 2008-06-24
|
||||
dnl @license AllPermissive
|
||||
|
||||
AC_DEFUN([AC_PROG_TRY_DOXYGEN],[
|
||||
AC_REQUIRE([AC_EXEEXT])dnl
|
||||
test -z "$DOXYGEN" && AC_CHECK_PROGS([DOXYGEN], [doxygen$EXEEXT])dnl
|
||||
])
|
||||
Binary file not shown.
@@ -0,0 +1,26 @@
|
||||
rpmspec = $(PACKAGE_TARNAME).spec
|
||||
|
||||
rpmmacros =\
|
||||
--define='_rpmdir $(PWD)'\
|
||||
--define='_srcrpmdir $(PWD)'\
|
||||
--define='_sourcedir $(PWD)'\
|
||||
--define='_specdir $(PWD)'\
|
||||
--define='_builddir $(PWD)'
|
||||
|
||||
rpmopts = --nodeps --buildroot='$(PWD)/_rpm'
|
||||
|
||||
rpmcheck:
|
||||
@which rpmbuild &> /dev/null; \
|
||||
if [ $$? -ne 0 ]; then \
|
||||
echo "*** This make target requires an rpm-based linux distribution."; \
|
||||
(exit 1); exit 1; \
|
||||
fi
|
||||
|
||||
srcrpm: rpmcheck $(rpmspec)
|
||||
rpmbuild -bs $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
rpms: rpmcheck $(rpmspec)
|
||||
rpmbuild -ba $(rpmmacros) $(rpmopts) $(rpmspec)
|
||||
|
||||
.PHONY: rpmcheck srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
Name: @PACKAGE_TARNAME@
|
||||
BuildRequires: gcc-c++ libstdc++-devel
|
||||
Requires: libstdc++
|
||||
Summary: SQLFLAIM is a SQL database library.
|
||||
URL: http://forge.novell.com/modules/xfmod/project/?flaim
|
||||
Version: @PACKAGE_VERSION@
|
||||
Release: 1
|
||||
License: GPL
|
||||
Vendor: Novell, Inc.
|
||||
Group: Development/Libraries/C and C++
|
||||
Source: %{name}-%{version}.tar.gz
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
SQLFLAIM is a SQL database library.
|
||||
|
||||
Authors:
|
||||
--------
|
||||
dsanders@novell.com
|
||||
ahodgkinson@novell.com
|
||||
|
||||
%package devel
|
||||
Summary: SQLFLAIM static library and header file
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description devel
|
||||
SQLFLAIM is a SQL database library.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%configure
|
||||
make
|
||||
|
||||
%install
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
make DESTDIR=${RPM_BUILD_ROOT} install
|
||||
|
||||
# remove installed ftk files if they exist
|
||||
if test -f ${RPM_BUILD_ROOT}/usr/include/flaimtk.h; then
|
||||
rm ${RPM_BUILD_ROOT}/usr/include/flaimtk.h
|
||||
rm ${RPM_BUILD_ROOT}/usr/lib64/libflaimtk.*
|
||||
rm -rf ${RPM_BUILD_ROOT}/usr/share/doc/ftk
|
||||
fi
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_datadir}/doc/%{name}/AUTHORS
|
||||
%doc %{_datadir}/doc/%{name}/ChangeLog
|
||||
%doc %{_datadir}/doc/%{name}/COPYING
|
||||
%doc %{_datadir}/doc/%{name}/INSTALL
|
||||
%doc %{_datadir}/doc/%{name}/NEWS
|
||||
%doc %{_datadir}/doc/%{name}/README
|
||||
%{_libdir}/libflaimsql.la
|
||||
%{_libdir}/libflaimsql.so*
|
||||
|
||||
%files devel
|
||||
%{_libdir}/libflaimsql.a
|
||||
%{_includedir}/flaimsql.h
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
lib_LTLIBRARIES = libflaimsql.la
|
||||
include_HEADERS = flaimsql.h
|
||||
|
||||
libflaimsql_la_SOURCES = \
|
||||
btreeinfo.cpp \
|
||||
checksum.cpp \
|
||||
createdatabase.cpp \
|
||||
createindex.cpp \
|
||||
createtable.cpp \
|
||||
deleterow.cpp \
|
||||
dropdatabase.cpp \
|
||||
dropindex.cpp \
|
||||
droptable.cpp \
|
||||
f_btpool.cpp \
|
||||
f_btpool.h \
|
||||
f_btree.cpp \
|
||||
f_btree.h \
|
||||
fbtrset.cpp \
|
||||
fbtrset.h \
|
||||
fcache.h \
|
||||
fcollate.cpp \
|
||||
fcollate.h \
|
||||
fdbcnfig.cpp \
|
||||
fdbcopy.cpp \
|
||||
fdbrenam.cpp \
|
||||
fdict.cpp \
|
||||
fdict.h \
|
||||
fdllmain.cpp \
|
||||
fdynbuf.cpp \
|
||||
fdynbuf.h \
|
||||
ffilehdr.cpp \
|
||||
filesys.h \
|
||||
flaimsys.h \
|
||||
flbackup.cpp \
|
||||
flclose.cpp \
|
||||
flconvrt.cpp \
|
||||
fldbglog.cpp \
|
||||
flerror.cpp \
|
||||
flgethdr.cpp \
|
||||
flindex.cpp \
|
||||
flkeyret.cpp \
|
||||
flmstat.cpp \
|
||||
flmstat.h \
|
||||
flog.cpp \
|
||||
flog.h \
|
||||
flreduce.cpp \
|
||||
fltrabrt.cpp \
|
||||
fltrbeg.cpp \
|
||||
fltrcmit.cpp \
|
||||
f_nici.cpp \
|
||||
f_nici.h \
|
||||
fnumber.cpp \
|
||||
frestore.cpp \
|
||||
frow.cpp \
|
||||
fsblk_u.cpp \
|
||||
fscursor.cpp \
|
||||
fscursor.h \
|
||||
fsdatacu.cpp \
|
||||
fslfile.cpp \
|
||||
fslfileu.cpp \
|
||||
fsrefupd.cpp \
|
||||
fstructs.h \
|
||||
fsysdata.cpp \
|
||||
funicode.cpp \
|
||||
fvector.cpp \
|
||||
insertrow.cpp \
|
||||
kybldkey.cpp \
|
||||
kybuild.cpp \
|
||||
kycollat.cpp \
|
||||
kyeword.cpp \
|
||||
kyqsort.cpp \
|
||||
kyunlock.cpp \
|
||||
opendatabase.cpp \
|
||||
recover.cpp \
|
||||
rfl.cpp \
|
||||
rfl.h \
|
||||
scache.cpp \
|
||||
select.cpp \
|
||||
sqleval.cpp \
|
||||
sqloptimize.cpp \
|
||||
sqlquery.h \
|
||||
sqlstatement.cpp \
|
||||
sqlstatement.h \
|
||||
translog.cpp \
|
||||
updaterow.cpp \
|
||||
whereclause.cpp
|
||||
|
||||
libflaimsql_la_CPPFLAGS = $(FTK_INCLUDE)
|
||||
libflaimsql_la_LIBADD = $(FTK_LTLIB)
|
||||
libflaimsql_la_LDFLAGS = -version-info 1:0:0
|
||||
@@ -354,12 +354,14 @@ RCODE F_DbSystem::createDatabase(
|
||||
|
||||
if (pCreateOpts != NULL)
|
||||
{
|
||||
pDb->m_pSFileHdl->setBlockSize(
|
||||
flmAdjustBlkSize( pCreateOpts->uiBlockSize));
|
||||
// JMC - FIXME: commented out due to missing function in ftk
|
||||
// pDb->m_pSFileHdl->setBlockSize(
|
||||
// flmAdjustBlkSize( pCreateOpts->uiBlockSize));
|
||||
}
|
||||
else
|
||||
{
|
||||
pDb->m_pSFileHdl->setBlockSize( SFLM_DEFAULT_BLKSIZ);
|
||||
// JMC - FIXME: commented out due to missing function in ftk
|
||||
// pDb->m_pSFileHdl->setBlockSize( SFLM_DEFAULT_BLKSIZ);
|
||||
}
|
||||
|
||||
if (RC_OK( gv_SFlmSysData.pFileSystem->doesFileExist( pszFilePath)))
|
||||
|
||||
@@ -427,7 +427,7 @@ Invalid_Data_Type:
|
||||
{
|
||||
if (RC_BAD( rc = haveToken( "null", FALSE, SQL_ERR_EXPECTING_NULL)))
|
||||
{
|
||||
goto exit;
|
||||
goto Exit;
|
||||
}
|
||||
(*puiFlags) &= (~(COL_NULL_ALLOWED));
|
||||
}
|
||||
|
||||
+7
-7
@@ -11140,7 +11140,7 @@ RCODE F_Btree::btCheck(
|
||||
if( RC_BAD( rc = m_pDb->m_pDatabase->getBlock( m_pDb, m_pLFile,
|
||||
ui32NextBlkAddr, NULL, &pCurrentBlk)))
|
||||
{
|
||||
localErrStruct.type = SCA_GET_BLOCK_FAILED;
|
||||
localErrStruct.type = GET_BLOCK_FAILED;
|
||||
f_sprintf( localErrStruct.szMsg,
|
||||
"Failed to get block at %X", ui32NextBlkAddr);
|
||||
goto Exit;
|
||||
@@ -11181,8 +11181,8 @@ RCODE F_Btree::btCheck(
|
||||
(getBlkAvailSpace(pBlk) / localErrStruct.uiBlocksChecked);
|
||||
localErrStruct.ui64FreeSpace += getBlkAvailSpace(pBlk);
|
||||
|
||||
localErrStruct.LevelStats[ localErrStruct.uiLevels - 1].uiBlkCnt++;
|
||||
localErrStruct.LevelStats[ localErrStruct.uiLevels - 1].uiBytesUsed +=
|
||||
localErrStruct.LevelStats[ localErrStruct.uiLevels - 1].uiDOBlockCnt++;
|
||||
localErrStruct.LevelStats[ localErrStruct.uiLevels - 1].uiDOBytesUsed +=
|
||||
(m_uiBlockSize - getBlkAvailSpace(pBlk));
|
||||
|
||||
uiNumKeys = ((F_BTREE_BLK_HDR *)pBlk)->ui16NumKeys;
|
||||
@@ -11387,7 +11387,7 @@ RCODE F_Btree::btCheck(
|
||||
if( RC_BAD( rc = m_pDb->m_pDatabase->getBlock( m_pDb, m_pLFile,
|
||||
ui32ChildBlkAddr, NULL, &pChildBlk)))
|
||||
{
|
||||
localErrStruct.type = SCA_GET_BLOCK_FAILED;
|
||||
localErrStruct.type = GET_BLOCK_FAILED;
|
||||
f_sprintf( localErrStruct.szMsg, "Failed to get block at %X",
|
||||
ui32ChildBlkAddr);
|
||||
goto Exit;
|
||||
@@ -11415,7 +11415,7 @@ RCODE F_Btree::btCheck(
|
||||
if( RC_BAD( rc = m_pDb->m_pDatabase->getBlock( m_pDb, m_pLFile,
|
||||
ui32NextBlkAddr, NULL, &pCurrentBlk)))
|
||||
{
|
||||
localErrStruct.type = SCA_GET_BLOCK_FAILED;
|
||||
localErrStruct.type = GET_BLOCK_FAILED;
|
||||
f_sprintf( localErrStruct.szMsg,
|
||||
"Failed to get block at %X", ui32ChildBlkAddr);
|
||||
goto Exit;
|
||||
@@ -11470,14 +11470,14 @@ RCODE F_Btree::verifyDOBlkChain(
|
||||
|
||||
while( ui32NextAddr)
|
||||
{
|
||||
errStruct->LevelStats[ errStruct->uiLevels - 1].uiDOBlkCnt++;
|
||||
errStruct->LevelStats[ errStruct->uiLevels - 1].uiDOBlockCnt++;
|
||||
|
||||
// Get the next block
|
||||
|
||||
if( RC_BAD( m_pDb->m_pDatabase->getBlock( m_pDb, m_pLFile,
|
||||
ui32NextAddr, NULL, &pCurrentBlk)))
|
||||
{
|
||||
errStruct->type = SCA_GET_BLOCK_FAILED;
|
||||
errStruct->type = GET_BLOCK_FAILED;
|
||||
f_sprintf( errStruct->szMsg, "Failed to get block at %X", uiDOAddr);
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
+25
-24
@@ -203,31 +203,32 @@ FINLINE FLMUINT actualEntrySize(
|
||||
|
||||
// Error information returned by btCheck()
|
||||
|
||||
enum BTREE_ERR_TYPE
|
||||
{
|
||||
NO_ERR = 0, // FYI: Visual Studio already defines NOERROR
|
||||
BT_HEADER,
|
||||
KEY_ORDER,
|
||||
DUPLICATE_KEYS,
|
||||
INFINITY_MARKER,
|
||||
CHILD_BLOCK_ADDRESS,
|
||||
SCA_GET_BLOCK_FAILED,
|
||||
MISSING_OVERALL_DATA_LENGTH,
|
||||
NOT_DATA_ONLY_BLOCK,
|
||||
BAD_DO_BLOCK_LENGTHS,
|
||||
BAD_COUNTS,
|
||||
CATASTROPHIC_FAILURE = 999
|
||||
};
|
||||
// JMC - FIXME: commented out - duplicated in flaimtk.h
|
||||
//enum BTREE_ERR_TYPE
|
||||
//{
|
||||
// NO_ERR = 0, // FYI: Visual Studio already defines NOERROR
|
||||
// BT_HEADER,
|
||||
// KEY_ORDER,
|
||||
// DUPLICATE_KEYS,
|
||||
// INFINITY_MARKER,
|
||||
// CHILD_BLOCK_ADDRESS,
|
||||
// SCA_GET_BLOCK_FAILED,
|
||||
// MISSING_OVERALL_DATA_LENGTH,
|
||||
// NOT_DATA_ONLY_BLOCK,
|
||||
// BAD_DO_BLOCK_LENGTHS,
|
||||
// BAD_COUNTS,
|
||||
// CATASTROPHIC_FAILURE = 999
|
||||
//};
|
||||
|
||||
typedef struct
|
||||
{
|
||||
FLMUINT uiKeyCnt;
|
||||
FLMUINT uiFirstKeyCnt;
|
||||
FLMUINT uiBlkCnt;
|
||||
FLMUINT uiBytesUsed;
|
||||
FLMUINT uiDOBlkCnt;
|
||||
FLMUINT uiDOBytesUsed;
|
||||
} BTREE_LEVEL_STATS;
|
||||
//typedef struct
|
||||
//{
|
||||
// FLMUINT uiKeyCnt;
|
||||
// FLMUINT uiFirstKeyCnt;
|
||||
// FLMUINT uiBlkCnt;
|
||||
// FLMUINT uiBytesUsed;
|
||||
// FLMUINT uiDOBlkCnt;
|
||||
// FLMUINT uiDOBytesUsed;
|
||||
//} BTREE_LEVEL_STATS;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
|
||||
+1
-6
@@ -35,13 +35,8 @@
|
||||
|
||||
/// \defgroup flaim_errors FLAIM Error Codes
|
||||
/// \ingroup errors
|
||||
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include "flaimsqltk.h"
|
||||
#include <flaimtk.h>
|
||||
|
||||
// Forward declarations
|
||||
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// Desc: Placeholder for FLAIM's cross-platform toolkit public definitions
|
||||
// and interfaces
|
||||
// Tabs: 3
|
||||
//
|
||||
// Copyright (c) 2006-2007 Novell, Inc. All Rights Reserved.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; version 2.1
|
||||
// of the License.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Library Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, contact Novell, Inc.
|
||||
//
|
||||
// To contact Novell about this file by physical or electronic mail,
|
||||
// you may find current contact information at www.novell.com.
|
||||
//
|
||||
// $Id$
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#include "ftk.h"
|
||||
@@ -29,8 +29,29 @@
|
||||
|
||||
// Public includes
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include "flaimsql.h"
|
||||
|
||||
// Collation bits
|
||||
|
||||
#define HAD_SUB_COLLATION 0x01 // Set if had sub-collating values-diacritics
|
||||
#define HAD_LOWER_CASE 0x02 // Set if you hit a lowercase character
|
||||
#define COMPOUND_MARKER 0x02 // Compound key marker between each piece
|
||||
#define END_COMPOUND_MARKER 0x01 // Last of all compound markers - for post
|
||||
#define NULL_KEY_MARKER 0x03
|
||||
#define COLL_FIRST_SUBSTRING 0x03 // First substring marker
|
||||
#define COLL_MARKER 0x04 // Marks place of sub-collation
|
||||
#define SC_LOWER 0x00 // Only lowercase characters exist
|
||||
#define SC_MIXED 0x01 // Lower/uppercase flags follow in next byte
|
||||
#define SC_UPPER 0x02 // Only upper characters exist
|
||||
#define SC_SUB_COL 0x03 // Sub-collation follows (diacritics|extCh)
|
||||
#define UNK_UNICODE_CODE 0xFFFE // Used for collation
|
||||
#define COLL_TRUNCATED 0x0C // This key piece has been truncated from original
|
||||
#define MAX_COL_OPCODE COLL_TRUNCATED
|
||||
|
||||
#if defined( FLM_WIN)
|
||||
// Conversion from XXX to YYY, possible loss of data
|
||||
#pragma warning( disable : 4244)
|
||||
@@ -4408,6 +4429,8 @@ public:
|
||||
FLMUINT uiFileNumber,
|
||||
char * pszPath);
|
||||
|
||||
FLMUINT64 FLMAPI getMaxFileSize( void);
|
||||
|
||||
static void bldSuperFileExtension(
|
||||
FLMUINT uiFileNum,
|
||||
char * pszFileExtension);
|
||||
|
||||
@@ -1571,7 +1571,8 @@ FSTATIC RCODE flmRestoreFile(
|
||||
|
||||
if( !bIncremental)
|
||||
{
|
||||
pSFile->setBlockSize( uiBlockSize);
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// pSFile->setBlockSize( uiBlockSize);
|
||||
}
|
||||
|
||||
// Make sure the maximum block file size matches what was read from the
|
||||
@@ -2347,7 +2348,7 @@ RCODE F_BackerStream::flush( void)
|
||||
// Wait for the background thread to become idle. When it
|
||||
// does, we know that all writes have completed.
|
||||
|
||||
if( RC_BAD( rc = f_semWait( m_hIdleSem, F_SEM_WAITFOREVER)))
|
||||
if( RC_BAD( rc = f_semWait( m_hIdleSem, F_WAITFOREVER)))
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
@@ -2401,7 +2402,7 @@ RCODE F_BackerStream::signalThread( void)
|
||||
|
||||
// Wait for the thread to become idle
|
||||
|
||||
if( RC_BAD( rc = f_semWait( m_hIdleSem, F_SEM_WAITFOREVER)))
|
||||
if( RC_BAD( rc = f_semWait( m_hIdleSem, F_WAITFOREVER)))
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
@@ -2466,7 +2467,7 @@ RCODE F_BackerStream::readThread(
|
||||
f_semSignal( pBackerStream->m_hIdleSem);
|
||||
|
||||
if( RC_BAD( rc = f_semWait( pBackerStream->m_hDataSem,
|
||||
F_SEM_WAITFOREVER)))
|
||||
F_WAITFOREVER)))
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
@@ -2505,7 +2506,7 @@ RCODE FLMAPI F_BackerStream::writeThread(
|
||||
f_semSignal( pBackerStream->m_hIdleSem);
|
||||
|
||||
if( RC_BAD( rc = f_semWait( pBackerStream->m_hDataSem,
|
||||
F_SEM_WAITFOREVER)))
|
||||
F_WAITFOREVER)))
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
@@ -911,7 +911,7 @@ Retry:
|
||||
}
|
||||
|
||||
pThread->setThreadStatus( FLM_THREAD_STATUS_SLEEPING);
|
||||
f_semWait( pDatabase->m_hMaintSem, F_SEM_WAITFOREVER);
|
||||
f_semWait( pDatabase->m_hMaintSem, F_WAITFOREVER);
|
||||
|
||||
if (pThread->getShutdownFlag())
|
||||
{
|
||||
|
||||
+18
-2
@@ -588,7 +588,7 @@ RCODE flmWaitNotifyReq(
|
||||
|
||||
f_mutexUnlock( hMutex);
|
||||
|
||||
if( RC_BAD( TempRc = f_semWait( notifyItem.hSem, F_SEM_WAITFOREVER)))
|
||||
if( RC_BAD( TempRc = f_semWait( notifyItem.hSem, F_WAITFOREVER)))
|
||||
{
|
||||
rc = TempRc;
|
||||
}
|
||||
@@ -697,7 +697,8 @@ RCODE F_Db::linkToDatabase(
|
||||
|
||||
if( pDatabase->m_lastCommittedDbHdr.ui32DbVersion)
|
||||
{
|
||||
m_pSFileHdl->setBlockSize( pDatabase->m_uiBlockSize);
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// m_pSFileHdl->setBlockSize( pDatabase->m_uiBlockSize);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3256,6 +3257,21 @@ FLMUINT FLMAPI F_SuperFileClient::getFileOffset(
|
||||
{
|
||||
return( FSGetFileOffset( uiBlockAddr));
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Desc:
|
||||
****************************************************************************/
|
||||
FLMUINT64 FLMAPI F_SuperFileClient::getMaxFileSize( void)
|
||||
{
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// if( m_uiDbVersion >= FLM_FILE_FORMAT_VER_4_3)
|
||||
// {
|
||||
// return( gv_FlmSysData.uiMaxFileSize);
|
||||
// }
|
||||
|
||||
#define MAX_FILE_SIZE_VER40 ((FLMUINT)0x7FF00000)
|
||||
return( MAX_FILE_SIZE_VER40);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Desc:
|
||||
|
||||
@@ -1569,7 +1569,8 @@ Exit:
|
||||
if (pCFileHdl)
|
||||
{
|
||||
(void)pSFileHdl->releaseFiles();
|
||||
pSFileHdl->setBlockSize( m_uiBlockSize);
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// pSFileHdl->setBlockSize( m_uiBlockSize);
|
||||
}
|
||||
|
||||
return( rc);
|
||||
@@ -1663,7 +1664,8 @@ RCODE F_Database::startCPThread( void)
|
||||
|
||||
if (m_lastCommittedDbHdr.ui32DbVersion)
|
||||
{
|
||||
pCPInfo->pSFileHdl->setBlockSize( m_uiBlockSize);
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// pCPInfo->pSFileHdl->setBlockSize( m_uiBlockSize);
|
||||
}
|
||||
|
||||
f_memset( &pCPInfo->Stats, 0, sizeof( SFLM_STATS));
|
||||
|
||||
+1
-1
@@ -685,7 +685,7 @@ RCODE F_Rfl::waitForWrites(
|
||||
|
||||
// Now just wait to be signaled.
|
||||
|
||||
if (RC_BAD( TempRc = f_semWait( Waiter.hESem, F_SEM_WAITFOREVER)))
|
||||
if (RC_BAD( TempRc = f_semWait( Waiter.hESem, F_WAITFOREVER)))
|
||||
{
|
||||
RC_UNEXPECTED_ASSERT( TempRc);
|
||||
rc = TempRc;
|
||||
|
||||
+11
-10
@@ -496,16 +496,17 @@ Get_Index:
|
||||
{
|
||||
goto Exit;
|
||||
}
|
||||
if (uiNumOrderByColumns == MAX_ORDER_BY_COLUMNS)
|
||||
{
|
||||
setErrInfo( m_uiCurrLineNum,
|
||||
uiTokenLineOffset,
|
||||
SQL_ERR_TOO_MANY_ORDER_BY_COLUMNS,
|
||||
m_uiCurrLineFilePos,
|
||||
m_uiCurrLineBytes);
|
||||
rc = RC_SET( NE_SFLM_INVALID_SQL);
|
||||
goto Exit;
|
||||
}
|
||||
// JMC - FIXME: commented out due to missing functionality in flaimtk.h
|
||||
// if (uiNumOrderByColumns == MAX_ORDER_BY_COLUMNS)
|
||||
// {
|
||||
// setErrInfo( m_uiCurrLineNum,
|
||||
// uiTokenLineOffset,
|
||||
// SQL_ERR_TOO_MANY_ORDER_BY_COLUMNS,
|
||||
// m_uiCurrLineFilePos,
|
||||
// m_uiCurrLineBytes);
|
||||
// rc = RC_SET( NE_SFLM_INVALID_SQL);
|
||||
// goto Exit;
|
||||
// }
|
||||
|
||||
// See if we have a period after the name.
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ public:
|
||||
|
||||
FINLINE FLMINT FLMAPI AddRef( void)
|
||||
{
|
||||
return( f_atomicInc( &m_refCnt);
|
||||
return( f_atomicInc( &m_refCnt));
|
||||
}
|
||||
|
||||
FINLINE FLMINT FLMAPI Release( void)
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
{
|
||||
if (m_uiErrMsgLen)
|
||||
{
|
||||
return( &m_szErrMsg [0]);
|
||||
return( m_szErrMsg [0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -189,13 +189,13 @@ public:
|
||||
private:
|
||||
|
||||
F_MUTEX m_hMutex;
|
||||
const char * m_pszLastStateInfo;
|
||||
const char * m_pszStateInfo;
|
||||
char * m_szErrMsg [200];
|
||||
FLMUINT m_uiErrMsgLen;
|
||||
RCODE m_rc;
|
||||
FLMUINT m_bHaveError;
|
||||
FLMUINT m_uiNumDiagRecs;
|
||||
}
|
||||
};
|
||||
|
||||
/*============================================================================
|
||||
Desc: SQL statement class. Parses and executes SQL statements. This object
|
||||
@@ -212,8 +212,6 @@ public:
|
||||
|
||||
virtual ~SQLStatement();
|
||||
|
||||
FLMBOOL canRelease( void);
|
||||
|
||||
RCODE setupStatement( void);
|
||||
|
||||
void resetStatement( void);
|
||||
|
||||
+2
-3
@@ -1,4 +1,3 @@
|
||||
Daniel Sanders (dsanders@novell.com)
|
||||
Andrew Hodgkinson (ahodgkinson@novell.com)
|
||||
Andrew Hodgkinson <ahodgkinson@novell.com>
|
||||
Daniel Sanders <dsanders@novell.com>
|
||||
|
||||
... and many others ...
|
||||
|
||||
@@ -1,3 +1,54 @@
|
||||
XFLAIM Database Engine
|
||||
Copyright (c) 2003-2008 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
svn2cl.xsl
|
||||
Copyright (C) 2004, 2005, 2006 Arthur de Jong.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. The name of the author may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
XFLAIM Database Engine
|
||||
Copyright (c) 2003-2007 Novell, Inc. All Rights Reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; version 2.1
|
||||
of the License.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, contact Novell, Inc.
|
||||
|
||||
To contact Novell about this file by physical or electronic mail,
|
||||
you may find current contact information at www.novell.com.
|
||||
|
||||
On a Debian system, a copy of the GNU LGPL is installed in
|
||||
/usr/share/common-licenses/LGPL
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
svn2cl.xsl
|
||||
Copyright (C) 2004, 2005, 2006 Arthur de Jong.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. The name of the author may not be used to endorse or promote
|
||||
products derived from this software without specific prior
|
||||
written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
|
||||
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
||||
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
+179
-1
@@ -1 +1,179 @@
|
||||
* TBD
|
||||
2008-06-25 John Calcote <john.calcote@gmail.com>
|
||||
|
||||
* Added GNU Autotools build system.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
OLD CHANGELOG INFORMATION APPENDED BELOW THIS POINT
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Thu Mar 29 08:47:22 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Modified so that the java and xedit targets do not require the svn revision to be calculated.
|
||||
- Added support for building with an openssl-enabled toolkit.
|
||||
- Added public to Query class constructor (JAVA).
|
||||
- Increased buffer size for con_printf.
|
||||
- Fixed help for export command in xshell utility.
|
||||
- Fixed exportXML JAVA method to add a null character to string for C++ layer .
|
||||
- Changed JAVA setupQueryExpr method to produce a UTF8 string for C++ layer.
|
||||
- Needed to release an open file stream in the import command.
|
||||
- Changed PosIStream to IStream in JAVA code.
|
||||
- Query parser needed to resolve the name when no prefix was specified using a NULL namespace.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 29 13:16:58 CEST 2007 - aj@suse.de
|
||||
|
||||
- Add BuildRequires for ncurses-devel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 9 08:56:19 CET 2007 - aj@suse.de
|
||||
|
||||
- Add defattr.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 8 14:20:19 MST 2007 - dsanders@novell.com
|
||||
|
||||
- Changed license to LGPL.
|
||||
- Fixed keyword substitution tokens.
|
||||
- Added code to automatically start a read transaction (if needed) when iterating over a result set.
|
||||
- Added code to handle the 'xml' namespace prefix.
|
||||
- Added FlmReadFully() and enhanced the base64 decoder.
|
||||
- Removed commands in makefile that was outputting provides to the spec file.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 2 00:52:07 CET 2007 - ro@suse.de
|
||||
|
||||
- remove self-provides from devel package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 16 16:10:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed .exe files from package.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 17 16:40:11 CEST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed various issues for Solaris builds: warnings, unit tests crash, and alignment issues.
|
||||
- Various enhancements and bug fixes in the B-Tree code.
|
||||
- Changes to remove 1-byte packing (zp1) flags from build.
|
||||
- Fixed bug in storeTextAsBinary().
|
||||
- Added C# bindings.
|
||||
- Updated javadoc documentation.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 29 21:17:13 CEST 2006 - aj@suse.de
|
||||
|
||||
- Removed self-provides on devel subpackage.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 8 13:30:47 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Enhanced and updated the Java interfaces to be more complete, including javadoc.
|
||||
- Modified Makefile to generate javadoc documentation.
|
||||
- Got the Java XEdit utility working again.
|
||||
- Modified to use aligned buffers to improve direct I/O efficiency.
|
||||
- Modified block cache allocator to make more efficient use of memory.
|
||||
- Added option to allow disabling of direct I/O on Linux and Unix platforms.
|
||||
- Enhancements to reduce the overhead of growing and shrinking files.
|
||||
- Modified async I/O to make better reuse of available buffers when writes complete out of order.
|
||||
- Fixed some memory leaks and other minor defects.
|
||||
- Various tweaks for better support of various platforms and compilers.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 27 14:43:35 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Needed to make some typedefs public for Solaris 8.
|
||||
- Also fixed so that xflaimtk.h is copied from ftk.h when building srcdist
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jun 25 01:26:42 CEST 2006 - ro@suse.de
|
||||
|
||||
- removed buggy self-provides on devel subpackage
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 15:44:33 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Changed to depend on java2-devel-packages instead of java2
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 22 16:46:11 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Modified common toolkit formatter to support colors when logging.
|
||||
- Modified to use common formatter in toolkit for logging.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 20 12:59:32 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Logger client was not being set up properly in common toolkit.
|
||||
- Fixed a Netware build issue
|
||||
- Fixed an OS X compiler warning
|
||||
- Fixed linux compiler warning
|
||||
- Needed to lock/unlock the random generator mutex when getting a random number.
|
||||
- f_printf needed to call fflush.
|
||||
- Base 64 decoder needed to return success instead of eof hit.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 19 09:03:38 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Moved the super-file handle into FTK.
|
||||
- Fixed various memory leaks in the unit tests.
|
||||
- Support for builing ring zero NLMs on Netware.
|
||||
- Moved dynamic result set code to common toolkit.
|
||||
- Added more asserts.
|
||||
- Fixed more compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 1 13:32:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed compiler warnings for ia64 platform.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 30 11:37:12 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added JNI support.
|
||||
- Added password parameter to the backup method.
|
||||
- Modified to use a common toolkit layer for various functions that are common to FLAIM and XFLAIM
|
||||
- Added support for Sparc Linux and OpenSuse 10.1
|
||||
- Various Makefile changes for HP-UX, OS X, and Solaris
|
||||
- Various code cleanups to support a common toolkit
|
||||
- Got rid of timeouts for internal transactions.
|
||||
- Fixed defect where partial blocks were being written at the end of database files
|
||||
- Fixed race condition that was causing memory to be double-freed.
|
||||
- Added better support for atomic operations on various Unix and Linux platforms.
|
||||
- Allow application to exceed hardcoded cache limits when setting a hard cache limit.
|
||||
- Changed all RCODE values so they are different from those in toolkit.
|
||||
- Fixed various compiler issues for solaris platform
|
||||
- Added support for Netware
|
||||
- Added support for building Windows binaries with Visual Studio 8.
|
||||
- Modified slab manager on Solaris to use regular malloc calls instead of mmap.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 28 13:48:00 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Added support for Intel MAC platform and __sparc49 (64 bit solaris).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 13 11:28:25 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Started adding support for using autotools
|
||||
- Changed naming convention for shared library to conform to standard.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 8 09:53:07 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Removed make.exe and printf.exe from package.
|
||||
- Added support for Ubuntu and Debian
|
||||
- Simplified how unit tests are created.
|
||||
- Added some new unit tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 13:17:00 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Fixed libflaim.pc to specify includedir and Cflags:
|
||||
- Also changed name: to Name:
|
||||
- Modified Makefile to use macros for outputting $ and % characters
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 3 10:11:53 MST 2006 - dsanders@novell.com
|
||||
|
||||
- Initial Revision
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
EXTRA_DIST = GNUMakefile INSTALL.W32 debian netware
|
||||
|
||||
SUBDIRS = $(subdirs) src util sample docs obs
|
||||
|
||||
doc_DATA = AUTHORS ChangeLog COPYING INSTALL NEWS README
|
||||
|
||||
rpms srcrpm: dist
|
||||
$(MAKE) -C obs $(AM_MAKEFLAGS) $@
|
||||
rpmarch=`rpm --showrc | grep ^build\ arch | sed 's/\(.*: \)\(.*\)/\2/'`; \
|
||||
test -z $$rpmarch || ( mv $$rpmarch/* .; rm -rf $$rpmarch )
|
||||
-rm -rf $(distdir)
|
||||
|
||||
dist-hook:
|
||||
-rm -rf `find $(distdir) -name .svn`
|
||||
|
||||
.PHONY: srcrpm rpms
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
XFLAIM Release 5.2
|
||||
------------------
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
XFLAIM - An XML database built on FLAIM technology
|
||||
--------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,213 @@
|
||||
# -*- Autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([XFLAIM], [5.2], [flaim-users@forge.novell.com])
|
||||
AC_CANONICAL_SYSTEM
|
||||
AM_INIT_AUTOMAKE([-Wall -Werror])
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([dlopen])
|
||||
|
||||
AC_LANG(C++)
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([src/xflaim.h])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
# Checks for programs.
|
||||
AC_PROG_CXX
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_INSTALL
|
||||
|
||||
# Checks for optional programs.
|
||||
AC_PROG_TRY_CSC
|
||||
AC_PROG_TRY_CSVM
|
||||
AC_PROG_TRY_JAVAC
|
||||
AC_PROG_TRY_JAVAH
|
||||
AC_PROG_TRY_JAVADOC
|
||||
AC_PROG_TRY_JAR
|
||||
AC_PROG_TRY_DOXYGEN
|
||||
|
||||
# Configure variables: FTKLIB and FTKINC.
|
||||
AC_ARG_VAR([FTKLIB], [The PATH wherein libflaimtk.la can be found.])
|
||||
AC_ARG_VAR([FTKINC], [The PATH wherein flaimtk.h can be found.])
|
||||
|
||||
# Configure options: --enable-debug[=no].
|
||||
AC_ARG_ENABLE([debug],
|
||||
[AS_HELP_STRING([--enable-debug],
|
||||
[enable debug code (default is no)])],
|
||||
[debug="$withval"], [debug=no])
|
||||
|
||||
# Ensure that both or neither FTK paths were specified.
|
||||
if (test -n "$FTKLIB" && test -z "$FTKINC") || \
|
||||
(test -n "$FTKINC" && test -z "$FTKLIB"); then
|
||||
AC_MSG_ERROR([Specify both FTK library and include paths, or neither.])
|
||||
fi
|
||||
|
||||
# Not specified? Check for FTK in standard places.
|
||||
if test -z "$FTKLIB"; then
|
||||
# Check for flaim tool kit as a sub-project.
|
||||
if test -d "$srcdir/ftk"; then
|
||||
AC_CONFIG_SUBDIRS([ftk])
|
||||
FTKINC='$(top_srcdir)/ftk/src'
|
||||
FTKLIB='$(top_builddir)/ftk/src'
|
||||
else
|
||||
# Check for flaim tool kit as a super-project.
|
||||
if test -d "$srcdir/../ftk"; then
|
||||
FTKINC='$(top_srcdir)/../ftk/src'
|
||||
FTKLIB='$(top_builddir)/../ftk/src'
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Still empty? Check for *installed* flaim tool kit.
|
||||
if test -z "$FTKLIB"; then
|
||||
AC_CHECK_LIB([flaimtk], [ftkFastChecksum],
|
||||
[AC_CHECK_HEADERS([flaimtk.h])
|
||||
LIBS="-lflaimtk $LIBS"],
|
||||
[AC_MSG_ERROR([No FLAIM Took Kit found. Terminating.])])
|
||||
fi
|
||||
|
||||
# AC_SUBST command line variables from FTKLIB and FTKINC.
|
||||
if test -n "$FTKLIB"; then
|
||||
AC_SUBST([FTK_LTLIB], ["$FTKLIB/libflaimtk.la"])
|
||||
AC_SUBST([FTK_INCLUDE], ["-I$FTKINC"])
|
||||
fi
|
||||
|
||||
# Check for Java compiler.
|
||||
have_java=yes
|
||||
if test -z "$JAVAC"; then have_java=no; fi
|
||||
if test -z "$JAVAH"; then have_java=no; fi
|
||||
if test -z "$JAR"; then have_java=no; fi
|
||||
if test "x$have_java" = xno; then
|
||||
echo "-----------------------------------------"
|
||||
echo " Some Java tools not found - continuing"
|
||||
echo " without XFLAIM JNI support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_JAVA], [test "x$have_java" = xyes])
|
||||
|
||||
# Check for CSharp compiler.
|
||||
if test -z "$CSC"; then
|
||||
echo "-----------------------------------------"
|
||||
echo " No CSharp compiler found - continuing"
|
||||
echo " without XFLAIM CSHARP support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_CSHARP], [test -n "$CSC"])
|
||||
|
||||
# Check for doxygen program.
|
||||
if test -z "$DOXYGEN"; then
|
||||
echo "-----------------------------------------"
|
||||
echo " No Doxygen program found - continuing"
|
||||
echo " without Doxygen documentation support."
|
||||
echo "-----------------------------------------"
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_DOXYGEN], [test "x$DOXYGEN" != x])
|
||||
|
||||
# Checks for libraries.
|
||||
|
||||
# Checks for header files.
|
||||
AC_CHECK_HEADERS([string.h])
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_HEADER_STDBOOL
|
||||
AC_C_INLINE
|
||||
AC_TYPE_SIZE_T
|
||||
|
||||
# Checks for library functions.
|
||||
AC_CHECK_FUNCS([atexit strerror])
|
||||
|
||||
# Configure compiler and platform flags and options.
|
||||
# This stuff was in the original makefile...
|
||||
# Personally, I believe -O2 does as good a job as
|
||||
# a hand-coded set of optimization flags...
|
||||
gcc_opt_flags="-O -foptimize-sibling-calls
|
||||
-fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks
|
||||
-frerun-cse-after-loop -frerun-loop-opt -fgcse
|
||||
-fgcse-lm -fgcse-sm -fdelete-null-pointer-checks
|
||||
-fexpensive-optimizations -fregmove -fsched-interblock
|
||||
-fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks
|
||||
-freorder-functions -falign-functions -falign-jumps
|
||||
-falign-loops -falign-labels -fcrossjumping"
|
||||
|
||||
# Enable g++ specific compiler flags.
|
||||
# Currently, enabling all warnings displays the type-pun error dozens
|
||||
# of times, and of course enabling warnings as werrors breaks the build
|
||||
#if test "x$CXX" = "xg++"; then
|
||||
# CXXFLAGS="$CXXFLAGS -Wall -Werror"
|
||||
# CXXFLAGS="$CXXFLAGS $gcc_opt_flags"
|
||||
#fi
|
||||
|
||||
# Configure DEBUG source code, if requested.
|
||||
if test "x$debug" = xyes; then
|
||||
AC_DEFINE([FLM_DEBUG], [], [Define to enable FLAIM debug features])
|
||||
fi
|
||||
|
||||
# Configure global pre-processor definitions.
|
||||
AC_DEFINE([_REENTRANT], [], [Define for reentrant code])
|
||||
AC_DEFINE([_LARGEFILE64_SOURCE], [], [Define for 64-bit data files])
|
||||
AC_DEFINE([_LARGEFILE_SOURCE], [], [Define for 64-bit data files])
|
||||
|
||||
# Configure supported platforms' compiler and linker flags.
|
||||
case $host in
|
||||
sparc-*-solaris*)
|
||||
LDFLAGS="$LDFLAGS -R /usr/lib/lwp"
|
||||
if "x$CXX" != "xg++"; then
|
||||
if "x$debug" = xno; then
|
||||
CXXFLAGS="$CXXFLAGS -xO3"
|
||||
fi
|
||||
SUN_STUDIO_COMPILER=`"$CXX" -V | grep "Sun C++"`
|
||||
if "x$SUN_STUDIO_COMPILER" = "xSun C++"; then
|
||||
CXXFLAGS="$CXXFLAGS -errwarn=%all -errtags -erroff=hidef,inllargeuse,doubunder"
|
||||
fi
|
||||
fi ;;
|
||||
|
||||
*-apple-darwin*)
|
||||
AC_DEFINE([OSX], [],
|
||||
[Define if building on Apple OSX.]) ;;
|
||||
|
||||
*-*-aix*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
CXXFLAGS="$CXXFLAGS -qthreaded -qstrict"
|
||||
fi ;;
|
||||
|
||||
*-*-hpux*)
|
||||
if "x$CXX" != "xg++"; then
|
||||
# Disable "Placement operator delete invocation is not yet implemented" warning
|
||||
CXXFLAGS="$CXXFLAGS +W930"
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
docs/Makefile
|
||||
docs/doxygen/Makefile
|
||||
docs/doxygen/doxyfile
|
||||
obs/Makefile
|
||||
obs/xflaim.spec
|
||||
sample/Makefile
|
||||
src/Makefile
|
||||
src/cs/Makefile
|
||||
src/cs/wrapper/Makefile
|
||||
src/java/Makefile
|
||||
src/java/wrapper/Makefile
|
||||
util/Makefile])
|
||||
AC_OUTPUT
|
||||
|
||||
echo "
|
||||
XFLAIM XML Database Library ($PACKAGE_NAME) version $PACKAGE_VERSION
|
||||
Prefix.........: $prefix
|
||||
Debug Build....: $debug
|
||||
C++ Compiler...: $CXX $CXXFLAGS $CPPFLAGS
|
||||
Linker.........: $LD $LDFLAGS $LIBS
|
||||
FTK Library....: ${FTKLIB:-INSTALLED}
|
||||
FTK Include....: ${FTKINC:-INSTALLED}
|
||||
CSharp Compiler: ${CSC:-NONE} $CSCFLAGS
|
||||
CSharp VM......: ${CSVM:-NONE}
|
||||
Java Compiler..: ${JAVAC:-NONE} $JAVACFLAGS
|
||||
JavaH Utility..: ${JAVAH:-NONE} $JAVAHFLAGS
|
||||
Jar Utility....: ${JAR:-NONE} $JARFLAGS
|
||||
Javadoc Utility: ${JAVADOC:-NONE}
|
||||
Doxygen........: ${DOXYGEN:-NONE}
|
||||
"
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
EXTRA_DIST = XFLAIMArchitecture.odg XFLAIMArchitecture.png
|
||||
|
||||
if HAVE_DOXYGEN
|
||||
SUBDIRS = doxygen
|
||||
endif
|
||||
|
||||
doc_DATA = XFLAIMArchitecture.odg XFLAIMArchitecture.png
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user