You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2009/01/03 23:53:44 UTC

[jira] Commented: (STDCXX-982) CPPOPTS, CXXOPTS and LDOPTS aren't used in etc/config/src/libc_decl.sh

    [ https://issues.apache.org/jira/browse/STDCXX-982?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660510#action_12660510 ] 

Martin Sebor commented on STDCXX-982:
-------------------------------------

AFAIK, the purpose of the {{\{CPP,CXX,LD\}}}OPTS variables is to make it possible to temporarily add optional flags when building the library or other components (e.g., tests), not to permanently change the set of preprocessor, compiler, or linker options for the whole build. To change those, either set them on the command line or edit their definitions in the generated {{$BUILDDIR/makefile.in}}.

> 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.0, 4.2.1
>         Environment: Ubuntu Linux, Cygwin, MinGW
>            Reporter: Farid Zaripov
>             Fix For: 4.2.2
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> 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.