source: Sophya/trunk/Poubelle/DPC:FitsIOServer/Mgr/Makefile.slb@ 1036

Last change on this file since 1036 was 658, checked in by ansari, 26 years ago

no message

File size: 4.6 KB
Line 
1
2ifndef NOSHLIB
3
4PSLB = $(LIB)libSysTools.a $(LIB)libNTools.a $(LIB)libBlitz.a
5slb : $(SLB)libtools.so
6slbpi: slb $(SLB)libPI.so
7
8# Chemin des librairies Motifs / X11 (pour chemin non standard)
9LIBXPATH :=
10# Commande de construction de shared-lib
11CMDSHL := ld -partage
12# Flag d'inclusion/fin d'inclusion de tous les points d'entree
13FGSHLA := -tout
14FGSHLN := -rien
15# Librairies specifiques
16LIBLSHL :=
17# Librairie d'instanciation des templates
18TILSHL :=
19TILSHLPI :=
20# Commande de construction de la librairie d'instanciation des templates
21CMDTILSHL := echo 'Cas Non Prevu'
22CMDTILSHLPI := echo 'Cas Non Prevu'
23# Utilisation du compilo C++ comme driver pour fabrication des shared-libs
24CMDSHLCXX := $(LINK.cc)
25FGSHLACXX :=
26FGSHLNCXX :=
27# S'il faut utiliser $(CMDSHLCXX) pour fabrication des shared-libs
28USECXX4SO := N
29# On utilise le compilo g++ pour la fabrication des shared libs
30ifeq ($(EROSCXX), g++)
31 override USECXX4SO := Y
32 override CMDSHLCXX := $(LINK.cc) -shared
33endif
34
35# On utilise le compilo KCC pour la fabrication des shared libs
36ifeq ($(EROSCXX), KCC)
37 override USECXX4SO := Y
38 override CMDSHLCXX := $(LINK.cc)
39endif
40
41# On utilise le compilo aCC (HP) pour la fabrication des shared libs
42ifeq ($(EROSCXX), aCC)
43 override USECXX4SO := Y
44 override CMDSHLCXX := $(LINK.cc) -b
45endif
46
47# Construction de shared-libs sous OSF1
48ifeq ($(MACHEROS),OSF1)
49 override CMDSHL := ld -shared -update_registry $(SLB)so_locations
50 override FGSHLA := -all
51 override FGSHLN := -none
52 override LIBLSHL := -lcxxstd -lcxx -lexc -lm -lc -lrt
53 override TILSHL := $(LIB)libertcxx.a
54 override CMDTILSHL := rm -f $(LIB)libertcxx.a ; cd $(REP); $(AR) $(ARFLAGS) $(LIB)libertcxx.a *.o
55 override TILSHLPI := $(LIB)libertcxxpi.a
56 override CMDTILSHLPI := rm -f $(LIB)libertcxxpi.a ; cd $(REPPI); $(AR) $(ARFLAGS) $(LIB)libertcxxpi.a *.o
57 ifeq ($(CXX),g++)
58 override LIBLSHL := $(LIBG) -lm -lc
59 override TILSHL :=
60 override CMDTILSHL := echo 'No Template instanciation library'
61 override TILSHLPI :=
62 override CMDTILSHLPI := echo 'No Template instanciation library'
63 override USECXX4SO := N
64 endif
65# Attention - Dangereux de mettre -expect_unresolved , enleve Reza 17/11/99
66 override CMDSHLCXX := $(LINK.cc) -shared
67 override FGSHLACXX :=
68 override FGSHLNCXX :=
69endif
70
71# Construction de shared-libs sous Linux
72ifeq ($(MACHEROS),Linux)
73 override CMDSHL := ld -shared
74 override FGSHLA := --whole-archive
75 override FGSHLN := --no-whole-archiv
76 override CMDSHLCXX := $(LINK.cc) -shared
77 ifeq ($(EROSCXX), KCC)
78 override CMDSHLCXX := $(LINK.cc)
79 endif
80 override FGSHLACXX :=
81 override FGSHLNCXX :=
82 override LIBLSHL := $(LIBG) -lm -ldl
83 override TILSHL :=
84 override CMDTILSHL := echo 'No Template instanciation library'
85 override LIBXPATH := -L/usr/X11/lib -L/usr/X11R6/lib
86endif
87
88# Construction de shared-libs sous Sun-OS
89ifeq ($(MACHEROS),SunOS)
90 override CMDSHL := ld -G
91 override FGSHLA := -z allextract
92 override FGSHLN := -z weakextract
93 override LIBLSHL := $(LIBG) -lm -lc
94 override TILSHL :=
95 override CMDTILSHL := echo 'No Template instanciation library'
96 override LIBXPATH := -L/usr/X11/lib
97 override USECXX4SO := Y
98endif
99
100# Construction de shared-libs sous SGI
101ifeq ($(MACHEROS), IRIX64)
102 override CMDSHL := ld -shared
103 override FGSHLA := -all
104 override FGSHLN := -notall
105 override LIBLSHL := $(LIBG) -lm -lc
106 override TILSHL :=
107 override CMDTILSHL := echo 'No Template instanciation library'
108 ifeq ($(EROSCXX), CC)
109 override CMDSHLCXX := CC -shared
110 override LIBLSHL := -lm -lc
111 endif
112 override LIBXPATH := -L/usr/X11/lib
113 override USECXX4SO := Y
114endif
115
116# Liste des .o associes a une librairie
117OBJSysTools = $(shell echo `cat ./SysTools/SysTools.o.list`)
118OBJNTools = $(shell echo `cat ./NTools/NTools.o.list`)
119OBJBlitz = $(shell echo `cat ./Blitz/Blitz.o.list`)
120OBJSamba = $(shell echo `cat ./Samba/Samba.o.list`)
121OBJFitsIOServer = $(shell echo `cat ./FitsIOServer/FitsIOServer.o.list`)
122OBJPI = $(shell echo `cat ./PI/PI.o.list`)
123OBJPIext = $(shell echo `cat ./PIext/PIext.o.list`)
124
125# Creation des librairies partagees
126
127
128#------------------------------------------------------------
129$(SLB)libtools.so : $(PSLB)
130 $(CMDTILSHL)
131 cd $(OBJ); \
132 $(CMDSHLCXX) -o $(SLB)libtools.so \
133 $(FGSHLACXX) $(OBJSysTools) $(OBJNTools) $(OBJSamba) $(OBJFitsIOServer) $(OBJBlitz) $(TILSHL) \
134 $(FGSHLNCXX) -L$(SLB) $(LIBLSHL) $(FITSIOLIB)
135
136
137$(SLB)libPI.so : $(LIB)libPI.a $(LIB)libPIext.a
138 $(CMDTILSHLPI)
139 cd $(OBJ); \
140 $(CMDSHLCXX) -o $(SLB)libPI.so \
141 $(FGSHLACXX) $(OBJPI) $(OBJPIext) $(TILSHLPI) \
142 $(FGSHLN) -L$(SLB) -ltools \
143 $(LIBXPATH) -lXm -lXt -lX11 $(LIBLSHL)
144
145else
146slb :
147endif
148
Note: See TracBrowser for help on using the repository browser.