Skip to content

Commit

Permalink
README.md and DEPENDENCIES.md now shipped with the tarball
Browse files Browse the repository at this point in the history
* Makefile.am [EXTRA_DIST]: added README.md and DEPENDENCIES.md
* minor text updates
  • Loading branch information
sf-mensch committed Dec 8, 2020
1 parent 6fab272 commit d7f2988
Show file tree
Hide file tree
Showing 14 changed files with 76 additions and 41 deletions.
4 changes: 4 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@

2020-12-08 Simon Sobisch <[email protected]>

* Makefile.am [EXTRA_DIST]: added README.md and DEPENDENCIES.md

2020-12-07 Simon Sobisch <[email protected]>

* m4/ax_ac_define_resolved.m4: fixed resolving datarootdir
Expand Down
2 changes: 1 addition & 1 deletion DEPENDENCIES
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ The following libraries ARE required WHEN :
Ncurses is distributed under a BSD style license.

o PDCurses (pdcurses) for MinGW/native windows ports
https://pdcurses.org/ or https://github.com/Bill-Gray/PDCurses/
https://pdcurses.org/ or https://github.com/Bill-Gray/PDCursesMod/

PDCurses is distributed as Public Domain.

Expand Down
27 changes: 19 additions & 8 deletions DEPENDENCIES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
GnuCOBOL uses other software packages, some of these are necessary,
some optional. You find a detailed list of software below.
some optional. You find a detailed list of software below.

These packages provide **compile-time** and **run-time** support. That is,
they include C header files that are used during GnuCOBOL's C
Expand Down Expand Up @@ -48,15 +48,17 @@ GNU Libtool is distributed under GNU Lesser General Public License.
Not Required
============
(but helpful)

All dependencies discussed from this point forward support optional
features of GnuCOBOL.

ISAM Support
------------

Indexed-Sequential file I/O (ISAM) is used. By default, absent other
`configure` options, ISAM support comes from Berkeley DB, but that's only one alternative. Choose *one* of the following:
Support for Indexed-Sequential file I/O (ISAM): By default, absent other
`configure` options, ISAM support comes from Berkeley DB,
but that's only one alternative.
Choose *one* of the following:

* [Berkeley DB](https://www.oracle.com/) (libdb) 4.1 or later
https://www.oracle.com/technology/products/berkeley-db/db/index.html
Expand All @@ -67,11 +69,11 @@ Indexed-Sequential file I/O (ISAM) is used. By default, absent other
software, or you have to pay royalty to Oracle.

* [VBISAM](https://sourceforge.net/projects/vbisam/) (libvbisam) 2.0 or later

VBISAM is distributed under GNU Lesser General Public License.

* [DISAM](http://www.isamcentral.com) (libdisam)

DISAM is distributed under the proprietary License
"Byte Designs Ltd. DISAM Software License".

Expand All @@ -87,8 +89,9 @@ by *one* of the following:

Ncurses is distributed under a BSD style license.

* [PDCurses](https://pdcurses.org/ or https://github.com/Bill-Gray/PDCurses/)
(pdcurses) for MinGW and native windows ports
* [PDCurses](https://pdcurses.org/) or
[PDCursesMod](https://github.com/Bill-Gray/PDCursesMod/),
especially for MinGW and native windows ports

PDCurses is distributed as Public Domain.

Expand All @@ -97,14 +100,22 @@ by *one* of the following:
XML Support
-----------

Support for GENERATE XML is provided by:

* [libxml2](http://xmlsoft.org)

libxml2 is distributed under MIT License.

JSON support
------------

Support for GENERATE JSON is provided by *one* of the following:

* [cJSON](https://github.com/DaveGamble/cJSON) >= 1.3.0 -

cJSON is distributed under MIT License.

* [JSON-C](https://github.com/json-c/json-c) >= 1.12 -

JSON-C is distributed under Expat License.

2 changes: 1 addition & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ dist_noinst_SCRIPTS = autogen.sh build_aux/bootstrap po/update_linguas.sh \
# wrapper for the build environment
noinst_SCRIPTS = pre-inst-env

EXTRA_DIST = gnucobol.spec DEPENDENCIES HACKING
EXTRA_DIST = gnucobol.spec DEPENDENCIES DEPENDENCIES.md README.md HACKING

# add rules for code-coverage testing, as defined by AX_CODE_COVERAGE
include $(top_srcdir)/aminclude_static.am
Expand Down
23 changes: 18 additions & 5 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
NEWS - user visible changes -*- outline -*-

GnuCOBOL 3.1.1 to be released (November 2020)

GnuCOBOL 3.1 released (20201111)
GnuCOBOL 3.1.1 released (20201208)
GnuCOBOL 3.1 released (20201111) had issues that were fixed

* New GnuCOBOL features

Expand Down Expand Up @@ -53,6 +52,10 @@ NEWS - user visible changes -*- outline -*-
** on abort a stack trace will be genereated, this can be suppressed by
runtime configuration option COB_STRACK_TRACE

** the dump that is generated on abort (depending on -fdump at compile-time)
was heavily improved and combines consecutive identical OCCURS items,
leading to smaller dump files

** changes in handling COPY statement:
* copybook names that contain an extension aren't searched with additional
extensions [as post-rc1-change this may be set to old behaviour by
Expand Down Expand Up @@ -110,6 +113,10 @@ NEWS - user visible changes -*- outline -*-
** cobc -g (and configure --enable-debug) use the most expressive
debugging options available on the system

** cobc -g now auto-includes references to the COBOL source file and to
all ENTRY and SECTION elements to ease source level debugging



* Changes in the COBOL runtime (libcob)

Expand Down Expand Up @@ -156,7 +163,7 @@ NEWS - user visible changes -*- outline -*-
Note: As a special case you may built-in cJSON by placing its source in
the folder "libcob". If it is included there, this version will be compiled
into libcob. It may be enforced with --with-json=local,
like --with-json==cjson and --with-json==json-c enforce the given library.
like --with-json=cjson and --with-json=json-c enforce the given library.

** To adjust the build system for GMP/MPIR you may use the new variables
GMP_CFLAGS / MPIR_CFLAGS and GMP_LIBS / MPIR_LIBS.
Expand Down Expand Up @@ -205,12 +212,18 @@ NEWS - user visible changes -*- outline -*-
* possibly failing tests (false positives):
* temporary path invalid
* compiler outputs (assembler)
* function with variable-length RETURNING item
* compile from stdin
* NIST: OBNC1M.CBL false positive (the test runner uses a nonportable way of
emulating a program kill)

** the recent additions of ">> TURN" and "variable LIKE variable" may not work
as expected in all cases

** features that are known to not be portable to every environment yet
(especially when using a different compiler than GCC)
* function with variable-length RETURNING item
* USAGE POINTER, which may need to be manually aligned

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

GnuCOBOL 3.0-rc1 released (20180422)
Expand Down
7 changes: 4 additions & 3 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -124,9 +124,10 @@ Tests
============


To run the internal testsuite, simply do
To verify GnuCOBOL works before installing it, run the internal
testsuite. Simply do
make check
This MUST succeed - If not, please report.
This MUST succeed. Please report any failures.

You may optionally perform a series of COBOL85 tests.
make test
Expand All @@ -137,7 +138,7 @@ Tests

** NOTE **
Running "make test" will try to download the COBOL85
testsuite if it is missing.
testsuite if it is neither in the build-tree nor source-tree.
For details see tests/cobol85/README.

If you want to run both testsuites you can run
Expand Down
23 changes: 12 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
GnuCOBOL is a free COBOL compiler licensed under the GNU Public
License (GPL). It implements a substantial part of the COBOL 85,
[GnuCOBOL}(https://www.gnu.org/software/gnucobol/) is a free
COBOL compiler licensed under the GNU Public License (GPL).
It implements a substantial part of the COBOL 85,
COBOL 2002 and COBOL 2014 standards, as well as many extensions
included in other COBOL compilers.

Expand Down Expand Up @@ -30,7 +31,7 @@ Requirements
============

GnuCOBOL uses other software packages, some of these are necessary,
some optional. See DEPENDENCIES for a complete list.
some optional. See DEPENDENCIES.md for a complete list.

If building GnuCOBOL from source, you can choose which optional
functionality to include via the configure script. When using
Expand Down Expand Up @@ -72,19 +73,19 @@ Tests
=====

To verify GnuCOBOL works before installing it, run the internal
testsuite, simply do
testsuite. Simply do

* `make check > log`

This MUST succeed. Please report any failures.

Also included are standard tests provided by the NIST. They are run
with
Also included are COBOL85 standard tests provided by the NIST.
They are run with

* `make test > log`

If for some reason the the COBOL85 testsuite is missing, `make test`
will download it. For details see tests/cobol85/README.
If the the COBOL85 testsuite is not already in the build- or source-tree,
`make test` will download it. For details see tests/cobol85/README.

** NOTE **
The language interpreter "perl" is required to run COBOL85 tests.
Expand All @@ -98,7 +99,7 @@ Installation
============

To install GnuCOBOL, including the compiler, run-time library, and
documentation,
documentation,

* `make install > log`

Expand Down Expand Up @@ -136,15 +137,15 @@ following options,
* `--with-cisam` to use CISAM
* `--with-disam` to use DISAM
* `--with-vbisam` to use VBISAM
* `--with-index-extfh` to use an external ISAM file handler

Development
===========

If you wish to hack the GnuCOBOL source or build from version control,
see HACKING.

Further information about the project, including the source code repository, history, and frequently asked questions, may be found at
Further information about the project, including the source code repository,
history, and frequently asked questions, may be found at

* https://www.gnu.org/software/gnucobol/
* https://sourceforge.net/projects/gnucobol
Expand Down
4 changes: 2 additions & 2 deletions build_windows/version_cobc.rc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#define COB_WITHOUT_EXCEPTIONS
#define COB_WITHOUT_JMP
#include "libcob/common.h"
#define VCS_REF 4019
#define VCS_REF 4070

#define STRINGIZE_DETAIL_(v) #v
#define STRINGIZE(v) STRINGIZE_DETAIL_(v)
Expand Down Expand Up @@ -43,7 +43,7 @@ VS_VERSION_INFO VERSIONINFO
{
// VALUE "Comments", "Free for general use, including commercial (distribution bound to GPL).\0"
// VALUE "CompanyName", "No Company\0"
VALUE "FileDescription", PACKAGE_NAME " compiler for most COBOL dialects with lots of extensions"
VALUE "FileDescription", PACKAGE_NAME " compiler, supporting most COBOL dialects with lots of extensions"
VALUE "FileVersion", STRINGIZE(__LIBCOB_VERSION)"."STRINGIZE(__LIBCOB_VERSION_MINOR)"."STRINGIZE(__LIBCOB_VERSION_PATCHLEVEL)"."STRINGIZE(VCS_REF)
VALUE "InternalName", "cobc"
VALUE "LegalCopyright", "Copyright (C) 2001-2020 Free Software Foundation, Inc."
Expand Down
2 changes: 1 addition & 1 deletion build_windows/version_cobcrun.rc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#define COB_WITHOUT_EXCEPTIONS
#define COB_WITHOUT_JMP
#include "libcob/common.h"
#define VCS_REF 4019
#define VCS_REF 4070

#define STRINGIZE_DETAIL_(v) #v
#define STRINGIZE(v) STRINGIZE_DETAIL_(v)
Expand Down
4 changes: 2 additions & 2 deletions build_windows/version_libcob.rc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#define COB_WITHOUT_EXCEPTIONS
#define COB_WITHOUT_JMP
#include "libcob/common.h"
#define VCS_REF 4019
#define VCS_REF 4070

#define STRINGIZE_DETAIL_(v) #v
#define STRINGIZE(v) STRINGIZE_DETAIL_(v)
Expand Down Expand Up @@ -43,7 +43,7 @@ VS_VERSION_INFO VERSIONINFO
{
// VALUE "Comments", "Free for general use, including commercial (distribution bound to GPL).\0"
// VALUE "CompanyName", "No Company\0"
VALUE "FileDescription", PACKAGE_NAME " Runtime supporting most COBOL dialects with lots of extensions"
VALUE "FileDescription", PACKAGE_NAME " runtime, supporting most COBOL dialects with lots of extensions"
VALUE "FileVersion", STRINGIZE(__LIBCOB_VERSION)"."STRINGIZE(__LIBCOB_VERSION_MINOR)"."STRINGIZE(__LIBCOB_VERSION_PATCHLEVEL)"."STRINGIZE(VCS_REF)
VALUE "InternalName", "libcob"
VALUE "LegalCopyright", "Copyright (C) 2001-2020 Free Software Foundation, Inc."
Expand Down
4 changes: 3 additions & 1 deletion libcob/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,8 @@ only usable with COB_USE_VC2013_OR_GREATER */
#else
#define __i386__
#endif
#else
#define __ia64__
#endif

#endif /* _MSC_VER */
Expand Down Expand Up @@ -2394,7 +2396,7 @@ typedef struct {
COB_EXPIMP void cob_display (const int, const int, const int, ...);
COB_EXPIMP void cob_dump_output (const char *);
COB_EXPIMP void cob_dump_file (const char *, cob_file *);
COB_EXPIMP void cob_dump_field (const int, const char *, cob_field *, const int, const int, ...); /* 3.1 compat */
COB_EXPIMP void cob_dump_field (const int, const char *, cob_field *, const int, const int, ...);
COB_EXPIMP void cob_dump_field_ext (const int, const char *, cob_field *, const cob_uli_t, const cob_u32_t, ...);
COB_EXPIMP void cob_accept (cob_field *);

Expand Down
2 changes: 1 addition & 1 deletion tests/atlocal.in
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ else
fi
if test "x$MSYSTEM" != "x" -o "$OSTYPE" = "cygwin"; then
# running MSYS builds as not-visible child processes result in
# "Redirection is not supported" (at least old PDcurses)
# "Redirection is not supported" (at least old PDCurses)
# --> disabling the tests for this feature
# ncurses is known to work as long as TERM is appropriate
if test $(grep -i -c "ncurses" info.out) != 0; then
Expand Down
5 changes: 4 additions & 1 deletion tests/atlocal_valgrind
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,8 @@ export PATHSEP
prefix="@prefix@"
exec_prefix="@exec_prefix@"

# options that are also used in pre-inst-env (always add to both)
# but not directly in the testsuite
COB_CFLAGS="-I${abs_top_srcdir} @COB_CFLAGS@"
COB_LIBS="-L${abs_top_builddir}/libcob/.libs @COB_LIBS@"
COB_CONFIG_DIR="${abs_top_srcdir}/config"
Expand Down Expand Up @@ -238,6 +240,7 @@ else
else
COB_HAS_JSON="no"
fi
# see note below
if test $(grep -i -c " screen .*disabled" info.out) = 0; then
COB_HAS_CURSES="yes"
else
Expand All @@ -246,7 +249,7 @@ else
fi
if test "x$MSYSTEM" != "x" -o "$OSTYPE" = "cygwin"; then
# running MSYS builds as not-visible child processes result in
# "Redirection is not supported" (at least old PDcurses)
# "Redirection is not supported" (at least old PDCurses)
# --> disabling the tests for this feature
# ncurses is known to work as long as TERM is appropriate
if test $(grep -i -c "ncurses" info.out) != 0; then
Expand Down
8 changes: 4 additions & 4 deletions tests/atlocal_win
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,14 @@ export COB_UNIX_LF
# for runtime configuration ...
COB_RUNTIME_CONFIG="$(_return_path "${abs_top_srcdir}/config/runtime_empty.cfg")"
export COB_RUNTIME_CONFIG
for cobenv in $(${LOCAL_ENV} ${ABS_COBCRUN} --runtime-conf \
for cobenv in $(${LOCAL_ENV} ${COBCRUN} --runtime-conf \
| grep " env:" | cut -d: -f2 | cut -d= -f1 \
| grep -v "PATH" | grep -v "TERM"); \
do _unset_option $cobenv; \
done

# prevent multiple calls by caching the output
${LOCAL_ENV} ${ABS_COBC} --info > info.out
${LOCAL_ENV} ${COBC} --info > info.out

# ... and also unset for the compiler
if test "$GNUCOBOL_TEST_LOCAL" != "1"; then
Expand Down Expand Up @@ -179,7 +179,7 @@ export COB_MSG_FORMAT
fi
if test "x$MSYSTEM" != "x" -o "$OSTYPE" = "cygwin"; then
# running MSYS builds as not-visible child processes result in
# "Redirection is not supported" (at least old PDcurses)
# "Redirection is not supported" (at least old PDCurses)
# --> disabling the tests for this feature
# ncurses is known to work as long as TERM is appropriate
if test $(grep -i -c "ncurses" info.out) != 0; then
Expand All @@ -193,7 +193,7 @@ if test "x$MSYSTEM" != "x" -o "$OSTYPE" = "cygwin"; then
else
COB_HAS_CURSES="no"
fi
fi


rm -rf info.out

Expand Down

0 comments on commit d7f2988

Please sign in to comment.