version: 14.3.0-7 (UNRELEASED) commit: 39ea76304d57617bd92674237f1fc91c5c12ccd5
214 lines
6.0 KiB
Makefile
214 lines
6.0 KiB
Makefile
# -*- makefile -*-
|
|
# rules to unpack the source tarballs in $(srcdir); if the source dir already
|
|
# exists, the rule exits with an error to prevent deletion of modified
|
|
# source files. It has to be deleted manually.
|
|
|
|
tarballs = $(gcc_tarball)
|
|
ifneq (,$(filter yes, $(with_offload_nvptx) $(with_offload_gcn)))
|
|
tarballs += $(newlib_tarball)
|
|
endif
|
|
ifeq ($(with_binutils),yes)
|
|
tarballs += $(binutils_dsc)
|
|
endif
|
|
|
|
unpack_stamps = $(foreach i,$(tarballs),$(unpack_stamp)-$(i))
|
|
|
|
unpack: stamp-dir $(unpack_stamp) debian-chmod
|
|
$(unpack_stamp): $(unpack_stamps)
|
|
$(unpack_stamp): $(foreach p,$(debian_tarballs),unpacked-$(p))
|
|
echo -e "\nBuilt from Debian source package $(PKGSOURCE)-$(SOURCE_VERSION)" \
|
|
> pxxx
|
|
echo -e "Integrated upstream packages in this version:\n" >> pxxx
|
|
for i in $(tarballs); do echo " $$i" >> pxxx; done
|
|
mv -f pxxx $@
|
|
|
|
debian-chmod:
|
|
@chmod 755 debian/dh_*
|
|
|
|
# ---------------------------------------------------------------------------
|
|
|
|
gfdl_texinfo_files = \
|
|
gcc/doc/analyzer.texi \
|
|
gcc/doc/avr-mmcu.texi \
|
|
gcc/doc/bugreport.texi \
|
|
gcc/doc/cfg.texi \
|
|
gcc/doc/collect2.texi \
|
|
gcc/doc/compat.texi \
|
|
gcc/doc/configfiles.texi \
|
|
gcc/doc/configterms.texi \
|
|
gcc/doc/contrib.texi \
|
|
gcc/doc/contribute.texi \
|
|
gcc/doc/cpp.texi \
|
|
gcc/doc/cppdiropts.texi \
|
|
gcc/doc/cppenv.texi \
|
|
gcc/doc/cppinternals.texi \
|
|
gcc/doc/cppopts.texi \
|
|
gcc/doc/cppwarnopts.texi \
|
|
gcc/doc/extend.texi \
|
|
gcc/doc/fragments.texi \
|
|
gcc/doc/frontends.texi \
|
|
gcc/doc/gccint.texi \
|
|
gcc/doc/gcov.texi \
|
|
gcc/doc/gcov-dump.texi \
|
|
gcc/doc/gcov-tool.texi \
|
|
gcc/doc/generic.texi \
|
|
gcc/doc/gimple.texi \
|
|
gcc/doc/gnu.texi \
|
|
gcc/doc/gty.texi \
|
|
gcc/doc/headerdirs.texi \
|
|
gcc/doc/hostconfig.texi \
|
|
gcc/doc/implement-c.texi \
|
|
gcc/doc/implement-cxx.texi \
|
|
gcc/doc/install-old.texi \
|
|
gcc/doc/install.texi \
|
|
gcc/doc/interface.texi \
|
|
gcc/doc/invoke.texi \
|
|
gcc/doc/languages.texi \
|
|
gcc/doc/libgcc.texi \
|
|
gcc/doc/loop.texi \
|
|
gcc/doc/lto.texi \
|
|
gcc/doc/makefile.texi \
|
|
gcc/doc/match-and-simplify.texi \
|
|
gcc/doc/md.texi \
|
|
gcc/doc/objc.texi \
|
|
gcc/doc/optinfo.texi \
|
|
gcc/doc/options.texi \
|
|
gcc/doc/passes.texi \
|
|
gcc/doc/plugins.texi \
|
|
gcc/doc/poly-int.texi \
|
|
gcc/doc/portability.texi \
|
|
gcc/doc/rtl.texi \
|
|
gcc/doc/service.texi \
|
|
gcc/doc/sourcebuild.texi \
|
|
gcc/doc/standards.texi \
|
|
gcc/doc/tm.texi.in \
|
|
gcc/doc/tm.texi \
|
|
gcc/doc/tree-ssa.texi \
|
|
gcc/doc/trouble.texi \
|
|
gcc/doc/ux.texi \
|
|
gcc/doc/include/gcc-common.texi \
|
|
gcc/doc/include/funding.texi \
|
|
gcc/fortran/gfc-internals.texi \
|
|
gcc/fortran/invoke.texi \
|
|
gcc/fortran/intrinsic.texi \
|
|
|
|
|
|
gfdl_toplevel_texinfo_files = \
|
|
gcc/doc/gcc.texi \
|
|
gcc/doc/lto-dump.texi \
|
|
gcc/ada/gnat-style.texi \
|
|
gcc/ada/gnat_rm.texi \
|
|
gcc/ada/gnat_ugn.texi \
|
|
gcc/fortran/gfortran.texi \
|
|
gcc/go/gccgo.texi \
|
|
libgomp/libgomp.texi \
|
|
libquadmath/libquadmath.texi \
|
|
|
|
gfdl_manpages = \
|
|
gcc/doc/cpp.1 \
|
|
gcc/doc/g++.1 \
|
|
gcc/doc/gc-analyze.1 \
|
|
gcc/doc/gcc.1 \
|
|
gcc/doc/gccgo.1 \
|
|
gcc/doc/gcov.1 \
|
|
gcc/doc/gcov-dump.1 \
|
|
gcc/doc/gcov-tool.1 \
|
|
gcc/doc/gfortran.1 \
|
|
gcc/lto/lto-dump.1 \
|
|
gcc/doc/fsf-funding.7 \
|
|
|
|
# ---------------------------------------------------------------------------
|
|
$(unpack_stamp)-$(gcc_tarball): $(gcc_tarpath)
|
|
@echo "Build environment: derivative=$(derivative), release=$(distrelease)"
|
|
: # unpack gcc tarball
|
|
mkdir -p $(stampdir)
|
|
if [ -d $(srcdir) ]; then \
|
|
echo >&2 "Source directory $(srcdir) exists. Delete by hand"; \
|
|
false; \
|
|
fi
|
|
rm -rf $(gcc_srcdir)
|
|
tar -x -f $(gcc_tarpath)
|
|
mv $(gcc_srcdir) $(srcdir)
|
|
ln -sf libsanitizer $(srcdir)/libasan
|
|
ifeq (0,1)
|
|
cd $(srcdir) && tar cfj ../gcc-4.1.1-doc.tar.bz2 \
|
|
$(gfdl_texinfo_files) \
|
|
$(gfdl_toplevel_texinfo_files) \
|
|
$(gfdl_manpages)
|
|
endif
|
|
ifeq ($(GFDL_INVARIANT_FREE),yes)
|
|
ifneq ($(single_package),yes)
|
|
rm -f $(srcdir)/gcc/doc/*.1
|
|
rm -f $(srcdir)/gcc/doc/fsf-funding.7
|
|
rm -f $(srcdir)/gcc/doc/*.info
|
|
rm -f $(srcdir)/gcc/fortran/*.info
|
|
rm -f $(srcdir)/libgomp/*.info
|
|
rm -f $(srcdir)/libquadmath/*.info
|
|
for i in $(gfdl_texinfo_files); do \
|
|
if [ -f $(srcdir)/$$i ]; then \
|
|
cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
|
|
else \
|
|
cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
|
|
echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
|
|
fi; \
|
|
done
|
|
( \
|
|
echo '@include gcc-vers.texi'; \
|
|
echo '@macro versionsubtitle'; \
|
|
echo '@subtitle For @sc{gcc} version @value{version-GCC}'; \
|
|
echo '@vskip 0pt plus 1filll'; \
|
|
echo '@end macro'; \
|
|
) > $(srcdir)/gcc/doc/include/gcc-common.texi
|
|
for i in $(gfdl_toplevel_texinfo_files); do \
|
|
n=$$(basename $$i .texi); \
|
|
if [ -f $(srcdir)/$$i ]; then \
|
|
sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi \
|
|
> $(srcdir)/$$i; \
|
|
else \
|
|
sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi \
|
|
> $(srcdir)/$$i; \
|
|
echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
|
|
fi; \
|
|
done
|
|
for i in $(gfdl_manpages); do \
|
|
touch $(srcdir)/$$i; \
|
|
done
|
|
rm -f $(srcdir)/INSTALL/*.html
|
|
rm -f $(srcdir)/zlib/contrib/dotzlib/DotZLib.chm
|
|
endif
|
|
endif
|
|
echo "$(gcc_tarball) unpacked." > $@
|
|
|
|
# ---------------------------------------------------------------------------
|
|
ifneq (,$(newlib_tarball))
|
|
$(unpack_stamp)-$(newlib_tarball): $(newlib_tarpath) $(unpack_stamp)-$(gcc_tarball)
|
|
: # unpack newlib-nvptx tarball
|
|
mkdir -p $(stampdir)
|
|
: # rm -rf $(newlib_srcdir)
|
|
tar -x -f $(newlib_tarpath)
|
|
patch -p1 < debian/patches/newlib-pr119325.diff
|
|
patch -p1 < debian/patches/newlib-p2.diff
|
|
patch -p1 < debian/patches/newlib-p3.diff
|
|
echo "$(newlib_tarball) unpacked." > $@
|
|
endif
|
|
|
|
# ---------------------------------------------------------------------------
|
|
ifneq (,$(binutils_dsc))
|
|
$(unpack_stamp)-$(binutils_dsc): $(binutils_tarpath) $(unpack_stamp)-$(gcc_tarball)
|
|
: # unpack binutils package
|
|
mkdir -p $(stampdir)
|
|
: # rm -rf $(binutils_srcdir)
|
|
dpkg-source -x $(binutils_dsc)
|
|
|
|
: # symlink binutilds toplevel dirs into the gcc tree
|
|
for d in $(binutils_srcdir)/*; do \
|
|
[ -d $$d ] || continue; \
|
|
b=$$(basename $$d); \
|
|
if [ ! -e $(srcdir)/$$b ]; then \
|
|
ln -s ../$(binutils_srcdir)/$$b $(srcdir)/$$b; \
|
|
fi; \
|
|
done
|
|
|
|
echo "$(binutils_dsc) unpacked." > $@
|
|
endif
|