Skip to content

Commit d63bfad

Browse files
committed
Initial checkin
1 parent 2bef5ee commit d63bfad

File tree

1,068 files changed

+793631
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,068 files changed

+793631
-0
lines changed

Diff for: AUTHORS

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Mark Lindner - Main development
2+
Andrew Tytula - Contributed to Windows porting effort
3+

Diff for: BLURB

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
2+
commonc++ is a C++ class library for developing cross-platform systems
3+
software for POSIX (GNU/Linux, Mac OS X) and Windows (2000/XP)
4+
systems. It provides an intuitive, object-oriented
5+
abstraction/portability layer around common operating system
6+
facilities like threads, concurrency mechanisms, sockets, networking,
7+
shared memory and other IPC mechanisms, regular expressions, files,
8+
streams, logging, process execution, scheduling, and more. It also
9+
includes a collection of common abstractions like strings, buffers,
10+
object pools, a random number generator, timers, and so on. Three
11+
extension libraries also provide simple object persistence built on
12+
Berkeley DB, XML parsing/manipulation built on Expat, and a Java
13+
Native Interface (JNI) wrapper to ease the development of hybrid
14+
C++/Java programs.

Diff for: COPYING

+510
Large diffs are not rendered by default.

Diff for: COPYING.LIB

+510
Large diffs are not rendered by default.

Diff for: ChangeLog

+2,305
Large diffs are not rendered by default.

Diff for: INSTALL

+229
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
Copyright 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
2+
Foundation, Inc.
3+
4+
This file is free documentation; the Free Software Foundation gives
5+
unlimited permission to copy, distribute and modify it.
6+
7+
Basic Installation
8+
==================
9+
10+
These are generic installation instructions.
11+
12+
The `configure' shell script attempts to guess correct values for
13+
various system-dependent variables used during compilation. It uses
14+
those values to create a `Makefile' in each directory of the package.
15+
It may also create one or more `.h' files containing system-dependent
16+
definitions. Finally, it creates a shell script `config.status' that
17+
you can run in the future to recreate the current configuration, and a
18+
file `config.log' containing compiler output (useful mainly for
19+
debugging `configure').
20+
21+
It can also use an optional file (typically called `config.cache'
22+
and enabled with `--cache-file=config.cache' or simply `-C') that saves
23+
the results of its tests to speed up reconfiguring. (Caching is
24+
disabled by default to prevent problems with accidental use of stale
25+
cache files.)
26+
27+
If you need to do unusual things to compile the package, please try
28+
to figure out how `configure' could check whether to do them, and mail
29+
diffs or instructions to the address given in the `README' so they can
30+
be considered for the next release. If you are using the cache, and at
31+
some point `config.cache' contains results you don't want to keep, you
32+
may remove or edit it.
33+
34+
The file `configure.ac' (or `configure.in') is used to create
35+
`configure' by a program called `autoconf'. You only need
36+
`configure.ac' if you want to change it or regenerate `configure' using
37+
a newer version of `autoconf'.
38+
39+
The simplest way to compile this package is:
40+
41+
1. `cd' to the directory containing the package's source code and type
42+
`./configure' to configure the package for your system. If you're
43+
using `csh' on an old version of System V, you might need to type
44+
`sh ./configure' instead to prevent `csh' from trying to execute
45+
`configure' itself.
46+
47+
Running `configure' takes awhile. While running, it prints some
48+
messages telling which features it is checking for.
49+
50+
2. Type `make' to compile the package.
51+
52+
3. Optionally, type `make check' to run any self-tests that come with
53+
the package.
54+
55+
4. Type `make install' to install the programs and any data files and
56+
documentation.
57+
58+
5. You can remove the program binaries and object files from the
59+
source code directory by typing `make clean'. To also remove the
60+
files that `configure' created (so you can compile the package for
61+
a different kind of computer), type `make distclean'. There is
62+
also a `make maintainer-clean' target, but that is intended mainly
63+
for the package's developers. If you use it, you may have to get
64+
all sorts of other programs in order to regenerate files that came
65+
with the distribution.
66+
67+
Compilers and Options
68+
=====================
69+
70+
Some systems require unusual options for compilation or linking that
71+
the `configure' script does not know about. Run `./configure --help'
72+
for details on some of the pertinent environment variables.
73+
74+
You can give `configure' initial values for configuration parameters
75+
by setting variables in the command line or in the environment. Here
76+
is an example:
77+
78+
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
79+
80+
*Note Defining Variables::, for more details.
81+
82+
Compiling For Multiple Architectures
83+
====================================
84+
85+
You can compile the package for more than one kind of computer at the
86+
same time, by placing the object files for each architecture in their
87+
own directory. To do this, you must use a version of `make' that
88+
supports the `VPATH' variable, such as GNU `make'. `cd' to the
89+
directory where you want the object files and executables to go and run
90+
the `configure' script. `configure' automatically checks for the
91+
source code in the directory that `configure' is in and in `..'.
92+
93+
If you have to use a `make' that does not support the `VPATH'
94+
variable, you have to compile the package for one architecture at a
95+
time in the source code directory. After you have installed the
96+
package for one architecture, use `make distclean' before reconfiguring
97+
for another architecture.
98+
99+
Installation Names
100+
==================
101+
102+
By default, `make install' will install the package's files in
103+
`/usr/local/bin', `/usr/local/man', etc. You can specify an
104+
installation prefix other than `/usr/local' by giving `configure' the
105+
option `--prefix=PATH'.
106+
107+
You can specify separate installation prefixes for
108+
architecture-specific files and architecture-independent files. If you
109+
give `configure' the option `--exec-prefix=PATH', the package will use
110+
PATH as the prefix for installing programs and libraries.
111+
Documentation and other data files will still use the regular prefix.
112+
113+
In addition, if you use an unusual directory layout you can give
114+
options like `--bindir=PATH' to specify different values for particular
115+
kinds of files. Run `configure --help' for a list of the directories
116+
you can set and what kinds of files go in them.
117+
118+
If the package supports it, you can cause programs to be installed
119+
with an extra prefix or suffix on their names by giving `configure' the
120+
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
121+
122+
Optional Features
123+
=================
124+
125+
Some packages pay attention to `--enable-FEATURE' options to
126+
`configure', where FEATURE indicates an optional part of the package.
127+
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
128+
is something like `gnu-as' or `x' (for the X Window System). The
129+
`README' should mention any `--enable-' and `--with-' options that the
130+
package recognizes.
131+
132+
For packages that use the X Window System, `configure' can usually
133+
find the X include and library files automatically, but if it doesn't,
134+
you can use the `configure' options `--x-includes=DIR' and
135+
`--x-libraries=DIR' to specify their locations.
136+
137+
Specifying the System Type
138+
==========================
139+
140+
There may be some features `configure' cannot figure out
141+
automatically, but needs to determine by the type of machine the package
142+
will run on. Usually, assuming the package is built to be run on the
143+
_same_ architectures, `configure' can figure that out, but if it prints
144+
a message saying it cannot guess the machine type, give it the
145+
`--build=TYPE' option. TYPE can either be a short name for the system
146+
type, such as `sun4', or a canonical name which has the form:
147+
148+
CPU-COMPANY-SYSTEM
149+
150+
where SYSTEM can have one of these forms:
151+
152+
OS KERNEL-OS
153+
154+
See the file `config.sub' for the possible values of each field. If
155+
`config.sub' isn't included in this package, then this package doesn't
156+
need to know the machine type.
157+
158+
If you are _building_ compiler tools for cross-compiling, you should
159+
use the `--target=TYPE' option to select the type of system they will
160+
produce code for.
161+
162+
If you want to _use_ a cross compiler, that generates code for a
163+
platform different from the build platform, you should specify the
164+
"host" platform (i.e., that on which the generated programs will
165+
eventually be run) with `--host=TYPE'.
166+
167+
Sharing Defaults
168+
================
169+
170+
If you want to set default values for `configure' scripts to share,
171+
you can create a site shell script called `config.site' that gives
172+
default values for variables like `CC', `cache_file', and `prefix'.
173+
`configure' looks for `PREFIX/share/config.site' if it exists, then
174+
`PREFIX/etc/config.site' if it exists. Or, you can set the
175+
`CONFIG_SITE' environment variable to the location of the site script.
176+
A warning: not all `configure' scripts look for a site script.
177+
178+
Defining Variables
179+
==================
180+
181+
Variables not defined in a site shell script can be set in the
182+
environment passed to `configure'. However, some packages may run
183+
configure again during the build, and the customized values of these
184+
variables may be lost. In order to avoid this problem, you should set
185+
them in the `configure' command line, using `VAR=value'. For example:
186+
187+
./configure CC=/usr/local2/bin/gcc
188+
189+
will cause the specified gcc to be used as the C compiler (unless it is
190+
overridden in the site shell script).
191+
192+
`configure' Invocation
193+
======================
194+
195+
`configure' recognizes the following options to control how it
196+
operates.
197+
198+
`--help'
199+
`-h'
200+
Print a summary of the options to `configure', and exit.
201+
202+
`--version'
203+
`-V'
204+
Print the version of Autoconf used to generate the `configure'
205+
script, and exit.
206+
207+
`--cache-file=FILE'
208+
Enable the cache: use and save the results of the tests in FILE,
209+
traditionally `config.cache'. FILE defaults to `/dev/null' to
210+
disable caching.
211+
212+
`--config-cache'
213+
`-C'
214+
Alias for `--cache-file=config.cache'.
215+
216+
`--quiet'
217+
`--silent'
218+
`-q'
219+
Do not print messages saying which checks are being made. To
220+
suppress all normal output, redirect it to `/dev/null' (any error
221+
messages will still be shown).
222+
223+
`--srcdir=DIR'
224+
Look for the package's source code in directory DIR. Usually
225+
`configure' can determine that directory automatically.
226+
227+
`configure' also accepts some other, not widely useful, options. Run
228+
`configure --help' for more details.
229+

Diff for: Makefile.am

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
2+
ACLOCAL_AMFLAGS = -I m4
3+
4+
SUBDIRS=
5+
6+
if MINGW
7+
SUBDIRS += cbits
8+
endif
9+
10+
SUBDIRS += libatomic libstacktrace pcre-8.41 sqlite-3.21.0 lib doc plugintool
11+
12+
if USE_CPPUNIT
13+
SUBDIRS += tests
14+
endif
15+
16+
EXTRA_DIST = \
17+
$(top_srcdir)/*.sln \
18+
$(top_srcdir)/*.vcproj \
19+
$(top_srcdir)/*.vsprops \
20+
$(top_srcdir)/config*.opts \
21+
$(top_srcdir)/m4/*.m4 \
22+
$(top_srcdir)/commonc++.rc \
23+
$(top_srcdir)/deploy.bat \
24+
$(top_srcdir)/pcre-8.41/configure.gnu \
25+
$(top_srcdir)/pcre-8.41/*.win32 \
26+
$(top_srcdir)/pcre-8.41/*.vcproj \
27+
$(top_srcdir)/plugintool/*.vcproj \
28+
$(top_srcdir)/sqlite-3.21.0/configure.gnu \
29+
$(top_srcdir)/sqlite-3.21.0/*.vcproj \
30+
$(top_srcdir)/expat.vc8/examples/* \
31+
$(top_srcdir)/expat.vc8/lib/* \
32+
$(top_srcdir)/expat.vc8/xmlwf/*
33+
34+
dox:
35+
make -C $(top_srcdir)/lib dox
36+
37+
# TODO: inside each <File> tag for a '.c++' file, add this crap:
38+
# <FileConfiguration Name="Debug|Win32">
39+
# <Tool Name="VCCLCompilerTool"/>
40+
# </FileConfiguration>
41+
# <FileConfiguration Name="Release|Win32">
42+
# <Tool Name="VCCLCompilerTool"/>
43+
# </FileConfiguration>
44+

0 commit comments

Comments
 (0)