-
Notifications
You must be signed in to change notification settings - Fork 5
/
Makefile
151 lines (116 loc) · 2.74 KB
/
Makefile
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
############################
# Part 1: LOCAL DEFINITIONS
TOP = .
#############################
# Part 2: COMMON MAKE PARAMETERS
include $(TOP)/make.proj
# Standard bourne shell doesn't update PWD on directory change.
# SHELL = /bin/ksh
#
#ifneq ($(PLATFORM),_SUNOS)
#ifneq ($(PLATFORM),_NETBSD)
# SHELL = /usr/bin/ksh
#else
# SHELL = /bin/ksh
#endif
#endif
#############################
# Part 3: LOCAL SOURCES
#DIRS = ./config\
$(TOP_DIR)/module/stdClib/src\
./src\
./new_main \
./test \
./module
DIRS = ./config\
./src\
./test \
./module\
./main\
./new_main
##############################
# Part 4: LOCAL TARGETS
##################
TREE = include \
include/sys \
include/module\
lib
install::
@for i in $(TREE) ;\
do \
if [ ! -d $$i ] ; then \
echo $(MKDIR) $(MKDIRFLAGS) $$i ;\
$(MKDIR) $(MKDIRFLAGS) $$i ;\
fi \
done
###################
#
install:: headers
include $(CONFIG_DIR)/NormalNodeTargets
#########################
# Make binary distribution
#########################
# Make binary distribution
# EiC version number
EiC_NUM = 4.4
BINTREE = EiC\
EiC/include \
EiC/include/sys \
EiC/doc\
EiC/module\
bintree:
@for i in $(BINTREE) ;\
do \
if [ ! -d $$i ] ; then \
echo $(MKDIR) $(MKDIRFLAGS) $$i ;\
$(MKDIR) $(MKDIRFLAGS) $$i ;\
fi \
done
INCFILES = ./include/*.h
INCSYSFILES = ./include/sys/*.h
DOCFILES = ./eic.man
MODULES = ./module/MathStats\
./module/gnuplot\
./module/tools\
./module/examples\
./module/cgihtml\
./module/xv\
modules:
@for i in $(MODULES) ;\
do \
echo cp -r $$i/* EiC/$$i ;\
mkdir EiC/$$i;\
cp -r $$i/* EiC/$$i ;\
done
binary: bintree modules install
cp ./batch2.sh EiC/batch2.sh
cp ./Makefile.Bin EiC/Makefile
cp $(HOME)/bin/eic EiC/eicc
strip EiC/eicc
cp $(INCFILES) EiC/include
cp $(INCSYSFILES) EiC/include/sys
cp $(DOCFILES) EiC/doc
cp README.BIN EiC/README
cp LICENCE EiC/LICENCE
cp Distribution.txt EiC/Distribution.txt
cp make.rules EiC/
rm -f `find ./EiC/module -name "Makefile"`
echo "PLATFORM = $(PLATFORM)" > EiC/make.proj
tar cvf EiC$(PLATFORM)_$(EiC_NUM).tar EiC
gzip EiC$(PLATFORM)_$(EiC_NUM).tar
mv EiC$(PLATFORM)_$(EiC_NUM).tar.gz EiC$(PLATFORM)_$(EiC_NUM).tgz
rm -fr EiC
#############################
# Part 5: COMMON RULES and
# and default Targets
include $(CONFIG_DIR)/make.rules
#############################
# Part 6: DEPENDENCIES
clean::
find . -name "*~" | xargs $(RM)
find . -name EiChist.lst | xargs $(RM)
find . -name a.out | xargs $(RM)
find . -name "*.[ao]" | xargs $(RM)
$(RM) config/genstdio
clobber::clean
$(RM) make.params make.proj make.rules NormalNodeTargets