mirror of
https://github.com/lcn2/calc.git
synced 2025-08-19 01:13:27 +03:00
Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7cf611bca8 | ||
|
c9fce6a5bb | ||
|
a1c96f95a6 | ||
|
5e6b3cbd3f | ||
|
5bada5fefd | ||
|
0c20c96a7e | ||
|
e054ea87f2 | ||
|
e229393250 | ||
|
a407c7d197 | ||
|
9ea569152a | ||
|
cbcb5801fb | ||
|
bdf495150e | ||
|
b3648f030f |
140
CHANGES
140
CHANGES
@@ -1,4 +1,78 @@
|
|||||||
The following are the changes from calc version 2.12.1.1 to date:
|
The following are the changes from calc version 2.12.4.0 to date:
|
||||||
|
|
||||||
|
Fixed a documentation bug for the sgn() builtin.
|
||||||
|
|
||||||
|
Added the 1<<8/2 evaluation example to "help unexpected". That
|
||||||
|
expression evalutes to 128, not 16 as some C programmers might expect.
|
||||||
|
|
||||||
|
Fixed a bug in solve.cal where high was not returned in some situations.
|
||||||
|
|
||||||
|
Fixed a bug reported by Paul & Karen Tomlinson (paulnkaz at pktomlinson
|
||||||
|
dot fsnet dot co dot uk) where calling log multiple times with different
|
||||||
|
values of epsilon resulted in an incorrect value.
|
||||||
|
|
||||||
|
Removed cvd rule from Makefiles.
|
||||||
|
|
||||||
|
The Makefile used in the source rpm (calc-*.src.rpm) no longer uses
|
||||||
|
the -Werror compile flag. This is to help those distributions with
|
||||||
|
compilers that make produce (hopefully) complination warnings.
|
||||||
|
NOTE: For testing and calc build purposes will recommend and will
|
||||||
|
continue to use the -Werror flag.
|
||||||
|
|
||||||
|
Fixed a typo in the Makefile where the make variable ${SAMPLE_OBJ}
|
||||||
|
was misspelled as ${SAMPLE_OBJS}.
|
||||||
|
|
||||||
|
Added prep makefile rule to make is easier to compile calc without
|
||||||
|
an optimizer. By doing:
|
||||||
|
|
||||||
|
make clobber prep
|
||||||
|
|
||||||
|
one may build a calc binary that is easier to debug.
|
||||||
|
|
||||||
|
Fixed a bug where an certains typos (e.g., calling an unknown
|
||||||
|
function) would previously cause calc to exit.
|
||||||
|
|
||||||
|
|
||||||
|
The following are the changes from calc version 2.12.3.0 to 2.12.3.3:
|
||||||
|
|
||||||
|
Fixed the Jacobi function where it returned 1 when it should have
|
||||||
|
returned 0. Thanks goes to Kevin Sopp (baraclese at googlemail dot com)
|
||||||
|
for discovering the problem and suggesting the nature if the fix.
|
||||||
|
|
||||||
|
Calc versions will always be of the form x.y.z.w even when the
|
||||||
|
MINOR_PATCH (w) is 0. Thus, 2.12.3.0 will be printed as 2.12.3.0
|
||||||
|
instread of just 2.12.3.
|
||||||
|
|
||||||
|
Added MINGW32_NT-5.0 compile target based on a patch from
|
||||||
|
Brian L. Angus (angus at eng dot utah dot edu).
|
||||||
|
|
||||||
|
Removed the use of rpm.release in the Makefile.
|
||||||
|
|
||||||
|
Mac OS Darwin targets no longer attempt to use ldconfig. Under the
|
||||||
|
Darwin target, the LDCONFIG make variable is redefined to be
|
||||||
|
an empty value. Thanks goes to Ralf Trinler (art at infra dot de)
|
||||||
|
for reporting this problem.
|
||||||
|
|
||||||
|
The ${CALC_INCDIR}/custom is no longer being removed at install time
|
||||||
|
if it is empty. Now when ${ALLOW_CUSTOM} make variable is empty,
|
||||||
|
an empty ${CALC_INCDIR}/custom may be left hehind.
|
||||||
|
|
||||||
|
Fixed a problem where a "make clobber" would remove custom/Makefile
|
||||||
|
and fail to rebuilt it.
|
||||||
|
|
||||||
|
|
||||||
|
The following are the changes from calc version 2.12.2.3 to 2.12.2.4:
|
||||||
|
|
||||||
|
Added OpenBSD target.
|
||||||
|
|
||||||
|
Using the -r test instead of the -e test in Makefiles because some
|
||||||
|
out of date shells still do not have the -e test.
|
||||||
|
|
||||||
|
The Makefile now avoids the use of if ! command because some out of
|
||||||
|
date shells to not support the ! construct.
|
||||||
|
|
||||||
|
|
||||||
|
The following are the changes from calc version 2.12.1.1 to 2.12.2.2:
|
||||||
|
|
||||||
Added an explicit Solaris target.
|
Added an explicit Solaris target.
|
||||||
|
|
||||||
@@ -40,6 +114,66 @@ The following are the changes from calc version 2.12.1.1 to date:
|
|||||||
purposes. By default, the calc rpm installed stripped binaries
|
purposes. By default, the calc rpm installed stripped binaries
|
||||||
and libraries.
|
and libraries.
|
||||||
|
|
||||||
|
Added this high priority item to the calc help/todo list:
|
||||||
|
|
||||||
|
It is overkill to have nearly everything wind up in libcalc.
|
||||||
|
Form a libcalcmath and a libcalclang so that an application
|
||||||
|
that just wants to link with the calc math libs can use them
|
||||||
|
without dragging in all of the other calc language, I/O,
|
||||||
|
and builtin functions.
|
||||||
|
|
||||||
|
Fixed the wording for the -i flag in the calc man page.
|
||||||
|
|
||||||
|
Added some notes to the help/unexpected file regarding calc
|
||||||
|
and interactice shells.
|
||||||
|
|
||||||
|
Fixed bug where a FILEPOS was copied FPOS_POS_BITS octets instead of
|
||||||
|
FPOS_POS_LEN octets.
|
||||||
|
|
||||||
|
Split out ${READLINE_EXTRAS} Makefile variables from ${READLINE_LIB}
|
||||||
|
to better deal with Fedora rpm requirements.
|
||||||
|
|
||||||
|
Bit 8 (0x80) of calc_debug is reserved for custom debugging.
|
||||||
|
See help/config and custom/HOW_TO_ADD for details.
|
||||||
|
|
||||||
|
When the Makefile variable ${ALLOW_CUSTOM} is not defined or empty,
|
||||||
|
the libcustcalc library is not built or linked against, certain make
|
||||||
|
rules skip going into the custom sub-directory, the install
|
||||||
|
rule skips certain custom installation actions, and the common
|
||||||
|
C flags (${COMMON_CFLAGS}) is given -UCUSTOM. Other make rules such
|
||||||
|
as "make clean" and "make clobber" still work as before. Also
|
||||||
|
the Makefile.simple assumes that the Makefile variable ${ALLOW_CUSTOM}
|
||||||
|
is -DCUSTOM.
|
||||||
|
|
||||||
|
Clarified that the calc builtin functions rand() and random()
|
||||||
|
operate over a half closed interval. The help/rand and help/random
|
||||||
|
refer to the top of the interval as "beyond" instead of "max".
|
||||||
|
|
||||||
|
Releaseing source tar balls using bzip2 instead of with gzip. So
|
||||||
|
what was calc-something.tar.gz is now calc-something.tar.bz2.
|
||||||
|
To "uncompress" use:
|
||||||
|
|
||||||
|
bunzip2 calc-something.tar.bz2
|
||||||
|
|
||||||
|
On some systems, one may untar directly by:
|
||||||
|
|
||||||
|
tar -jxvf calc-something.tar.bz2
|
||||||
|
|
||||||
|
The Makefile variable ${BYTE_ORDER} was replaced by ${CALC_BYTE_ORDER}.
|
||||||
|
|
||||||
|
Changed the way the Makefile can force the calc byte order. If you set
|
||||||
|
the Makefile variable ${CALC_BYTE_ORDER} to be -DCALC_BIG_ENDIAN then
|
||||||
|
endian.h will force the CPP symbol CALC_BYTE_ORDER to be BIG_ENDIAN.
|
||||||
|
If you set ${CALC_BYTE_ORDER} to be -DCALC_LITTLE_ENDIAN then endian.h
|
||||||
|
will force the CPP symbol CALC_BYTE_ORDER to be LITTLE_ENDIAN.
|
||||||
|
If the Makefile variable ${CALC_BYTE_ORDER} is empty, then the CPP
|
||||||
|
symbol CALC_BYTE_ORDER will set to the CPP symbol BYTE_ORDER as
|
||||||
|
defined by some system include file (if the Makefile can find such
|
||||||
|
an include file), or the Makefile compiling endian.c and hopefully
|
||||||
|
using that result to set CPP symbol CALC_BYTE_ORDER. Regardless of
|
||||||
|
how it happens, the CPP symbol CALC_BYTE_ORDER should end up set in
|
||||||
|
endian_calc.h include file.
|
||||||
|
|
||||||
|
|
||||||
The following are the changes from calc version 2.12.1.10 to 2.12.2:
|
The following are the changes from calc version 2.12.1.10 to 2.12.2:
|
||||||
|
|
||||||
@@ -6635,8 +6769,8 @@ Following is a list of visible changes to calc from version 1.24.7 to 1.26.1:
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.10 $
|
## @(#) $Revision: 30.18 $
|
||||||
## @(#) $Id: CHANGES,v 30.10 2007/09/06 08:10:54 chongo Exp $
|
## @(#) $Id: CHANGES,v 30.18 2008/10/24 09:55:12 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/CHANGES,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/RCS/CHANGES,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1993/06/02 18:12:57
|
## Under source code control: 1993/06/02 18:12:57
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
Installing calc from the gziped tarball in 4 easy steps:
|
Installing calc from the bzip2-ed tarball in 4 easy steps:
|
||||||
|
|
||||||
0) If your platform supports i686 RPMs, you may want to go to:
|
0) If your platform supports i686 RPMs, you may want to go to:
|
||||||
|
|
||||||
@@ -17,13 +17,13 @@ Installing calc from the gziped tarball in 4 easy steps:
|
|||||||
|
|
||||||
The following 4 steps apply to calc source tree that comes from either:
|
The following 4 steps apply to calc source tree that comes from either:
|
||||||
|
|
||||||
gunzip -c calc-*.tar.gz | tar -xvf -
|
bunzip2 -c calc-*.tar.bz2 | tar -xvf -
|
||||||
|
|
||||||
or from:
|
or from:
|
||||||
|
|
||||||
rpm -ivh calc-*.src.rpm
|
rpm -ivh calc-*.src.rpm
|
||||||
cd /var/tmp
|
cd /var/tmp
|
||||||
gunzip -c /usr/src/redhat/SOURCES/calc-*.tar.gz | tar -xvf -
|
bunzip2 -c /usr/src/redhat/SOURCES/calc-*.tar.bz2 | tar -xvf -
|
||||||
|
|
||||||
1) Look at the makefile, and adjust it to suit your needs.
|
1) Look at the makefile, and adjust it to suit your needs.
|
||||||
|
|
||||||
@@ -204,8 +204,8 @@ the calc help subsystem. See the README file for details.
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.5 $
|
## @(#) $Revision: 30.6 $
|
||||||
## @(#) $Id: HOWTO.INSTALL,v 30.5 2007/09/01 19:54:03 chongo Exp $
|
## @(#) $Id: HOWTO.INSTALL,v 30.6 2007/10/16 12:22:22 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/HOWTO.INSTALL,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/RCS/HOWTO.INSTALL,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1999/09/27 20:48:44
|
## Under source code control: 1999/09/27 20:48:44
|
||||||
|
371
Makefile
371
Makefile
@@ -11,7 +11,7 @@
|
|||||||
# (Generic calc makefile)
|
# (Generic calc makefile)
|
||||||
#
|
#
|
||||||
# NOTE: This is NOT the calc rpm Makefile. This Makefile is a generic
|
# NOTE: This is NOT the calc rpm Makefile. This Makefile is a generic
|
||||||
# Makefile for the people who build calc from the gziped tarball.
|
# Makefile for the people who build calc from the bzip2-ed tarball.
|
||||||
# Without modification, it not assume the system has readline, ncurses
|
# Without modification, it not assume the system has readline, ncurses
|
||||||
# or less. It compiles with gcc -O3 -g3 as well. You can change all
|
# or less. It compiles with gcc -O3 -g3 as well. You can change all
|
||||||
# this by modifying the Makefile variables below.
|
# this by modifying the Makefile variables below.
|
||||||
@@ -20,9 +20,10 @@
|
|||||||
# has the GNU readline headers and libaraies:
|
# has the GNU readline headers and libaraies:
|
||||||
#
|
#
|
||||||
# USE_READLINE= -DUSE_READLINE
|
# USE_READLINE= -DUSE_READLINE
|
||||||
# READLINE_LIB= -lreadline -lhistory -lncurses
|
# READLINE_LIB= -lreadline
|
||||||
|
# READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
# Copyright (C) 1999-2007 Landon Curt Noll
|
# Copyright (C) 1999-2008 Landon Curt Noll
|
||||||
#
|
#
|
||||||
# Calc is open software; you can redistribute it and/or modify it under
|
# Calc is open software; you can redistribute it and/or modify it under
|
||||||
# the terms of the version 2.1 of the GNU Lesser General Public License
|
# the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -38,8 +39,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||||
#
|
#
|
||||||
MAKEFILE_REV= $$Revision: 30.21 $$
|
MAKEFILE_REV= $$Revision: 30.41 $$
|
||||||
# @(#) $Id: Makefile.ship,v 30.21 2007/09/06 08:08:39 chongo Exp $
|
# @(#) $Id: Makefile.ship,v 30.41 2008/10/24 09:20:09 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1990/02/15 01:48:41
|
# Under source code control: 1990/02/15 01:48:41
|
||||||
@@ -120,19 +121,19 @@ HAVE_VSPRINTF=
|
|||||||
# Big Endian: Amdahl, 68k, Pyramid, Mips, Sparc, ...
|
# Big Endian: Amdahl, 68k, Pyramid, Mips, Sparc, ...
|
||||||
# Little Endian: Vax, 32k, Spim (Dec Mips), i386, i486, ...
|
# Little Endian: Vax, 32k, Spim (Dec Mips), i386, i486, ...
|
||||||
#
|
#
|
||||||
# If in doubt, leave BYTE_ORDER empty. This Makefile will attempt to
|
# If in doubt, leave CALC_BYTE_ORDER empty. This Makefile will attempt to
|
||||||
# use BYTE_ORDER in <machine/endian.h> or it will attempt to run
|
# use BYTE_ORDER in <machine/endian.h> or it will attempt to run
|
||||||
# the endian program. If you get syntax errors when you compile,
|
# the endian program. If you get syntax errors when you compile,
|
||||||
# try forcing the value to be -DBIG_ENDIAN and run the calc regression
|
# try forcing the value to be -DBIG_ENDIAN and run the calc regression
|
||||||
# tests. (see the README file) If the calc regression tests fail, do
|
# tests. (see the README file) If the calc regression tests fail, do
|
||||||
# a make clobber and try -DLITTLE_ENDIAN. If that fails, ask a wizard
|
# a make clobber and try -DCALC_LITTLE_ENDIAN. If that fails, ask a wizard
|
||||||
# for help.
|
# for help.
|
||||||
#
|
#
|
||||||
# Select BYTE_ORDER= -DLITTLE_ENDIAN for DJGPP.
|
# Select CALC_BYTE_ORDER= -DCALC_LITTLE_ENDIAN for DJGPP.
|
||||||
#
|
#
|
||||||
BYTE_ORDER=
|
CALC_BYTE_ORDER=
|
||||||
#BYTE_ORDER= -DBIG_ENDIAN
|
#CALC_BYTE_ORDER= -DCALC_BIG_ENDIAN
|
||||||
#BYTE_ORDER= -DLITTLE_ENDIAN
|
#CALC_BYTE_ORDER= -DCALC_LITTLE_ENDIAN
|
||||||
|
|
||||||
# Determine the number of bits in a long
|
# Determine the number of bits in a long
|
||||||
#
|
#
|
||||||
@@ -597,6 +598,18 @@ INCDIR= /usr/include
|
|||||||
# by default is empty. If ${T} is non-empty, then installation
|
# by default is empty. If ${T} is non-empty, then installation
|
||||||
# locations will be relative to the ${T} directory.
|
# locations will be relative to the ${T} directory.
|
||||||
#
|
#
|
||||||
|
# NOTE: If you change LIBDIR to a non-standard location, you will need
|
||||||
|
# to make changes to your execution environment so that executables
|
||||||
|
# will search LIBDIR when they are resolving dynamic shared libraries.
|
||||||
|
#
|
||||||
|
# On OS X, this means you need to export $DYLD_LIBRARY_PATH
|
||||||
|
# to include the LIBDIR path in the value.
|
||||||
|
#
|
||||||
|
# On Linux and BSD, this means you need to export $LD_LIBRARY_PATH
|
||||||
|
# to include the LIBDIR path in the value.
|
||||||
|
#
|
||||||
|
# You might be better off not changing LIBDIR in the first place.
|
||||||
|
#
|
||||||
# For DJGPP, select:
|
# For DJGPP, select:
|
||||||
#
|
#
|
||||||
# BINDIR= /dev/env/DJDIR/bin
|
# BINDIR= /dev/env/DJDIR/bin
|
||||||
@@ -767,13 +780,33 @@ MANMAKE= /usr/local/bin/manmake
|
|||||||
MANMODE= 0444
|
MANMODE= 0444
|
||||||
CATMODE= 0444
|
CATMODE= 0444
|
||||||
|
|
||||||
|
# By default, custom builtin functions may only be executed if calc
|
||||||
|
# is given the -C option. This is because custom builtin functions
|
||||||
|
# may invoke non-standard or non-portable code. One may completely
|
||||||
|
# disable custom builtin functions by not compiling any of code
|
||||||
|
#
|
||||||
|
# ALLOW_CUSTOM= -DCUSTOM # allow custom only if -C is given
|
||||||
|
# ALLOW_CUSTOM= # disable custom even if -C is given
|
||||||
|
#
|
||||||
|
# If in doubt, use ALLOW_CUSTOM= -DCUSTOM
|
||||||
|
#
|
||||||
|
ALLOW_CUSTOM= -DCUSTOM
|
||||||
|
#ALLOW_CUSTOM=
|
||||||
|
|
||||||
# If the $CALCPATH environment variable is not defined, then the following
|
# If the $CALCPATH environment variable is not defined, then the following
|
||||||
# path will be search for calc resource file routines.
|
# path will be search for calc resource file routines.
|
||||||
#
|
#
|
||||||
# Select CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR} for DJGPP.
|
# Select CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR} for DJGPP.
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
CALCPATH= .:./cal:~/.cal:${CALC_SHAREDIR}:${CUSTOMCALDIR}
|
CALCPATH= .:./cal:~/.cal:${CALC_SHAREDIR}:${CUSTOMCALDIR}
|
||||||
#CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
CALCPATH= .:./cal:~/.cal:${CALC_SHAREDIR}
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# If the $CALCRC environment variable is not defined, then the following
|
# If the $CALCRC environment variable is not defined, then the following
|
||||||
# path will be search for calc resource files.
|
# path will be search for calc resource files.
|
||||||
@@ -793,6 +826,8 @@ CALCRC= ${CALC_SHAREDIR}/startup:~/.calcrc:./.calcinit
|
|||||||
#
|
#
|
||||||
# READLINE_LIB The flags needed to link in the readline
|
# READLINE_LIB The flags needed to link in the readline
|
||||||
# and history link libraries
|
# and history link libraries
|
||||||
|
# READLINE_EXTRAS Flags and libs needed to use the readline
|
||||||
|
# and history link libraries
|
||||||
# READLINE_INCLUDE Where the readline include files reside
|
# READLINE_INCLUDE Where the readline include files reside
|
||||||
# (leave blank if they are /usr/include/readline)
|
# (leave blank if they are /usr/include/readline)
|
||||||
#
|
#
|
||||||
@@ -806,14 +841,22 @@ USE_READLINE=
|
|||||||
#USE_READLINE= -DUSE_READLINE
|
#USE_READLINE= -DUSE_READLINE
|
||||||
#
|
#
|
||||||
READLINE_LIB=
|
READLINE_LIB=
|
||||||
#READLINE_LIB= -lreadline -lhistory -lncurses
|
READLINE_EXTRAS=
|
||||||
#READLINE_LIB= -L/usr/gnu/lib -lreadline -lhistory -lncurses
|
#
|
||||||
#READLINE_LIB= -L/usr/local/lib -lreadline -lhistory -lncurses
|
#READLINE_LIB= -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
|
#
|
||||||
|
#READLINE_LIB= -L/usr/gnu/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
|
#
|
||||||
|
#READLINE_LIB= -L/usr/local/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
# For Apple OS X: install fink from http://fink.sourceforge.net
|
# For Apple OS X: install fink from http://fink.sourceforge.net
|
||||||
# and then do a 'fink install readline' and then use:
|
# and then do a 'fink install readline' and then use:
|
||||||
#
|
#
|
||||||
#READLINE_LIB= -L/sw/lib -lreadline -lhistory -lncurses
|
#READLINE_LIB= -L/sw/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
READLINE_INCLUDE=
|
READLINE_INCLUDE=
|
||||||
#READLINE_INCLUDE= -I/usr/gnu/include
|
#READLINE_INCLUDE= -I/usr/gnu/include
|
||||||
@@ -923,18 +966,6 @@ CALC_ENV= CALCPATH=./cal LD_LIBRARY_PATH=.
|
|||||||
# MALLOC_FASTCHK=1 MALLOC_FULLWARN=1 MALLOC_CLEAR_FREE=1 \
|
# MALLOC_FASTCHK=1 MALLOC_FULLWARN=1 MALLOC_CLEAR_FREE=1 \
|
||||||
# MALLOC_CLEAR_MALLOC=1 LD_LIBRARY_PATH=.:./custom
|
# MALLOC_CLEAR_MALLOC=1 LD_LIBRARY_PATH=.:./custom
|
||||||
|
|
||||||
# By default, custom builtin functions may only be executed if calc
|
|
||||||
# is given the -C option. This is because custom builtin functions
|
|
||||||
# may invoke non-standard or non-portable code. One may completely
|
|
||||||
# disable custom builtin functions by not compiling any of code
|
|
||||||
#
|
|
||||||
# ALLOW_CUSTOM= -DCUSTOM # allow custom only if -C is given
|
|
||||||
# ALLOW_CUSTOM= # disable custom even if -C is given
|
|
||||||
#
|
|
||||||
# If in doubt, use ALLOW_CUSTOM= -DCUSTOM
|
|
||||||
#
|
|
||||||
ALLOW_CUSTOM= -DCUSTOM
|
|
||||||
#ALLOW_CUSTOM=
|
|
||||||
|
|
||||||
# The install rule uses:
|
# The install rule uses:
|
||||||
#
|
#
|
||||||
@@ -965,8 +996,8 @@ EXT=
|
|||||||
|
|
||||||
# The default calc versions
|
# The default calc versions
|
||||||
#
|
#
|
||||||
VERSION= 2.12.2.1
|
VERSION= 2.12.4.0
|
||||||
VERS= 2.12.2
|
VERS= 2.12.4
|
||||||
VER= 2.12
|
VER= 2.12
|
||||||
VE= 2
|
VE= 2
|
||||||
|
|
||||||
@@ -1036,7 +1067,15 @@ EXTRA_LDFLAGS=
|
|||||||
# COMMON_CFLAGS are the common ${CC} flags used for all progs, both
|
# COMMON_CFLAGS are the common ${CC} flags used for all progs, both
|
||||||
# intermediate and final calc and calc related progs
|
# intermediate and final calc and calc related progs
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
COMMON_CFLAGS= -DCALC_SRC ${ALLOW_CUSTOM} ${CCWARN} ${CCMISC} ${EXTRA_CFLAGS}
|
COMMON_CFLAGS= -DCALC_SRC ${ALLOW_CUSTOM} ${CCWARN} ${CCMISC} ${EXTRA_CFLAGS}
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
COMMON_CFLAGS= -DCALC_SRC -UCUSTOM ${CCWARN} ${CCMISC} ${EXTRA_CFLAGS}
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# COMMON_LDFLAGS are the common flags used for linking all progs, both
|
# COMMON_LDFLAGS are the common flags used for linking all progs, both
|
||||||
# intermediate and final calc and calc related progs
|
# intermediate and final calc and calc related progs
|
||||||
@@ -1108,7 +1147,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC=
|
LD_STATIC=
|
||||||
@@ -1137,7 +1180,11 @@ CC_SHARE= -fPIC
|
|||||||
DEFAULT_LIB_INSTALL_PATH= ${PWD}:${LIBDIR}:/usr/local/lib
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:${LIBDIR}:/usr/local/lib
|
||||||
LD_SHARE= ${DARWIN_ARCH}
|
LD_SHARE= ${DARWIN_ARCH}
|
||||||
LIBCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
LIBCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
LIBCUSTCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC= ${DARWIN_ARCH}
|
LD_STATIC= ${DARWIN_ARCH}
|
||||||
@@ -1158,6 +1205,8 @@ LIB_EXT_VERSION:= .${VERSION}${LIB_EXT}
|
|||||||
LIB_EXT_VERS:= .${VERS}${LIB_EXT}
|
LIB_EXT_VERS:= .${VERS}${LIB_EXT}
|
||||||
LIB_EXT_VER:= .${VER}${LIB_EXT}
|
LIB_EXT_VER:= .${VER}${LIB_EXT}
|
||||||
LIB_EXT_VE:= .${VE}${LIB_EXT}
|
LIB_EXT_VE:= .${VE}${LIB_EXT}
|
||||||
|
# LDCONFIG not required on this platform, so we redefine it to an empty string
|
||||||
|
LDCONFIG:=
|
||||||
# DARWIN_ARCH= -arch i386 -arch ppc # Universal binary
|
# DARWIN_ARCH= -arch i386 -arch ppc # Universal binary
|
||||||
# DARWIN_ARCH= -arch i386 # Intel binary
|
# DARWIN_ARCH= -arch i386 # Intel binary
|
||||||
# DARWIN_ARCH= -arch ppc # PPC binary
|
# DARWIN_ARCH= -arch ppc # PPC binary
|
||||||
@@ -1185,7 +1234,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC=
|
LD_STATIC=
|
||||||
@@ -1204,12 +1257,17 @@ MAKE= gmake
|
|||||||
#
|
#
|
||||||
endif
|
endif
|
||||||
|
|
||||||
######################
|
##################
|
||||||
# Sun Solaris target #
|
# OpenBSD target #
|
||||||
######################
|
##################
|
||||||
|
|
||||||
# XXX - this needs to be tested
|
########################################################################
|
||||||
ifeq ($(target),solaris)
|
# NOTE: You MUST either use gmake (GNU Make) or you must try your luck #
|
||||||
|
# with Makefile.simple and custom/Makefile.simple versions. #
|
||||||
|
# See HOWTO.INSTALL for more information. #
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
ifeq ($(target),OpenBSD)
|
||||||
#
|
#
|
||||||
BLD_TYPE= calc-dynamic-only
|
BLD_TYPE= calc-dynamic-only
|
||||||
#
|
#
|
||||||
@@ -1218,7 +1276,48 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
|
#
|
||||||
|
CC_STATIC=
|
||||||
|
LD_STATIC=
|
||||||
|
LIBCALC_STATIC=
|
||||||
|
LIBCUSTCALC_STATIC=
|
||||||
|
#
|
||||||
|
CCWARN= -Wall
|
||||||
|
CCWERR=
|
||||||
|
CCOPT= ${DEBUG}
|
||||||
|
CCMISC=
|
||||||
|
#
|
||||||
|
LCC= gcc
|
||||||
|
CC= ${PURIFY} ${LCC} ${CCWERR}
|
||||||
|
#
|
||||||
|
MAKE= gmake
|
||||||
|
#
|
||||||
|
endif
|
||||||
|
|
||||||
|
################
|
||||||
|
# SunOS target #
|
||||||
|
################
|
||||||
|
|
||||||
|
# XXX - this needs to be tested
|
||||||
|
ifeq ($(target),SunOS)
|
||||||
|
#
|
||||||
|
BLD_TYPE= calc-dynamic-only
|
||||||
|
#
|
||||||
|
CC_SHARE= -fPIC
|
||||||
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
||||||
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LIBCALC_STATIC=
|
LIBCALC_STATIC=
|
||||||
@@ -1283,6 +1382,52 @@ LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
|||||||
#if 0 /* start of skip for non-Gnu makefiles */
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
###################################################
|
||||||
|
# MINGW32_NT-5.0 target #
|
||||||
|
###################################################
|
||||||
|
|
||||||
|
|
||||||
|
ifeq ($(target),MINGW32_NT-5.0)
|
||||||
|
|
||||||
|
EXT=.exe
|
||||||
|
TERMCONTROL= -DUSE_WIN32
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR}
|
||||||
|
endif
|
||||||
|
CALCRC= ${CALC_SHAREDIR}/startup;~/.calcrc;./.calcinit
|
||||||
|
#
|
||||||
|
BLD_TYPE= calc-static-only
|
||||||
|
#
|
||||||
|
CC_SHARE= -fPIC
|
||||||
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
||||||
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
|
#
|
||||||
|
CC_STATIC= -DSTATIC_ONLY
|
||||||
|
LIBCALC_STATIC=
|
||||||
|
LIBCUSTCALC_STATIC=
|
||||||
|
LD_STATIC=
|
||||||
|
#
|
||||||
|
CCWARN= -Wall -W -Wno-comment
|
||||||
|
CCWERR=
|
||||||
|
CCOPT= ${DEBUG}
|
||||||
|
CCMISC= -DNOTCYGWIN
|
||||||
|
#
|
||||||
|
LCC= gcc
|
||||||
|
CC= ${PURIFY} ${LCC} ${CCWERR}
|
||||||
|
#
|
||||||
|
endif
|
||||||
|
|
||||||
###################################################
|
###################################################
|
||||||
# default target - when no specific target exists #
|
# default target - when no specific target exists #
|
||||||
###################################################
|
###################################################
|
||||||
@@ -1299,7 +1444,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LIBCALC_STATIC=
|
LIBCALC_STATIC=
|
||||||
@@ -1341,7 +1490,6 @@ CFLAGS= ${ICFLAGS} ${CCOPT}
|
|||||||
#
|
#
|
||||||
ILDFLAGS= ${COMMON_LDFLAGS}
|
ILDFLAGS= ${COMMON_LDFLAGS}
|
||||||
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS}
|
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS}
|
||||||
|
|
||||||
#endif /* end of skip for non-Gnu makefiles */
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
@@ -1462,7 +1610,7 @@ UTIL_TMP= ll_tmp fpos_tmp fposv_tmp const_tmp uid_tmp newstr_tmp vs_tmp \
|
|||||||
memmv_tmp offscl_tmp posscl_tmp newstr_tmp \
|
memmv_tmp offscl_tmp posscl_tmp newstr_tmp \
|
||||||
getsid_tmp gettime_tmp getprid_tmp rusage_tmp strdup_tmp
|
getsid_tmp gettime_tmp getprid_tmp rusage_tmp strdup_tmp
|
||||||
|
|
||||||
# these utility executables may be created in the process of
|
# these utility executables may be created in the process of
|
||||||
# building the BUILD_H_SRC file set
|
# building the BUILD_H_SRC file set
|
||||||
#
|
#
|
||||||
UTIL_PROGS= align32${EXT} fposval${EXT} have_uid_t${EXT} have_const${EXT} \
|
UTIL_PROGS= align32${EXT} fposval${EXT} have_uid_t${EXT} have_const${EXT} \
|
||||||
@@ -1572,9 +1720,6 @@ HELP_PASSDOWN= \
|
|||||||
COMMON_CFLAGS="${COMMON_CFLAGS}" \
|
COMMON_CFLAGS="${COMMON_CFLAGS}" \
|
||||||
COMMON_LDFLAGS="${COMMON_LDFLAGS}" \
|
COMMON_LDFLAGS="${COMMON_LDFLAGS}" \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
EXT=${EXT} \
|
EXT=${EXT} \
|
||||||
FMT=${FMT} \
|
FMT=${FMT} \
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
@@ -1609,9 +1754,6 @@ CAL_PASSDOWN= \
|
|||||||
CMP=${CMP} \
|
CMP=${CMP} \
|
||||||
CO=${CO} \
|
CO=${CO} \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
INCDIR="${INCDIR}" \
|
INCDIR="${INCDIR}" \
|
||||||
LANG=${LANG} \
|
LANG=${LANG} \
|
||||||
@@ -1640,9 +1782,6 @@ CSCRIPT_PASSDOWN= \
|
|||||||
CMP=${CMP} \
|
CMP=${CMP} \
|
||||||
CO=${CO} \
|
CO=${CO} \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
FMT=${FMT} \
|
FMT=${FMT} \
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
INCDIR="${INCDIR}" \
|
INCDIR="${INCDIR}" \
|
||||||
@@ -1687,22 +1826,47 @@ CALCLIBLIST= ${LIBSRC} ${UTIL_C_SRC} ${LIB_H_SRC} ${MAKE_FILE} \
|
|||||||
|
|
||||||
# complete list of .o files
|
# complete list of .o files
|
||||||
#
|
#
|
||||||
OBJS= ${LIBOBJS} ${CALCOBJS} ${UTIL_OBJS} ${SAMPLE_OBJS}
|
OBJS= ${LIBOBJS} ${CALCOBJS} ${UTIL_OBJS} ${SAMPLE_OBJ}
|
||||||
|
|
||||||
# static library build
|
# static library build
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
CALC_STATIC_LIBS= libcalc.a libcustcalc.a
|
CALC_STATIC_LIBS= libcalc.a libcustcalc.a
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
CALC_STATIC_LIBS= libcalc.a
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# Libaraies created and used to build calc
|
# Libaraies created and used to build calc
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
CALC_DYNAMIC_LIBS= libcalc${LIB_EXT_VERSION} libcustcalc${LIB_EXT_VERSION}
|
CALC_DYNAMIC_LIBS= libcalc${LIB_EXT_VERSION} libcustcalc${LIB_EXT_VERSION}
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
CALC_DYNAMIC_LIBS= libcalc${LIB_EXT_VERSION}
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# Symlinks of dymanic shared libraries
|
# Symlinks of dymanic shared libraries
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
SYM_DYNAMIC_LIBS= libcalc${LIB_EXT_VER} libcalc${LIB_EXT_VE} libcalc${LIB_EXT} \
|
SYM_DYNAMIC_LIBS= libcalc${LIB_EXT_VER} libcalc${LIB_EXT_VE} libcalc${LIB_EXT} \
|
||||||
libcalc${LIB_EXT_VERS} libcustcalc${LIB_EXT_VERSION} \
|
libcalc${LIB_EXT_VERS} libcustcalc${LIB_EXT_VERSION} \
|
||||||
libcustcalc${LIB_EXT_VERS} libcustcalc${LIB_EXT_VER} \
|
libcustcalc${LIB_EXT_VERS} libcustcalc${LIB_EXT_VER} \
|
||||||
libcustcalc${LIB_EXT_VE} libcustcalc${LIB_EXT}
|
libcustcalc${LIB_EXT_VE} libcustcalc${LIB_EXT}
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
SYM_DYNAMIC_LIBS= libcalc${LIB_EXT_VER} libcalc${LIB_EXT_VE} libcalc${LIB_EXT} \
|
||||||
|
libcalc${LIB_EXT_VERS}
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# list of sample programs to that need to be built to satisfy sample rule
|
# list of sample programs to that need to be built to satisfy sample rule
|
||||||
#
|
#
|
||||||
@@ -1733,7 +1897,15 @@ STATIC_FIRST_TARGETS= ${LICENSE} .static
|
|||||||
|
|
||||||
# early targets - things needed before the main build phase can begin
|
# early targets - things needed before the main build phase can begin
|
||||||
#
|
#
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
EARLY_TARGETS= custom/Makefile hsrc .hsrc custom/.all
|
EARLY_TARGETS= custom/Makefile hsrc .hsrc custom/.all
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
EARLY_TARGETS= hsrc .hsrc
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
# late targets - things needed after the main build phase is complete
|
# late targets - things needed after the main build phase is complete
|
||||||
#
|
#
|
||||||
@@ -1753,6 +1925,9 @@ TARGETS= ${EARLY_TARGETS} ${BLD_TYPE} ${LATE_TARGETS}
|
|||||||
|
|
||||||
all: ${BLD_TYPE} CHANGES
|
all: ${BLD_TYPE} CHANGES
|
||||||
|
|
||||||
|
prep:
|
||||||
|
${Q} ${MAKE} -f ${MAKE_FILE} all DEBUG='-g3'
|
||||||
|
|
||||||
calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
||||||
${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} calc${EXT} \
|
${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} calc${EXT} \
|
||||||
${SAMPLE_TARGETS} ${LATE_TARGETS}
|
${SAMPLE_TARGETS} ${LATE_TARGETS}
|
||||||
@@ -1777,7 +1952,7 @@ calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${Q} for i in .static calc-static${EXT} ${SAMPLE_STATIC_TARGETS} \
|
${Q} for i in .static calc-static${EXT} ${SAMPLE_STATIC_TARGETS} \
|
||||||
libcalc.a custom/libcustcalc.a; do \
|
libcalc.a custom/libcustcalc.a; do \
|
||||||
r="calc-dynamic-only"; \
|
r="calc-dynamic-only"; \
|
||||||
if [ -e "$$i" ]; then \
|
if [ -r "$$i" ]; then \
|
||||||
echo "Found the static target $$i file. You must:" 1>&2; \
|
echo "Found the static target $$i file. You must:" 1>&2; \
|
||||||
echo "" 1>&2; \
|
echo "" 1>&2; \
|
||||||
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
||||||
@@ -1795,7 +1970,9 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${CALC_STATIC_LIBS} calc-static${EXT} \
|
${CALC_STATIC_LIBS} calc-static${EXT} \
|
||||||
${SAMPLE_STATIC_TARGETS} ${LATE_TARGETS}
|
${SAMPLE_STATIC_TARGETS} ${LATE_TARGETS}
|
||||||
${Q} for i in calc${EXT} ${SAMPLE_TARGETS}; do \
|
${Q} for i in calc${EXT} ${SAMPLE_TARGETS}; do \
|
||||||
if ! ${CMP} -s "$$i-static" "$$i"; then \
|
if ${CMP} -s "$$i-static" "$$i"; then \
|
||||||
|
${TRUE}; \
|
||||||
|
else \
|
||||||
${RM} -f "$$i"; \
|
${RM} -f "$$i"; \
|
||||||
${LN} "$$i-static" "$$i"; \
|
${LN} "$$i-static" "$$i"; \
|
||||||
fi; \
|
fi; \
|
||||||
@@ -1821,7 +1998,7 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${Q} for i in .dynamic ${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} \
|
${Q} for i in .dynamic ${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} \
|
||||||
custom/libcustcalc${LIB_EXT_VERSION}; do \
|
custom/libcustcalc${LIB_EXT_VERSION}; do \
|
||||||
r="calc-static-only"; \
|
r="calc-static-only"; \
|
||||||
if [ -e "$$i" ]; then \
|
if [ -r "$$i" ]; then \
|
||||||
echo "Found the dynamic target $$i file. You must:" 1>&2; \
|
echo "Found the dynamic target $$i file. You must:" 1>&2; \
|
||||||
echo "" 1>&2; \
|
echo "" 1>&2; \
|
||||||
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
||||||
@@ -1838,10 +2015,11 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
calc${EXT}: .hsrc ${CALCOBJS} ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
calc${EXT}: .hsrc ${CALCOBJS} ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
${CC} ${CALCOBJS} ${LDFLAGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} ${CALCOBJS} ${LDFLAGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
libcalc${LIB_EXT_VERSION}: ${LIBOBJS} ver_calc${EXT} ${MAKE_FILE}
|
libcalc${LIB_EXT_VERSION}: ${LIBOBJS} ver_calc${EXT} ${MAKE_FILE}
|
||||||
${CC} ${LIBCALC_SHLIB} ${LIBOBJS} -o libcalc${LIB_EXT_VERSION}
|
${CC} ${LIBCALC_SHLIB} ${LIBOBJS} \
|
||||||
|
${READLINE_LIB} ${READLINE_EXTRAS} -o libcalc${LIB_EXT_VERSION}
|
||||||
|
|
||||||
libcalc${LIB_EXT_VERS}: libcalc${LIB_EXT_VERSION}
|
libcalc${LIB_EXT_VERS}: libcalc${LIB_EXT_VERSION}
|
||||||
${Q} ${RM} -f $@
|
${Q} ${RM} -f $@
|
||||||
@@ -1900,11 +2078,11 @@ sample: ${SAMPLE_TARGETS}
|
|||||||
|
|
||||||
sample_rand${EXT}: sample_rand.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
sample_rand${EXT}: sample_rand.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} sample_rand.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} sample_rand.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
sample_many${EXT}: sample_many.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
sample_many${EXT}: sample_many.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} sample_many.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} sample_many.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
@@ -1968,11 +2146,17 @@ conf.h: ${MAKE_FILE}
|
|||||||
${Q} echo '#define HELPDIR "${HELPDIR}"' >> conf.h
|
${Q} echo '#define HELPDIR "${HELPDIR}"' >> conf.h
|
||||||
${Q} echo '#endif /* HELPDIR */' >> conf.h
|
${Q} echo '#endif /* HELPDIR */' >> conf.h
|
||||||
${Q} echo '' >> conf.h
|
${Q} echo '' >> conf.h
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
${Q} echo '/* the location of the custom help directory */' >> conf.h
|
${Q} echo '/* the location of the custom help directory */' >> conf.h
|
||||||
${Q} echo '#if !defined(CUSTOMHELPDIR)' >> conf.h
|
${Q} echo '#if !defined(CUSTOMHELPDIR)' >> conf.h
|
||||||
${Q} echo '#define CUSTOMHELPDIR "${CUSTOMHELPDIR}"' >> conf.h
|
${Q} echo '#define CUSTOMHELPDIR "${CUSTOMHELPDIR}"' >> conf.h
|
||||||
${Q} echo '#endif /* CUSTOMHELPDIR */' >> conf.h
|
${Q} echo '#endif /* CUSTOMHELPDIR */' >> conf.h
|
||||||
${Q} echo '' >> conf.h
|
${Q} echo '' >> conf.h
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
${Q} echo '/* the default pager to use */' >> conf.h
|
${Q} echo '/* the default pager to use */' >> conf.h
|
||||||
${Q} echo '#if !defined(DEFAULTCALCPAGER)' >> conf.h
|
${Q} echo '#if !defined(DEFAULTCALCPAGER)' >> conf.h
|
||||||
${Q} echo '#define DEFAULTCALCPAGER "${CALCPAGER}"' >> conf.h
|
${Q} echo '#define DEFAULTCALCPAGER "${CALCPAGER}"' >> conf.h
|
||||||
@@ -2004,7 +2188,7 @@ endian_calc.h: endian${EXT} ${MAKE_FILE}
|
|||||||
${Q} echo '' >> endian_calc.h
|
${Q} echo '' >> endian_calc.h
|
||||||
${Q} echo '' >> endian_calc.h
|
${Q} echo '' >> endian_calc.h
|
||||||
${Q} echo '/* what byte order are we? */' >> endian_calc.h
|
${Q} echo '/* what byte order are we? */' >> endian_calc.h
|
||||||
-${Q} if [ X"${BYTE_ORDER}" = X ]; then \
|
-${Q} if [ X"${CALC_BYTE_ORDER}" = X ]; then \
|
||||||
if [ -f ${INCDIR}/endian.h ]; then \
|
if [ -f ${INCDIR}/endian.h ]; then \
|
||||||
echo '#include <endian.h>' >> endian_calc.h; \
|
echo '#include <endian.h>' >> endian_calc.h; \
|
||||||
echo '#define CALC_BYTE_ORDER BYTE_ORDER' >> endian_calc.h; \
|
echo '#define CALC_BYTE_ORDER BYTE_ORDER' >> endian_calc.h; \
|
||||||
@@ -2950,7 +3134,7 @@ have_urandom.h: ${MAKE_FILE}
|
|||||||
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
||||||
elif [ X"${HAVE_URANDOM_H}" = X"NO" ]; then \
|
elif [ X"${HAVE_URANDOM_H}" = X"NO" ]; then \
|
||||||
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
||||||
elif [ -e /dev/urandom ] 2>/dev/null; then \
|
elif [ -r /dev/urandom ] 2>/dev/null; then \
|
||||||
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
||||||
else \
|
else \
|
||||||
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
||||||
@@ -3260,7 +3444,7 @@ win32_hsrc: win32.mkdef ${MAKE_FILE}
|
|||||||
###
|
###
|
||||||
|
|
||||||
endian.o: endian.c have_unistd.h
|
endian.o: endian.c have_unistd.h
|
||||||
${LCC} ${ICFLAGS} ${BYTE_ORDER} endian.c -c
|
${LCC} ${ICFLAGS} ${CALC_BYTE_ORDER} endian.c -c
|
||||||
|
|
||||||
endian${EXT}: endian.o
|
endian${EXT}: endian.o
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
@@ -3315,6 +3499,9 @@ ${CSCRIPT_TARGETS}: cscript/Makefile
|
|||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
custom/.all: custom/Makefile
|
custom/.all: custom/Makefile
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking all rule for custom =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking all rule for custom =-=-=-=-='
|
||||||
@@ -3349,6 +3536,9 @@ libcustcalc${LIB_EXT_VE}: libcustcalc${LIB_EXT_VERSION}
|
|||||||
libcustcalc${LIB_EXT}: libcustcalc${LIB_EXT_VERSION}
|
libcustcalc${LIB_EXT}: libcustcalc${LIB_EXT_VERSION}
|
||||||
${Q} ${RM} -f $@
|
${Q} ${RM} -f $@
|
||||||
${LN} -s $? $@
|
${LN} -s $? $@
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
@@ -3360,7 +3550,7 @@ calc-static${EXT}: .hsrc ${CALCOBJS} \
|
|||||||
${CALC_STATIC_LIBS} ${MAKE_FILE}
|
${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
${CC} ${LDFLAGS} ${CALCOBJS} ${LD_STATIC} ${CALC_STATIC_LIBS} \
|
${CC} ${LDFLAGS} ${CALCOBJS} ${LD_STATIC} ${CALC_STATIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
libcustcalc.a: custom/libcustcalc.a
|
libcustcalc.a: custom/libcustcalc.a
|
||||||
${Q} ${RM} -f $@
|
${Q} ${RM} -f $@
|
||||||
@@ -3372,16 +3562,22 @@ libcalc.a: ${LIBOBJS} ${MAKE_FILE}
|
|||||||
${RANLIB} libcalc.a
|
${RANLIB} libcalc.a
|
||||||
${CHMOD} 0644 libcalc.a
|
${CHMOD} 0644 libcalc.a
|
||||||
|
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
custom/libcustcalc.a: custom/Makefile
|
custom/libcustcalc.a: custom/Makefile
|
||||||
cd custom; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} libcustcalc.a
|
cd custom; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} libcustcalc.a
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
sample_rand-static${EXT}: sample_rand.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
sample_rand-static${EXT}: sample_rand.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} ${LDFLAGS} sample_rand.o ${LD_STATIC} \
|
${CC} ${LDFLAGS} sample_rand.o ${LD_STATIC} \
|
||||||
${CALC_STATIC_LIBS} ${READLINE_LIB} -o $@
|
${CALC_STATIC_LIBS} ${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
sample_many-static${EXT}: sample_many.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
sample_many-static${EXT}: sample_many.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} ${LDFLAGS} sample_many.o ${LD_STATIC} \
|
${CC} ${LDFLAGS} sample_many.o ${LD_STATIC} \
|
||||||
${CALC_STATIC_LIBS} ${READLINE_LIB} -o $@
|
${CALC_STATIC_LIBS} ${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
@@ -3785,6 +3981,7 @@ env:
|
|||||||
@echo 'PURIFY=${PURIFY}'; echo ''
|
@echo 'PURIFY=${PURIFY}'; echo ''
|
||||||
@echo 'Q=${Q}'; echo ''
|
@echo 'Q=${Q}'; echo ''
|
||||||
@echo 'RANLIB=${RANLIB}'; echo ''
|
@echo 'RANLIB=${RANLIB}'; echo ''
|
||||||
|
@echo 'READLINE_EXTRAS=${READLINE_EXTRAS}'; echo ''
|
||||||
@echo 'READLINE_INCLUDE=${READLINE_INCLUDE}'; echo ''
|
@echo 'READLINE_INCLUDE=${READLINE_INCLUDE}'; echo ''
|
||||||
@echo 'READLINE_LIB=${READLINE_LIB}'; echo ''
|
@echo 'READLINE_LIB=${READLINE_LIB}'; echo ''
|
||||||
@echo 'RM=${RM}'; echo ''
|
@echo 'RM=${RM}'; echo ''
|
||||||
@@ -3822,12 +4019,11 @@ env:
|
|||||||
@echo 'target=${target}'; echo ''
|
@echo 'target=${target}'; echo ''
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} end of major make variable dump =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} end of major make variable dump =-=-=-=-='
|
||||||
|
|
||||||
mkdebug: env version.c rpm.release
|
mkdebug: env version.c
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
||||||
-@./ver_calc${EXT}
|
-@./ver_calc${EXT}
|
||||||
-@./ver_calc${EXT} -r rpm.release
|
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ all
|
@${MAKE} -f Makefile Q= V=@ all
|
||||||
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
@@ -3836,7 +4032,7 @@ mkdebug: env version.c rpm.release
|
|||||||
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
debug: env rpm.release
|
debug: env
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ clobber
|
@${MAKE} -f Makefile Q= V=@ clobber
|
||||||
@@ -3844,7 +4040,6 @@ debug: env rpm.release
|
|||||||
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
||||||
-@./ver_calc${EXT}
|
-@./ver_calc${EXT}
|
||||||
-@./ver_calc${EXT} -r rpm.release
|
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ all
|
@${MAKE} -f Makefile Q= V=@ all
|
||||||
@echo '=-=-=-=-= Determining the binary version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the binary version =-=-=-=-='
|
||||||
@@ -3863,9 +4058,6 @@ debug: env rpm.release
|
|||||||
# make run
|
# make run
|
||||||
# * only run calc interactively with the ${CALC_ENV} environment
|
# * only run calc interactively with the ${CALC_ENV} environment
|
||||||
#
|
#
|
||||||
# make cvd
|
|
||||||
# * run the SGI WorkShop debugger on calc with the ${CALC_ENV} environment
|
|
||||||
#
|
|
||||||
# make dbx
|
# make dbx
|
||||||
# * run the dbx debugger on calc with the ${CALC_ENV} environment
|
# * run the dbx debugger on calc with the ${CALC_ENV} environment
|
||||||
#
|
#
|
||||||
@@ -3877,9 +4069,6 @@ debug: env rpm.release
|
|||||||
run:
|
run:
|
||||||
${CALC_ENV} ./calc${EXT}
|
${CALC_ENV} ./calc${EXT}
|
||||||
|
|
||||||
cvd:
|
|
||||||
${CALC_ENV} cvd ./calc${EXT}
|
|
||||||
|
|
||||||
dbx:
|
dbx:
|
||||||
${CALC_ENV} dbx ./calc${EXT}
|
${CALC_ENV} dbx ./calc${EXT}
|
||||||
|
|
||||||
@@ -4058,25 +4247,27 @@ clobber: custom/Makefile clean
|
|||||||
${RM} -f libcustcalc.a
|
${RM} -f libcustcalc.a
|
||||||
${RM} -f calc-static${EXT}
|
${RM} -f calc-static${EXT}
|
||||||
${RM} -f ${CALC_STATIC_LIBS}
|
${RM} -f ${CALC_STATIC_LIBS}
|
||||||
|
${RM} -f all
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for help =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for help =-=-=-=-='
|
||||||
-cd help; ${MAKE} -f Makefile ${HELP_PASSDOWN} clobber
|
-cd help; ${RM} -f all; ${MAKE} -f Makefile ${HELP_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
||||||
-cd cal; ${MAKE} -f Makefile ${CAL_PASSDOWN} clobber
|
-cd cal; ${RM} -f all; ${MAKE} -f Makefile ${CAL_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
||||||
cd custom; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} clobber
|
cd custom; ${RM} -f all; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
||||||
cd cscript; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} clobber
|
cd cscript; ${RM} -f all; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo remove files that are obsolete
|
${V} echo remove files that are obsolete
|
||||||
${RM} -rf win32 build
|
${RM} -rf win32 build
|
||||||
#if 0 /* start of skip for non-Gnu makefiles */
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
${RM} -f Makefile.simple
|
${RM} -f Makefile.simple
|
||||||
${RM} -f custom/Makefile
|
${RM} -f custom/Makefile
|
||||||
|
-${MAKE} -f ${MAKE_FILE} custom/Makefile
|
||||||
#endif /* end of skip for non-Gnu makefiles */
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
${RM} -f .static .dynamic
|
${RM} -f .static .dynamic calc-dynamic-only calc-static-only
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
# install everything
|
# install everything
|
||||||
@@ -4141,6 +4332,9 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
else \
|
else \
|
||||||
${TRUE}; \
|
${TRUE}; \
|
||||||
fi
|
fi
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
-${Q} if [ ! -d ${T}${CUSTOMCALDIR} ]; then \
|
-${Q} if [ ! -d ${T}${CUSTOMCALDIR} ]; then \
|
||||||
echo ${MKDIR} ${MKDIR_ARG} ${T}${CUSTOMCALDIR}; \
|
echo ${MKDIR} ${MKDIR_ARG} ${T}${CUSTOMCALDIR}; \
|
||||||
${MKDIR} ${MKDIR_ARG} ${T}${CUSTOMCALDIR}; \
|
${MKDIR} ${MKDIR_ARG} ${T}${CUSTOMCALDIR}; \
|
||||||
@@ -4165,6 +4359,9 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
else \
|
else \
|
||||||
${TRUE}; \
|
${TRUE}; \
|
||||||
fi
|
fi
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
-${Q} if [ ! -d ${T}${SCRIPTDIR} ]; then \
|
-${Q} if [ ! -d ${T}${SCRIPTDIR} ]; then \
|
||||||
echo ${MKDIR} ${MKDIR_ARG} ${T}${SCRIPTDIR}; \
|
echo ${MKDIR} ${MKDIR_ARG} ${T}${SCRIPTDIR}; \
|
||||||
${MKDIR} ${MKDIR_ARG} ${T}${SCRIPTDIR}; \
|
${MKDIR} ${MKDIR_ARG} ${T}${SCRIPTDIR}; \
|
||||||
@@ -4226,9 +4423,15 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
||||||
${Q} cd cal; ${MAKE} -f Makefile ${CAL_PASSDOWN} install
|
${Q} cd cal; ${MAKE} -f Makefile ${CAL_PASSDOWN} install
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
||||||
${Q} cd custom; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} install
|
${Q} cd custom; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} install
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
endif
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
||||||
${Q} cd cscript; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} install
|
${Q} cd cscript; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} install
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
@@ -4290,9 +4493,11 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
${T}${LIBDIR}/libcustcalc${LIB_EXT}; \
|
${T}${LIBDIR}/libcustcalc${LIB_EXT}; \
|
||||||
echo "installed ${T}${LIBDIR}/libcalc${LIB_EXT}"; \
|
echo "installed ${T}${LIBDIR}/libcalc${LIB_EXT}"; \
|
||||||
if [ -z "${T}" -o "/" = "${T}" ]; then \
|
if [ -z "${T}" -o "/" = "${T}" ]; then \
|
||||||
echo "running ${LDCONFIG}"; \
|
if [ ! -z "${LDCONFIG}" ]; then \
|
||||||
${LDCONFIG}; \
|
echo "running ${LDCONFIG}"; \
|
||||||
echo "finished ${LDCONFIG}"; \
|
${LDCONFIG} -v; \
|
||||||
|
echo "finished ${LDCONFIG}"; \
|
||||||
|
fi; \
|
||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} for i in ${LIB_H_SRC} ${BUILD_H_SRC} /dev/null; do \
|
-${Q} for i in ${LIB_H_SRC} ${BUILD_H_SRC} /dev/null; do \
|
||||||
@@ -4365,8 +4570,6 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
fi; \
|
fi; \
|
||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
${V} # NOTE: remove ${T}${CALC_INCDIR}/custom if it is empty
|
|
||||||
-${Q} ${RMDIR} ${T}${CALC_INCDIR}/custom 2>/dev/null
|
|
||||||
${V} # NOTE: misc install cleanup
|
${V} # NOTE: misc install cleanup
|
||||||
${Q} ${RM} -f tmp
|
${Q} ${RM} -f tmp
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
@@ -4495,9 +4698,11 @@ uninstall: custom/Makefile
|
|||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} if [ -z "${T}" -o "/" = "${T}" ]; then \
|
-${Q} if [ -z "${T}" -o "/" = "${T}" ]; then \
|
||||||
echo "running ${LDCONFIG}"; \
|
if [ ! -z "${LDCONFIG}" ]; then \
|
||||||
${LDCONFIG}; \
|
echo "running ${LDCONFIG}"; \
|
||||||
echo "finished ${LDCONFIG}"; \
|
${LDCONFIG} -v; \
|
||||||
|
echo "finished ${LDCONFIG}"; \
|
||||||
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} if [ -f "${T}${LIBDIR}/libcalc.a" ]; then \
|
-${Q} if [ -f "${T}${LIBDIR}/libcalc.a" ]; then \
|
||||||
${RM} -f "${T}${LIBDIR}/libcalc.a"; \
|
${RM} -f "${T}${LIBDIR}/libcalc.a"; \
|
||||||
|
171
Makefile.simple
171
Makefile.simple
@@ -11,7 +11,7 @@
|
|||||||
# (Generic calc makefile)
|
# (Generic calc makefile)
|
||||||
#
|
#
|
||||||
# NOTE: This is NOT the calc rpm Makefile. This Makefile is a generic
|
# NOTE: This is NOT the calc rpm Makefile. This Makefile is a generic
|
||||||
# Makefile for the people who build calc from the gziped tarball.
|
# Makefile for the people who build calc from the bzip2-ed tarball.
|
||||||
# Without modification, it not assume the system has readline, ncurses
|
# Without modification, it not assume the system has readline, ncurses
|
||||||
# or less. It compiles with gcc -O3 -g3 as well. You can change all
|
# or less. It compiles with gcc -O3 -g3 as well. You can change all
|
||||||
# this by modifying the Makefile variables below.
|
# this by modifying the Makefile variables below.
|
||||||
@@ -20,9 +20,10 @@
|
|||||||
# has the GNU readline headers and libaraies:
|
# has the GNU readline headers and libaraies:
|
||||||
#
|
#
|
||||||
# USE_READLINE= -DUSE_READLINE
|
# USE_READLINE= -DUSE_READLINE
|
||||||
# READLINE_LIB= -lreadline -lhistory -lncurses
|
# READLINE_LIB= -lreadline
|
||||||
|
# READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
# Copyright (C) 1999-2007 Landon Curt Noll
|
# Copyright (C) 1999-2008 Landon Curt Noll
|
||||||
#
|
#
|
||||||
# Calc is open software; you can redistribute it and/or modify it under
|
# Calc is open software; you can redistribute it and/or modify it under
|
||||||
# the terms of the version 2.1 of the GNU Lesser General Public License
|
# the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -38,8 +39,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||||
#
|
#
|
||||||
MAKEFILE_REV= $$Revision: 30.21 $$
|
MAKEFILE_REV= $$Revision: 30.41 $$
|
||||||
# @(#) $Id: Makefile.ship,v 30.21 2007/09/06 08:08:39 chongo Exp $
|
# @(#) $Id: Makefile.ship,v 30.41 2008/10/24 09:20:09 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1990/02/15 01:48:41
|
# Under source code control: 1990/02/15 01:48:41
|
||||||
@@ -105,19 +106,19 @@ HAVE_VSPRINTF=
|
|||||||
# Big Endian: Amdahl, 68k, Pyramid, Mips, Sparc, ...
|
# Big Endian: Amdahl, 68k, Pyramid, Mips, Sparc, ...
|
||||||
# Little Endian: Vax, 32k, Spim (Dec Mips), i386, i486, ...
|
# Little Endian: Vax, 32k, Spim (Dec Mips), i386, i486, ...
|
||||||
#
|
#
|
||||||
# If in doubt, leave BYTE_ORDER empty. This Makefile will attempt to
|
# If in doubt, leave CALC_BYTE_ORDER empty. This Makefile will attempt to
|
||||||
# use BYTE_ORDER in <machine/endian.h> or it will attempt to run
|
# use BYTE_ORDER in <machine/endian.h> or it will attempt to run
|
||||||
# the endian program. If you get syntax errors when you compile,
|
# the endian program. If you get syntax errors when you compile,
|
||||||
# try forcing the value to be -DBIG_ENDIAN and run the calc regression
|
# try forcing the value to be -DBIG_ENDIAN and run the calc regression
|
||||||
# tests. (see the README file) If the calc regression tests fail, do
|
# tests. (see the README file) If the calc regression tests fail, do
|
||||||
# a make clobber and try -DLITTLE_ENDIAN. If that fails, ask a wizard
|
# a make clobber and try -DCALC_LITTLE_ENDIAN. If that fails, ask a wizard
|
||||||
# for help.
|
# for help.
|
||||||
#
|
#
|
||||||
# Select BYTE_ORDER= -DLITTLE_ENDIAN for DJGPP.
|
# Select CALC_BYTE_ORDER= -DCALC_LITTLE_ENDIAN for DJGPP.
|
||||||
#
|
#
|
||||||
BYTE_ORDER=
|
CALC_BYTE_ORDER=
|
||||||
#BYTE_ORDER= -DBIG_ENDIAN
|
#CALC_BYTE_ORDER= -DCALC_BIG_ENDIAN
|
||||||
#BYTE_ORDER= -DLITTLE_ENDIAN
|
#CALC_BYTE_ORDER= -DCALC_LITTLE_ENDIAN
|
||||||
|
|
||||||
# Determine the number of bits in a long
|
# Determine the number of bits in a long
|
||||||
#
|
#
|
||||||
@@ -582,6 +583,18 @@ INCDIR= /usr/include
|
|||||||
# by default is empty. If ${T} is non-empty, then installation
|
# by default is empty. If ${T} is non-empty, then installation
|
||||||
# locations will be relative to the ${T} directory.
|
# locations will be relative to the ${T} directory.
|
||||||
#
|
#
|
||||||
|
# NOTE: If you change LIBDIR to a non-standard location, you will need
|
||||||
|
# to make changes to your execution environment so that executables
|
||||||
|
# will search LIBDIR when they are resolving dynamic shared libraries.
|
||||||
|
#
|
||||||
|
# On OS X, this means you need to export $DYLD_LIBRARY_PATH
|
||||||
|
# to include the LIBDIR path in the value.
|
||||||
|
#
|
||||||
|
# On Linux and BSD, this means you need to export $LD_LIBRARY_PATH
|
||||||
|
# to include the LIBDIR path in the value.
|
||||||
|
#
|
||||||
|
# You might be better off not changing LIBDIR in the first place.
|
||||||
|
#
|
||||||
# For DJGPP, select:
|
# For DJGPP, select:
|
||||||
#
|
#
|
||||||
# BINDIR= /dev/env/DJDIR/bin
|
# BINDIR= /dev/env/DJDIR/bin
|
||||||
@@ -752,13 +765,25 @@ MANMAKE= /usr/local/bin/manmake
|
|||||||
MANMODE= 0444
|
MANMODE= 0444
|
||||||
CATMODE= 0444
|
CATMODE= 0444
|
||||||
|
|
||||||
|
# By default, custom builtin functions may only be executed if calc
|
||||||
|
# is given the -C option. This is because custom builtin functions
|
||||||
|
# may invoke non-standard or non-portable code. One may completely
|
||||||
|
# disable custom builtin functions by not compiling any of code
|
||||||
|
#
|
||||||
|
# ALLOW_CUSTOM= -DCUSTOM # allow custom only if -C is given
|
||||||
|
# ALLOW_CUSTOM= # disable custom even if -C is given
|
||||||
|
#
|
||||||
|
# If in doubt, use ALLOW_CUSTOM= -DCUSTOM
|
||||||
|
#
|
||||||
|
ALLOW_CUSTOM= -DCUSTOM
|
||||||
|
#ALLOW_CUSTOM=
|
||||||
|
|
||||||
# If the $CALCPATH environment variable is not defined, then the following
|
# If the $CALCPATH environment variable is not defined, then the following
|
||||||
# path will be search for calc resource file routines.
|
# path will be search for calc resource file routines.
|
||||||
#
|
#
|
||||||
# Select CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR} for DJGPP.
|
# Select CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR} for DJGPP.
|
||||||
#
|
#
|
||||||
CALCPATH= .:./cal:~/.cal:${CALC_SHAREDIR}:${CUSTOMCALDIR}
|
CALCPATH= .:./cal:~/.cal:${CALC_SHAREDIR}:${CUSTOMCALDIR}
|
||||||
#CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
|
||||||
|
|
||||||
# If the $CALCRC environment variable is not defined, then the following
|
# If the $CALCRC environment variable is not defined, then the following
|
||||||
# path will be search for calc resource files.
|
# path will be search for calc resource files.
|
||||||
@@ -778,6 +803,8 @@ CALCRC= ${CALC_SHAREDIR}/startup:~/.calcrc:./.calcinit
|
|||||||
#
|
#
|
||||||
# READLINE_LIB The flags needed to link in the readline
|
# READLINE_LIB The flags needed to link in the readline
|
||||||
# and history link libraries
|
# and history link libraries
|
||||||
|
# READLINE_EXTRAS Flags and libs needed to use the readline
|
||||||
|
# and history link libraries
|
||||||
# READLINE_INCLUDE Where the readline include files reside
|
# READLINE_INCLUDE Where the readline include files reside
|
||||||
# (leave blank if they are /usr/include/readline)
|
# (leave blank if they are /usr/include/readline)
|
||||||
#
|
#
|
||||||
@@ -791,14 +818,22 @@ USE_READLINE=
|
|||||||
#USE_READLINE= -DUSE_READLINE
|
#USE_READLINE= -DUSE_READLINE
|
||||||
#
|
#
|
||||||
READLINE_LIB=
|
READLINE_LIB=
|
||||||
#READLINE_LIB= -lreadline -lhistory -lncurses
|
READLINE_EXTRAS=
|
||||||
#READLINE_LIB= -L/usr/gnu/lib -lreadline -lhistory -lncurses
|
#
|
||||||
#READLINE_LIB= -L/usr/local/lib -lreadline -lhistory -lncurses
|
#READLINE_LIB= -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
|
#
|
||||||
|
#READLINE_LIB= -L/usr/gnu/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
|
#
|
||||||
|
#READLINE_LIB= -L/usr/local/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
# For Apple OS X: install fink from http://fink.sourceforge.net
|
# For Apple OS X: install fink from http://fink.sourceforge.net
|
||||||
# and then do a 'fink install readline' and then use:
|
# and then do a 'fink install readline' and then use:
|
||||||
#
|
#
|
||||||
#READLINE_LIB= -L/sw/lib -lreadline -lhistory -lncurses
|
#READLINE_LIB= -L/sw/lib -lreadline
|
||||||
|
#READLINE_EXTRAS= -lhistory -lncurses
|
||||||
#
|
#
|
||||||
READLINE_INCLUDE=
|
READLINE_INCLUDE=
|
||||||
#READLINE_INCLUDE= -I/usr/gnu/include
|
#READLINE_INCLUDE= -I/usr/gnu/include
|
||||||
@@ -908,18 +943,6 @@ CALC_ENV= CALCPATH=./cal LD_LIBRARY_PATH=.
|
|||||||
# MALLOC_FASTCHK=1 MALLOC_FULLWARN=1 MALLOC_CLEAR_FREE=1 \
|
# MALLOC_FASTCHK=1 MALLOC_FULLWARN=1 MALLOC_CLEAR_FREE=1 \
|
||||||
# MALLOC_CLEAR_MALLOC=1 LD_LIBRARY_PATH=.:./custom
|
# MALLOC_CLEAR_MALLOC=1 LD_LIBRARY_PATH=.:./custom
|
||||||
|
|
||||||
# By default, custom builtin functions may only be executed if calc
|
|
||||||
# is given the -C option. This is because custom builtin functions
|
|
||||||
# may invoke non-standard or non-portable code. One may completely
|
|
||||||
# disable custom builtin functions by not compiling any of code
|
|
||||||
#
|
|
||||||
# ALLOW_CUSTOM= -DCUSTOM # allow custom only if -C is given
|
|
||||||
# ALLOW_CUSTOM= # disable custom even if -C is given
|
|
||||||
#
|
|
||||||
# If in doubt, use ALLOW_CUSTOM= -DCUSTOM
|
|
||||||
#
|
|
||||||
ALLOW_CUSTOM= -DCUSTOM
|
|
||||||
#ALLOW_CUSTOM=
|
|
||||||
|
|
||||||
# The install rule uses:
|
# The install rule uses:
|
||||||
#
|
#
|
||||||
@@ -950,8 +973,8 @@ EXT=
|
|||||||
|
|
||||||
# The default calc versions
|
# The default calc versions
|
||||||
#
|
#
|
||||||
VERSION= 2.12.2.1
|
VERSION= 2.12.4.0
|
||||||
VERS= 2.12.2
|
VERS= 2.12.4
|
||||||
VER= 2.12
|
VER= 2.12
|
||||||
VE= 2
|
VE= 2
|
||||||
|
|
||||||
@@ -1115,6 +1138,7 @@ CFLAGS= ${ICFLAGS} ${CCOPT}
|
|||||||
ILDFLAGS= ${COMMON_LDFLAGS} ${LD_STATIC}
|
ILDFLAGS= ${COMMON_LDFLAGS} ${LD_STATIC}
|
||||||
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
||||||
#
|
#
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
#-=-=-=-=-=- end of target section - only make rules below -=-=-=-=-=-#
|
#-=-=-=-=-=- end of target section - only make rules below -=-=-=-=-=-#
|
||||||
@@ -1234,7 +1258,7 @@ UTIL_TMP= ll_tmp fpos_tmp fposv_tmp const_tmp uid_tmp newstr_tmp vs_tmp \
|
|||||||
memmv_tmp offscl_tmp posscl_tmp newstr_tmp \
|
memmv_tmp offscl_tmp posscl_tmp newstr_tmp \
|
||||||
getsid_tmp gettime_tmp getprid_tmp rusage_tmp strdup_tmp
|
getsid_tmp gettime_tmp getprid_tmp rusage_tmp strdup_tmp
|
||||||
|
|
||||||
# these utility executables may be created in the process of
|
# these utility executables may be created in the process of
|
||||||
# building the BUILD_H_SRC file set
|
# building the BUILD_H_SRC file set
|
||||||
#
|
#
|
||||||
UTIL_PROGS= align32${EXT} fposval${EXT} have_uid_t${EXT} have_const${EXT} \
|
UTIL_PROGS= align32${EXT} fposval${EXT} have_uid_t${EXT} have_const${EXT} \
|
||||||
@@ -1344,9 +1368,6 @@ HELP_PASSDOWN= \
|
|||||||
COMMON_CFLAGS="${COMMON_CFLAGS}" \
|
COMMON_CFLAGS="${COMMON_CFLAGS}" \
|
||||||
COMMON_LDFLAGS="${COMMON_LDFLAGS}" \
|
COMMON_LDFLAGS="${COMMON_LDFLAGS}" \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
EXT=${EXT} \
|
EXT=${EXT} \
|
||||||
FMT=${FMT} \
|
FMT=${FMT} \
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
@@ -1381,9 +1402,6 @@ CAL_PASSDOWN= \
|
|||||||
CMP=${CMP} \
|
CMP=${CMP} \
|
||||||
CO=${CO} \
|
CO=${CO} \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
INCDIR="${INCDIR}" \
|
INCDIR="${INCDIR}" \
|
||||||
LANG=${LANG} \
|
LANG=${LANG} \
|
||||||
@@ -1412,9 +1430,6 @@ CSCRIPT_PASSDOWN= \
|
|||||||
CMP=${CMP} \
|
CMP=${CMP} \
|
||||||
CO=${CO} \
|
CO=${CO} \
|
||||||
CP=${CP} \
|
CP=${CP} \
|
||||||
CUSTOMCALDIR="${CUSTOMCALDIR}" \
|
|
||||||
CUSTOMHELPDIR="${CUSTOMHELPDIR}" \
|
|
||||||
CUSTOMINCDIR="${CUSTOMINCDIR}" \
|
|
||||||
FMT=${FMT} \
|
FMT=${FMT} \
|
||||||
HELPDIR="${HELPDIR}" \
|
HELPDIR="${HELPDIR}" \
|
||||||
INCDIR="${INCDIR}" \
|
INCDIR="${INCDIR}" \
|
||||||
@@ -1459,7 +1474,7 @@ CALCLIBLIST= ${LIBSRC} ${UTIL_C_SRC} ${LIB_H_SRC} ${MAKE_FILE} \
|
|||||||
|
|
||||||
# complete list of .o files
|
# complete list of .o files
|
||||||
#
|
#
|
||||||
OBJS= ${LIBOBJS} ${CALCOBJS} ${UTIL_OBJS} ${SAMPLE_OBJS}
|
OBJS= ${LIBOBJS} ${CALCOBJS} ${UTIL_OBJS} ${SAMPLE_OBJ}
|
||||||
|
|
||||||
# static library build
|
# static library build
|
||||||
#
|
#
|
||||||
@@ -1525,6 +1540,9 @@ TARGETS= ${EARLY_TARGETS} ${BLD_TYPE} ${LATE_TARGETS}
|
|||||||
|
|
||||||
all: ${BLD_TYPE} CHANGES
|
all: ${BLD_TYPE} CHANGES
|
||||||
|
|
||||||
|
prep:
|
||||||
|
${Q} ${MAKE} -f ${MAKE_FILE} all DEBUG='-g3'
|
||||||
|
|
||||||
calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
||||||
${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} calc${EXT} \
|
${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} calc${EXT} \
|
||||||
${SAMPLE_TARGETS} ${LATE_TARGETS}
|
${SAMPLE_TARGETS} ${LATE_TARGETS}
|
||||||
@@ -1549,7 +1567,7 @@ calc-dynamic-only: ${DYNAMIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${Q} for i in .static calc-static${EXT} ${SAMPLE_STATIC_TARGETS} \
|
${Q} for i in .static calc-static${EXT} ${SAMPLE_STATIC_TARGETS} \
|
||||||
libcalc.a custom/libcustcalc.a; do \
|
libcalc.a custom/libcustcalc.a; do \
|
||||||
r="calc-dynamic-only"; \
|
r="calc-dynamic-only"; \
|
||||||
if [ -e "$$i" ]; then \
|
if [ -r "$$i" ]; then \
|
||||||
echo "Found the static target $$i file. You must:" 1>&2; \
|
echo "Found the static target $$i file. You must:" 1>&2; \
|
||||||
echo "" 1>&2; \
|
echo "" 1>&2; \
|
||||||
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
||||||
@@ -1567,7 +1585,9 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${CALC_STATIC_LIBS} calc-static${EXT} \
|
${CALC_STATIC_LIBS} calc-static${EXT} \
|
||||||
${SAMPLE_STATIC_TARGETS} ${LATE_TARGETS}
|
${SAMPLE_STATIC_TARGETS} ${LATE_TARGETS}
|
||||||
${Q} for i in calc${EXT} ${SAMPLE_TARGETS}; do \
|
${Q} for i in calc${EXT} ${SAMPLE_TARGETS}; do \
|
||||||
if ! ${CMP} -s "$$i-static" "$$i"; then \
|
if ${CMP} -s "$$i-static" "$$i"; then \
|
||||||
|
${TRUE}; \
|
||||||
|
else \
|
||||||
${RM} -f "$$i"; \
|
${RM} -f "$$i"; \
|
||||||
${LN} "$$i-static" "$$i"; \
|
${LN} "$$i-static" "$$i"; \
|
||||||
fi; \
|
fi; \
|
||||||
@@ -1593,7 +1613,7 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
${Q} for i in .dynamic ${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} \
|
${Q} for i in .dynamic ${CALC_DYNAMIC_LIBS} ${SYM_DYNAMIC_LIBS} \
|
||||||
custom/libcustcalc${LIB_EXT_VERSION}; do \
|
custom/libcustcalc${LIB_EXT_VERSION}; do \
|
||||||
r="calc-static-only"; \
|
r="calc-static-only"; \
|
||||||
if [ -e "$$i" ]; then \
|
if [ -r "$$i" ]; then \
|
||||||
echo "Found the dynamic target $$i file. You must:" 1>&2; \
|
echo "Found the dynamic target $$i file. You must:" 1>&2; \
|
||||||
echo "" 1>&2; \
|
echo "" 1>&2; \
|
||||||
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
echo " ${MAKE} -f ${MAKE_FILE} clobber" 1>&2; \
|
||||||
@@ -1610,10 +1630,11 @@ calc-static-only: ${STATIC_FIRST_TARGETS} ${EARLY_TARGETS} \
|
|||||||
calc${EXT}: .hsrc ${CALCOBJS} ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
calc${EXT}: .hsrc ${CALCOBJS} ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
${CC} ${CALCOBJS} ${LDFLAGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} ${CALCOBJS} ${LDFLAGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
libcalc${LIB_EXT_VERSION}: ${LIBOBJS} ver_calc${EXT} ${MAKE_FILE}
|
libcalc${LIB_EXT_VERSION}: ${LIBOBJS} ver_calc${EXT} ${MAKE_FILE}
|
||||||
${CC} ${LIBCALC_SHLIB} ${LIBOBJS} -o libcalc${LIB_EXT_VERSION}
|
${CC} ${LIBCALC_SHLIB} ${LIBOBJS} \
|
||||||
|
${READLINE_LIB} ${READLINE_EXTRAS} -o libcalc${LIB_EXT_VERSION}
|
||||||
|
|
||||||
libcalc${LIB_EXT_VERS}: libcalc${LIB_EXT_VERSION}
|
libcalc${LIB_EXT_VERS}: libcalc${LIB_EXT_VERSION}
|
||||||
${Q} ${RM} -f $@
|
${Q} ${RM} -f $@
|
||||||
@@ -1672,11 +1693,11 @@ sample: ${SAMPLE_TARGETS}
|
|||||||
|
|
||||||
sample_rand${EXT}: sample_rand.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
sample_rand${EXT}: sample_rand.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} sample_rand.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} sample_rand.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
sample_many${EXT}: sample_many.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
sample_many${EXT}: sample_many.o ${CALC_DYNAMIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} sample_many.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
${CC} sample_many.o ${CLDFALGS} ${LD_SHARE} ${CALC_DYNAMIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
@@ -1776,7 +1797,7 @@ endian_calc.h: endian${EXT} ${MAKE_FILE}
|
|||||||
${Q} echo '' >> endian_calc.h
|
${Q} echo '' >> endian_calc.h
|
||||||
${Q} echo '' >> endian_calc.h
|
${Q} echo '' >> endian_calc.h
|
||||||
${Q} echo '/* what byte order are we? */' >> endian_calc.h
|
${Q} echo '/* what byte order are we? */' >> endian_calc.h
|
||||||
-${Q} if [ X"${BYTE_ORDER}" = X ]; then \
|
-${Q} if [ X"${CALC_BYTE_ORDER}" = X ]; then \
|
||||||
if [ -f ${INCDIR}/endian.h ]; then \
|
if [ -f ${INCDIR}/endian.h ]; then \
|
||||||
echo '#include <endian.h>' >> endian_calc.h; \
|
echo '#include <endian.h>' >> endian_calc.h; \
|
||||||
echo '#define CALC_BYTE_ORDER BYTE_ORDER' >> endian_calc.h; \
|
echo '#define CALC_BYTE_ORDER BYTE_ORDER' >> endian_calc.h; \
|
||||||
@@ -2722,7 +2743,7 @@ have_urandom.h: ${MAKE_FILE}
|
|||||||
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
||||||
elif [ X"${HAVE_URANDOM_H}" = X"NO" ]; then \
|
elif [ X"${HAVE_URANDOM_H}" = X"NO" ]; then \
|
||||||
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
||||||
elif [ -e /dev/urandom ] 2>/dev/null; then \
|
elif [ -r /dev/urandom ] 2>/dev/null; then \
|
||||||
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
||||||
else \
|
else \
|
||||||
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
||||||
@@ -3032,7 +3053,7 @@ win32_hsrc: win32.mkdef ${MAKE_FILE}
|
|||||||
###
|
###
|
||||||
|
|
||||||
endian.o: endian.c have_unistd.h
|
endian.o: endian.c have_unistd.h
|
||||||
${LCC} ${ICFLAGS} ${BYTE_ORDER} endian.c -c
|
${LCC} ${ICFLAGS} ${CALC_BYTE_ORDER} endian.c -c
|
||||||
|
|
||||||
endian${EXT}: endian.o
|
endian${EXT}: endian.o
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
@@ -3132,7 +3153,7 @@ calc-static${EXT}: .hsrc ${CALCOBJS} \
|
|||||||
${CALC_STATIC_LIBS} ${MAKE_FILE}
|
${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${RM} -f $@
|
${RM} -f $@
|
||||||
${CC} ${LDFLAGS} ${CALCOBJS} ${LD_STATIC} ${CALC_STATIC_LIBS} \
|
${CC} ${LDFLAGS} ${CALCOBJS} ${LD_STATIC} ${CALC_STATIC_LIBS} \
|
||||||
${READLINE_LIB} -o $@
|
${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
libcustcalc.a: custom/libcustcalc.a
|
libcustcalc.a: custom/libcustcalc.a
|
||||||
${Q} ${RM} -f $@
|
${Q} ${RM} -f $@
|
||||||
@@ -3149,11 +3170,11 @@ custom/libcustcalc.a: custom/Makefile
|
|||||||
|
|
||||||
sample_rand-static${EXT}: sample_rand.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
sample_rand-static${EXT}: sample_rand.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} ${LDFLAGS} sample_rand.o ${LD_STATIC} \
|
${CC} ${LDFLAGS} sample_rand.o ${LD_STATIC} \
|
||||||
${CALC_STATIC_LIBS} ${READLINE_LIB} -o $@
|
${CALC_STATIC_LIBS} ${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
sample_many-static${EXT}: sample_many.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
sample_many-static${EXT}: sample_many.o ${CALC_STATIC_LIBS} ${MAKE_FILE}
|
||||||
${CC} ${LDFLAGS} sample_many.o ${LD_STATIC} \
|
${CC} ${LDFLAGS} sample_many.o ${LD_STATIC} \
|
||||||
${CALC_STATIC_LIBS} ${READLINE_LIB} -o $@
|
${CALC_STATIC_LIBS} ${READLINE_LIB} ${READLINE_EXTRAS} -o $@
|
||||||
|
|
||||||
###
|
###
|
||||||
#
|
#
|
||||||
@@ -3531,6 +3552,7 @@ env:
|
|||||||
@echo 'PURIFY=${PURIFY}'; echo ''
|
@echo 'PURIFY=${PURIFY}'; echo ''
|
||||||
@echo 'Q=${Q}'; echo ''
|
@echo 'Q=${Q}'; echo ''
|
||||||
@echo 'RANLIB=${RANLIB}'; echo ''
|
@echo 'RANLIB=${RANLIB}'; echo ''
|
||||||
|
@echo 'READLINE_EXTRAS=${READLINE_EXTRAS}'; echo ''
|
||||||
@echo 'READLINE_INCLUDE=${READLINE_INCLUDE}'; echo ''
|
@echo 'READLINE_INCLUDE=${READLINE_INCLUDE}'; echo ''
|
||||||
@echo 'READLINE_LIB=${READLINE_LIB}'; echo ''
|
@echo 'READLINE_LIB=${READLINE_LIB}'; echo ''
|
||||||
@echo 'RM=${RM}'; echo ''
|
@echo 'RM=${RM}'; echo ''
|
||||||
@@ -3568,12 +3590,11 @@ env:
|
|||||||
@echo 'target=${target}'; echo ''
|
@echo 'target=${target}'; echo ''
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} end of major make variable dump =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} end of major make variable dump =-=-=-=-='
|
||||||
|
|
||||||
mkdebug: env version.c rpm.release
|
mkdebug: env version.c
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
||||||
-@./ver_calc${EXT}
|
-@./ver_calc${EXT}
|
||||||
-@./ver_calc${EXT} -r rpm.release
|
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ all
|
@${MAKE} -f Makefile Q= V=@ all
|
||||||
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
@@ -3582,7 +3603,7 @@ mkdebug: env version.c rpm.release
|
|||||||
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
debug: env rpm.release
|
debug: env
|
||||||
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
@echo '=-=-=-=-= ${MAKE_FILE} start of $@ rule =-=-=-=-='
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ clobber =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ clobber
|
@${MAKE} -f Makefile Q= V=@ clobber
|
||||||
@@ -3590,7 +3611,6 @@ debug: env rpm.release
|
|||||||
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the source version =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
@${MAKE} -f Makefile Q= V=@ ver_calc${EXT}
|
||||||
-@./ver_calc${EXT}
|
-@./ver_calc${EXT}
|
||||||
-@./ver_calc${EXT} -r rpm.release
|
|
||||||
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
@echo '=-=-=-=-= Invoking ${MAKE} -f Makefile Q= V=@ all =-=-=-=-='
|
||||||
@${MAKE} -f Makefile Q= V=@ all
|
@${MAKE} -f Makefile Q= V=@ all
|
||||||
@echo '=-=-=-=-= Determining the binary version =-=-=-=-='
|
@echo '=-=-=-=-= Determining the binary version =-=-=-=-='
|
||||||
@@ -3609,9 +3629,6 @@ debug: env rpm.release
|
|||||||
# make run
|
# make run
|
||||||
# * only run calc interactively with the ${CALC_ENV} environment
|
# * only run calc interactively with the ${CALC_ENV} environment
|
||||||
#
|
#
|
||||||
# make cvd
|
|
||||||
# * run the SGI WorkShop debugger on calc with the ${CALC_ENV} environment
|
|
||||||
#
|
|
||||||
# make dbx
|
# make dbx
|
||||||
# * run the dbx debugger on calc with the ${CALC_ENV} environment
|
# * run the dbx debugger on calc with the ${CALC_ENV} environment
|
||||||
#
|
#
|
||||||
@@ -3623,9 +3640,6 @@ debug: env rpm.release
|
|||||||
run:
|
run:
|
||||||
${CALC_ENV} ./calc${EXT}
|
${CALC_ENV} ./calc${EXT}
|
||||||
|
|
||||||
cvd:
|
|
||||||
${CALC_ENV} cvd ./calc${EXT}
|
|
||||||
|
|
||||||
dbx:
|
dbx:
|
||||||
${CALC_ENV} dbx ./calc${EXT}
|
${CALC_ENV} dbx ./calc${EXT}
|
||||||
|
|
||||||
@@ -3804,21 +3818,22 @@ clobber: custom/Makefile clean
|
|||||||
${RM} -f libcustcalc.a
|
${RM} -f libcustcalc.a
|
||||||
${RM} -f calc-static${EXT}
|
${RM} -f calc-static${EXT}
|
||||||
${RM} -f ${CALC_STATIC_LIBS}
|
${RM} -f ${CALC_STATIC_LIBS}
|
||||||
|
${RM} -f all
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for help =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for help =-=-=-=-='
|
||||||
-cd help; ${MAKE} -f Makefile ${HELP_PASSDOWN} clobber
|
-cd help; ${RM} -f all; ${MAKE} -f Makefile ${HELP_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cal =-=-=-=-='
|
||||||
-cd cal; ${MAKE} -f Makefile ${CAL_PASSDOWN} clobber
|
-cd cal; ${RM} -f all; ${MAKE} -f Makefile ${CAL_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for custom =-=-=-=-='
|
||||||
cd custom; ${MAKE} -f Makefile.simple ${CUSTOM_PASSDOWN} clobber
|
cd custom; ${RM} -f all; ${MAKE} -f Makefile ${CUSTOM_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
${V} echo '=-=-=-=-= Invoking $@ rule for cscript =-=-=-=-='
|
||||||
cd cscript; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} clobber
|
cd cscript; ${RM} -f all; ${MAKE} -f Makefile ${CSCRIPT_PASSDOWN} $@
|
||||||
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= Back to the main Makefile for $@ rule =-=-=-=-='
|
||||||
${V} echo remove files that are obsolete
|
${V} echo remove files that are obsolete
|
||||||
${RM} -rf win32 build
|
${RM} -rf win32 build
|
||||||
${RM} -f .static .dynamic
|
${RM} -f .static .dynamic calc-dynamic-only calc-static-only
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
# install everything
|
# install everything
|
||||||
@@ -4032,9 +4047,11 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
${T}${LIBDIR}/libcustcalc${LIB_EXT}; \
|
${T}${LIBDIR}/libcustcalc${LIB_EXT}; \
|
||||||
echo "installed ${T}${LIBDIR}/libcalc${LIB_EXT}"; \
|
echo "installed ${T}${LIBDIR}/libcalc${LIB_EXT}"; \
|
||||||
if [ -z "${T}" -o "/" = "${T}" ]; then \
|
if [ -z "${T}" -o "/" = "${T}" ]; then \
|
||||||
echo "running ${LDCONFIG}"; \
|
if [ ! -z "${LDCONFIG}" ]; then \
|
||||||
${LDCONFIG}; \
|
echo "running ${LDCONFIG}"; \
|
||||||
echo "finished ${LDCONFIG}"; \
|
${LDCONFIG} -v; \
|
||||||
|
echo "finished ${LDCONFIG}"; \
|
||||||
|
fi; \
|
||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} for i in ${LIB_H_SRC} ${BUILD_H_SRC} /dev/null; do \
|
-${Q} for i in ${LIB_H_SRC} ${BUILD_H_SRC} /dev/null; do \
|
||||||
@@ -4107,8 +4124,6 @@ install: custom/Makefile ${LIB_H_SRC} ${BUILD_H_SRC} calc.1 all
|
|||||||
fi; \
|
fi; \
|
||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
${V} # NOTE: remove ${T}${CALC_INCDIR}/custom if it is empty
|
|
||||||
-${Q} ${RMDIR} ${T}${CALC_INCDIR}/custom 2>/dev/null
|
|
||||||
${V} # NOTE: misc install cleanup
|
${V} # NOTE: misc install cleanup
|
||||||
${Q} ${RM} -f tmp
|
${Q} ${RM} -f tmp
|
||||||
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= ${MAKE_FILE} end of $@ rule =-=-=-=-='
|
||||||
@@ -4237,9 +4252,11 @@ uninstall: custom/Makefile
|
|||||||
fi; \
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} if [ -z "${T}" -o "/" = "${T}" ]; then \
|
-${Q} if [ -z "${T}" -o "/" = "${T}" ]; then \
|
||||||
echo "running ${LDCONFIG}"; \
|
if [ ! -z "${LDCONFIG}" ]; then \
|
||||||
${LDCONFIG}; \
|
echo "running ${LDCONFIG}"; \
|
||||||
echo "finished ${LDCONFIG}"; \
|
${LDCONFIG} -v; \
|
||||||
|
echo "finished ${LDCONFIG}"; \
|
||||||
|
fi; \
|
||||||
fi
|
fi
|
||||||
-${Q} if [ -f "${T}${LIBDIR}/libcalc.a" ]; then \
|
-${Q} if [ -f "${T}${LIBDIR}/libcalc.a" ]; then \
|
||||||
${RM} -f "${T}${LIBDIR}/libcalc.a"; \
|
${RM} -f "${T}${LIBDIR}/libcalc.a"; \
|
||||||
|
7
alloc.h
7
alloc.h
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: alloc.h,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: alloc.h,v 30.2 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/alloc.h,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/alloc.h,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:29
|
* Under source code control: 1990/02/15 01:48:29
|
||||||
@@ -46,6 +46,9 @@
|
|||||||
# include <string.h>
|
# include <string.h>
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
#if defined(_WIN32) && defined(NOTCYGWIN)
|
||||||
|
#include <stdio.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
# if defined(HAVE_NEWSTR)
|
# if defined(HAVE_NEWSTR)
|
||||||
E_FUNC void *memcpy();
|
E_FUNC void *memcpy();
|
||||||
|
13
cal/Makefile
13
cal/Makefile
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.2 $
|
# @(#) $Revision: 30.3 $
|
||||||
# @(#) $Id: Makefile,v 30.2 2007/03/22 07:34:47 chongo Exp $
|
# @(#) $Id: Makefile,v 30.3 2007/09/21 01:27:27 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/Makefile,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/Makefile,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1991/07/21 05:00:54
|
# Under source code control: 1991/07/21 05:00:54
|
||||||
@@ -111,9 +111,6 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# ${HELPDIR} where the help directory is installed
|
# ${HELPDIR} where the help directory is installed
|
||||||
# ${CALC_INCDIR} where the calc include files are installed
|
# ${CALC_INCDIR} where the calc include files are installed
|
||||||
# ${CUSTOMCALDIR} where custom *.cal files are installed
|
|
||||||
# ${CUSTOMHELPDIR} where custom help files are installed
|
|
||||||
# ${CUSTOMINCDIR} where custom .h files are installed
|
|
||||||
# ${SCRIPTDIR} where calc shell scripts are installed
|
# ${SCRIPTDIR} where calc shell scripts are installed
|
||||||
#
|
#
|
||||||
# NOTE: The install rule prepends installation paths with ${T}, which
|
# NOTE: The install rule prepends installation paths with ${T}, which
|
||||||
@@ -124,16 +121,10 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
#
|
#
|
||||||
# HELPDIR= ${CALC_SHAREDIR}/help
|
# HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
# CALC_INCDIR= ${INCDIR}/calc
|
# CALC_INCDIR= ${INCDIR}/calc
|
||||||
# CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
# CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
# CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
# SCRIPTDIR= ${BINDIR}/cscript
|
# SCRIPTDIR= ${BINDIR}/cscript
|
||||||
#
|
#
|
||||||
HELPDIR= ${CALC_SHAREDIR}/help
|
HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
CALC_INCDIR= ${INCDIR}/calc
|
CALC_INCDIR= ${INCDIR}/calc
|
||||||
CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
SCRIPTDIR= ${BINDIR}/cscript
|
SCRIPTDIR= ${BINDIR}/cscript
|
||||||
|
|
||||||
# T - top level directory under which calc will be installed
|
# T - top level directory under which calc will be installed
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.3 $
|
* @(#) $Revision: 30.5 $
|
||||||
* @(#) $Id: regress.cal,v 30.3 2007/07/11 22:58:26 chongo Exp $
|
* @(#) $Id: regress.cal,v 30.5 2008/10/24 07:09:41 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/regress.cal,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/regress.cal,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:50:36
|
* Under source code control: 1990/02/15 01:50:36
|
||||||
@@ -1412,7 +1412,39 @@ define test_functions()
|
|||||||
vrfy(isnum(systime()), '1206: isnum(systime())');
|
vrfy(isnum(systime()), '1206: isnum(systime())');
|
||||||
vrfy(isnum(usertime()), '1207: isnum(usertime())');
|
vrfy(isnum(usertime()), '1207: isnum(usertime())');
|
||||||
|
|
||||||
print '1208: Ending test_functions';
|
/* more jacobi tests */
|
||||||
|
vrfy(jacobi(987897,987) == 0, '1208: jacobi(987897,987) == 0');
|
||||||
|
vrfy(jacobi(897,987) == 0, '1209: jacobi(897,987) == 0');
|
||||||
|
vrfy(jacobi(987,897) == 0, '1210: jacobi(987,897) == 0');
|
||||||
|
vrfy(jacobi(90,897) == 0, '1211: jacobi(90,897) == 0');
|
||||||
|
vrfy(jacobi(45,897) == 0, '1212: jacobi(45,897) == 0');
|
||||||
|
vrfy(jacobi(897,45) == 0, '1213: jacobi(897,45) == 0');
|
||||||
|
vrfy(jacobi(42,45) == 0, '1214: jacobi(42,45) == 0');
|
||||||
|
vrfy(jacobi(21,45) == 0, '1215: jacobi(21,45) == 0');
|
||||||
|
vrfy(jacobi(45,21) == 0, '1216: jacobi(45,21) == 0');
|
||||||
|
vrfy(jacobi(3,21) == 0, '1217: jacobi(3,21) == 0');
|
||||||
|
vrfy(jacobi(0,21) == 0, '1218: jacobi(0,21) == 0');
|
||||||
|
vrfy(jacobi(0,20003) == 0, '1219: jacobi(0,20003) == 0');
|
||||||
|
vrfy(jacobi(1,20003) == 1, '1220: jacobi(1,20003) == 1');
|
||||||
|
vrfy(jacobi(1236,20003) == 1, '1221: jacobi(1236,20003) == 1');
|
||||||
|
vrfy(jacobi(618,20003) == -1, '1222: jacobi(618,20003) == -1');
|
||||||
|
vrfy(jacobi(309,20003) == 1, '1223: jacobi(309,20003) == 1');
|
||||||
|
vrfy(jacobi(227,309) == 1, '1224: jacobi(227,309) == 1');
|
||||||
|
vrfy(jacobi(82,227) == 1, '1225: jacobi(82,227) == 1');
|
||||||
|
vrfy(jacobi(41,227) == -1, '1226: jacobi(41,227) == -1');
|
||||||
|
vrfy(jacobi(22,41) == -1, '1227: jacobi(22,41) == -1');
|
||||||
|
vrfy(jacobi(11,41) == -1, '1228: jacobi(11,41) == -1');
|
||||||
|
vrfy(jacobi(8,11) == -1, '1229: jacobi(8,11) == -1');
|
||||||
|
vrfy(jacobi(4,11) == 1, '1230: jacobi(4,11) == 1');
|
||||||
|
vrfy(jacobi(2,11) == -1, '1231: jacobi(2,11) == -1');
|
||||||
|
vrfy(jacobi(1,11) == 1, '1232: jacobi(1,11) == 1');
|
||||||
|
vrfy(jacobi(0,11) == 0, '1233: jacobi(0,11) == 0');
|
||||||
|
vrfy(jacobi(0,0) == 0, '1234: jacobi(0,0) == 0');
|
||||||
|
vrfy(jacobi(-1,0) == 0, '1235: jacobi(-1,0) == 0');
|
||||||
|
vrfy(jacobi(-1,-1) == 0, '1236: jacobi(-1,-1) == 0');
|
||||||
|
vrfy(jacobi(0,-1) == 0, '1237: jacobi(0,-1) == 0');
|
||||||
|
|
||||||
|
print '1238: Ending test_functions';
|
||||||
}
|
}
|
||||||
print '017: parsed test_functions()';
|
print '017: parsed test_functions()';
|
||||||
|
|
||||||
@@ -2706,11 +2738,24 @@ define test_2600()
|
|||||||
vrfy(log(1e127) == 127,
|
vrfy(log(1e127) == 127,
|
||||||
strcat(str(tnum++), ': log(1e127)) == 127'));
|
strcat(str(tnum++), ': log(1e127)) == 127'));
|
||||||
vrfy(round(log(17^47),10) == 57.8310993048,
|
vrfy(round(log(17^47),10) == 57.8310993048,
|
||||||
strcat(str(tnum++),
|
strcat(str(tnum++),
|
||||||
': round(log(17^47),10) == 57.8310993048'));
|
': round(log(17^47),10) == 57.8310993048'));
|
||||||
vrfy(round(log(127),10) == 2.103803721,
|
vrfy(round(log(127),10) == 2.103803721,
|
||||||
strcat(str(tnum++),
|
strcat(str(tnum++),
|
||||||
': round(log(127),10) == 2.103803721'));
|
': round(log(127),10) == 2.103803721'));
|
||||||
|
vrfy(round(log(0.25,0.00001),5) == -0.60206,
|
||||||
|
strcat(str(tnum++),
|
||||||
|
': round(log(0.25,0.00001),5) == -0.60206'));
|
||||||
|
vrfy(round(log(0.25,1e-10),10) == -0.6020599913,
|
||||||
|
strcat(str(tnum++),
|
||||||
|
': round(log(0.25,1e-10),10) == -0.6020599913'));
|
||||||
|
vrfy(round( log(1.2+1.2i,1e-5),5) == 0.2297+0.34109i,
|
||||||
|
strcat(str(tnum++),
|
||||||
|
': round(log(1.2+1.2i,1e-5),5) == 0.2297+0.34109i'));
|
||||||
|
vrfy(round( log(1.2+1.2i,1e-10),10) == 0.2296962439+0.3410940885i,
|
||||||
|
strcat(str(tnum++),
|
||||||
|
': round(log(1.2+1.2i,1e-10),10) == ',
|
||||||
|
'0.2296962439+0.3410940885i'));
|
||||||
epsilon(i),;
|
epsilon(i),;
|
||||||
print tnum++: ': epsilon(i),;';
|
print tnum++: ': epsilon(i),;';
|
||||||
|
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: solve.cal,v 30.1 2007/03/16 11:09:54 chongo Exp $
|
* @(#) $Id: solve.cal,v 30.2 2008/05/10 13:30:00 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/solve.cal,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/solve.cal,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:50:37
|
* Under source code control: 1990/02/15 01:50:37
|
||||||
@@ -47,7 +47,7 @@ define solve(low, high, epsilon)
|
|||||||
if (abs(flow) < epsilon)
|
if (abs(flow) < epsilon)
|
||||||
return low;
|
return low;
|
||||||
fhigh = f(high);
|
fhigh = f(high);
|
||||||
if (abs(flow) < epsilon)
|
if (abs(fhigh) < epsilon)
|
||||||
return high;
|
return high;
|
||||||
if (sgn(flow) == sgn(fhigh))
|
if (sgn(flow) == sgn(fhigh))
|
||||||
quit "Non-opposite signs";
|
quit "Non-opposite signs";
|
||||||
|
6
calc.c
6
calc.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.3 $
|
* @(#) $Revision: 30.4 $
|
||||||
* @(#) $Id: calc.c,v 30.3 2007/07/15 02:03:42 chongo Exp $
|
* @(#) $Id: calc.c,v 30.4 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:11
|
* Under source code control: 1990/02/15 01:48:11
|
||||||
@@ -42,6 +42,7 @@
|
|||||||
|
|
||||||
#if defined(_WIN32)
|
#if defined(_WIN32)
|
||||||
# include <io.h>
|
# include <io.h>
|
||||||
|
# if !defined(NOTCYGWIN)
|
||||||
/*
|
/*
|
||||||
* getopt.h file is from the Cygwin GNU library
|
* getopt.h file is from the Cygwin GNU library
|
||||||
*
|
*
|
||||||
@@ -49,6 +50,7 @@
|
|||||||
* http://sources.redhat.com/cygwin/
|
* http://sources.redhat.com/cygwin/
|
||||||
*/
|
*/
|
||||||
# include "../getopt/getopt.h"
|
# include "../getopt/getopt.h"
|
||||||
|
# endif
|
||||||
# define strdup _strdup
|
# define strdup _strdup
|
||||||
# define isatty _isatty
|
# define isatty _isatty
|
||||||
#endif /* Windoz */
|
#endif /* Windoz */
|
||||||
|
18
calc.man
18
calc.man
@@ -15,8 +15,8 @@
|
|||||||
.\" received a copy with calc; if not, write to Free Software Foundation, Inc.
|
.\" received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
.\"
|
.\"
|
||||||
.\" @(#) $Revision: 30.2 $
|
.\" @(#) $Revision: 30.3 $
|
||||||
.\" @(#) $Id: calc.man,v 30.2 2007/08/18 17:28:29 chongo Exp $
|
.\" @(#) $Id: calc.man,v 30.3 2007/09/08 02:53:09 chongo Exp $
|
||||||
.\" @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.man,v $
|
.\" @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.man,v $
|
||||||
.\"
|
.\"
|
||||||
.\" Under source code control: 1991/07/23 05:48:26
|
.\" Under source code control: 1991/07/23 05:48:26
|
||||||
@@ -275,18 +275,14 @@ See
|
|||||||
.TP
|
.TP
|
||||||
.B \-i
|
.B \-i
|
||||||
Become interactive if possible.
|
Become interactive if possible.
|
||||||
If
|
|
||||||
.I calc_cmd
|
|
||||||
args are given,
|
|
||||||
.B calc
|
|
||||||
by default, calc will execute them and exit.
|
|
||||||
This flag causes
|
|
||||||
.B calc
|
|
||||||
to drop into interactive mode after the commands are executed.
|
|
||||||
This flag will cause
|
This flag will cause
|
||||||
.B calc
|
.B calc
|
||||||
to drop into interactive mode after the
|
to drop into interactive mode after the
|
||||||
commands are executed.
|
.I calc_cmd
|
||||||
|
arguments on the command line are evaluated.
|
||||||
|
Without this flag,
|
||||||
|
.B calc
|
||||||
|
will exit after they are evaluated.
|
||||||
.sp 1
|
.sp 1
|
||||||
For example:
|
For example:
|
||||||
.sp 1
|
.sp 1
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.5 $
|
# @(#) $Revision: 30.6 $
|
||||||
# @(#) $Id: calc.spec.in,v 30.5 2007/09/06 06:13:46 chongo Exp $
|
# @(#) $Id: calc.spec.in,v 30.6 2007/10/16 12:22:22 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.spec.in,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.spec.in,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 2003/02/16 20:21:39
|
# Under source code control: 2003/02/16 20:21:39
|
||||||
@@ -40,7 +40,7 @@ Version: <<<PROJECT_VERSION>>>
|
|||||||
Release: 1.1
|
Release: 1.1
|
||||||
License: LGPL
|
License: LGPL
|
||||||
Group: Applications/Engineering
|
Group: Applications/Engineering
|
||||||
Source: %{name}-%{version}.tar.gz
|
Source: %{name}-%{version}.tar.bz2
|
||||||
URL: http://www.isthe.com/chongo/tech/comp/calc/index.html
|
URL: http://www.isthe.com/chongo/tech/comp/calc/index.html
|
||||||
Requires: ncurses >= 5.2-26, readline >= 4.2, less >= 358
|
Requires: ncurses >= 5.2-26, readline >= 4.2, less >= 358
|
||||||
BuildRequires: ncurses-devel >= 5.2-26, readline-devel >= 4.2
|
BuildRequires: ncurses-devel >= 5.2-26, readline-devel >= 4.2
|
||||||
|
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.2 $
|
* @(#) $Revision: 30.3 $
|
||||||
* @(#) $Id: comfunc.c,v 30.2 2007/07/11 23:05:49 chongo Exp $
|
* @(#) $Id: comfunc.c,v 30.3 2008/10/24 07:09:41 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/comfunc.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/comfunc.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:13
|
* Under source code control: 1990/02/15 01:48:13
|
||||||
@@ -556,7 +556,7 @@ c_log(COMPLEX *c, NUMBER *epsilon)
|
|||||||
if (cln_10_epsilon == NULL) {
|
if (cln_10_epsilon == NULL) {
|
||||||
/* first time call */
|
/* first time call */
|
||||||
cln_10_epsilon = qcopy(epsilon);
|
cln_10_epsilon = qcopy(epsilon);
|
||||||
} else if (qcmp(cln_10_epsilon, epsilon) == FALSE) {
|
} else if (qcmp(cln_10_epsilon, epsilon) == TRUE) {
|
||||||
/* replaced cacheed value with epsilon arg */
|
/* replaced cacheed value with epsilon arg */
|
||||||
qfree(cln_10_epsilon);
|
qfree(cln_10_epsilon);
|
||||||
cln_10_epsilon = qcopy(epsilon);
|
cln_10_epsilon = qcopy(epsilon);
|
||||||
|
7
config.h
7
config.h
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: config.h,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: config.h,v 30.2 2007/09/21 01:27:27 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/config.h,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/config.h,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1995/11/01 22:20:17
|
* Under source code control: 1995/11/01 22:20:17
|
||||||
@@ -193,7 +193,8 @@ typedef struct config CONFIG;
|
|||||||
#define CALCDBG_TTY (0x00000010) /* report TTY state changes */
|
#define CALCDBG_TTY (0x00000010) /* report TTY state changes */
|
||||||
#define CALCDBG_RUNSTATE (0x00000020) /* report run_state changes */
|
#define CALCDBG_RUNSTATE (0x00000020) /* report run_state changes */
|
||||||
#define CALCDBG_RAND (0x00000040) /* report rand() activity */
|
#define CALCDBG_RAND (0x00000040) /* report rand() activity */
|
||||||
#define CALCDBG_MASK (0x0000007f)
|
#define CALCDBG_CUSTOM (0x00000080) /* custom function debug */
|
||||||
|
#define CALCDBG_MASK (0x000000ff)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ctrl-d meanings
|
* ctrl-d meanings
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.2 $
|
# @(#) $Revision: 30.3 $
|
||||||
# @(#) $Id: Makefile,v 30.2 2007/03/22 07:34:47 chongo Exp $
|
# @(#) $Id: Makefile,v 30.3 2007/09/21 01:27:27 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/Makefile,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/Makefile,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1999/11/29 11:10:26
|
# Under source code control: 1999/11/29 11:10:26
|
||||||
@@ -111,9 +111,6 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# ${HELPDIR} where the help directory is installed
|
# ${HELPDIR} where the help directory is installed
|
||||||
# ${CALC_INCDIR} where the calc include files are installed
|
# ${CALC_INCDIR} where the calc include files are installed
|
||||||
# ${CUSTOMCALDIR} where custom *.cal files are installed
|
|
||||||
# ${CUSTOMHELPDIR} where custom help files are installed
|
|
||||||
# ${CUSTOMINCDIR} where custom .h files are installed
|
|
||||||
# ${SCRIPTDIR} where calc shell scripts are installed
|
# ${SCRIPTDIR} where calc shell scripts are installed
|
||||||
#
|
#
|
||||||
# NOTE: The install rule prepends installation paths with ${T}, which
|
# NOTE: The install rule prepends installation paths with ${T}, which
|
||||||
@@ -124,16 +121,10 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
#
|
#
|
||||||
# HELPDIR= ${CALC_SHAREDIR}/help
|
# HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
# CALC_INCDIR= ${INCDIR}/calc
|
# CALC_INCDIR= ${INCDIR}/calc
|
||||||
# CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
# CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
# CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
# SCRIPTDIR= ${BINDIR}/cscript
|
# SCRIPTDIR= ${BINDIR}/cscript
|
||||||
#
|
#
|
||||||
HELPDIR= ${CALC_SHAREDIR}/help
|
HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
CALC_INCDIR= ${INCDIR}/calc
|
CALC_INCDIR= ${INCDIR}/calc
|
||||||
CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
SCRIPTDIR= ${BINDIR}/cscript
|
SCRIPTDIR= ${BINDIR}/cscript
|
||||||
|
|
||||||
# T - top level directory under which calc will be installed
|
# T - top level directory under which calc will be installed
|
||||||
|
15
custom.c
15
custom.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: custom.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: custom.c,v 30.2 2007/09/21 01:27:27 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/custom.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/custom.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1997/03/03 04:53:08
|
* Under source code control: 1997/03/03 04:53:08
|
||||||
@@ -100,6 +100,12 @@ custom(char *name, int count, VALUE **vals)
|
|||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"%sCalc was built with custom functions disabled\n",
|
"%sCalc was built with custom functions disabled\n",
|
||||||
(conf->tab_ok ? "\t" : ""));
|
(conf->tab_ok ? "\t" : ""));
|
||||||
|
if (conf->calc_debug & CALCDBG_CUSTOM) {
|
||||||
|
fprintf(stderr,
|
||||||
|
"%scustom function %s with %d args, %s vals not executed\n",
|
||||||
|
(conf->tab_ok ? "\t" : ""), name, count,
|
||||||
|
(vals == NULL) ? "NULL" : "non-NULL");
|
||||||
|
}
|
||||||
return error_value(E_NO_CUSTOM);
|
return error_value(E_NO_CUSTOM);
|
||||||
|
|
||||||
#endif /* CUSTOM */
|
#endif /* CUSTOM */
|
||||||
@@ -211,6 +217,11 @@ customhelp(char *name)
|
|||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"%sCalc was built with custom functions disabled\n",
|
"%sCalc was built with custom functions disabled\n",
|
||||||
(conf->tab_ok ? "\t" : ""));
|
(conf->tab_ok ? "\t" : ""));
|
||||||
|
if (conf->calc_debug & CALCDBG_CUSTOM) {
|
||||||
|
fprintf(stderr, "%scustom help for %s unavailable\n",
|
||||||
|
(conf->tab_ok ? "\t" : ""),
|
||||||
|
((name == NULL) ? "((NULL))" : name));
|
||||||
|
}
|
||||||
|
|
||||||
#endif /* CUSTOM */
|
#endif /* CUSTOM */
|
||||||
}
|
}
|
||||||
|
@@ -363,6 +363,25 @@ Step 5: Write your custom function
|
|||||||
very_tiny_variable = z1tol(z_num);
|
very_tiny_variable = z1tol(z_num);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
You can (and should) add debugging statements to your custom code
|
||||||
|
by examining bit 8 of the calc_debug config flag:
|
||||||
|
|
||||||
|
if (conf->calc_debug & CALCDBG_CUSTOM) {
|
||||||
|
fprintf(stderr, "%ssome custom debug note: msg\n",
|
||||||
|
(conf->tab_ok ? "\t" : ""),
|
||||||
|
((msg == NULL) ? "((NULL))" : msg));
|
||||||
|
}
|
||||||
|
|
||||||
|
One is able to set bit 8 by way of the calc command line:
|
||||||
|
|
||||||
|
calc -D 128
|
||||||
|
|
||||||
|
See the calc man page for details. One may also set that bit
|
||||||
|
while running calc by way of the config() builtin function:
|
||||||
|
|
||||||
|
config("calc_debug", 128);
|
||||||
|
|
||||||
|
See the help/config file for details on calc_debug.
|
||||||
|
|
||||||
Step 6: Register the function in the custom interface table
|
Step 6: Register the function in the custom interface table
|
||||||
|
|
||||||
@@ -642,8 +661,8 @@ Step 12: Contribute
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.3 $
|
## @(#) $Revision: 30.4 $
|
||||||
## @(#) $Id: HOW_TO_ADD,v 30.3 2007/07/13 23:45:54 chongo Exp $
|
## @(#) $Id: HOW_TO_ADD,v 30.4 2007/09/21 01:27:27 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/HOW_TO_ADD,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/HOW_TO_ADD,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1997/03/10 03:03:21
|
## Under source code control: 1997/03/10 03:03:21
|
||||||
|
129
custom/Makefile
129
custom/Makefile
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.14 $
|
# @(#) $Revision: 30.20 $
|
||||||
# @(#) $Id: Makefile.head,v 30.14 2007/09/06 08:08:39 chongo Exp $
|
# @(#) $Id: Makefile.head,v 30.20 2008/10/23 00:13:44 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1997/03/09 02:28:54
|
# Under source code control: 1997/03/09 02:28:54
|
||||||
@@ -366,8 +366,8 @@ EXT=
|
|||||||
|
|
||||||
# The default calc versions
|
# The default calc versions
|
||||||
#
|
#
|
||||||
VERSION= 2.12.2.1
|
VERSION= 2.12.4.0
|
||||||
VERS= 2.12.2
|
VERS= 2.12.4
|
||||||
VER= 2.12
|
VER= 2.12
|
||||||
VE= 2
|
VE= 2
|
||||||
|
|
||||||
@@ -524,7 +524,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC=
|
LD_STATIC=
|
||||||
@@ -553,7 +557,11 @@ CC_SHARE= -fPIC
|
|||||||
DEFAULT_LIB_INSTALL_PATH= ${PWD}:${LIBDIR}:/usr/local/lib
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:${LIBDIR}:/usr/local/lib
|
||||||
LD_SHARE= ${DARWIN_ARCH}
|
LD_SHARE= ${DARWIN_ARCH}
|
||||||
LIBCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
LIBCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
LIBCUSTCALC_SHLIB= -single_module -undefined dynamic_lookup -dynamiclib
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC= ${DARWIN_ARCH}
|
LD_STATIC= ${DARWIN_ARCH}
|
||||||
@@ -574,6 +582,8 @@ LIB_EXT_VERSION:= .${VERSION}${LIB_EXT}
|
|||||||
LIB_EXT_VERS:= .${VERS}${LIB_EXT}
|
LIB_EXT_VERS:= .${VERS}${LIB_EXT}
|
||||||
LIB_EXT_VER:= .${VER}${LIB_EXT}
|
LIB_EXT_VER:= .${VER}${LIB_EXT}
|
||||||
LIB_EXT_VE:= .${VE}${LIB_EXT}
|
LIB_EXT_VE:= .${VE}${LIB_EXT}
|
||||||
|
# LDCONFIG not required on this platform, so we redefine it to an empty string
|
||||||
|
LDCONFIG:=
|
||||||
# DARWIN_ARCH= -arch i386 -arch ppc # Universal binary
|
# DARWIN_ARCH= -arch i386 -arch ppc # Universal binary
|
||||||
# DARWIN_ARCH= -arch i386 # Intel binary
|
# DARWIN_ARCH= -arch i386 # Intel binary
|
||||||
# DARWIN_ARCH= -arch ppc # PPC binary
|
# DARWIN_ARCH= -arch ppc # PPC binary
|
||||||
@@ -601,7 +611,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LD_STATIC=
|
LD_STATIC=
|
||||||
@@ -620,12 +634,17 @@ MAKE= gmake
|
|||||||
#
|
#
|
||||||
endif
|
endif
|
||||||
|
|
||||||
######################
|
##################
|
||||||
# Sun Solaris target #
|
# OpenBSD target #
|
||||||
######################
|
##################
|
||||||
|
|
||||||
# XXX - this needs to be tested
|
########################################################################
|
||||||
ifeq ($(target),solaris)
|
# NOTE: You MUST either use gmake (GNU Make) or you must try your luck #
|
||||||
|
# with Makefile.simple and custom/Makefile.simple versions. #
|
||||||
|
# See HOWTO.INSTALL for more information. #
|
||||||
|
########################################################################
|
||||||
|
|
||||||
|
ifeq ($(target),OpenBSD)
|
||||||
#
|
#
|
||||||
BLD_TYPE= calc-dynamic-only
|
BLD_TYPE= calc-dynamic-only
|
||||||
#
|
#
|
||||||
@@ -634,7 +653,48 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
|
#
|
||||||
|
CC_STATIC=
|
||||||
|
LD_STATIC=
|
||||||
|
LIBCALC_STATIC=
|
||||||
|
LIBCUSTCALC_STATIC=
|
||||||
|
#
|
||||||
|
CCWARN= -Wall
|
||||||
|
CCWERR=
|
||||||
|
CCOPT= ${DEBUG}
|
||||||
|
CCMISC=
|
||||||
|
#
|
||||||
|
LCC= gcc
|
||||||
|
CC= ${PURIFY} ${LCC} ${CCWERR}
|
||||||
|
#
|
||||||
|
MAKE= gmake
|
||||||
|
#
|
||||||
|
endif
|
||||||
|
|
||||||
|
################
|
||||||
|
# SunOS target #
|
||||||
|
################
|
||||||
|
|
||||||
|
# XXX - this needs to be tested
|
||||||
|
ifeq ($(target),SunOS)
|
||||||
|
#
|
||||||
|
BLD_TYPE= calc-dynamic-only
|
||||||
|
#
|
||||||
|
CC_SHARE= -fPIC
|
||||||
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
||||||
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LIBCALC_STATIC=
|
LIBCALC_STATIC=
|
||||||
@@ -699,6 +759,52 @@ LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
|||||||
#if 0 /* start of skip for non-Gnu makefiles */
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
###################################################
|
||||||
|
# MINGW32_NT-5.0 target #
|
||||||
|
###################################################
|
||||||
|
|
||||||
|
|
||||||
|
ifeq ($(target),MINGW32_NT-5.0)
|
||||||
|
|
||||||
|
EXT=.exe
|
||||||
|
TERMCONTROL= -DUSE_WIN32
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
||||||
|
#if 0 /* start of skip for non-Gnu makefiles */
|
||||||
|
else
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR}
|
||||||
|
endif
|
||||||
|
CALCRC= ${CALC_SHAREDIR}/startup;~/.calcrc;./.calcinit
|
||||||
|
#
|
||||||
|
BLD_TYPE= calc-static-only
|
||||||
|
#
|
||||||
|
CC_SHARE= -fPIC
|
||||||
|
DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
||||||
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
|
#
|
||||||
|
CC_STATIC= -DSTATIC_ONLY
|
||||||
|
LIBCALC_STATIC=
|
||||||
|
LIBCUSTCALC_STATIC=
|
||||||
|
LD_STATIC=
|
||||||
|
#
|
||||||
|
CCWARN= -Wall -W -Wno-comment
|
||||||
|
CCWERR=
|
||||||
|
CCOPT= ${DEBUG}
|
||||||
|
CCMISC= -DNOTCYGWIN
|
||||||
|
#
|
||||||
|
LCC= gcc
|
||||||
|
CC= ${PURIFY} ${LCC} ${CCWERR}
|
||||||
|
#
|
||||||
|
endif
|
||||||
|
|
||||||
###################################################
|
###################################################
|
||||||
# default target - when no specific target exists #
|
# default target - when no specific target exists #
|
||||||
###################################################
|
###################################################
|
||||||
@@ -715,7 +821,11 @@ DEFAULT_LIB_INSTALL_PATH= ${PWD}:/lib:/usr/lib:${LIBDIR}:/usr/local/lib
|
|||||||
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
LD_SHARE= "-Wl,-rpath,${DEFAULT_LIB_INSTALL_PATH}" \
|
||||||
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
"-Wl,-rpath-link,${DEFAULT_LIB_INSTALL_PATH}"
|
||||||
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
LIBCALC_SHLIB= -shared "-Wl,-soname,libcalc${LIB_EXT_VERSION}"
|
||||||
|
ifdef ALLOW_CUSTOM
|
||||||
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
LIBCUSTCALC_SHLIB= -shared "-Wl,-soname,libcustcalc${LIB_EXT_VERSION}"
|
||||||
|
else
|
||||||
|
LIBCUSTCALC_SHLIB=
|
||||||
|
endif
|
||||||
#
|
#
|
||||||
CC_STATIC=
|
CC_STATIC=
|
||||||
LIBCALC_STATIC=
|
LIBCALC_STATIC=
|
||||||
@@ -757,7 +867,6 @@ CFLAGS= ${ICFLAGS} ${CCOPT}
|
|||||||
#
|
#
|
||||||
ILDFLAGS= ${COMMON_LDFLAGS}
|
ILDFLAGS= ${COMMON_LDFLAGS}
|
||||||
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS}
|
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS}
|
||||||
|
|
||||||
#endif /* end of skip for non-Gnu makefiles */
|
#endif /* end of skip for non-Gnu makefiles */
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.14 $
|
# @(#) $Revision: 30.20 $
|
||||||
# @(#) $Id: Makefile.head,v 30.14 2007/09/06 08:08:39 chongo Exp $
|
# @(#) $Id: Makefile.head,v 30.20 2008/10/23 00:13:44 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1997/03/09 02:28:54
|
# Under source code control: 1997/03/09 02:28:54
|
||||||
@@ -366,8 +366,8 @@ EXT=
|
|||||||
|
|
||||||
# The default calc versions
|
# The default calc versions
|
||||||
#
|
#
|
||||||
VERSION= 2.12.2.1
|
VERSION= 2.12.4.0
|
||||||
VERS= 2.12.2
|
VERS= 2.12.4
|
||||||
VER= 2.12
|
VER= 2.12
|
||||||
VE= 2
|
VE= 2
|
||||||
|
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.14 $
|
# @(#) $Revision: 30.20 $
|
||||||
# @(#) $Id: Makefile.head,v 30.14 2007/09/06 08:08:39 chongo Exp $
|
# @(#) $Id: Makefile.head,v 30.20 2008/10/23 00:13:44 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/Makefile.head,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1997/03/09 02:28:54
|
# Under source code control: 1997/03/09 02:28:54
|
||||||
@@ -351,8 +351,8 @@ EXT=
|
|||||||
|
|
||||||
# The default calc versions
|
# The default calc versions
|
||||||
#
|
#
|
||||||
VERSION= 2.12.2.1
|
VERSION= 2.12.4.0
|
||||||
VERS= 2.12.2
|
VERS= 2.12.4
|
||||||
VER= 2.12
|
VER= 2.12
|
||||||
VE= 2
|
VE= 2
|
||||||
|
|
||||||
@@ -506,6 +506,7 @@ CFLAGS= ${ICFLAGS} ${CCOPT}
|
|||||||
ILDFLAGS= ${COMMON_LDFLAGS} ${LD_STATIC}
|
ILDFLAGS= ${COMMON_LDFLAGS} ${LD_STATIC}
|
||||||
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
LDFLAGS= ${LD_DEBUG} ${ILDFLAGS} ${LIBCALC_STATIC} ${LIBCUSTCALC_STATIC}
|
||||||
#
|
#
|
||||||
|
CALCPATH= .;./cal;~/.cal;${CALC_SHAREDIR};${CUSTOMCALDIR}
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
#-=-=-=-=-=- end of target section - only make rules below -=-=-=-=-=-#
|
#-=-=-=-=-=- end of target section - only make rules below -=-=-=-=-=-#
|
||||||
|
14
decl.h
14
decl.h
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.2 $
|
* @(#) $Revision: 30.3 $
|
||||||
* @(#) $Id: decl.h,v 30.2 2007/07/05 13:30:38 chongo Exp $
|
* @(#) $Id: decl.h,v 30.3 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/decl.h,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/decl.h,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 2007/02/09 05:24:25
|
* Under source code control: 2007/02/09 05:24:25
|
||||||
@@ -62,10 +62,14 @@
|
|||||||
|
|
||||||
|
|
||||||
/* determine which type of DLL we must generate */
|
/* determine which type of DLL we must generate */
|
||||||
# if defined(_EXPORTING)
|
# if !defined(STATIC_ONLY)
|
||||||
# define DLL __declspec(dllexport)
|
# if defined(_EXPORTING)
|
||||||
|
# define DLL __declspec(dllexport)
|
||||||
|
# else
|
||||||
|
# define DLL __declspec(dllimport)
|
||||||
|
# endif
|
||||||
# else
|
# else
|
||||||
# define DLL __declspec(dllimport)
|
# define DLL
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
/* variable related macros */
|
/* variable related macros */
|
||||||
|
22
endian.c
22
endian.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: endian.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: endian.c,v 30.2 2007/09/29 16:56:40 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/endian.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/endian.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1993/11/15 04:32:58
|
* Under source code control: 1993/11/15 04:32:58
|
||||||
@@ -53,10 +53,8 @@ char byte[8] = { (char)0x12, (char)0x36, (char)0x48, (char)0x59,
|
|||||||
int
|
int
|
||||||
main(void)
|
main(void)
|
||||||
{
|
{
|
||||||
#if !defined(LITTLE_ENDIAN) && !defined(BIG_ENDIAN)
|
|
||||||
/* pointers into the byte order array */
|
/* pointers into the byte order array */
|
||||||
int *intp = (int *)byte;
|
int *intp = (int *)byte;
|
||||||
#endif
|
|
||||||
#if defined(DEBUG)
|
#if defined(DEBUG)
|
||||||
short *shortp = (short *)byte;
|
short *shortp = (short *)byte;
|
||||||
long *longp = (long *)byte;
|
long *longp = (long *)byte;
|
||||||
@@ -73,13 +71,16 @@ main(void)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Print the standard <machine/endian.h> defines */
|
/* Print the standard <machine/endian.h> defines */
|
||||||
|
printf("#undef BIG_ENDIAN\n");
|
||||||
printf("#define BIG_ENDIAN\t4321\n");
|
printf("#define BIG_ENDIAN\t4321\n");
|
||||||
|
printf("#undef LITTLE_ENDIAN\n");
|
||||||
printf("#define LITTLE_ENDIAN\t1234\n");
|
printf("#define LITTLE_ENDIAN\t1234\n");
|
||||||
|
printf("#undef CALC_BYTE_ORDER\n");
|
||||||
|
|
||||||
#if defined(LITTLE_ENDIAN)
|
#if defined(CALC_BIG_ENDIAN)
|
||||||
printf("#define CALC_BYTE_ORDER\tLITTLE_ENDIAN\n");
|
|
||||||
#elif defined(BIG_ENDIAN)
|
|
||||||
printf("#define CALC_BYTE_ORDER\tBIG_ENDIAN\n");
|
printf("#define CALC_BYTE_ORDER\tBIG_ENDIAN\n");
|
||||||
|
#elif defined(CALC_LITTLE_ENDIAN)
|
||||||
|
printf("#define CALC_BYTE_ORDER\tLITTLW_ENDIAN\n");
|
||||||
#else
|
#else
|
||||||
/* Determine byte order */
|
/* Determine byte order */
|
||||||
if (intp[0] == 0x12364859) {
|
if (intp[0] == 0x12364859) {
|
||||||
@@ -89,8 +90,11 @@ main(void)
|
|||||||
/* Least Significant Byte first */
|
/* Least Significant Byte first */
|
||||||
printf("#define CALC_BYTE_ORDER\tLITTLE_ENDIAN\n");
|
printf("#define CALC_BYTE_ORDER\tLITTLE_ENDIAN\n");
|
||||||
} else {
|
} else {
|
||||||
fprintf(stderr,
|
fprintf(stderr, "@=-=@ Fatal build error - cannot @=-=@\n");
|
||||||
"Unknown int Byte Order, set CALC_BYTE_ORDER in Makefile\n");
|
fprintf(stderr, "@=-=@ determine byte order. Set @=-=@\n");
|
||||||
|
fprintf(stderr, "@=-=@ ${CALC_BYTE_ORDER} in the Makefile @=-=@\n");
|
||||||
|
fprintf(stderr, "@=-=@ to be either -DCALC_BIG_ENDIAN or @=-=@\n");
|
||||||
|
fprintf(stderr, "@=-=@ to be -DCALC_LITTLE_ENDIAN @=-=@\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: fposval.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: fposval.c,v 30.2 2007/09/19 22:34:22 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/fposval.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/fposval.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1994/11/05 03:19:52
|
* Under source code control: 1994/11/05 03:19:52
|
||||||
@@ -129,7 +129,7 @@ main(int argc, char **argv)
|
|||||||
* systems a FILEPOS is not a scalar hince we must memcpy.
|
* systems a FILEPOS is not a scalar hince we must memcpy.
|
||||||
*/
|
*/
|
||||||
printf("#define SWAP_HALF_IN_FILEPOS(dest, src)\t%s\n",
|
printf("#define SWAP_HALF_IN_FILEPOS(dest, src)\t%s\n",
|
||||||
"memcpy((void *)(dest), (void *)(src), sizeof(FPOS_POS_BITS))");
|
"memcpy((void *)(dest), (void *)(src), sizeof(FPOS_POS_LEN))");
|
||||||
#endif /* HAVE_FILEPOS_SCALAR */
|
#endif /* HAVE_FILEPOS_SCALAR */
|
||||||
#endif /* CALC_BYTE_ORDER == BIG_ENDIAN */
|
#endif /* CALC_BYTE_ORDER == BIG_ENDIAN */
|
||||||
putchar('\n');
|
putchar('\n');
|
||||||
|
6
func.c
6
func.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.2 $
|
* @(#) $Revision: 30.3 $
|
||||||
* @(#) $Id: func.c,v 30.2 2007/07/05 17:37:41 chongo Exp $
|
* @(#) $Id: func.c,v 30.3 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/func.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/func.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:15
|
* Under source code control: 1990/02/15 01:48:15
|
||||||
@@ -5721,7 +5721,9 @@ f_fflush(int count, VALUE **vals)
|
|||||||
i = 0;
|
i = 0;
|
||||||
errno = 0;
|
errno = 0;
|
||||||
if (count == 0) {
|
if (count == 0) {
|
||||||
|
#if !defined(_WIN32)
|
||||||
i = flushall();
|
i = flushall();
|
||||||
|
#endif /* Windoz free systems */
|
||||||
} else {
|
} else {
|
||||||
for (n = 0; n < count; n++) {
|
for (n = 0; n < count; n++) {
|
||||||
if (vals[n]->v_type != V_FILE)
|
if (vals[n]->v_type != V_FILE)
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: have_fpos_pos.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: have_fpos_pos.c,v 30.2 2007/09/19 22:34:22 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_fpos_pos.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_fpos_pos.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 2000/12/17 01:23
|
* Under source code control: 2000/12/17 01:23
|
||||||
@@ -51,17 +51,21 @@ main(void)
|
|||||||
printf("#define HAVE_FPOS_POS 1 /* yes */\n\n");
|
printf("#define HAVE_FPOS_POS 1 /* yes */\n\n");
|
||||||
|
|
||||||
/* determine __pos element size */
|
/* determine __pos element size */
|
||||||
printf("#undef FPOS_POS_BITS\t/* no */\n");
|
printf("#undef FPOS_POS_BITS\n");
|
||||||
|
printf("#undef FPOS_POS_LEN\n");
|
||||||
# if defined(FPOS_POS_BITS)
|
# if defined(FPOS_POS_BITS)
|
||||||
printf("#define FPOS_POS_BITS %d\n\n", FPOS_POS_BITS);
|
printf("#define FPOS_POS_BITS %d\n", FPOS_POS_BITS);
|
||||||
|
printf("#define FPOS_POS_LEN %d\n", int(FPOS_POS_BITS/8));
|
||||||
# else
|
# else
|
||||||
printf("#define FPOS_POS_BITS %d\n\n", sizeof(pos.__pos)*8);
|
printf("#define FPOS_POS_BITS %d\n", sizeof(pos.__pos)*8);
|
||||||
|
printf("#define FPOS_POS_LEN %d\n", sizeof(pos.__pos));
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
#else
|
#else
|
||||||
/* we have no __pos element */
|
/* we have no __pos element */
|
||||||
printf("#undef HAVE_FPOS_POS\t/* no */\n");
|
printf("#undef HAVE_FPOS_POS\t/* no */\n");
|
||||||
printf("#undef FPOS_POS_BITS\n");
|
printf("#undef FPOS_POS_BITS\n");
|
||||||
|
printf("#undef FPOS_POS_LEN\n");
|
||||||
#endif
|
#endif
|
||||||
/* exit(0); */
|
/* exit(0); */
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: have_offscl.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: have_offscl.c,v 30.2 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_offscl.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_offscl.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1996/07/13 12:57:22
|
* Under source code control: 1996/07/13 12:57:22
|
||||||
@@ -66,9 +66,11 @@ main(void)
|
|||||||
if (value > (off_t)1) {
|
if (value > (off_t)1) {
|
||||||
--value;
|
--value;
|
||||||
}
|
}
|
||||||
|
#if !defined(_WIN32)
|
||||||
if (value <= (off_t)getppid()) {
|
if (value <= (off_t)getppid()) {
|
||||||
--value;
|
--value;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
if (value == value2) {
|
if (value == value2) {
|
||||||
value += value2;
|
value += value2;
|
||||||
}
|
}
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: have_posscl.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: have_posscl.c,v 30.2 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_posscl.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/have_posscl.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1996/07/13 12:57:22
|
* Under source code control: 1996/07/13 12:57:22
|
||||||
@@ -66,9 +66,11 @@ main(void)
|
|||||||
if (value > (FILEPOS)1) {
|
if (value > (FILEPOS)1) {
|
||||||
--value;
|
--value;
|
||||||
}
|
}
|
||||||
|
#if !defined(_WIN32)
|
||||||
if (value <= (FILEPOS)getppid()) {
|
if (value <= (FILEPOS)getppid()) {
|
||||||
--value;
|
--value;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
if (value == value2) {
|
if (value == value2) {
|
||||||
value += value2;
|
value += value2;
|
||||||
}
|
}
|
||||||
|
10
help.c
10
help.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: help.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: help.c,v 30.2 2007/09/21 01:27:27 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/help.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/help.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1997/09/14 10:58:30
|
* Under source code control: 1997/09/14 10:58:30
|
||||||
@@ -249,11 +249,15 @@ givehelp(char *type)
|
|||||||
/*
|
/*
|
||||||
* open the helpfile (looking in HELPDIR first)
|
* open the helpfile (looking in HELPDIR first)
|
||||||
*/
|
*/
|
||||||
|
#if defined(CUSTOM)
|
||||||
if (sizeof(CUSTOMHELPDIR) > sizeof(HELPDIR)) {
|
if (sizeof(CUSTOMHELPDIR) > sizeof(HELPDIR)) {
|
||||||
helppath = (char *)malloc(sizeof(CUSTOMHELPDIR)+1+strlen(type));
|
helppath = (char *)malloc(sizeof(CUSTOMHELPDIR)+1+strlen(type));
|
||||||
} else {
|
} else {
|
||||||
helppath = (char *)malloc(sizeof(HELPDIR)+1+strlen(type));
|
helppath = (char *)malloc(sizeof(HELPDIR)+1+strlen(type));
|
||||||
}
|
}
|
||||||
|
#else /* CUSTOM */
|
||||||
|
helppath = (char *)malloc(sizeof(HELPDIR)+1+strlen(type));
|
||||||
|
#endif /* CUSTOM */
|
||||||
if (helppath == NULL) {
|
if (helppath == NULL) {
|
||||||
fprintf(stderr, "malloc failure in givehelp()\n");
|
fprintf(stderr, "malloc failure in givehelp()\n");
|
||||||
return;
|
return;
|
||||||
@@ -268,6 +272,7 @@ givehelp(char *type)
|
|||||||
page_file(stream);
|
page_file(stream);
|
||||||
(void) fclose(stream);
|
(void) fclose(stream);
|
||||||
|
|
||||||
|
#if defined(CUSTOM)
|
||||||
/*
|
/*
|
||||||
* open the the helpfile (looking in CUSTOMHELPDIR last)
|
* open the the helpfile (looking in CUSTOMHELPDIR last)
|
||||||
*/
|
*/
|
||||||
@@ -287,6 +292,7 @@ givehelp(char *type)
|
|||||||
page_file(stream);
|
page_file(stream);
|
||||||
(void) fclose(stream);
|
(void) fclose(stream);
|
||||||
}
|
}
|
||||||
|
#endif /* CUSTOM */
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
# @(#) $Revision: 30.4 $
|
# @(#) $Revision: 30.5 $
|
||||||
# @(#) $Id: Makefile,v 30.4 2007/09/02 05:49:56 chongo Exp $
|
# @(#) $Id: Makefile,v 30.5 2007/09/21 01:27:27 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/help/RCS/Makefile,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/help/RCS/Makefile,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 1991/07/23 06:47:57
|
# Under source code control: 1991/07/23 06:47:57
|
||||||
@@ -111,9 +111,6 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
# ---------------------------------------------------------------
|
# ---------------------------------------------------------------
|
||||||
# ${HELPDIR} where the help directory is installed
|
# ${HELPDIR} where the help directory is installed
|
||||||
# ${CALC_INCDIR} where the calc include files are installed
|
# ${CALC_INCDIR} where the calc include files are installed
|
||||||
# ${CUSTOMCALDIR} where custom *.cal files are installed
|
|
||||||
# ${CUSTOMHELPDIR} where custom help files are installed
|
|
||||||
# ${CUSTOMINCPDIR} where custom .h files are installed
|
|
||||||
# ${SCRIPTDIR} where calc shell scripts are installed
|
# ${SCRIPTDIR} where calc shell scripts are installed
|
||||||
#
|
#
|
||||||
# NOTE: The install rule prepends installation paths with ${T}, which
|
# NOTE: The install rule prepends installation paths with ${T}, which
|
||||||
@@ -124,16 +121,10 @@ CALC_SHAREDIR= /usr/share/calc
|
|||||||
#
|
#
|
||||||
# HELPDIR= ${CALC_SHAREDIR}/help
|
# HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
# CALC_INCDIR= ${INCDIR}/calc
|
# CALC_INCDIR= ${INCDIR}/calc
|
||||||
# CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
# CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
# CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
# SCRIPTDIR= ${BINDIR}/cscript
|
# SCRIPTDIR= ${BINDIR}/cscript
|
||||||
#
|
#
|
||||||
HELPDIR= ${CALC_SHAREDIR}/help
|
HELPDIR= ${CALC_SHAREDIR}/help
|
||||||
CALC_INCDIR= ${INCDIR}/calc
|
CALC_INCDIR= ${INCDIR}/calc
|
||||||
CUSTOMCALDIR= ${CALC_SHAREDIR}/custom
|
|
||||||
CUSTOMHELPDIR= ${CALC_SHAREDIR}/custhelp
|
|
||||||
CUSTOMINCDIR= ${CALC_INCDIR}/custom
|
|
||||||
SCRIPTDIR= ${BINDIR}/cscript
|
SCRIPTDIR= ${BINDIR}/cscript
|
||||||
|
|
||||||
# T - top level directory under which calc will be installed
|
# T - top level directory under which calc will be installed
|
||||||
|
@@ -600,7 +600,9 @@ DESCRIPTION
|
|||||||
|
|
||||||
6 Report on rand() subtractive 100 shuffle generator issues.
|
6 Report on rand() subtractive 100 shuffle generator issues.
|
||||||
|
|
||||||
Bits >= 7 are reserved for future use and should not be used at this time.
|
7 Report on custom function issues.
|
||||||
|
|
||||||
|
Bits >= 8 are reserved for future use and should not be used at this time.
|
||||||
|
|
||||||
By default, "calc_debug" is 0. The initial value may be overridden
|
By default, "calc_debug" is 0. The initial value may be overridden
|
||||||
by the -D command line option.
|
by the -D command line option.
|
||||||
@@ -972,8 +974,8 @@ SEE ALSO
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.2 $
|
## @(#) $Revision: 30.3 $
|
||||||
## @(#) $Id: config,v 30.2 2007/07/05 17:37:41 chongo Exp $
|
## @(#) $Id: config,v 30.3 2007/09/21 01:27:27 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/config,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/config,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1991/07/21 04:37:17
|
## Under source code control: 1991/07/21 04:37:17
|
||||||
|
25
help/rand
25
help/rand
@@ -2,18 +2,21 @@ NAME
|
|||||||
rand - subtractive 100 shuffle pseudo-random number generator
|
rand - subtractive 100 shuffle pseudo-random number generator
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
rand([[min, ] max])
|
rand([[min, ] beyond])
|
||||||
|
|
||||||
TYPES
|
TYPES
|
||||||
min integer
|
min integer
|
||||||
max integer
|
beyond integer
|
||||||
|
|
||||||
return integer
|
return integer
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
Generate a pseudo-random number using an subtractive 100 shuffle generator.
|
Generate a pseudo-random number using an subtractive 100 shuffle generator.
|
||||||
We return a pseudo-random number over the half closed interval [min,max).
|
We return a pseudo-random number over the half closed interval:
|
||||||
By default, min is 0 and max is 2^64.
|
|
||||||
|
[min,beyond) ((min <= return < beyond))
|
||||||
|
|
||||||
|
By default, min is 0 and beyond is 2^64.
|
||||||
|
|
||||||
The shuffle method is fast and serves as a fairly good standard
|
The shuffle method is fast and serves as a fairly good standard
|
||||||
pseudo-random generator. If you need a fast generator and do not
|
pseudo-random generator. If you need a fast generator and do not
|
||||||
@@ -26,7 +29,7 @@ DESCRIPTION
|
|||||||
Other arg forms:
|
Other arg forms:
|
||||||
|
|
||||||
rand() Same as rand(0, 2^64)
|
rand() Same as rand(0, 2^64)
|
||||||
rand(max) Same as rand(0, max)
|
rand(beyond) Same as rand(0, beyond)
|
||||||
|
|
||||||
The rand generator generates the highest order bit first. Thus:
|
The rand generator generates the highest order bit first. Thus:
|
||||||
|
|
||||||
@@ -230,17 +233,17 @@ EXAMPLE
|
|||||||
2 658186291252503497642116 1 -324097
|
2 658186291252503497642116 1 -324097
|
||||||
|
|
||||||
LIMITS
|
LIMITS
|
||||||
min < max
|
min < beyond
|
||||||
|
|
||||||
LINK LIBRARY
|
LINK LIBRARY
|
||||||
void zrand(long cnt, ZVALUE *res)
|
void zrand(long cnt, ZVALUE *res)
|
||||||
void zrandrange(ZVALUE low, ZVALUE high, ZVALUE *res)
|
void zrandrange(ZVALUE low, ZVALUE beyond, ZVALUE *res)
|
||||||
long irand(long max)
|
long irand(long beyond)
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
seed, srand, randbit, isrand, random, srandom, israndom
|
seed, srand, randbit, isrand, random, srandom, israndom
|
||||||
|
|
||||||
## Copyright (C) 1999 Landon Curt Noll
|
## Copyright (C) 1999-2007 Landon Curt Noll
|
||||||
##
|
##
|
||||||
## Calc is open software; you can redistribute it and/or modify it under
|
## Calc is open software; you can redistribute it and/or modify it under
|
||||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -256,8 +259,8 @@ SEE ALSO
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.1 $
|
## @(#) $Revision: 30.3 $
|
||||||
## @(#) $Id: rand,v 30.1 2007/03/16 11:10:42 chongo Exp $
|
## @(#) $Id: rand,v 30.3 2007/09/21 02:16:29 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/rand,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/rand,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1996/01/01 02:16:09
|
## Under source code control: 1996/01/01 02:16:09
|
||||||
|
27
help/random
27
help/random
@@ -2,18 +2,21 @@ NAME
|
|||||||
random - Blum-Blum-Shub pseudo-random number generator
|
random - Blum-Blum-Shub pseudo-random number generator
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
random([[min, ] max])
|
random([[min, ] beyond])
|
||||||
|
|
||||||
TYPES
|
TYPES
|
||||||
min integer
|
min integer
|
||||||
max integer
|
beyond integer
|
||||||
|
|
||||||
return integer
|
return integer
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
Generate a pseudo-random number using a Blum-Blum-Shub generator.
|
Generate a pseudo-random number using a Blum-Blum-Shub generator.
|
||||||
We return a pseudo-random number over the half closed interval [min,max).
|
We return a pseudo-random number over the half closed interval:
|
||||||
By default, min is 0 and max is 2^64.
|
|
||||||
|
[min,beyond) ((min <= return < beyond))
|
||||||
|
|
||||||
|
By default, min is 0 and beyond is 2^64.
|
||||||
|
|
||||||
While the Blum-Blum-Shub generator is not painfully slow, it is not
|
While the Blum-Blum-Shub generator is not painfully slow, it is not
|
||||||
a fast generator. For a faster, but lesser quality generator
|
a fast generator. For a faster, but lesser quality generator
|
||||||
@@ -22,8 +25,8 @@ DESCRIPTION
|
|||||||
|
|
||||||
Other arg forms:
|
Other arg forms:
|
||||||
|
|
||||||
random() Same as rand(0, 2^64)
|
random() Same as random(0, 2^64)
|
||||||
random(max) Same as rand(0, max)
|
random(beyond) Same as random(0, beyond)
|
||||||
|
|
||||||
The random generator generates the highest order bit first. Thus:
|
The random generator generates the highest order bit first. Thus:
|
||||||
|
|
||||||
@@ -146,17 +149,17 @@ EXAMPLE
|
|||||||
10 483381144668580304003305 0 -70235
|
10 483381144668580304003305 0 -70235
|
||||||
|
|
||||||
LIMITS
|
LIMITS
|
||||||
min < max
|
min < beyond
|
||||||
|
|
||||||
LINK LIBRARY
|
LINK LIBRARY
|
||||||
void zrandom(long cnt, ZVALUE *res)
|
void zrandom(long cnt, ZVALUE *res)
|
||||||
void zrandomrange(ZVALUE low, ZVALUE high, ZVALUE *res)
|
void zrandomrange(ZVALUE low, ZVALUE beyond, ZVALUE *res)
|
||||||
long irandom(long max)
|
long irandom(long beyond)
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
seed, srand, randbit, isrand, rand, srandom, israndom
|
seed, srand, randbit, isrand, rand, srandom, israndom
|
||||||
|
|
||||||
## Copyright (C) 1999 Landon Curt Noll
|
## Copyright (C) 1999-2007 Landon Curt Noll
|
||||||
##
|
##
|
||||||
## Calc is open software; you can redistribute it and/or modify it under
|
## Calc is open software; you can redistribute it and/or modify it under
|
||||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -172,8 +175,8 @@ SEE ALSO
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.1 $
|
## @(#) $Revision: 30.3 $
|
||||||
## @(#) $Id: random,v 30.1 2007/03/16 11:10:42 chongo Exp $
|
## @(#) $Id: random,v 30.3 2007/09/21 02:16:29 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/random,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/random,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1997/02/17 01:18:22
|
## Under source code control: 1997/02/17 01:18:22
|
||||||
|
6
help/sgn
6
help/sgn
@@ -1,5 +1,5 @@
|
|||||||
NAME
|
NAME
|
||||||
sign - indicator of sign of a real or complex number
|
sgn - indicator of sign of a real or complex number
|
||||||
|
|
||||||
SYNOPSIS
|
SYNOPSIS
|
||||||
sgn(x)
|
sgn(x)
|
||||||
@@ -55,8 +55,8 @@ SEE ALSO
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.1 $
|
## @(#) $Revision: 30.2 $
|
||||||
## @(#) $Id: sgn,v 30.1 2007/03/16 11:10:42 chongo Exp $
|
## @(#) $Id: sgn,v 30.2 2008/05/10 13:23:57 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/sgn,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/sgn,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1995/10/25 04:03:46
|
## Under source code control: 1995/10/25 04:03:46
|
||||||
|
14
help/todo
14
help/todo
@@ -51,6 +51,12 @@ Very High priority items:
|
|||||||
|
|
||||||
* Consider using GNU autoconf / configure to build calc.
|
* Consider using GNU autoconf / configure to build calc.
|
||||||
|
|
||||||
|
* It is overkill to have nearly everything wind up in libcalc.
|
||||||
|
Form a libcalcmath and a libcalclang so that an application
|
||||||
|
that just wants to link with the calc math libs can use them
|
||||||
|
without dragging in all of the other calc language, I/O,
|
||||||
|
and builtin functions.
|
||||||
|
|
||||||
* Fix any 'Known bugs' as noted in the BUGS file or as
|
* Fix any 'Known bugs' as noted in the BUGS file or as
|
||||||
displayed by 'calc help bugs'.
|
displayed by 'calc help bugs'.
|
||||||
|
|
||||||
@@ -102,8 +108,6 @@ Medium priority items:
|
|||||||
at by 'fizbin' and the HALF array pointer at by 'data' should be
|
at by 'fizbin' and the HALF array pointer at by 'data' should be
|
||||||
treated as read-only.
|
treated as read-only.
|
||||||
|
|
||||||
* It is overkill to have nearly everything wind up in libcalc.a.
|
|
||||||
|
|
||||||
One should make available a the fundamental math operations
|
One should make available a the fundamental math operations
|
||||||
on ZVALUE, NUMBER and perhaps COMPLEX (without all of the
|
on ZVALUE, NUMBER and perhaps COMPLEX (without all of the
|
||||||
other stuff) in a separate library.
|
other stuff) in a separate library.
|
||||||
@@ -113,7 +117,7 @@ Medium priority items:
|
|||||||
* Add a builtin function to access the 64 bit FNV hash which
|
* Add a builtin function to access the 64 bit FNV hash which
|
||||||
is currently being used internally in seed.c.
|
is currently being used internally in seed.c.
|
||||||
|
|
||||||
## Copyright (C) 1999-2006 Landon Curt Noll
|
## Copyright (C) 1999-2007 Landon Curt Noll
|
||||||
##
|
##
|
||||||
## Calc is open software; you can redistribute it and/or modify it under
|
## Calc is open software; you can redistribute it and/or modify it under
|
||||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -129,8 +133,8 @@ Medium priority items:
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.1 $
|
## @(#) $Revision: 30.2 $
|
||||||
## @(#) $Id: todo,v 30.1 2007/03/16 11:10:42 chongo Exp $
|
## @(#) $Id: todo,v 30.2 2007/09/08 02:52:42 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/todo,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/todo,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1999/10/20 07:42:55
|
## Under source code control: 1999/10/20 07:42:55
|
||||||
|
@@ -4,6 +4,10 @@ Unexpected
|
|||||||
surprises in calc syntax and usage. Persons familiar with C should
|
surprises in calc syntax and usage. Persons familiar with C should
|
||||||
review this file.
|
review this file.
|
||||||
|
|
||||||
|
Persons familiar with shell scripting may want to review this file
|
||||||
|
as well, particularly notes dealing with command line evaluation
|
||||||
|
and execution.
|
||||||
|
|
||||||
|
|
||||||
The Comma
|
The Comma
|
||||||
=========
|
=========
|
||||||
@@ -75,7 +79,7 @@ Unexpected
|
|||||||
|
|
||||||
(-1) ^ 0.5 == 1i
|
(-1) ^ 0.5 == 1i
|
||||||
|
|
||||||
because the above expresssion in parsed as:
|
because the above expression in parsed as:
|
||||||
|
|
||||||
-(1 ^ 0.5) == -1
|
-(1 ^ 0.5) == -1
|
||||||
|
|
||||||
@@ -220,6 +224,12 @@ Unexpected
|
|||||||
|
|
||||||
and increments x three times.
|
and increments x three times.
|
||||||
|
|
||||||
|
In an other example, this expression:
|
||||||
|
|
||||||
|
1<<8/2
|
||||||
|
|
||||||
|
evalues to 128, not 16, because <<8 is performed before the /2.
|
||||||
|
|
||||||
|
|
||||||
&A[0] and A are different things in calc
|
&A[0] and A are different things in calc
|
||||||
========================================
|
========================================
|
||||||
@@ -335,7 +345,66 @@ Unexpected
|
|||||||
NOTE: See "help statement", "help todo", and "help bugs".
|
NOTE: See "help statement", "help todo", and "help bugs".
|
||||||
|
|
||||||
|
|
||||||
## Copyright (C) 1999-2006 Landon Curt Noll
|
Shell evaluation of command line arguments
|
||||||
|
==========================================
|
||||||
|
|
||||||
|
In most interactive shells:
|
||||||
|
|
||||||
|
calc 2 * 3
|
||||||
|
|
||||||
|
will frequently produce a "Missing operator" error because the '*' is
|
||||||
|
evaluated as a "shell glob". To avoid this you must quote or escape
|
||||||
|
argument with characters that your interactive shell interprets.
|
||||||
|
|
||||||
|
For example, bash / ksh / sh shell users should use:
|
||||||
|
|
||||||
|
calc '2 * 3'
|
||||||
|
|
||||||
|
or:
|
||||||
|
|
||||||
|
calc 2 \* 3
|
||||||
|
|
||||||
|
or some other form of shell meta-character escaping.
|
||||||
|
|
||||||
|
|
||||||
|
Calc reads standard input after processing command line args
|
||||||
|
============================================================
|
||||||
|
|
||||||
|
The shell command:
|
||||||
|
|
||||||
|
seq 5 | while read i; do calc "($i+3)^2"; done
|
||||||
|
|
||||||
|
FYI: The command "seq 5" will write 1 through 5 on separate
|
||||||
|
lines on standard output, while read i sets $i to
|
||||||
|
the value of each line that is read from stdin.
|
||||||
|
|
||||||
|
will produce:
|
||||||
|
|
||||||
|
16
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
5
|
||||||
|
|
||||||
|
The reason why the last 4 lines of output are 2 through 5 is
|
||||||
|
that after calc evaluates the first line and prints (1+3)^2
|
||||||
|
(i.e., 16), calc continues to read stdin and slurps up all
|
||||||
|
of the remaining data on the pipe.
|
||||||
|
|
||||||
|
To avoid this problem, use:
|
||||||
|
|
||||||
|
seq 5 | while read i; do calc "($i+3)^2" </dev/null; done
|
||||||
|
|
||||||
|
which produces the expected results:
|
||||||
|
|
||||||
|
16
|
||||||
|
25
|
||||||
|
36
|
||||||
|
49
|
||||||
|
64
|
||||||
|
|
||||||
|
|
||||||
|
## Copyright (C) 1999-2007 Landon Curt Noll
|
||||||
##
|
##
|
||||||
## Calc is open software; you can redistribute it and/or modify it under
|
## Calc is open software; you can redistribute it and/or modify it under
|
||||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||||
@@ -351,8 +420,8 @@ Unexpected
|
|||||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
##
|
##
|
||||||
## @(#) $Revision: 30.2 $
|
## @(#) $Revision: 30.4 $
|
||||||
## @(#) $Id: unexpected,v 30.2 2007/07/11 23:00:39 chongo Exp $
|
## @(#) $Id: unexpected,v 30.4 2008/05/10 13:18:09 chongo Exp $
|
||||||
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/unexpected,v $
|
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/unexpected,v $
|
||||||
##
|
##
|
||||||
## Under source code control: 1997/03/21 13:15:18
|
## Under source code control: 1997/03/21 13:15:18
|
||||||
|
17
input.c
17
input.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: input.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: input.c,v 30.2 2008/04/15 21:17:57 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/input.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/input.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:16
|
* Under source code control: 1990/02/15 01:48:16
|
||||||
@@ -37,6 +37,8 @@
|
|||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#if !defined(_WIN32)
|
#if !defined(_WIN32)
|
||||||
# include <pwd.h>
|
# include <pwd.h>
|
||||||
|
#else
|
||||||
|
# include <stdlib.h>
|
||||||
#endif
|
#endif
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
@@ -971,17 +973,14 @@ isinoderead(struct stat *sbuf)
|
|||||||
/* scan the entire readset */
|
/* scan the entire readset */
|
||||||
for (i=0; i < maxreadset; ++i) {
|
for (i=0; i < maxreadset; ++i) {
|
||||||
#if defined(_WIN32) || defined(__MSDOS__)
|
#if defined(_WIN32) || defined(__MSDOS__)
|
||||||
tmp = _fullpath(NULL, cip->i_name, _MAX_PATH);
|
char tmp[_MAX_PATH+1];
|
||||||
if (readset[i].active &&
|
tmp[_MAX_PATH] = '\0';
|
||||||
tmp != NULL &&
|
if (_fullpath(tmp, cip->i_name, _MAX_PATH) &&
|
||||||
|
readset[i].active &&
|
||||||
strcasecmp(readset[i].path, tmp) == 0) {
|
strcasecmp(readset[i].path, tmp) == 0) {
|
||||||
/* found a match */
|
/* found a match */
|
||||||
free(tmp);
|
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
if (tmp != NULL) {
|
|
||||||
free(tmp);
|
|
||||||
}
|
|
||||||
#else /* Windoz free systems */
|
#else /* Windoz free systems */
|
||||||
if (readset[i].active &&
|
if (readset[i].active &&
|
||||||
sbuf->st_dev == readset[i].inode.st_dev &&
|
sbuf->st_dev == readset[i].inode.st_dev &&
|
||||||
|
21
math_error.c
21
math_error.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: math_error.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: math_error.c,v 30.2 2008/10/24 09:49:20 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/math_error.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/math_error.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1994/08/03 05:08:22
|
* Under source code control: 1994/08/03 05:08:22
|
||||||
@@ -93,6 +93,8 @@ math_error(char *fmt, ...)
|
|||||||
* if we should longjmp, so do
|
* if we should longjmp, so do
|
||||||
*/
|
*/
|
||||||
if (calc_use_matherr_jmpbuf != 0) {
|
if (calc_use_matherr_jmpbuf != 0) {
|
||||||
|
if (conf->calc_debug & CALCDBG_RUNSTATE)
|
||||||
|
printf("math_error: longjmp calc_matherr_jmpbuf\n");
|
||||||
longjmp(calc_matherr_jmpbuf, calc_use_matherr_jmpbuf);
|
longjmp(calc_matherr_jmpbuf, calc_use_matherr_jmpbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -102,6 +104,21 @@ math_error(char *fmt, ...)
|
|||||||
(void) fflush(stdout);
|
(void) fflush(stdout);
|
||||||
(void) fflush(stderr);
|
(void) fflush(stderr);
|
||||||
fprintf(stderr, "%s\n\n", calc_err_msg);
|
fprintf(stderr, "%s\n\n", calc_err_msg);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* if interactive, return to main via longjmp()
|
||||||
|
*/
|
||||||
|
if (calc_use_scanerr_jmpbuf != 0) {
|
||||||
|
if (conf->calc_debug & CALCDBG_RUNSTATE)
|
||||||
|
printf("math_error: longjmp calc_scanerr_jmpbuf\n");
|
||||||
|
longjmp(calc_scanerr_jmpbuf, calc_use_scanerr_jmpbuf);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* exit
|
||||||
|
*/
|
||||||
|
if (conf->calc_debug & CALCDBG_RUNSTATE)
|
||||||
|
printf("math_error: about to exit\n");
|
||||||
libcalc_call_me_last();
|
libcalc_call_me_last();
|
||||||
exit(40);
|
exit(40);
|
||||||
}
|
}
|
||||||
|
14
opcodes.c
14
opcodes.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.2 $
|
* @(#) $Revision: 30.4 $
|
||||||
* @(#) $Id: opcodes.c,v 30.2 2007/07/10 21:18:08 chongo Exp $
|
* @(#) $Id: opcodes.c,v 30.4 2008/05/10 13:51:32 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/opcodes.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/opcodes.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:19
|
* Under source code control: 1990/02/15 01:48:19
|
||||||
@@ -3120,8 +3120,18 @@ o_printresult(void)
|
|||||||
VALUE *vp;
|
VALUE *vp;
|
||||||
|
|
||||||
vp = stack;
|
vp = stack;
|
||||||
|
|
||||||
|
/* firewall */
|
||||||
|
if (vp == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
if (vp->v_type == V_ADDR)
|
if (vp->v_type == V_ADDR)
|
||||||
vp = vp->v_addr;
|
vp = vp->v_addr;
|
||||||
|
|
||||||
|
/* firewall */
|
||||||
|
if (vp == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
if (vp->v_type != V_NULL) {
|
if (vp->v_type != V_NULL) {
|
||||||
if (conf->tab_ok)
|
if (conf->tab_ok)
|
||||||
math_chr('\t');
|
math_chr('\t');
|
||||||
|
6
qtrans.c
6
qtrans.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: qtrans.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: qtrans.c,v 30.2 2008/10/24 07:09:41 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/qtrans.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/qtrans.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:22
|
* Under source code control: 1990/02/15 01:48:22
|
||||||
@@ -1062,7 +1062,7 @@ qlog(NUMBER *q, NUMBER *epsilon)
|
|||||||
if (ln_10_epsilon == NULL) {
|
if (ln_10_epsilon == NULL) {
|
||||||
/* first time call */
|
/* first time call */
|
||||||
ln_10_epsilon = qcopy(epsilon);
|
ln_10_epsilon = qcopy(epsilon);
|
||||||
} else if (qcmp(ln_10_epsilon, epsilon) == FALSE) {
|
} else if (qcmp(ln_10_epsilon, epsilon) == TRUE) {
|
||||||
/* replaced cacheed value with epsilon arg */
|
/* replaced cacheed value with epsilon arg */
|
||||||
qfree(ln_10_epsilon);
|
qfree(ln_10_epsilon);
|
||||||
ln_10_epsilon = qcopy(epsilon);
|
ln_10_epsilon = qcopy(epsilon);
|
||||||
|
25
rpm.mk
25
rpm.mk
@@ -19,8 +19,8 @@
|
|||||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#
|
#
|
||||||
MAKEFILE_REV= $$Revision: 30.3 $$
|
MAKEFILE_REV= $$Revision: 30.5 $$
|
||||||
# @(#) $Id: rpm.mk,v 30.3 2007/09/02 09:30:11 chongo Exp $
|
# @(#) $Id: rpm.mk,v 30.5 2008/10/24 08:44:00 chongo Exp $
|
||||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/rpm.mk,v $
|
# @(#) $Source: /usr/local/src/cmd/calc/RCS/rpm.mk,v $
|
||||||
#
|
#
|
||||||
# Under source code control: 2003/02/16 20:21:39
|
# Under source code control: 2003/02/16 20:21:39
|
||||||
@@ -43,7 +43,7 @@ MD5SUM= md5sum
|
|||||||
SHA1SUM= sha1sum
|
SHA1SUM= sha1sum
|
||||||
SED= sed
|
SED= sed
|
||||||
FIND= find
|
FIND= find
|
||||||
GZIP_PROG= gzip
|
BZIP2_PROG= bzip2
|
||||||
TAR= tar
|
TAR= tar
|
||||||
RM= rm
|
RM= rm
|
||||||
LS= ls
|
LS= ls
|
||||||
@@ -53,6 +53,7 @@ EGREP= egrep
|
|||||||
MKDIR= mkdir
|
MKDIR= mkdir
|
||||||
GREP= grep
|
GREP= grep
|
||||||
SORT= sort
|
SORT= sort
|
||||||
|
CHMOD= chmod
|
||||||
|
|
||||||
# rpm-related parameters
|
# rpm-related parameters
|
||||||
#
|
#
|
||||||
@@ -61,7 +62,7 @@ PROJECT_VERSION=
|
|||||||
PROJECT_RELEASE=
|
PROJECT_RELEASE=
|
||||||
PROJECT= $(PROJECT_NAME)-$(PROJECT_VERSION)
|
PROJECT= $(PROJECT_NAME)-$(PROJECT_VERSION)
|
||||||
SPECFILE= $(PROJECT_NAME).spec
|
SPECFILE= $(PROJECT_NAME).spec
|
||||||
TARBALL= $(PROJECT).${TAR}.gz
|
TARBALL= $(PROJECT).${TAR}.bz2
|
||||||
RPM686= $(PROJECT)-$(PROJECT_RELEASE).${TARCH}.rpm
|
RPM686= $(PROJECT)-$(PROJECT_RELEASE).${TARCH}.rpm
|
||||||
DRPM686= $(PROJECT_NAME)-devel-$(PROJECT_VERSION)-$(PROJECT_RELEASE).${TARCH}.rpm
|
DRPM686= $(PROJECT_NAME)-devel-$(PROJECT_VERSION)-$(PROJECT_RELEASE).${TARCH}.rpm
|
||||||
SRPM= $(PROJECT)-$(PROJECT_RELEASE).src.rpm
|
SRPM= $(PROJECT)-$(PROJECT_RELEASE).src.rpm
|
||||||
@@ -88,7 +89,7 @@ all: calc.spec ver_calc
|
|||||||
calc.spec.in`" rpm
|
calc.spec.in`" rpm
|
||||||
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
pkgme: $(PROJECT_NAME)-spec.${TAR}.gz
|
pkgme: $(PROJECT_NAME)-spec.${TAR}.bz2
|
||||||
|
|
||||||
ver_calc:
|
ver_calc:
|
||||||
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
||||||
@@ -112,12 +113,18 @@ calc.spec: calc.spec.in ver_calc
|
|||||||
srcpkg: make_rhdir
|
srcpkg: make_rhdir
|
||||||
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
||||||
${FIND} . -depth -print | \
|
${FIND} . -depth -print | \
|
||||||
${EGREP} -v '/RCS|/CVS|/NOTES|/\.|\.out$$|\.safe$$' | \
|
${EGREP} -v '/RCS|/CVS|/NOTES|/\.|\.out$$|\.safe$$\.tar\.bz2$$' | \
|
||||||
${EGREP} -v '/old[._-]|\.old$$|\.tar\.gz$$|/ver_calc$$' | \
|
${EGREP} -v '/old[._-]|\.old$$|\.tar\.gz$$|/ver_calc$$' | \
|
||||||
LANG=C ${SORT} | \
|
LANG=C ${SORT} | \
|
||||||
${CPIO} -dumpv "$(TMPDIR)/$(PROJECT)"
|
${CPIO} -dumpv "$(TMPDIR)/$(PROJECT)"
|
||||||
|
${RM} -f "$(TMPDIR)/$(PROJECT)/Makefile"
|
||||||
|
${SED} -e 's/^CCWERR=[ ]*-Werror/CCWERR=/' \
|
||||||
|
-e 's/^#.*CCWERR=.*-Werror$$/#/' \
|
||||||
|
-e 's/^CHECK= check/CHECK= true/' \
|
||||||
|
Makefile > "$(TMPDIR)/$(PROJECT)/Makefile"
|
||||||
|
${CHMOD} 0444 "$(TMPDIR)/$(PROJECT)/Makefile"
|
||||||
(cd "$(TMPDIR)"; ${TAR} cf - "$(PROJECT)") | \
|
(cd "$(TMPDIR)"; ${TAR} cf - "$(PROJECT)") | \
|
||||||
${GZIP_PROG} -c > "$(RPMDIR)/SOURCES/$(TARBALL)"
|
${BZIP2_PROG} --best -c -z > "$(RPMDIR)/SOURCES/$(TARBALL)"
|
||||||
${RM} -fr "$(TMPDIR)/$(PROJECT)"
|
${RM} -fr "$(TMPDIR)/$(PROJECT)"
|
||||||
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
@@ -228,10 +235,10 @@ uninstallrpm:
|
|||||||
${RPM_TOOL} -e "$(PROJECT_NAME)"
|
${RPM_TOOL} -e "$(PROJECT_NAME)"
|
||||||
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
$(PROJECT_NAME)-spec.${TAR}.gz: rpm.mk $(PROJECT_NAME).spec.in
|
$(PROJECT_NAME)-spec.${TAR}.bz2: rpm.mk $(PROJECT_NAME).spec.in
|
||||||
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk start of $@ rule =-=-=-=-='
|
||||||
${RM} -f "$@"
|
${RM} -f "$@"
|
||||||
${TAR} cf - "$^" | ${GZIP_PROG} -c > "$@"
|
${TAR} cf - "$^" | ${BZIP2_PROG} --best -c -z > "$@"
|
||||||
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
${V} echo '=-=-=-=-= rpm.mk end of $@ rule =-=-=-=-='
|
||||||
|
|
||||||
#****
|
#****
|
||||||
|
8
value.c
8
value.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.3 $
|
* @(#) $Revision: 30.4 $
|
||||||
* @(#) $Id: value.c,v 30.3 2007/07/11 23:09:01 chongo Exp $
|
* @(#) $Id: value.c,v 30.4 2008/05/10 13:44:28 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/value.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/value.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:25
|
* Under source code control: 1990/02/15 01:48:25
|
||||||
@@ -179,6 +179,10 @@ protecttodepth(VALUE *vp, int sts, int depth)
|
|||||||
void
|
void
|
||||||
copyvalue(VALUE *oldvp, VALUE *newvp)
|
copyvalue(VALUE *oldvp, VALUE *newvp)
|
||||||
{
|
{
|
||||||
|
/* firewall */
|
||||||
|
if (oldvp == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
newvp->v_type = oldvp->v_type;
|
newvp->v_type = oldvp->v_type;
|
||||||
if (oldvp->v_type >= 0) {
|
if (oldvp->v_type >= 0) {
|
||||||
switch (oldvp->v_type) {
|
switch (oldvp->v_type) {
|
||||||
|
22
version.c
22
version.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.4 $
|
* @(#) $Revision: 30.10 $
|
||||||
* @(#) $Id: version.c,v 30.4 2007/09/06 06:14:11 chongo Exp $
|
* @(#) $Id: version.c,v 30.10 2008/10/24 09:55:12 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/version.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/version.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/05/22 11:00:58
|
* Under source code control: 1990/05/22 11:00:58
|
||||||
@@ -48,8 +48,8 @@ static char *program;
|
|||||||
|
|
||||||
#define MAJOR_VER 2 /* major library version */
|
#define MAJOR_VER 2 /* major library version */
|
||||||
#define MINOR_VER 12 /* minor library version */
|
#define MINOR_VER 12 /* minor library version */
|
||||||
#define MAJOR_PATCH 2 /* major software level under library version */
|
#define MAJOR_PATCH 4 /* major software level under library version */
|
||||||
#define MINOR_PATCH 1 /* minor software level or 0 if none */
|
#define MINOR_PATCH 0 /* minor software level or 0 if not patched */
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -103,8 +103,6 @@ char *Copyright = "\n"
|
|||||||
* string does not contain the title, just:
|
* string does not contain the title, just:
|
||||||
*
|
*
|
||||||
* x.y.z.w
|
* x.y.z.w
|
||||||
* x.y.z
|
|
||||||
* x.y
|
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
version(void)
|
version(void)
|
||||||
@@ -121,15 +119,9 @@ version(void)
|
|||||||
/*
|
/*
|
||||||
* form the version buffer
|
* form the version buffer
|
||||||
*/
|
*/
|
||||||
if (MINOR_PATCH > 0) {
|
snprintf(verbuf, BUFSIZ,
|
||||||
snprintf(verbuf, BUFSIZ,
|
"%d.%d.%d.%d", calc_major_ver, calc_minor_ver,
|
||||||
"%d.%d.%d.%d", calc_major_ver, calc_minor_ver,
|
calc_major_patch, calc_minor_patch);
|
||||||
calc_major_patch, calc_minor_patch);
|
|
||||||
} else {
|
|
||||||
snprintf(verbuf, BUFSIZ,
|
|
||||||
"%d.%d.%d", calc_major_ver,
|
|
||||||
calc_minor_ver, calc_major_patch);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* save the versions string into a newly malloced buffer
|
* save the versions string into a newly malloced buffer
|
||||||
|
@@ -8,9 +8,8 @@
|
|||||||
|
|
||||||
|
|
||||||
/* what byte order are we? */
|
/* what byte order are we? */
|
||||||
#define BIG_ENDIAN 4321
|
#include <endian.h>
|
||||||
#define LITTLE_ENDIAN 1234
|
#define CALC_BYTE_ORDER BYTE_ORDER
|
||||||
#define CALC_BYTE_ORDER LITTLE_ENDIAN
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* !__ENDIAN_CALC_H__ */
|
#endif /* !__ENDIAN_CALC_H__ */
|
||||||
|
@@ -10,6 +10,7 @@
|
|||||||
/* do we have fgetpos & fsetpos functions? */
|
/* do we have fgetpos & fsetpos functions? */
|
||||||
#undef HAVE_FPOS_POS /* no */
|
#undef HAVE_FPOS_POS /* no */
|
||||||
#undef FPOS_POS_BITS
|
#undef FPOS_POS_BITS
|
||||||
|
#undef FPOS_POS_LEN
|
||||||
|
|
||||||
|
|
||||||
#endif /* !__HAVE_FPOS_POS_H__ */
|
#endif /* !__HAVE_FPOS_POS_H__ */
|
||||||
|
49
zfunc.c
49
zfunc.c
@@ -19,8 +19,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: zfunc.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: zfunc.c,v 30.2 2008/02/24 07:41:49 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zfunc.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zfunc.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1990/02/15 01:48:27
|
* Under source code control: 1990/02/15 01:48:27
|
||||||
@@ -374,12 +374,28 @@ zcomb(ZVALUE z1, ZVALUE z2, ZVALUE *res)
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Compute the Jacobi function (p / q) for odd q.
|
* Compute the Jacobi function (m / n) for odd n.
|
||||||
* If q is prime then the result is:
|
*
|
||||||
* 1 if p == x^2 (mod q) for some x.
|
* The property of the Jacobi function is: If n>2 is prime then
|
||||||
* -1 otherwise.
|
*
|
||||||
* If q is not prime, then the result is not meaningful if it is 1.
|
* the result is 1 if m == x^2 (mod n) for some x.
|
||||||
* This function returns 0 if q is even or q < 0.
|
* otherwise the result is -1.
|
||||||
|
*
|
||||||
|
* If n is not prime, then the result does not prove that n is not prine
|
||||||
|
* when the value of the Jacobi is 1.
|
||||||
|
*
|
||||||
|
* Jacobi evaluation of (m / n), where n > 0 is odd AND m > 0 is odd:
|
||||||
|
*
|
||||||
|
* rule 0: (0 / n) == 0
|
||||||
|
* rule 1: (1 / n) == 1
|
||||||
|
* rule 2: (m / n) == (a / n) if m == a % n
|
||||||
|
* rule 3: (m / n) == (2*m / n) if n == 1 % 8 OR n == 7 % 8
|
||||||
|
* rule 4: (m / n) == -(2*m / n) if n != 1 & 8 AND n != 7 % 8
|
||||||
|
* rule 5: (m / n) == (n / m) if m == 3 % 4 AND n == 3 % 4
|
||||||
|
* rule 6: (m / n) == -(n / m) if m != 3 % 4 OR n != 3 % 4
|
||||||
|
*
|
||||||
|
* NOTE: This function returns 0 in invalid Jacobi parameters:
|
||||||
|
* m < 0 OR n is even OR n < 1.
|
||||||
*/
|
*/
|
||||||
FLAG
|
FLAG
|
||||||
zjacobi(ZVALUE z1, ZVALUE z2)
|
zjacobi(ZVALUE z1, ZVALUE z2)
|
||||||
@@ -388,16 +404,16 @@ zjacobi(ZVALUE z1, ZVALUE z2)
|
|||||||
long lowbit;
|
long lowbit;
|
||||||
int val;
|
int val;
|
||||||
|
|
||||||
|
/* firewall */
|
||||||
|
if (ziszero(z1) || zisneg(z1))
|
||||||
|
return 0;
|
||||||
if (ziseven(z2) || zisneg(z2))
|
if (ziseven(z2) || zisneg(z2))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
/* assume a value of 1 unless we find otherwise */
|
||||||
|
if (zisone(z1))
|
||||||
|
return 1;
|
||||||
val = 1;
|
val = 1;
|
||||||
if (ziszero(z1) || zisone(z1))
|
|
||||||
return val;
|
|
||||||
if (zisunit(z1)) {
|
|
||||||
if ((*z2.v - 1) & 0x2)
|
|
||||||
val = -val;
|
|
||||||
return val;
|
|
||||||
}
|
|
||||||
zcopy(z1, &p);
|
zcopy(z1, &p);
|
||||||
zcopy(z2, &q);
|
zcopy(z2, &q);
|
||||||
for (;;) {
|
for (;;) {
|
||||||
@@ -406,7 +422,8 @@ zjacobi(ZVALUE z1, ZVALUE z2)
|
|||||||
p = tmp;
|
p = tmp;
|
||||||
if (ziszero(p)) {
|
if (ziszero(p)) {
|
||||||
zfree(p);
|
zfree(p);
|
||||||
p = _one_;
|
zfree(q);
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
if (ziseven(p)) {
|
if (ziseven(p)) {
|
||||||
lowbit = zlowbit(p);
|
lowbit = zlowbit(p);
|
||||||
|
22
zrand.c
22
zrand.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: zrand.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: zrand.c,v 30.2 2007/09/21 01:47:34 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zrand.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zrand.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1995/01/07 09:45:25
|
* Under source code control: 1995/01/07 09:45:25
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
*
|
*
|
||||||
* The s100 generator as the following calc interfaces:
|
* The s100 generator as the following calc interfaces:
|
||||||
*
|
*
|
||||||
* rand(min,max) (where min < max)
|
* rand(min,beyond) (where min < beyond)
|
||||||
*
|
*
|
||||||
* Print an s100 generator random value over interval [a,b).
|
* Print an s100 generator random value over interval [a,b).
|
||||||
*
|
*
|
||||||
@@ -2171,17 +2171,17 @@ zrand(long cnt, ZVALUE *res)
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* zrandrange - generate an s100 random value in the range [low, high)
|
* zrandrange - generate an s100 random value in the range [low, beyond)
|
||||||
*
|
*
|
||||||
* given:
|
* given:
|
||||||
* low - low value of range
|
* low - low value of range
|
||||||
* high - beyond end of range
|
* beyond - beyond end of range
|
||||||
* res - where to place the random bits as ZVALUE
|
* res - where to place the random bits as ZVALUE
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
zrandrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
zrandrange(CONST ZVALUE low, CONST ZVALUE beyond, ZVALUE *res)
|
||||||
{
|
{
|
||||||
ZVALUE range; /* high-low */
|
ZVALUE range; /* beyond-low */
|
||||||
ZVALUE rval; /* random value [0, 2^bitlen) */
|
ZVALUE rval; /* random value [0, 2^bitlen) */
|
||||||
ZVALUE rangem1; /* range - 1 */
|
ZVALUE rangem1; /* range - 1 */
|
||||||
long bitlen; /* smallest power of 2 >= diff */
|
long bitlen; /* smallest power of 2 >= diff */
|
||||||
@@ -2189,15 +2189,15 @@ zrandrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
|||||||
/*
|
/*
|
||||||
* firewall
|
* firewall
|
||||||
*/
|
*/
|
||||||
if (zrel(low, high) >= 0) {
|
if (zrel(low, beyond) >= 0) {
|
||||||
math_error("srand low range >= high range");
|
math_error("srand low range >= beyond range");
|
||||||
/*NOTREACHED*/
|
/*NOTREACHED*/
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* determine the size of the random number needed
|
* determine the size of the random number needed
|
||||||
*/
|
*/
|
||||||
zsub(high, low, &range);
|
zsub(beyond, low, &range);
|
||||||
if (zisone(range)) {
|
if (zisone(range)) {
|
||||||
zfree(range);
|
zfree(range);
|
||||||
*res = low;
|
*res = low;
|
||||||
@@ -2226,7 +2226,7 @@ zrandrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* add in low value to produce the range [0+low, diff+low)
|
* add in low value to produce the range [0+low, diff+low)
|
||||||
* which is the range [low, high)
|
* which is the range [low, beyond)
|
||||||
*/
|
*/
|
||||||
zadd(rval, low, res);
|
zadd(rval, low, res);
|
||||||
zfree(rval);
|
zfree(rval);
|
||||||
|
24
zrandom.c
24
zrandom.c
@@ -17,8 +17,8 @@
|
|||||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* @(#) $Revision: 30.1 $
|
* @(#) $Revision: 30.2 $
|
||||||
* @(#) $Id: zrandom.c,v 30.1 2007/03/16 11:09:46 chongo Exp $
|
* @(#) $Id: zrandom.c,v 30.2 2007/09/21 01:47:34 chongo Exp $
|
||||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zrandom.c,v $
|
* @(#) $Source: /usr/local/src/cmd/calc/RCS/zrandom.c,v $
|
||||||
*
|
*
|
||||||
* Under source code control: 1997/02/15 04:01:56
|
* Under source code control: 1997/02/15 04:01:56
|
||||||
@@ -133,9 +133,9 @@
|
|||||||
*
|
*
|
||||||
* The Blum generator as the following calc interfaces:
|
* The Blum generator as the following calc interfaces:
|
||||||
*
|
*
|
||||||
* random(min, max) (where min < max)
|
* random(min, beyond) (where min < beyond)
|
||||||
*
|
*
|
||||||
* Print a Blum generator random value over interval [min,max).
|
* Print a Blum generator random value over interval [min,beyond).
|
||||||
*
|
*
|
||||||
* random()
|
* random()
|
||||||
*
|
*
|
||||||
@@ -2904,17 +2904,17 @@ zrandom(long cnt, ZVALUE *res)
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* zrandomrange - generate a Blum-Blum-Shub random value in [low, high)
|
* zrandomrange - generate a Blum-Blum-Shub random value in [low, beyond)
|
||||||
*
|
*
|
||||||
* given:
|
* given:
|
||||||
* low - low value of range
|
* low - low value of range
|
||||||
* high - beyond end of range
|
* beyond - beyond end of range
|
||||||
* res - where to place the random bits as ZVALUE
|
* res - where to place the random bits as ZVALUE
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
zrandomrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
zrandomrange(CONST ZVALUE low, CONST ZVALUE beyond, ZVALUE *res)
|
||||||
{
|
{
|
||||||
ZVALUE range; /* high-low */
|
ZVALUE range; /* beyond-low */
|
||||||
ZVALUE rval; /* random value [0, 2^bitlen) */
|
ZVALUE rval; /* random value [0, 2^bitlen) */
|
||||||
ZVALUE rangem1; /* range - 1 */
|
ZVALUE rangem1; /* range - 1 */
|
||||||
long bitlen; /* smallest power of 2 >= diff */
|
long bitlen; /* smallest power of 2 >= diff */
|
||||||
@@ -2922,15 +2922,15 @@ zrandomrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
|||||||
/*
|
/*
|
||||||
* firewall
|
* firewall
|
||||||
*/
|
*/
|
||||||
if (zrel(low, high) >= 0) {
|
if (zrel(low, beyond) >= 0) {
|
||||||
math_error("srand low range >= high range");
|
math_error("srand low range >= beyond range");
|
||||||
/*NOTREACHED*/
|
/*NOTREACHED*/
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* determine the size of the random number needed
|
* determine the size of the random number needed
|
||||||
*/
|
*/
|
||||||
zsub(high, low, &range);
|
zsub(beyond, low, &range);
|
||||||
if (zisone(range)) {
|
if (zisone(range)) {
|
||||||
zfree_random(range);
|
zfree_random(range);
|
||||||
zcopy(low, res);
|
zcopy(low, res);
|
||||||
@@ -2959,7 +2959,7 @@ zrandomrange(CONST ZVALUE low, CONST ZVALUE high, ZVALUE *res)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* add in low value to produce the range [0+low, diff+low)
|
* add in low value to produce the range [0+low, diff+low)
|
||||||
* which is the range [low, high)
|
* which is the range [low, beyond)
|
||||||
*/
|
*/
|
||||||
zadd(rval, low, res);
|
zadd(rval, low, res);
|
||||||
zfree_random(rval);
|
zfree_random(rval);
|
||||||
|
Reference in New Issue
Block a user