[SCM] GiNaC -- a C++ library for symbolic computations branch, master, updated. release_1-4-0-352-g47a0c68
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GiNaC -- a C++ library for symbolic computations". The branch, master has been updated via 47a0c68f3e0c4af0ee22b3ca4fe0e5df66aa69db (commit) from e29b2b7b7804e98d5707b00bb124e0e01ec6409a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 47a0c68f3e0c4af0ee22b3ca4fe0e5df66aa69db Author: Alexei Sheplyakov <Alexei.Sheplyakov@gmail.com> Date: Tue May 24 00:37:09 2011 +0300 [build] configure: don't abuse AC_CHECK_FILE. Unbreaks the cross-compilation. Checking for ginsh_parser.h in configure is not a good idea, since it 1) produces a bogus warning during an out of source build, 2) breaks cross-compilation. Solution: just skip that bogus check (auto* tools do a similar check in the run-time *for a reason*). ----------------------------------------------------------------------- Summary of changes: configure.ac | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) hooks/post-receive -- GiNaC -- a C++ library for symbolic computations
Hi, I put these checks in for a reason and you call them bogus, nice. So, at least, could you explain at bit more. Am 23.05.2011 23:50, schrieb Alexei Sheplyakov:
commit 47a0c68f3e0c4af0ee22b3ca4fe0e5df66aa69db Author: Alexei Sheplyakov<Alexei.Sheplyakov@gmail.com> Date: Tue May 24 00:37:09 2011 +0300
[build] configure: don't abuse AC_CHECK_FILE. Unbreaks the cross-compilation.
Unbreaks the cross-compilation?
Checking for ginsh_parser.h in configure is not a good idea, since it 1) produces a bogus warning during an out of source build,
Giving a very helpful summary of possible problems at the end is bogus?
2) breaks cross-compilation.
Again, what? Jens
Hi, Jens, On Tue, May 24, 2011 at 12:00:18AM +0200, Jens Vollinga wrote:
I put these checks in for a reason and you call them bogus, nice.
So, at least, could you explain at bit more.
The warning about `missing' ginsh_parser.h and ginsh_lexer.cc is issued every time. Even if the files in question are actually present: tar xaf ginac-1.6.0.tar.bz2 mkdir build cd build ../ginac-1.6.0/configure --disable-static This fact makes me think that the check is bogus. Also, ../GiNaC/configure --host=i386-mingw32 on Linux fails due to AC_CHECK_FILE (AC_CHECK_FILE does not work when cross compiling, as per autoconf manual). Breaking compilation is not very nice. Given that the check itself is not very useful I've decided to remove it. As a result it's possible to cross compile GiNaC, and there's no incorrect warnings. Hope this helps, Alexei
Hi Alexei, Am 24.05.2011 00:54, schrieb Alexei Sheplyakov:
tar xaf ginac-1.6.0.tar.bz2 mkdir build cd build ../ginac-1.6.0/configure --disable-static
This fact makes me think that the check is bogus. Also,
now, at my box there is no warning. I followed the same steps, unpacking the tar, doing a vpath build, etc. But no, no warning. If there were a warning, I would agree that the code in configure.ac needs to be fixed. I would still think it is useful to have a summary of possible problems at the end, so my approach would be to fix the configure.ac code if necessary, not remove it. But I don't get any bogus warning! Does your setup differ significantly from mine (Ubuntu 11.04, x64)?
../GiNaC/configure --host=i386-mingw32
on Linux fails due to AC_CHECK_FILE (AC_CHECK_FILE does not work when cross compiling, as per autoconf manual). Breaking compilation is not very nice. Given that the check itself is not very useful I've decided to remove it. As a result it's possible to cross compile GiNaC, and there's no incorrect warnings.
Hope this helps,
Yes, it helps. I overlooked the line in the autoconf manual: "Be aware that, like most Autoconf macros, they test a feature of the host machine, and therefore, they die when cross-compiling." But it just confuses me: most Autoconf macros fail when cross-compiling? REALLY? Why? I mean, why should checking for a file fail if I instruct the compiler to use a different assembly language? I don't get it. Since I want to keep the extra warning, I am tempted to just replace AC_CHECK_FILE with some portable shell code. That should be doable. Would you go along that path? Regards, Jens
Hi Alexei, since I want to reinstate the warning, could you please answer the question in my last email? Am 24.05.2011 01:15, schrieb Jens Vollinga:
Am 24.05.2011 00:54, schrieb Alexei Sheplyakov:
tar xaf ginac-1.6.0.tar.bz2 mkdir build cd build ../ginac-1.6.0/configure --disable-static
This fact makes me think that the check is bogus. Also,
now, at my box there is no warning. I followed the same steps, unpacking the tar, doing a vpath build, etc. But no, no warning.
If there were a warning, I would agree that the code in configure.ac needs to be fixed. I would still think it is useful to have a summary of possible problems at the end, so my approach would be to fix the configure.ac code if necessary, not remove it. But I don't get any bogus warning! Does your setup differ significantly from mine (Ubuntu 11.04, x64)?
-> What is your system/setup? Regards, Jens
Hi, Jens, On Tue, May 24, 2011 at 01:15:51AM +0200, Jens Vollinga wrote:
tar xaf ginac-1.6.0.tar.bz2 mkdir build cd build ../ginac-1.6.0/configure --disable-static
This fact makes me think that the check is bogus. Also,
now, at my box there is no warning. I followed the same steps, unpacking the tar, doing a vpath build, etc. But no, no warning.
If there were a warning, I would agree that the code in configure.ac needs to be fixed. I would still think it is useful to have a summary of possible problems at the end, so my approach would be to fix the configure.ac code if necessary, not remove it. But I don't get any bogus warning! Does your setup differ significantly from mine (Ubuntu 11.04, x64)?
Mine is a minimal Debian (sid) chroot on x86_64. It looks like installing flex and bison suppress the warning. I think there should be no warning even if flex and bison are not installed.
I overlooked the line in the autoconf manual:
"Be aware that, like most Autoconf macros, they test a feature of the host machine, and therefore, they die when cross-compiling."
But it just confuses me: most Autoconf macros fail when cross-compiling?
For instance, /proc/self/exe might exist on the build system (say, Linux), and it might be absent on the target system (anything non-Linux). Actually it might be absent even on Linux if the program runs in a chroot environment. That's why autoconf documentation recommends run time check instead.
Since I want to keep the extra warning, I am tempted to just replace AC_CHECK_FILE with some portable shell code.
Done. Still I doubt this warning is really useful. Most users install GiNaC from the tarball, and don't need to even know what bison or flex is. Best regards, Alexei
participants (4)
-
Alexei Sheplyakov
-
git@ginac.de
-
Jens Vollinga
-
Jens Vollinga