forked from OpenSees/OpenSees
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
163 lines (140 loc) · 3.23 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
150
151
152
153
154
155
156
157
############################################################################
#
# Program: OpenSees
#
# Purpose: A Top-level Makefile to create the libraries needed
# to use the OpenSees framework.
#
# Written: fmk
# Created: 10/99
#
# Send bug reports, comments or suggestions to fmckenna@ce.berkeley.edu
#
############################################################################
include Makefile.def
############################################################################
#
# First, modify the definitions in Makefile.def to match
# your library archiver, compiler, and the options to be used.
#
# Sample Makefile.def's can be found in the directory MAKES
#
# Then to create or add to the libraries needed, enter make after having
# making the modifications to this file.
#
# The name of the libraries created and their placement are defined
# in the file called Makefile.def.
#
# To remove the object files after the libraries and testing executables
# are created, enter
# make clean
# To remove the object files and the libraries specified in WIPE_LIBS, enter
# make wipe
# To just make the libs, enter
# make lib
# To just build the interpreter type
# make OpenSees
############################################################################
all:
ifdef MKDIR
$(MKDIR) $(HOME)/bin
$(MKDIR) $(HOME)/lib
endif
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(MAKE); \
$(CD) ..; \
done );
@$(ECHO) LIBRARIES BUILT ... NOW LINKING OpenSees PROGRAM;
@$(CD) $(FE)/tcl; $(MAKE) tcl;
@$(CD) $(FE)/modelbuilder/tcl; $(MAKE) tcl;
OpenSees: tcl
tcl:
ifdef MKDIR
$(MKDIR) $(HOME)/bin
$(MKDIR) $(HOME)/lib
endif
@$(ECHO) Building OpenSees Program ..;
@$(CD) $(FE)/tcl; $(MAKE) tcl;
@$(CD) $(FE)/modelbuilder/tcl; $(MAKE) tcl;
OpenSeesTk: tk
tk:
@$(ECHO) Building OpenSees Program ..;
@$(CD) $(FE)/tcl; $(MAKE) tk;
@$(CD) $(FE)/modelbuilder/tcl; $(MAKE) tk;
OpenSeesPy: python
python:
ifdef MKDIR
$(MKDIR) $(HOME)/bin
$(MKDIR) $(HOME)/lib
endif
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(MAKE); \
$(CD) ..; \
done );
@$(ECHO) LIBRARIES BUILT ... NOW LINKING OpenSeesPy Module;
@$(CD) $(FE)/interpreter; $(MAKE) pythonmodule;
pythonmain:
ifdef MKDIR
$(MKDIR) $(HOME)/bin
$(MKDIR) $(HOME)/lib
endif
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(MAKE); \
$(CD) ..; \
done );
@$(ECHO) LIBRARIES BUILT ... NOW LINKING OpenSeesPy Module;
@$(CD) $(FE)/interpreter; $(MAKE) python;
libs:
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(MAKE); \
$(CD) ..; \
done );
clean:
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(ECHO) Making lib in $$f; \
$(MAKE) clean; \
$(CD) ..; \
done );
@$(RM) $(RMFLAGS) *.o *~ core
@$(CD) $(FE)/../EXAMPLES; $(MAKE) wipe;
wipe:
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(ECHO) Making lib in $$f; \
$(MAKE) wipe; \
$(MAKE) clean; \
$(CD) ..; \
done );
@$(RM) $(RMFLAGS) $(WIPE_LIBS) *.o *~ core
@$(CD) $(FE)/../EXAMPLES; $(MAKE) wipe;
wipeall:
@( \
for f in $(DIRS); \
do \
$(CD) $$f; \
$(ECHO) Making lib in $$f; \
$(MAKE) wipe; \
$(CD) ..; \
done );
@$(RM) $(RMFLAGS) $(WIPE_LIBS) *.o *~ core
@$(CD) $(FE)/../EXAMPLES; $(MAKE) wipe
@$(RM) $(RMFLAGS) $(OpenSees_PROGRAM);
help:
@$(ECHO) "usage: make ?"