source: Sophya/trunk/SophyaLib/Mgr/mkmfPI@ 689

Last change on this file since 689 was 498, checked in by ansari, 26 years ago

exclude_dpc cmv 22/10/99

  • Property svn:executable set to *
File size: 2.1 KB
Line 
1#!/bin/csh
2# $Id: mkmfPI,v 1.2 1999-10-22 09:23:25 ansari Exp $
3
4set makefname = 'GNUmakefile'
5
6cd ../$1
7
8if ( ! -f exclude_dpc ) touch exclude_dpc
9if ( ! $?TMPDIR ) set TMPDIR = /tmp
10sort exclude_dpc >! $TMPDIR/exclude.sort
11
12##############################################
13########### fichier de la liste des .o #######
14##############################################
15
16set liblist = $1.o.list
17rm -f $liblist
18ls *.{c,cc} | comm -3 -1 $TMPDIR/exclude.sort - | sed -e 's/\.cc/.o/' | sed -e 's/\.c/.o/' >> $liblist
19unset liblist
20
21##############################################
22########### Creation de GNUmakefile ##########
23##############################################
24
25set libf='$(LIB)lib'$1'.a'
26
27rm -f $makefname
28
29echo "MODULECXXREPNAME := PI" >> $makefname
30
31set hfcxxlibs = '-L$(LIB)'
32set i = 1
33while ($i <= $#argv)
34 set hfcxxlibs = "$hfcxxlibs -l$argv[$i]"
35 @ i++
36end
37
38
39
40# 04/98: le fichier X11/Xlib.h contient des declarations de fonctions sans type
41# Cela genere un grand nombre de warning avec cxx V6
42# On specifie donc -msg_quiet pour PI, ProgPI, ...
43echo 'MODULEDECCXXFLAGS := -msg_quiet' >> $makefname
44echo 'include ../Mgr/Makefile.h' >> $makefname
45
46echo " " >> $makefname
47
48set ccfiles = `ls *.cc | comm -3 -1 $TMPDIR/exclude.sort -`
49set objfiles = `ls *.cc | comm -3 -1 $TMPDIR/exclude.sort - | sed -e 's/\.cc/.o/g' | sed -e 's/^/$(OBJ)/'`
50
51rm -f $TMPDIR/exclude.sort
52
53echo 'all:' $libf >> $makefname
54
55echo $libf ':' $objfiles >> $makefname
56echo ' $(AR) $(ARFLAGS) $@ $? ' >> $makefname
57echo 'ifeq ($(CXX),cxx)' >> $makefname
58echo ' $(CXX) $? $(CPPFLAGS) $(CXXFLAGS)' $hfcxxlibs '-o $(OBJ)xx.x -Hf' >> $makefname
59echo 'endif ' >> $makefname
60
61echo " " >> $makefname
62
63echo 'clean:' >> $makefname
64echo ' rm -f '$objfiles >> $makefname
65echo 'ifeq ($(CXX),cxx)' >> $makefname
66echo ' cd $(REPM); rm -f *.o' >> $makefname
67echo 'endif ' >> $makefname
68
69echo " " >> $makefname
70
71set inc = $DPCDEVREP/Include
72set incxx = $inc/CxxInc
73
74foreach f ( $ccfiles )
75 gcc -MM -I$inc -I$incxx $f \
76 | sed -e 's/.*\.o/\$(OBJ)&/' \
77 | sed -e 's?'$incxx/'?$(CXI)?g' \
78 | sed -e 's?'$inc/'?$(INC)?g' >> $makefname
79end
80
81
82
83
84
85
Note: See TracBrowser for help on using the repository browser.