> From: ruifen Shen [mailto:shenr...@gmail.com] 
> Sent: Friday, August 13, 2010 1:40 AM
> To: Jian-Xin Lai
> Cc: Gilmore, Doug; Open64-devel
> Subject: Re: [Open64-devel] error when linking libinstr,a (review requests)
> 
> hi, Doug.
> The changes looked fine for SL-target. 
Thanks!
> 
> By the way, Why does x86 compile libinstr using GNU? Why not using opencc?
Actually Open64 is being used.

Note that for building a component of the compiler proper,
one can just type make in the compiler component build
directory.

This isn't the case for the libraries.  The top level make
file overrides make variable settings on the command line
for the sub-make that builds the libraries for a particular
architecture:

$ make >& ob
$ grep "make -C" ob
make -C osprey/targdir/include
make -C osprey/cygnus
make -C osprey/targdir/libspin_4_2_0
...
make -C osprey-gcc-4.2.0
make -C osprey/targdir_lib default BUILD_TARGET=IA32 BUILD_COMPILER=SELF 
BUILD_AREA=/scratch/dgilmore/sot-pp2/bo/osprey/targdir_lib MACHINE_TYPE=IA32 
BUILD_ABI=I32BIT BUILD_ARCH=IA32 BUILD_HOST=IA32
make -C osprey/targdir_lib2 default BUILD_TARGET=X8664 BUILD_COMPILER=SELF 
BUILD_AREA=/scratch/dgilmore/sot-pp2/bo/osprey/targdir_lib2 MACHINE_TYPE=X86_64 
BUILD_ABI=I64BIT BUILD_ARCH=X8664 BUILD_HOST=IA32
make -C osprey-gcc-4.2.0/gcc \
...
make -C osprey-gcc-4.2.0/x86_64-redhat-linux/libstdc++-v3 \
$ 

Thus it is currently the case that when remaking a library
component, just typing make is not appropriate (this hasn't
changed with the introduction using configure).

At some point I think we should add make include files
generated by configure that are located in the generated
targdir_lib{,2} directories that contain the settings for
the make variables that are currently being set on the
command line that makes the libraries for a particular
architecture.  Doing this would allow a component library
rebuild by just typing make in the build directory associated
with the library.

Doug
> 2010/8/13 Jian-Xin Lai <laij...@gmail.com>
> In libinstr2.patch, there are some changes in SL-specified code, can
> guys in SL review that change?
> 
> 2010/8/11 Gilmore, Doug <doug.gilm...@amd.com>:
> > Sorry I should have sent these patches sooner for review.
> >
> >
> >
> > Here are two patches to address this issue, along with some
> >
> > cleanup of the configuration of library builds and the addition of
> >
> > a convenience install rule that can be used during development.
> >
> >
> >
> > libinstr2.patch:
> >
> > - Fixes the debug build problem of the instrumentation library.
> >
> >
> >
> > configure.patch:
> >
> > - Added configure option:
> >
> >   --with-build-lib-optimize=DEFAULT|DEBUG
> >
> >
> >
> >   Note that --with-build-optimize=DEBUG will now only enable debugging
> >
> >   in the compiler build.
> >
> >
> >
> >   The --help comment for --with-build-lib-optimize, notes
> >
> >   that --with-build-lib-optimize=DEBUG is not well tested.
> >
> >
> >
> >   Note that with this change compiler/library builds configured with
> >
> >   --with-build-lib-optimize=DEBUG can now be used for performance
> >
> >   testing.
> >
> > - Breakup install rule into two rules, one for the GNU
> >
> >   FEs (slow) and one for the compiler (fast), thus
> >
> >   rebuilding and installing a component of the compiler
> >
> >   can done via:
> >
> >
> >
> >   make && make -C ../../.. install_compiler
> >
> >
> >
> >   instead of:
> >
> >
> >
> >   make && make -C ../../.. install
> >
> >
> >
> > Doug
> >
> >
> >
> > From: Gautam Chakrabarti [mailto:gautam.c...@yahoo.com]
> > Sent: Wednesday, August 11, 2010 8:59 AM
> > To: s...@cup.hp.com; Sun Chan
> > Cc: Open64-devel
> > Subject: Re: [Open64-devel] error when linking libinstr,a
> >
> >
> >
> > As Steve mentioned, libinstr2 is C++ code, but it does not use STL. libinstr
> > still contains the original code before PathScale's change (as Sun said) and
> > uses STL -- probably the old code needs to be removed. libinstr2 is supposed
> > to not link with libstdc++, and should be built with -fno-exceptions and
> > other flags as Steve already said. The debug build is broken.
> >
> >
> >
> > Gautam
> >
> >
> >
> >
> >
> > ________________________________
> >
> > From: Steve Ellcey <s...@cup.hp.com>
> > To: Sun Chan <sun.c...@gmail.com>
> > Cc: Open64-devel <Open64-devel@lists.sourceforge.net>
> > Sent: Wed, August 11, 2010 8:40:16 AM
> > Subject: Re: [Open64-devel] error when linking libinstr,a
> >
> > On Wed, 2010-08-11 at 00:18 -0700, Sun Chan wrote:
> >> this make no sense. Pathscale already changed the library to C
> >> implementation. I believe the changes have been merged
> >> Sun
> >>
> >> On Tue, Aug 10, 2010 at 11:38 PM, Jian-Xin Lai <laij...@gmail.com> wrote:
> >> > The workaround is to link with -lstdc++.
> >> >
> >> > 2010/8/10 Hucheng Zhou <zhou.huch...@gmail.com>:
> >> >> Hi:
> >> >>  When I tried to use fbo, there is an error when linking libinstr.a:
> >> >>
> >> >> /home/zhc/open64-install//lib/gcc-lib/x86_64-open64-linux/4.2/libinstr.a(profile_interface.o):(.gnu.linkonce.d.DW.ref.__gxx_personality_v0+0x0):
> >> >> undefined reference to `__gxx_personality_v0'
> >> >>  Thanks.
> >
> > The x86 platform builds libinstr from the sources in
> > osprey/instrumentation/libinstr2, and those are C++ sources.
> >
> > $ ls osprey/instrumentation/libinstr2/
> > Exported              libinstr.vs            profile_interface.h
> > Makefile.gbase        profile.cxx            utils.h
> > dump.cxx              profile.h              vector.h
> > dump.h                profile_aux.h
> > hash_map.h            profile_interface.cxx
> >
> > I don't know if anyone uses instrumentation/libinstr/ but those sources
> > are in C++ too.  There doesn't actually seem to be many diffs between
> > these two directories.
> >
> > It looks like we have a local fix here to
> > instrumentation/libinstr2/Makefile.gbase that hasn't been merged back
> > yet.  This fix sets CXXFLAGS when BUILD_OPTIMIZE is set to DEBUG in
> > order to include -fno-exceptions when building in DEBUG mode.  I believe
> > the current sources will work now if you don't build this library in
> > DEBUG mode.
> >
> > Steve Ellcey
> > s...@cup.hp.com
> >
> >
> > ------------------------------------------------------------------------------
> > This SF.net email is sponsored by
> >
> > Make an app they can't live without
> > Enter the BlackBerry Developer Challenge
> > http://p.sf.net/sfu/RIM-dev2dev
> > _______________________________________________
> > Open64-devel mailing list
> > Open64-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/open64-devel
> >
> >
> >
> > ------------------------------------------------------------------------------
> > This SF.net email is sponsored by
> >
> > Make an app they can't live without
> > Enter the BlackBerry Developer Challenge
> > http://p.sf.net/sfu/RIM-dev2dev
> > _______________________________________________
> > Open64-devel mailing list
> > Open64-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/open64-devel
> >
> >
> 
> 
> --
> Regards,
> Lai Jian-Xin
> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by
> 
> Make an app they can't live without
> Enter the BlackBerry Developer Challenge
> http://p.sf.net/sfu/RIM-dev2dev
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel
> 
> 
> 
> -- 
> Best Regards.
> 
> Shen Ruifen
> 
> tel: 010-51266989-226
>


------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to