source: Sophya/trunk/ArchTOIPipe/smkmflib@ 2454

Last change on this file since 2454 was 1994, checked in by ansari, 23 years ago

1/ Ajout classe CGT (Compagnie Generale des Tuyaux) - Assistance a l'assemblage
des TOIProcessors .
2/ Corrections mineures ds FitsTOIReader, correction de smkmflib

Reza 13/5/2002

  • Property svn:executable set to *
File size: 2.9 KB
Line 
1#!/bin/csh
2
3# ################## ArchTOIPipe-With-Sophya ####################
4# ##### LAL (Orsay) / IN2P3-CNRS DAPNIA/SPP (Saclay) / CEA #####
5# Script for ArchTOIPipe library module makefile generation
6# Usage: ./mkmflib lib_module_name
7# ###############################################################
8
9cd $1
10
11if ( ! -f exclude ) touch exclude
12if ( ! -f flags_compil ) touch flags_compil
13if ( ! -f extlib_list ) touch extlib_list
14if ( ! -f extslb_list ) touch extslb_list
15
16if ( ! $?TMPDIR ) set TMPDIR = /tmp
17sort exclude >! $TMPDIR/exclude.sort
18
19##############################################
20########### fichier de la liste des .o #######
21##############################################
22
23set liblist = $1.o.list
24rm -f $liblist
25touch $liblist
26ls -1 *.{c,cc} | comm -3 -1 $TMPDIR/exclude.sort - | sed -e 's/\.cc/.o/' | sed -e 's/\.c/.o/' >> $liblist
27unset liblist
28
29##############################################
30########### Creation de GNUmakefile ##########
31##############################################
32
33set libf='$(MYLIB)lib'$1'.a'
34
35#set hfcxxlibs = '-L$(LIB)'
36#set i = 1
37#while ($i <= $#argv)
38# set hfcxxlibs = "$hfcxxlibs -l$argv[$i]"
39# @ i++
40#end
41
42#set extlib_list = `cat extlib_list`
43#set hfcxxlibs = ($hfcxxlibs '-L$(EXTLIBPATH)' $extlib_list)
44
45rm -f GNUmakefile
46touch GNUmakefile
47
48cat flags_compil >> GNUmakefile
49echo 'include ../SMakefile.h' >> GNUmakefile
50
51echo " " >> GNUmakefile
52echo 'all:' $libf >> GNUmakefile
53
54echo 'clean:' >> GNUmakefile
55set toto='rm -f'
56foreach f (*.cc *.c)
57 set toto= ( $toto '$(OBJ)'$f:r.o )
58end
59echo ' '$toto >> GNUmakefile
60echo ' rm -f '$libf >> GNUmakefile
61
62echo $libf ':' \
63 `ls -1 *.{c,cc} | comm -3 -1 $TMPDIR/exclude.sort - | sed -e 's/\.cc/.o/' | sed -e 's/\.c/.o/' | sed -e 's/^/$(OBJ)/'` >> GNUmakefile
64echo ' $(ARCXX) $(ARCXXFLAGS) $@ $($(ARARGS))' >> GNUmakefile
65# Pour faire compiler les instantiations automatique de cxx (DEC)
66echo 'ifeq ($(CXX),cxx)' >> GNUmakefile
67#echo ' $(CXX) $? $(CPPFLAGS) $(CXXFLAGS)' $hfcxxlibs '-o $(OBJ)xx.x -Hf' >> GNUmakefile
68echo ' $(CXX) $? $(CPPFLAGS) $(CXXFLAGS) -o $(OBJ)xx.x -Hf' >> GNUmakefile
69echo 'endif ' >> GNUmakefile
70
71rm -f $TMPDIR/exclude.sort
72
73echo " " >> GNUmakefile
74
75set inc = $DPCBASEREP/Include
76# set incxx = $inc/CxxInc
77set incext = $EXTLIBDIR/Include
78set incfitsio = $EXTLIBDIR/Include/FitsIO
79set ainc = $ARCHPDEVREP/Include
80set nomsys = `uname`
81
82foreach f ( *.cc )
83 grep -q '^'$f'$' exclude && continue
84 gcc -MM -D$nomsys -I$ainc -I$inc -I$incext -I$incfitsio $f \
85# | grep -v -e $inc -e $incfitsio -e $incext \
86 | sed -e 's/.*\.o/\$(OBJ)&/' >> GNUmakefile
87# | sed -e 's?'$inc/'?$(AINC)?g' \
88# | sed -e 's?'$incext/'?$(EXTINCPATH)?g' >> GNUmakefile
89end
90
91foreach f ( *.c )
92 grep -q '^'$f'$' exclude && continue
93 gcc -MM -D$nomsys -I$ainc -I$inc -I$incext -I$incfitsio $f \
94 | sed -e 's/.*\.o/\$(OBJ)&/' >> GNUmakefile
95# | sed -e 's?'$ainc/'?$(AINC)?g' >> GNUmakefile
96# | sed -e 's?'$incext/'?$(EXTINCPATH)?g' >> GNUmakefile
97end
98
99
100
101
Note: See TracBrowser for help on using the repository browser.