[petsc-dev] Running dsymutil in GNU make build

Satish Balay balay at mcs.anl.gov
Mon Nov 4 09:37:08 CST 2013


ops - I was looking at a different location of DSYMUTIL usage in conf/rules :(

satish

On Mon, 4 Nov 2013, Satish Balay wrote:

> Pehpas gmakefile requires a copy of this - but we should not remove it
> from conf/rules. If its removed - it will potentially break
> 'make all-legacy'
> 
> Satish
> 
> On Mon, 4 Nov 2013, Lisandro Dalcin wrote:
> 
> > Do you like moving the execution of dsymutil from
> > $PETSC_DIR/conf/rules to $PETSC_DIR/gmakefile shared lib targets? The
> > rationale is to not run dsymutil with the shared libs are up to date.
> > 
> > diff --git a/conf/rules b/conf/rules
> > index 1ac6fe0..6bf2421 100644
> > --- a/conf/rules
> > +++ b/conf/rules
> > @@ -105,9 +105,6 @@ gnumake: chk_makej
> >         @echo "Building PETSc using GNU Make with ${MAKE_NP} build threads"
> >         @echo "=========================================="
> >         @cd ${PETSC_DIR} && ${OMAKE_PRINTDIR} -f gmakefile -j ${MAKE_NP} V=${V}
> > -       @if [ "${BUILDSHAREDLIB}" = "yes" -a "${DSYMUTIL}" != "true" ]; then \
> > -        echo "Running ${DSYMUTIL} on ${SHLIBS}";\
> > -        for LIBNAME in ${SHLIBS}; do ${DSYMUTIL}
> > ${INSTALL_LIB_DIR}/$$LIBNAME.${SL_LINKER_SUFFIX}; done; fi
> >         @echo "========================================="
> > 
> >  # Does nothing; needed for some rules that require actions.
> > diff --git a/gmakefile b/gmakefile
> > index afba46c..525c081 100644
> > --- a/gmakefile
> > +++ b/gmakefile
> > @@ -69,6 +69,9 @@ srcs.o := $(foreach pkg, $(pkgs), $(call concatlang,$(pkg)))
> >  # with-single-library=1 (default)
> >  $(libpetsc_shared) : $(srcs.o) | $$(@D)/.DIR
> >         $(call quiet,CLINKER) -shared -o $@ $^ $(PETSC_EXTERNAL_LIB_BASIC)
> > +ifneq ($(DSYMUTIL),true)
> > +       $(call quiet,DSYMUTIL) $@
> > +endif
> > 
> >  $(libpetsc_static) : obj := $(srcs.o)
> > 
> > @@ -124,6 +127,9 @@ else
> >  endif
> >  $(libpetscpkgs_shared) : $$(obj) $(libdep_true) | $(libdep_order) $$(@D)/.DIR
> >         $(call quiet,CLINKER) -shared -o $@ $(obj) $(libdep)
> > $(PETSC_EXTERNAL_LIB_BASIC)
> > +ifneq ($(DSYMUTIL),true)
> > +       $(call quiet,DSYMUTIL) $@
> > +endif
> > 
> >  $(OBJDIR)/%.o : %.c | $$(@D)/.DIR
> >         $(PETSC_COMPILE.c) $< -o $@
> > 
> > 
> > 
> 
> 




More information about the petsc-dev mailing list