source: Sophya/trunk/SophyaExt/JThreadsC++/JTCSrc/Makefile@ 1021

Last change on this file since 1021 was 1021, checked in by ansari, 25 years ago

Suite-3 Adaptation multiplateforme - Reza 19/5/2000

File size: 2.5 KB
Line 
1# Makefile for building JTC JThreads/C++
2# Source code from Object Oriented Concepts www.ooc.com
3# R. Ansari LAL-IN2P3/CNRS
4
5CXX := g++
6ifdef EROSCXX
7 CXX := $(EROSCXX)
8endif
9
10SYSNOM = $(shell echo `uname`)
11SYSNOMD = $(shell echo `uname | sed 's/-//'`)
12SYSCOMPNOM = $(SYSNOM)-$(CXX)
13
14$(OBJ)%.o:%.cc
15 $(COMPILE.cc) -o $@ $<
16
17$(OBJ)%.o:%.cpp
18 $(COMPILE.cc) -o $@ $<
19
20CPPFLAGS := -I. -D$(SYSNOMD)
21# Flag pour compilo DEC-cxx (Compaq)
22ifeq ($(CXX),cxx)
23 CPPFLAGS := $(CPPFLAGS) -pthread -nopt -distinguish_nested_enums
24endif
25
26AR = ar
27ARFLAGS = -rcs
28
29LIB = Objs/
30OBJ = Objs/
31
32OBJLIST = $(OBJ)Cond.o $(OBJ)Event.o $(OBJ)License.o $(OBJ)Monitor.o $(OBJ)Mutex.o $(OBJ)TSS.o $(OBJ)TSSManager.o $(OBJ)Thread.o $(OBJ)ThreadGroup.o $(OBJ)Version.o
33
34# Fabrication de shared lib
35CMDSLB := $(CXX) -shared
36SYSLIBS := -lpthread
37ifeq ($(CXX),KCC)
38 CMDSLB := $(CXX)
39endif
40
41# ---------------- Building Library
42all: rep $(LIB)libJTC.a $(LIB)libJTC.so
43
44rep :
45 if (test ! -d Objs) then mkdir Objs ; fi
46
47$(LIB)libJTC.a : $(OBJLIST)
48 $(AR) $(ARFLAGS) $(LIB)libJTC.a $(OBJLIST)
49ifeq ($(CXX),cxx)
50 $(CXX) $? $(CPPFLAGS) $(CXXFLAGS) -o $(OBJ)xx.x -Hf
51endif
52
53$(LIB)libJTC.so : $(LIB)libJTC.a
54 $(CMDSLB) -o $(LIB)libJTC.so $(OBJLIST) $(SYSLIBS)
55
56# ---------------- Cleaning
57clean:
58 rm -rf Objs
59
60# --------------- Installing
61install:
62 if (test ! -d $(JTCBASEREP)/Include) then mkdir $(JTCBASEREP)/Include ; fi
63 if (test ! -d $(JTCBASEREP)/Include/JTC) then mkdir $(JTCBASEREP)/Include/JTC ; fi
64 cp JTC/*.h $(JTCBASEREP)/Include/JTC
65 if (test ! -d $(JTCBASEREP)/$(SYSCOMPNOM)) then mkdir $(JTCBASEREP)/$(SYSCOMPNOM) ; fi
66 if (test ! -d $(JTCBASEREP)/$(SYSCOMPNOM)/Libs) then mkdir $(JTCBASEREP)/$(SYSCOMPNOM)/Libs ; fi
67 if (test ! -d $(JTCBASEREP)/$(SYSCOMPNOM)/ShLibs) then mkdir $(JTCBASEREP)/$(SYSCOMPNOM)/ShLibs ; fi
68 cp Objs/libJTC.a $(JTCBASEREP)/$(SYSCOMPNOM)/Libs
69 cp Objs/libJTC.so $(JTCBASEREP)/$(SYSCOMPNOM)/ShLibs
70
71$(OBJ)Cond.o : Cond.cpp
72 $(CXX) $(CPPFLAGS) -c -o $@ $<
73$(OBJ)Event.o : Event.cpp
74 $(CXX) $(CPPFLAGS) -c -o $@ $<
75$(OBJ)License.o : License.cpp
76 $(CXX) $(CPPFLAGS) -c -o $@ $<
77$(OBJ)Monitor.o : Monitor.cpp
78 $(CXX) $(CPPFLAGS) -c -o $@ $<
79$(OBJ)Mutex.o : Mutex.cpp
80 $(CXX) $(CPPFLAGS) -c -o $@ $<
81$(OBJ)TSS.o : TSS.cpp
82 $(CXX) $(CPPFLAGS) -c -o $@ $<
83$(OBJ)TSSManager.o : TSSManager.cpp
84 $(CXX) $(CPPFLAGS) -c -o $@ $<
85$(OBJ)Thread.o : Thread.cpp
86 $(CXX) $(CPPFLAGS) -c -o $@ $<
87$(OBJ)ThreadGroup.o : ThreadGroup.cpp
88 $(CXX) $(CPPFLAGS) -c -o $@ $<
89$(OBJ)Version.o : Version.cpp
90 $(CXX) $(CPPFLAGS) -c -o $@ $<
91
Note: See TracBrowser for help on using the repository browser.