version 1.6, 2004/02/28 15:35:45 |
version 1.30, 2021/03/24 14:32:47 |
|
|
# $OpenXM: OpenXM/src/gc/Makefile,v 1.5 2004/02/13 00:47:12 takayama Exp $ |
# $OpenXM: OpenXM/src/gc/Makefile,v 1.29 2020/01/09 12:15:00 ohara Exp $ |
OpenXM_HOME=../.. |
OpenXM_HOME=../.. |
OpenXM_contrib=${OpenXM_HOME}/../OpenXM_contrib |
PREFIX=${OpenXM_HOME} |
OpenXM_lib=${OpenXM_HOME}/lib |
DISTDIR=${OpenXM_HOME}/../OpenXM_dist |
OpenXM_include=${OpenXM_HOME}/include |
RM = /bin/rm |
GC=${OpenXM_contrib}/gc |
MASTER_SITE=http://www.math.kobe-u.ac.jp/pub/OpenXM/misc/ |
RM=rm |
# Original. https://www.hboehm.info/gc/gc_source/ |
|
DISTNAME=gc-7.6.12 |
|
ATOMIC=libatomic_ops-7.6.10 |
|
DISTFILES=${DISTNAME}.tar.gz ${ATOMIC}.tar.gz |
|
WRKSRC=work/${DISTNAME} |
|
#PATCHFILES = ${OpenXM_HOME}/../OpenXM_contrib2/asir-gc/gc-7.diff gc-cygwin64.diff |
|
PATCHFILES = |
|
|
all: |
all : build |
@if [ ! -f ./.use_ports ]; then \ |
|
make all-l ; \ |
fetch: |
else \ |
-mkdir work |
make -f Makefile-ports all ; \ |
@if [ ! -f work/.fetch_done ]; then \ |
|
for i in ${DISTFILES}; do ${OpenXM_HOME}/bin/oxfetch.sh ${MASTER_SITE}$$i ${DISTDIR}; done ; \ |
fi |
fi |
install: |
@touch work/.fetch_done |
@if [ ! -f ./.use_ports ]; then \ |
|
make install-l ; \ |
extract: fetch |
else \ |
@if [ ! -f work/.extract_done ]; then \ |
make -f Makefile-ports install ; \ |
for i in ${DISTFILES}; do cat ${DISTDIR}/$$i | (cd work; tar xzvf -) ; done ; \ |
|
chmod +x ${WRKSRC}/install-sh ; \ |
fi |
fi |
|
-(cd ${WRKSRC}; ln -sf ../${ATOMIC} libatomic_ops) |
|
@touch work/.extract_done |
|
|
all-l: configure-l |
patch: extract |
@if [ ! -f ./.make_done ]; then \ |
@if [ ! -f work/.patch_done ]; then \ |
(cd ${GC} ; make) ; \ |
for i in ${PATCHFILES} ; do \ |
touch ./.make_done ; \ |
cat $$i | (cd ${WRKSRC}; patch -p1) ; \ |
|
done ; \ |
fi |
fi |
|
@touch work/.patch_done |
|
|
install-l: all-l |
configure : patch |
if [ ! -f ./.install_done ]; then \ |
@if [ ! -f work/.configure_done ]; then \ |
cp ${GC}/gc.a ${OpenXM_lib}/libgc.a ; \ |
prefix=`cd ${OpenXM_HOME}; pwd` ; \ |
if test ! -d ${OpenXM_include}/gc ; then mkdir -p ${OpenXM_include}/gc ; fi ; \ |
if [ -z $TARGET_TYPE ]; then \ |
cp ${GC}/include/gc.h ${GC}/include/gc_cpp.h ${OpenXM_include}/gc ; \ |
if [ "`uname | sed -e 's/_.*$$//'`" = "CYGWIN" ]; then \ |
touch ./.install_done ; \ |
make configure-cygwin ; \ |
|
elif [ "`uname | sed -e 's/_.*$$//'`" = "MSYS" ]; then \ |
|
make configure-msys ; \ |
|
else \ |
|
make configure-others ; \ |
|
fi ; \ |
|
else \ |
|
make configure-cross ; \ |
|
fi ; \ |
fi |
fi |
|
@touch work/.configure_done |
|
|
configure-l: |
configure-cygwin: |
@if [ ! -f ./.configure_done ]; then \ |
prefix=`cd ${OpenXM_HOME}; pwd` ; \ |
if [ `uname` = "Interix" ]; then \ |
(cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix ) |
cat ./gc5_interix.diff | ( cd ${OpenXM_contrib}/gc; patch ); \ |
configure-msys: |
fi ; \ |
prefix=`cd ${OpenXM_HOME}; pwd` ; \ |
touch ./.configure_done ; \ |
(cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix --build=x86_64-w64-mingw32 ) |
|
configure-others: |
|
prefix=`cd ${OpenXM_HOME}; pwd` ; \ |
|
(cd ${WRKSRC}; ./configure --disable-threads --prefix=$$prefix ) |
|
configure-cross: |
|
prefix=`cd ${OpenXM_HOME}; pwd` ; \ |
|
(cd ${WRKSRC}; ./configure --host=${TARGET_TYPE} --disable-threads --prefix=$$prefix ) |
|
|
|
build : configure |
|
@if [ ! -f work/.build_done ]; then \ |
|
(cd ${WRKSRC}; ${MAKE}) ; \ |
fi |
fi |
|
@touch work/.build_done |
|
|
clean: |
install: build |
@if [ -f ./.make_done ]; then \ |
@if [ ! -f work/.install_done ]; then \ |
(cd ${GC} ; make clean) \ |
(cd ${WRKSRC}; ${MAKE} install) ; \ |
fi |
fi |
${RM} -f ./.*done |
@touch work/.install_done |
distclean: |
|
-@if [ -f ./.make_done ]; then \ |
clean: |
(cd ${GC} ; make distclean) \ |
-$(RM) -rf work |
fi |
|
${RM} -f ./.*done ./.use_ports |
distclean: clean |