Discussion:
[Bug-apl] SVN 984 changes
Juergen Sauermann
2017-08-06 11:44:58 UTC
Permalink
<html>
<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">Hi,<br>
<br>
I would like to inform you about 2 changes that I made in <b>SVN
984</b>.<br>
<br>
<b>1. Use of C++ casts instead of C casts</b><br>
I have replaced every old-style C cast by either a C++ cast
(static_cast&lt;&gt;(), reinterpret_cast&lt;&gt;(),<br>
or const_cast&lt;&gt;()).<br>
The reason for this change is to keep up with the changes in the
C++ language.<br>
Also, the Makefiles were changed to not allow C casts any longer.<br>
<br>
<b>2. APL_Float as class</b>.<br>
I have change the code so that one can use a <b>class  APL_Float</b>
instead of the<br>
previous <b>typedef double APL_FLoat</b>. An example class is
provided in file<br>
<b>APL_Float_as_class.hh</b> and the decision if a typedef or a
class shall be used<br>
is made in <b>APL_types.hh</b> via  <b></b><b>#define
APL_Float_is_class 0</b> or <b>1</b>. This change<br>
simplifies, for example, the introduction of libraries for higher
precision arithmetic.<br>
<br>
I hope all this still compiles on your machines. <b>Make clean</b>
and a new <b>./configure</b> is<br>
required after <b>SVN up</b>.<br>
<br>
Best Regards,<br>
Jürgen Sauermann<br>
<br>
</font>
</body>
</html>
David B. Lamkins
2017-08-06 16:54:45 UTC
Permalink
With the following configure options and building after a make clean, I see a lot of warnings about old-style casts:

./configure RATIONAL_NUMBERS_WANTED=yes PERFORMANCE_COUNTERS_WANTED=yes CORE_COUNT_WANTED=-3
Hi,
I would like to inform you about 2 changes that I made in SVN 984.
1. Use of C++ casts instead of C casts
I have replaced every old-style C cast by either a C++ cast (static_cast<>(),
reinterpret_cast<>(),
or const_cast<>()).
The reason for this change is to keep up with the changes in the C++ language.
Also, the Makefiles were changed to not allow C casts any longer.
2. APL_Float as class.
I have change the code so that one can use a class  APL_Float instead of the
previous typedef double APL_FLoat. An example class is provided in file
APL_Float_as_class.hh and the decision if a typedef or a class shall be used
is made in APL_types.hh via  #define APL_Float_is_class 0 or 1. This change
simplifies, for example, the introduction of libraries for higher precision
arithmetic.
I hope all this still compiles on your machines. Make clean and a new ./
configure is
required after SVN up.
Best Regards,
Jürgen Sauermann
--
Any fool can paint a picture, but it takes a wise person to be able to sell it.
Juergen Sauermann
2017-08-06 18:12:00 UTC
Permalink
<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi David,<br>
<br>
thanks, fixed in <b>SVN 987</b>, It has become difficult lately to
check all possible <b>./configure</b> variants.<br>
But I am working on a solution.<br>
<br>
Best Regards,<br>
/// Jürgen<br>
<br>
<br>
<div class="moz-cite-prefix">On 08/06/2017 06:54 PM, David B.
Lamkins wrote:<br>
</div>
<blockquote cite="mid:***@morganthe.ptp"
type="cite">
<pre wrap="">With the following configure options and building after a make clean, I see a lot of warnings about old-style casts:

./configure RATIONAL_NUMBERS_WANTED=yes PERFORMANCE_COUNTERS_WANTED=yes CORE_COUNT_WANTED=-3

On Sun, Aug 06, 2017 at 01:44:58PM +0200, Juergen Sauermann wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Hi,

I would like to inform you about 2 changes that I made in SVN 984.

1. Use of C++ casts instead of C casts
I have replaced every old-style C cast by either a C++ cast (static_cast&lt;&gt;(),
reinterpret_cast&lt;&gt;(),
or const_cast&lt;&gt;()).
The reason for this change is to keep up with the changes in the C++ language.
Also, the Makefiles were changed to not allow C casts any longer.

2. APL_Float as class.
I have change the code so that one can use a class  APL_Float instead of the
previous typedef double APL_FLoat. An example class is provided in file
APL_Float_as_class.hh and the decision if a typedef or a class shall be used
is made in APL_types.hh via  #define APL_Float_is_class 0 or 1. This change
simplifies, for example, the introduction of libraries for higher precision
arithmetic.

I hope all this still compiles on your machines. Make clean and a new ./
configure is
required after SVN up.

Best Regards,
Jürgen Sauermann

</pre>
</blockquote>
<pre wrap="">
</pre>
</blockquote>
<br>
</body>
</html>
Peter Teeson
2017-08-07 02:05:13 UTC
Permalink
Hi Jürgen:
If you are working with Make please look at Make DOXY
which doesn’t work on Mac (in my case but maybe others as well)

On Macintosh there is a Doxygen download from their site.
<http://www.stack.nl/~dimitri/doxygen/download.html <http://www.stack.nl/~dimitri/doxygen/download.html>>
"Doxygen-1.8.13.dmg (54.6MB) ( ftp <ftp://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> | http <http://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> )
This is a self-contained disk image, which contains the GUI frontend.
The binaries support the whole range of Intel CPUs (both 32 and 64 bit). “

Basically there is a GUI front end for configuration and then a button to run doxygen which is included in the app.
On Mac one opens the .dmg and drags the app somewhere, usually the Application folder/directory.
And then launches the app, perhaps by making it available from the dock…

To use the present Make file one would have to install doxygen itself somewhere, /usr/local/bin or some such place.

It would be interesting to know what other Mac users do, but I use the “official” one as per above….

respect….

Peter
Post by Juergen Sauermann
Hi David,
thanks, fixed in SVN 987, It has become difficult lately to check all possible ./configure variants.
But I am working on a solution.
Best Regards,
/// Jürgen
Post by David B. Lamkins
./configure RATIONAL_NUMBERS_WANTED=yes PERFORMANCE_COUNTERS_WANTED=yes CORE_COUNT_WANTED=-3
Hi,
I would like to inform you about 2 changes that I made in SVN 984.
1. Use of C++ casts instead of C casts
I have replaced every old-style C cast by either a C++ cast (static_cast<>(),
reinterpret_cast<>(),
or const_cast<>()).
The reason for this change is to keep up with the changes in the C++ language.
Also, the Makefiles were changed to not allow C casts any longer.
2. APL_Float as class.
I have change the code so that one can use a class APL_Float instead of the
previous typedef double APL_FLoat. An example class is provided in file
APL_Float_as_class.hh and the decision if a typedef or a class shall be used
is made in APL_types.hh via #define APL_Float_is_class 0 or 1. This change
simplifies, for example, the introduction of libraries for higher precision
arithmetic.
I hope all this still compiles on your machines. Make clean and a new ./
configure is
required after SVN up.
Best Regards,
Jürgen Sauermann
Juergen Sauermann
2017-08-07 16:12:52 UTC
Permalink
<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">Hi Peter,<br>
<br>
it is difficult for me to do that because I have no access to a
Mac computer.<br>
<br>
I would assume that the place where Doxygen is installed does not
matter as long as your shell<br>
can find it. The only other thing that Doxygen cares about
(speaking for the Ubuntu version) is where<br>
the config file is located (one can specify that file on the
command line that invokes doxygen).<br>
<br>
So it would be good to know if your <b>make DOXY </b>fails
because the doxygen command itself was not<br>
found, or because the doxygen command could not find its config
file (which is normally <b>./Doxyfile</b>)<br>
<br>
Best Regards,<br>
/// Jürgen<br>
<br>
<br>
</font><br>
<div class="moz-cite-prefix">On 08/07/2017 04:05 AM, Peter Teeson
wrote:<br>
</div>
<blockquote
cite="mid:FD5D8567-EBF7-410A-B058-***@icloud.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<div class="">Hi Jürgen:</div>
If you are working with Make please look at Make DOXY 
<div class="">which doesn’t work on Mac (in my case but maybe
others as well)</div>
<div class=""><br class="">
<div class="">On Macintosh there is a Doxygen download from
their site.</div>
<div class="">&lt;<a moz-do-not-send="true"
href="http://www.stack.nl/%7Edimitri/doxygen/download.html"
class="">http://www.stack.nl/~dimitri/doxygen/download.html</a>&gt;</div>
<div class="">"<b class="">Doxygen-1.8.13.dmg</b> (54.6MB) ( <a
moz-do-not-send="true"
href="ftp://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg"
class="">ftp</a> | <a moz-do-not-send="true"
href="http://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg"
class="">http</a> )<br class="">
This is a self-contained disk image, which contains the GUI
frontend. </div>
<div class=""> The binaries support the whole range of Intel
CPUs (both 32 and 64 bit). “    </div>
<div class=""><br class="">
</div>
<div class="">Basically there is a GUI front end for
configuration and then a button to run doxygen which is
included in the app.</div>
<div class="">On Mac one opens the .dmg and drags the app
somewhere, usually the Application folder/directory.</div>
<div class="">And then launches the app, perhaps by making it
available from the dock…</div>
<div class=""><br class="">
</div>
<div class="">To use the present Make file one would have to
install doxygen itself somewhere, /usr/local/bin or some such
place.</div>
<div class=""><br class="">
</div>
<div class="">It would be interesting to know what other Mac
users do, but I use the “official” one as per above….</div>
<div class=""><br class="">
</div>
<div class="">respect….</div>
<div class=""><br class="">
</div>
<div class="">Peter<br class="">
</div>
</div>
</blockquote>
<br>
</body>
</html>
Peter Teeson
2017-08-07 20:03:15 UTC
Permalink
Hi Jürgen:
Yes I knew you had no Mac <grin>. (Using VirtualBox I run Debian just for fun..)

Gandalf:~ pteeson$ cd /Volumes/Data/Development/MyProjects/GNUAPLWS/apl-svn
Gandalf:apl-svn pteeson$ make DOXY
doxygen
make: doxygen: No such file or directory
make: *** [DOXY] Error 1

As a test in Terminal I manually executed doxygen this way
/Applications/Doxygen.app/Contents/Resources/doxygen

(Note the capital D for the app and the lowercase d for the executable.)

The shell doesn’t know where the app named Doxygen is located, in my case in the Applications folder.
Furthermore it also doesn’t know that the Doxygen app contains within it the actual doxygen executable.

The Doxygen downloads page makes it pretty clear that either one downloads the .dmg for Mac or else
manually builds and installs the doxygen executable.

What do you think about some scripting in make DOXY to detect if we are on a Mac and asking where to
find the Doxygen app and then executing it? Or something like that?

Frankly I don’t think it's much of an issue as I have never seen any comments about it on this list.
However I will make a note in the APL on Macintosh document.

respect…..

Peter
Post by Juergen Sauermann
Hi Peter,
it is difficult for me to do that because I have no access to a Mac computer.
I would assume that the place where Doxygen is installed does not matter as long as your shell
can find it. The only other thing that Doxygen cares about (speaking for the Ubuntu version) is where
the config file is located (one can specify that file on the command line that invokes doxygen).
So it would be good to know if your make DOXY fails because the doxygen command itself was not
found, or because the doxygen command could not find its config file (which is normally ./Doxyfile)
Best Regards,
/// Jürgen
Post by Peter Teeson
If you are working with Make please look at Make DOXY
which doesn’t work on Mac (in my case but maybe others as well)
On Macintosh there is a Doxygen download from their site.
<http://www.stack.nl/~dimitri/doxygen/download.html <http://www.stack.nl/%7Edimitri/doxygen/download.html>>
"Doxygen-1.8.13.dmg (54.6MB) ( ftp <ftp://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> | http <http://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> )
This is a self-contained disk image, which contains the GUI frontend.
The binaries support the whole range of Intel CPUs (both 32 and 64 bit). “
Basically there is a GUI front end for configuration and then a button to run doxygen which is included in the app.
On Mac one opens the .dmg and drags the app somewhere, usually the Application folder/directory.
And then launches the app, perhaps by making it available from the dock…
To use the present Make file one would have to install doxygen itself somewhere, /usr/local/bin or some such place.
It would be interesting to know what other Mac users do, but I use the “official” one as per above….
respect….
Peter
Juergen Sauermann
2017-08-07 20:16:16 UTC
Permalink
<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">Hi Peter,<br>
<br>
I believe if a program (here: Doxygen) installs itself in a place
where a shell does not find<br>
it then that is a fault in the installation of that program.
Fixing this in a GNU APL Makefile<br>
would be the wrong place. There are probably two easier
workarounds:<br>
<br>
1. add </font><font face="Helvetica, Arial, sans-serif"><b>/Applications/Doxygen.app/Contents/Resources/</b><b>
</b>to the shell's $PATH (or whatever the name is on Mac), or<br>
2. put a symlink to doxygen in one of the directories mentioned in
$PATH<br>
<br>
Thanks in advance for updating the APL on Mac document.<br>
<br>
Best Regards,<br>
/// Jürgen<br>
<br>
</font><br>
<div class="moz-cite-prefix">On 08/07/2017 10:03 PM, Peter Teeson
wrote:<br>
</div>
<blockquote
cite="mid:CBFD5089-DA7E-4EF2-B6CB-***@icloud.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252"> <div class="">Hi J�rgen:</div> <div class=""> Yes I knew you had no Mac &lt;grin&gt;. (Using
VirtualBox I run Debian just for fun..)</div>
<div class=""><br class="">
</div>
<div class="">Gandalf:~ pteeson$ cd
/Volumes/Data/Development/MyProjects/GNUAPLWS/apl-svn </div>
<div class="">Gandalf:apl-svn pteeson$ make DOXY</div>
<div class="">doxygen</div>
<div class="">make: doxygen: No such file or directory</div>
<div class="">make: *** [DOXY] Error 1</div>
<div class=""><br class="">
</div>
<div class="">As a test in Terminal I manually executed doxygen
this way</div>
<div class="">/Applications/Doxygen.app/Contents/Resources/doxygen</div>
<div class=""><br class="">
</div>
<div class="">(Note the capital D for the app and the lowercase d
for the executable.)</div>
<div class=""><br class="">
</div>
<div class="">The shell doesn’t know where the app named Doxygen
is located, in my case in the Applications folder.</div>
<div class="">Furthermore it also doesn’t know that the Doxygen
app contains within it the actual doxygen executable.</div>
<div class=""><br class="">
</div>
<div class="">The Doxygen downloads page makes it pretty clear
that either one downloads the .dmg for Mac or else</div>
<div class="">manually builds and installs the doxygen executable.</div>
<div class=""><br class="">
</div>
<div class="">What do you think about some scripting in make DOXY
to detect if we are on a Mac and asking where to </div>
<div class="">find the Doxygen app and then executing it? Or
something like that?</div>
<div class=""><br class="">
</div>
<div class="">
<div class="">Frankly I don’t think it's much of an issue as I
have never seen any comments about it on this list.</div>
<div class="">However I will make a note in the APL on Macintosh
document.</div>
</div>
<div class=""><br class="">
</div>
<div class="">respect…..</div>
<div class=""><br class="">
</div>
<div class="">Peter</div>
<div>
<blockquote type="cite" class="">
<div class="">On Aug 7, 2017, at 12:12 PM, Juergen Sauermann
&lt;<a moz-do-not-send="true"
href="mailto:***@t-online.de" class="">***@t-online.de</a>&gt;
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type" class="">
<div bgcolor="#FFFFFF" text="#000000" class=""> <font
class="" face="Helvetica, Arial, sans-serif">Hi Peter,<br
class="">
<br class="">
it is difficult for me to do that because I have no
access to a Mac computer.<br class="">
<br class="">
I would assume that the place where Doxygen is installed
does not matter as long as your shell<br class="">
can find it. The only other thing that Doxygen cares
about (speaking for the Ubuntu version) is where<br
class="">
the config file is located (one can specify that file on
the command line that invokes doxygen).<br class="">
<br class="">
So it would be good to know if your <b class="">make
DOXY </b>fails because the doxygen command itself was
not<br class="">
found, or because the doxygen command could not find its
config file (which is normally <b class="">./Doxyfile</b>)<br
class="">
<br class="">
Best Regards,<br class="">
/// Jürgen<br class="">
<br class="">
<br class="">
</font><br class="">
<div class="moz-cite-prefix">On 08/07/2017 04:05 AM, Peter
Teeson wrote:<br class="">
</div>
<blockquote
cite="mid:FD5D8567-EBF7-410A-B058-***@icloud.com"
type="cite" class="">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252" class="">
<div class="">Hi Jürgen:</div>
If you are working with Make please look at Make DOXY 
<div class="">which doesn’t work on Mac (in my case but
maybe others as well)</div>
<div class=""><br class="">
<div class="">On Macintosh there is a Doxygen download
from their site.</div>
<div class="">&lt;<a moz-do-not-send="true"
href="http://www.stack.nl/%7Edimitri/doxygen/download.html"
class="">http://www.stack.nl/~dimitri/doxygen/download.html</a>&gt;</div>
<div class="">"<b class="">Doxygen-1.8.13.dmg</b>
(54.6MB) ( <a moz-do-not-send="true"
href="ftp://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg"
class="">ftp</a> | <a moz-do-not-send="true"
href="http://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg"
class="">http</a> )<br class="">
This is a self-contained disk image, which contains
the GUI frontend. </div>
<div class=""> The binaries support the whole range of
Intel CPUs (both 32 and 64 bit). “    </div>
<div class=""><br class="">
</div>
<div class="">Basically there is a GUI front end for
configuration and then a button to run doxygen which
is included in the app.</div>
<div class="">On Mac one opens the .dmg and drags the
app somewhere, usually the Application
folder/directory.</div>
<div class="">And then launches the app, perhaps by
making it available from the dock…</div>
<div class=""><br class="">
</div>
<div class="">To use the present Make file one would
have to install doxygen itself somewhere,
/usr/local/bin or some such place.</div>
<div class=""><br class="">
</div>
<div class="">It would be interesting to know what
other Mac users do, but I use the “official” one as
per above….</div>
<div class=""><br class="">
</div>
<div class="">respect….</div>
<div class=""><br class="">
</div>
<div class="">Peter<br class="">
</div>
</div>
</blockquote>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</blockquote>
<br>
</body>
</html>
Peter Teeson
2017-08-08 01:06:20 UTC
Permalink
Hi Jürgen:
Thanks for your reply.

That’s just not the way things work in macOS. Never has been.

Of the 71 apps in my Application folder, (and not including the sub-folder named Utilities), there are only 1 or 2 that appear from bash find, or which. (Xcode is one of them because it does have a command line interface.)

Of course I had also thought of the 2 alternatives you suggested. Just an added step to installing GNU APL on Mac.
I will add an appropriate para in my document.

respect….

Peter
Post by Juergen Sauermann
Hi Peter,
I believe if a program (here: Doxygen) installs itself in a place where a shell does not find
it then that is a fault in the installation of that program. Fixing this in a GNU APL Makefile
1. add /Applications/Doxygen.app/Contents/Resources/ to the shell's $PATH (or whatever the name is on Mac), or
2. put a symlink to doxygen in one of the directories mentioned in $PATH
Thanks in advance for updating the APL on Mac document.
Best Regards,
/// Jürgen
Post by Peter Teeson
Yes I knew you had no Mac <grin>. (Using VirtualBox I run Debian just for fun..)
Gandalf:~ pteeson$ cd /Volumes/Data/Development/MyProjects/GNUAPLWS/apl-svn
Gandalf:apl-svn pteeson$ make DOXY
doxygen
make: doxygen: No such file or directory
make: *** [DOXY] Error 1
As a test in Terminal I manually executed doxygen this way
/Applications/Doxygen.app/Contents/Resources/doxygen
(Note the capital D for the app and the lowercase d for the executable.)
The shell doesn’t know where the app named Doxygen is located, in my case in the Applications folder.
Furthermore it also doesn’t know that the Doxygen app contains within it the actual doxygen executable.
The Doxygen downloads page makes it pretty clear that either one downloads the .dmg for Mac or else
manually builds and installs the doxygen executable.
What do you think about some scripting in make DOXY to detect if we are on a Mac and asking where to
find the Doxygen app and then executing it? Or something like that?
Frankly I don’t think it's much of an issue as I have never seen any comments about it on this list.
However I will make a note in the APL on Macintosh document.
respect…..
Peter
Post by Juergen Sauermann
Hi Peter,
it is difficult for me to do that because I have no access to a Mac computer.
I would assume that the place where Doxygen is installed does not matter as long as your shell
can find it. The only other thing that Doxygen cares about (speaking for the Ubuntu version) is where
the config file is located (one can specify that file on the command line that invokes doxygen).
So it would be good to know if your make DOXY fails because the doxygen command itself was not
found, or because the doxygen command could not find its config file (which is normally ./Doxyfile)
Best Regards,
/// Jürgen
Post by Peter Teeson
If you are working with Make please look at Make DOXY
which doesn’t work on Mac (in my case but maybe others as well)
On Macintosh there is a Doxygen download from their site.
<http://www.stack.nl/~dimitri/doxygen/download.html <http://www.stack.nl/%7Edimitri/doxygen/download.html>>
"Doxygen-1.8.13.dmg (54.6MB) ( ftp <ftp://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> | http <http://ftp.stack.nl/pub/users/dimitri/Doxygen-1.8.13.dmg> )
This is a self-contained disk image, which contains the GUI frontend.
The binaries support the whole range of Intel CPUs (both 32 and 64 bit). “
Basically there is a GUI front end for configuration and then a button to run doxygen which is included in the app.
On Mac one opens the .dmg and drags the app somewhere, usually the Application folder/directory.
And then launches the app, perhaps by making it available from the dock…
To use the present Make file one would have to install doxygen itself somewhere, /usr/local/bin or some such place.
It would be interesting to know what other Mac users do, but I use the “official” one as per above….
respect….
Peter
Continue reading on narkive:
Loading...