CPPOPTS, CXXOPTS and LDOPTS aren't used in etc/config/src/libc_decl.sh
----------------------------------------------------------------------
Key: STDCXX-982
URL: https://issues.apache.org/jira/browse/STDCXX-982
Project: C++ Standard Library
Issue Type: Bug
Components: Configuration
Affects Versions: 4.2.1, 4.2.0
Environment: Ubuntu Linux, Cygwin, MinGW
Reporter: Farid Zaripov
Fix For: 4.2.2
On Cygwin it's possible to build library in two modes:
1) with using cygwin1.dll (POSIX compatibility layer)
2) without using cygwin1.dll - the same result as if you're using MinGW compiler
For building library in MinGW mode the compiler and linker options should be
extended with -mno-cygwin option.
I've tried to use CPPOPTS, CXXOPTS and LDOPTS make variables, described in
README file:
{noformat}
$ make builddir BUILDDIR=mingw15s BUILDTYPE=15s CONFIG=gcc.config
CXXOPTS=-mno-cygwin LDOPTS=-mno-cygwin
$ cd mingw15s/include && make CXXOPTS=-mno-cygwin LDOPTS=-mno-cygwin
{noformat}
The config.log file shows that -mno-cygwin option is used only once at
linking stage of the sanity test:
{noformat}
int main () { return 0; }
gcc -D_RWSTDDEBUG -D_REENTRANT -mthreads -I. -pedantic -nostdinc++ -g -W
-Wall -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long -Wcast-align
-c a.cpp -o a.o
gcc a.o -mthreads -mno-cygwin -lm -lsupc++ -lcatgets -liconv -o a.out
int main () { return sizeof (int); }
int main () { return sizeof (long); }
int main () { return sizeof (long long); }
int main () { return sizeof (void*); }
int main () { int i = 1; return *(char*)&i; }
gcc -E -D_RWSTDDEBUG -D_REENTRANT -mthreads -pedantic -nostdinc++ -g
/tmp/assert-2408.cpp >/tmp/assert-2408.i
/tmp/assert-2408.cpp:1:19: cassert: No such file or directory
gcc -E -D_RWSTDDEBUG -D_REENTRANT -mthreads -pedantic -nostdinc++ -g
/tmp/assert-2408.cpp >/tmp/assert-2408.i
...
{noformat}
The same effect observing on Ubuntu Linux.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.