ifndef NOSHLIB PSLB = $(LIB)libSysTools.a $(LIB)libNTools.a $(LIB)libBlitz.a slb : $(SLB)libtools.so slbpi: slb $(SLB)libPI.so # Commande de construction de shared-lib CMDSHL := ld -partage # Flag d'inclusion/fin d'inclusion de tous les points d'entree FGSHLA := -tout FGSHLN := -rien # Librairies specifiques LIBLSHL := # Librairie d'instanciation des templates TILSHL := TILSHLPI := # Commande de construction de la librairie d'instanciation des templates CMDTILSHL := echo 'Cas Non Prevu' CMDTILSHLPI := echo 'Cas Non Prevu' # Chemin des librairies Motifs / X11 (pour chemin non standard) LIBXPATH := # Construction de shared-libs sous OSF1 ifeq ($(MACHEROS),OSF1) override CMDSHL := ld -shared -update_registry $(SLB)so_locations override FGSHLA := -all override FGSHLN := -none override LIBLSHL := -lcxxstd -lcxx -lexc -lm -lc -lrt override TILSHL := $(LIB)libertcxx.a override CMDTILSHL := rm -f $(LIB)libertcxx.a ; cd $(REP); $(AR) $(ARFLAGS) $(LIB)libertcxx.a *.o override TILSHLPI := $(LIB)libertcxxpi.a override CMDTILSHLPI := rm -f $(LIB)libertcxxpi.a ; cd $(REPPI); $(AR) $(ARFLAGS) $(LIB)libertcxxpi.a *.o ifeq ($(CXX),g++) override LIBLSHL := $(LIBG) -lm -lc override TILSHL := override CMDTILSHL := echo 'No Template instanciation library' override TILSHLPI := override CMDTILSHLPI := echo 'No Template instanciation library' endif endif # Construction de shared-libs sous Linux ifeq ($(MACHEROS),Linux) override CMDSHL := ld -shared override FGSHLA := --whole-archive override FGSHLN := --no-whole-archiv override CMDSHLCXX := $(LINK.cc) -shared override FGSHLACXX := override FGSHLNCXX := override LIBLSHL := $(LIBG) -lm -ldl override TILSHL := override CMDTILSHL := echo 'No Template instanciation library' override LIBXPATH := -L/usr/X11/lib endif # Liste des .o associes a une librairie OBJSysTools = $(shell echo `cat ./SysTools/SysTools.o.list`) OBJNTools = $(shell echo `cat ./NTools/NTools.o.list`) OBJBlitz = $(shell echo `cat ./Blitz/Blitz.o.list`) OBJPI = $(shell echo `cat ./PI/PI.o.list`) OBJPIext = $(shell echo `cat ./PIext/PIext.o.list`) # Creation des librairies partagees #------------------------------------------------------------ $(SLB)libtools.so : $(PSLB) $(CMDTILSHL) cd $(OBJ); \ $(CMDSHLCXX) -o $(SLB)libtools.so \ $(FGSHLACXX) $(OBJSysTools) $(OBJNTools) $(OBJBlitz) $(TILSHL) \ $(FGSHLNCXX) -L$(SLB) $(LIBLSHL) $(SLB)libPI.so : $(LIB)libPI.a $(LIB)libPIext.a $(CMDTILSHLPI) cd $(OBJ); \ $(CMDSHLCXX) -o $(SLB)libPI.so \ $(FGSHLACXX) $(OBJPI) $(OBJPIext) $(TILSHLPI) \ $(FGSHLN) -L$(SLB) -ltools \ $(LIBXPATH) -lXm -lXt -lX11 $(LIBLSHL) else slb : endif