tinycobol/test.code/00_FernandoWuthstrack/tcl/Makefile

79 lines
1.5 KiB
Makefile

#
# Makefile
prefix=/usr/local
exec_prefix=${prefix}
CCX=gcc
INCLUDES=-I/usr/include -I../lib -I../ -I/usr/local/ActiveTcl/include/
CCXFLAGS=${INCLUDES} -fPIC
LIBS=-L/usr/local/lib -L/usr/lib -lm -ltcl8.4 -ltk8.4 -ldl -L/usr/X11R6/lib/X11
RANLIB=ranlib
AR=ar
INSTALL=/usr/bin/install -c
INSTALL_DATA=${INSTALL} -m 644
RM = rm -f
LNK = ln -sf
lib_dir=${prefix}/lib
lib_version=0.0.1
lib_name=tctcl
STATIC_LIB=lib${lib_name}.a
SHARED_LIB=lib${lib_name}.so.${lib_version}
SRC = tctcl.c
OBJS = $(SRC:.c=.o)
OBJD = $(SRC:.c=.lo)
#
# Rules for compiling .c .s sources
#
.SUFFIX: .c .o .lo
.c.o:
$(CCX) $(CCXFLAGS) -c $<
%.lo: %.c
$(CCX) $(CCXFLAGS) -c $< -o $@
#all: static-libs shared-libs
all: shared-libs
devel: static-libs
static-libs: ${STATIC_LIB}
shared-libs: ${SHARED_LIB}
# Rules for building the static library
#
${STATIC_LIB}: ${OBJS}
${AR} cr ${STATIC_LIB} ${OBJS}
${RANLIB} ${STATIC_LIB}
# Rules for building the shared library
#
${SHARED_LIB}: ${OBJD}
${CCX} -shared -Wl,-soname,lib${lib_name}.so.0 -o ${SHARED_LIB} $(OBJD) ${LIBS}
${LNK} $(SHARED_LIB) lib$(lib_name).so.0
${LNK} $(SHARED_LIB) lib$(lib_name).so
clean:
@${RM} ${OBJS} ${OBJD} ${STATIC_LIB} ${SHARED_LIB} lib$(lib_name).so* \
*.a core *.bak *.o *.lo
install: install-shared
install-static: ${STATIC_LIB}
${INSTALL_DATA} ${STATIC_LIB} ${lib_dir}/${STATIC_LIB}
install-shared: ${SHARED_LIB}
${INSTALL_DATA} ${SHARED_LIB} ${lib_dir}/${SHARED_LIB}
${LNK} ${lib_dir}/$(SHARED_LIB) ${lib_dir}/lib$(lib_name).so
${LNK} ${lib_dir}/$(SHARED_LIB) ${lib_dir}/lib$(lib_name).so.0