summaryrefslogtreecommitdiff
path: root/lang/rexx-imc/files/Makefile
blob: 74b069be76b1d7c0e03634df157dd94c0ca0aa36 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# Makefile for REXX/imc
#
# Based upon the original by the author
# Heavily hacked by jfitz@FreeBSD.ORG
#

CC=		gcc
PIC=		-fPIC
CCFLAGS=	-DHAS_TTYCOM -D_REQUIRED -c ${PIC}

OPTFLAGS=	-O2

# Release Date Variables
RXDAY=		1
RXMONTH=	8
RXYEAR=		96
DATE=		-DDAY=${RXDAY} -DMONTH=${RXMONTH} -DYEAR=${RXYEAR}

# Shared Library Version
VER=		1.6.4

SHAREDLIB=	librexx.so.${VER}
STATICLIB=	librexx.a
.ifdef(BUILD_STATIC)
REXXLIB=${STATICLIB}
.else
REXXLIB=${SHAREDLIB}
.endif
MATH=		rxmathfn.rxfn
REXXIMC=	${PREFIX}/bin
FILEDEFS=	-DREXXIMC=\"${REXXIMC}\"
LIBFILES=	rexx.o rxfn.o calc.o util.o shell.o interface.o globals.o
HFILES=		const.h globals.h functions.h rexxsaa.h

all:		rexx rxque rxstack ${MATH}

interface.o:	interface.c ${HFILES}
		${CC} ${OPTFLAGS} ${CCFLAGS} -c ${DATE} ${FILEDEFS} -o $@ interface.c

${SHAREDLIB}:	${LIBFILES}
		${LD} -Bshareable -o ${SHAREDLIB} ${LIBFILES}

${STATICLIB}:	${LIBFILES}
		ar rc ${STATICLIB} ${LIBFILES}
		${RANLIB} ${STATICLIB}

rexx:		main.o ${REXXLIB}
		${CC} ${OPTFLAGS} -o rexx main.o -L. -lrexx

rxque:		rxque.o ${STATICLIB}
		${CC} ${OPTFLAGS} -o rxque rxque.o

rxstack:	rxstack.o ${STATICLIB}
		${CC} ${OPTFLAGS} -o rxstack rxstack.o

rxmathfn.rxfn:	rxmathfn.o ${HFILES}
		${LD} -Bshareable -o rxmathfn.rxfn rxmathfn.o -lm

interface.o:	interface.c ${HFILES}
		${CC} ${OPTFLAGS} ${CCFLAGS} -o interface.o ${FILEDEFS} interface.c

.c.o:
		${CC} ${OPTFLAGS} ${CCFLAGS} -o $@ $<