File: [local] / OpenXM / src / k097 / Makefile.in (download)
Revision 1.8, Tue Sep 27 01:05:55 2016 UTC (8 years ago) by takayama
Branch: MAIN
Changes since 1.7: +8 -6
lines
The libraries are linked statistically on MacOS.
|
# $OpenXM: OpenXM/src/k097/Makefile.in,v 1.8 2016/09/27 01:05:55 takayama Exp $
#
# Depends on all-kan96xx [source tree of kan96xx at ${Kan96xx} is required]
# install-gmp, install-gc, install-util
# targets
# all
# intall: install-exec
# install-exec: all install-lib
# install-for-debug
#
OpenXM_HOME=@prefix@
OpenXM_include=${OpenXM_HOME}/include
OpenXM_lib=${OpenXM_HOME}/lib
#
OpenXM_HOME_debug=../..
OpenXM_include_debug=${OpenXM_HOME_debug}/include
OpenXM_lib_debug=${OpenXM_HOME_debug}/lib
#
BDATE =19970416
LOAD_K_PATH ='"/usr/local/lib/k0/"'
LOAD_SM1_PATH2 ='"/this_directory_does_not_exists/"'
CFLAGS= @CFLAGS@ -D_BSD_SOURCE -g -DLOAD_K_PATH=${LOAD_K_PATH} -DLOAD_SM1_PATH2=${LOAD_SM1_PATH2}
#STATIC_LINK_FLAG=-static
STATIC_LINK_FLAG=
## Kan source. kan sources must be built up by hand.
Kan96xx=${OpenXM_HOME_debug}/src/kan96xx
MYYACC = bison
YACCPREFIX = -p KC
RM=rm
Kan96xx_Kan=${Kan96xx}/Kan
PATHFINDER=-lox_pathfinder
CC=@CC@
LIBS=@LIBS@ -L${OpenXM_lib}
# new
KANLIB_SHARED = ${Kan96xx}/Kan/kanlib.a -L${OpenXM_lib_debug} -lgmp -lgc
KANLIB_STATIC = ${Kan96xx}/Kan/kanlib.a -L${OpenXM_lib_debug} ${OpenXM_lib}/libgmp.a ${OpenXM_lib}/libgc.a -Wl,-no_pie
KANLIB=@KANLIB@
all : configure d0 k0 ox_k0
configure: Makefile
Makefile: Makefile.in
(rm -f .configure_done ; ./make-configure)
.c.o:
${CC} ${CFLAGS} -I${OpenXM_include} -c $<
d0 : simple.tab.o d.o dic.o dm.c ${OpenXM_lib}/libox_pathfinder.a
${CC} ${STATIC_LINK_FLAG} ${CFLAGS} -o d0 dm.c d.o dic.o simple.tab.o ${LIBS} ${PATHFINDER}
d.o : d.c simple.tab.h Stable/sm1symbol.h
${CC} -I${OpenXM_include} ${CFLAGS} -o d.o -c d.c
simple.tab.o : simple.tab.c
${CC} ${CFLAGS} -o simple.tab.o -c simple.tab.c
simple.tab.c : simple.y d.h
$(MYYACC) $(YACCPREFIX) simple.y
simple.tab.h : simple.y d.h
$(MYYACC) $(YACCPREFIX) -d simple.y
Stable/sm1symbo.h : Stable/reserved.txt
(cd Stable; make)
clean:
rm -f simple d0 k0 test0 *.o *~ simple.output asir-tmp.t asir-tmp.tt asir-tmp-out.t asir-tmp-out.tt k2 .*_done
(cd Stable; make clean)
(cd try; make clean)
## rm -f simple.tab.c simple.tab.h
test: d0
touch t.sm1
/bin/rm t.sm1
./d0 <test.ccc >t.sm1
slib: d0
touch slib.sm1
/bin/rm slib.sm1
./d0 -DebugMode <slib.k >slib.sm1
slib.sm1: slib.k
make slib
####################################################################
############# kxx main parts.
###################################################################
KXX = simple.tab.o d.o ki.o dic.o
k0: k0.o $(KXX) ${Kan96xx_Kan}/kanlib.a ${Kan96xx_Kan}/lookup.h
${CC} ${CFLAGS} -I${OpenXM_include} -I${Kan96xx_Kan} -o k0 k0.o $(KXX) ${KANLIB}
k0.o: k2.c
${CC} -c ${CFLAGS} -I${OpenXM_include} -I${Kan96xx_Kan} -o k0.o k2.c
ki.o: ki.c
${CC} -c ${CFLAGS} -I${OpenXM_include} -I${Kan96xx_Kan} -o ki.o ki.c
dic.o: dic.c d.h
${CC} -c ${CFLAGS} -o dic.o dic.c
${Kan96xx_Kan}/kanlib.a: ${Kan96xx_Kan}/sm1
(cd ${Kan96xx_Kan}; make kanlib.a)
${Kan96xx_Kan}/lookup.h :
(cd ${Kan96xx_Kan}; make lookup.h)
ox_k0: ox_k0.o k0 sm1sm.o
${CC} ${STATIC_LINK_FLAG} ${CFLAGS} -I${OpenXM_include} -I${Kan96xx_Kan} -o ox_k0 ox_k0.c sm1sm.c $(KXX) ${KANLIB}
ox_k0.o: ox_k0.c
sm1sm.o: sm1sm.c
##########
## A sample to compilation: source is test0.c, output is test0
test0: test0.c $(KXX) ${Kan96xx_Kan}/kanlib.a ${Kan96xx_Kan}/lookup.h
${CC} ${CFLAGS} -I${OpenXM_include} -I${Kan96xx_Kan} -o test0 test0.c $(KXX) ${KANLIB}
clean-for-install:
${RM} -f ${OpenXM_HOME}/bin/k0 ${OpenXM_HOME}/bin/k0.exe ${OpenXM_HOME}/bin/d0 ${OpenXM_HOME}/bin/d0.exe ${OpenXM_HOME}/bin/ox_k0 ${OpenXM_HOME}/bin/ox_k0.exe ${OpenXM_HOME}/lib/sm1/bin/ox_k0 ${OpenXM_HOME}/lib/sm1/bin/ox_k0.exe
${RM} -f ${OpenXM_HOME_debug}/bin/k0 ${OpenXM_HOME_debug}/bin/k0.exe ${OpenXM_HOME_debug}/bin/d0 ${OpenXM_HOME_debug}/bin/d0.exe ${OpenXM_HOME_debug}/bin/ox_k0 ${OpenXM_HOME_debug}/bin/ox_k0.exe ${OpenXM_HOME_debug}/lib/sm1/bin/ox_k0 ${OpenXM_HOME_debug}/lib/sm1/bin/ox_k0.exe
install: install-exec
install-exec: all clean-for-install install-lib
install -c -s k0 ${OpenXM_HOME}/bin
install -c -s d0 ${OpenXM_HOME}/bin
install -c -s ox_k0 ${OpenXM_HOME}/bin
rm -f ${OpenXM_HOME}/lib/sm1/bin/ox_k0
if [ "`uname | sed -e 's/_.*$$//'`" = "CYGWIN" ]; then \
make install-gen-link-windows ; \
elif [ "`uname | sed -e 's/_.*$$//'`" = "MSYS" ]; then \
make install-gen-link-windows ; \
else \
make install-gen-link ; \
fi
install-gen-link:
( cd ${OpenXM_HOME}/lib/sm1/bin ; ln -s ../../../../bin/ox_k0 ox_k0)
install-gen-link-windows:
( cp ox_k0 ${OpenXM_HOME}/lib/sm1/bin )
install-for-debug: clean-for-install all install-lib-for-debug
(cd ${OpenXM_HOME_debug}/bin ; ln -s ../src/k097/k0 k0)
(cd ${OpenXM_HOME_debug}/bin ; ln -s ../src/k097/d0 d0)
(cd ${OpenXM_HOME_debug}/bin ; ln -s ../src/k097/ox_k0 ox_k0)
(cd ${OpenXM_HOME_debug}/lib/sm1/bin ; ln -s ../../../../src/k097/ox_k0 ox_k0)
install-lib:
${RM} -rf ${OpenXM_lib}/k097
mkdir ${OpenXM_lib}/k097
cp -f ${Kan96xx}/Doc/var.sm1 ${OpenXM_lib}/k097
cp -rf *.sm1 *.k *.kk debug lib ${OpenXM_lib}/k097
install-lib-for-debug :
${RM} -rf ${OpenXM_lib_debug}/k097
ln -s ../src/k097 ${OpenXM_lib_debug}/k097