This is the mail archive of the
cygwin-developers@sources.redhat.com
mailing list for the Cygwin project.
Re: exceptions.cc
- To: cygwin developers <cygwin-developers at cygwin dot com>
- Subject: Re: exceptions.cc
- From: Christopher Faylor <cgf at redhat dot com>
- Date: Thu, 14 Dec 2000 18:41:32 -0500
- References: <20001214232117.16979.qmail@web122.yahoomail.com>
- Reply-To: cygwin-developers at cygwin dot com
On Thu, Dec 14, 2000 at 03:21:17PM -0800, Earnie Boyd wrote:
>Adding
>exceptions.o: exceptions.cc
> $(CXX) $(CXXFLAGS) -c -fno-inline-functions $< -o $@
>to the winsup/cygwin/Makefile causes
>
>c++ -L/prj/cygcvs/bld/i686-pc-cygwin/winsup
>-L/prj/cygcvs/bld/i686-pc-cygwin/win
>sup/cygwin -L/prj/cygcvs/bld/i686-pc-cygwin/winsup/w32api/lib -isystem
>/prj/cygc
>vs/src/winsup/include -isystem /prj/cygcvs/src/winsup/cygwin/include -isystem
>/p
>rj/cygcvs/src/winsup/w32api/include -isystem
>/prj/cygcvs/src/newlib/libc/sys/cyg
>win -isystem /prj/cygcvs/src/newlib/libc/sys/cygwin32
>-B/prj/cygcvs/bld/i686-pc-
>cygwin/newlib/ -isystem /prj/cygcvs/bld/i686-pc-cygwin/newlib/targ-include
>-isys
>tem /prj/cygcvs/src/newlib/libc/include -O3 -fnative-struct -MD -fbuiltin -c
>-fn
>o-inline-functions ../../../../src/winsup/cygwin/exceptions.cc -o exceptions.o
>In file included from ../../../../src/winsup/cygwin/exceptions.cc:19:
>../../../../src/winsup/cygwin/pinfo.h:125: syntax error before `*'
>../../../../src/winsup/cygwin/pinfo.h: In method `struct sigaction &
>_pinfo::get
>sig(int)':
>../../../../src/winsup/cygwin/pinfo.h:95: `thread2signal' undeclared (first use
>this function)
>../../../../src/winsup/cygwin/pinfo.h:95: (Each undeclared identifier is
>reporte
>d only once
>../../../../src/winsup/cygwin/pinfo.h:95: for each function it appears in.)
>../../../../src/winsup/cygwin/pinfo.h: In method `void
>_pinfo::setthread2signal(
>void *)':
>../../../../src/winsup/cygwin/pinfo.h:119: `ThreadItem' undeclared (first use
>th
>is function)
>../../../../src/winsup/cygwin/pinfo.h:119: parse error before `)'
>../../../../src/winsup/cygwin/exceptions.cc: In function `void
>signal_exit(int)'
>:
>../../../../src/winsup/cygwin/exceptions.cc:1026: invalid use of undefined type
>`class ResourceLocks'
>/prj/cygcvs/src/winsup/cygwin/include/sys/cygwin.h:115: forward declaration of
>`
>class ResourceLocks'
>../../../../src/winsup/cygwin/exceptions.cc:1027: invalid use of undefined type
>`class ResourceLocks'
>/prj/cygcvs/src/winsup/cygwin/include/sys/cygwin.h:115: forward declaration of
>`
>class ResourceLocks'
>c++: file path prefix `/prj/cygcvs/bld/i686-pc-cygwin/newlib/' never used
>make: *** [exceptions.o] Error 1
>
>The question I have is what causes the build when I don't use the specific rule
>and the general rule
>"
>new-$(DLL_NAME): $(DLL_OFILES) $(DEF_FILE) $(DLL_IMPORTS) $(LIBC) $(LIBM)
>Makefi
>le winver_stamp
> $(CXX) $(CXXFLAGS) -nostdlib -Wl,-shared -o $@ -e $(DLL_ENTRY)
>$(DEF_FIL
>E) $(DLL_OFILES) version.o \
> winver.o $(DLL_IMPORTS) $(MALLOC_OBJ) $(LIBM) $(LIBC) -lgcc -lstdc++
>
>dll_ofiles: $(DLL_OFILES)
>"
>is used?
>
>Now, why do I want to do this in the first place? I wanted to use -O3 which
>adds -finline-functions and autoload.cc and exceptions.cc cause undefined
>symbols when building the dll with this switch. So I want to be specific for
>these objects so that I can add the -fno-inline-functions to the formula.
So, you should look for the appropriate .cc -> .o rule and mimic that.
It's located in Makefile.common and it is not what you've quoted above.
cgf