* device/lib/pic16/libm: added Math library sources
[fw/sdcc] / device / lib / pic16 / libm / Makefile
1 #
2 # Makefile - Makefile to build pic16 Math Library
3 #
4 # This file is part of the GNU PIC Library.
5 #
6 # January, 2004
7 # The GNU PIC Library is maintained by,
8 #       Vangelis Rokas <vrokas@otenet.gr>
9 #
10 # This program is free software; you can redistribute it and/or
11 # modify it under the terms of the GNU Library General Public License
12 # as published by the Free Software Foundation; either version 2
13 # of the License, or (at your option) any later version.
14 #
15 # This library is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 # GNU General Public License for more details.
19 #
20 # You should have received a copy of the GNU General Public License
21 # along with this program; if not, write to the Free Software
22 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
23 #
24 #
25 # $Id$
26 #
27 #
28
29 include ../Makefile.common
30
31 PRJDIR  = ../../../..
32
33 LIB     = libm18f.lib
34
35 SRCS    =       acosf  \
36                 asincosf  \
37                 asinf  \
38                 atan2f  \
39                 atanf  \
40                 ceilf  \
41                 cosf  \
42                 coshf  \
43                 cotf  \
44                 errno  \
45                 expf  \
46                 fabsf  \
47                 floorf  \
48                 frexpf  \
49                 ldexpf  \
50                 log10f  \
51                 logf  \
52                 modff  \
53                 powf  \
54                 sincosf  \
55                 sincoshf  \
56                 sinf  \
57                 sinhf  \
58                 sqrtf  \
59                 tancotf  \
60                 tanf  \
61                 tanhf
62
63 COMPILE_FLAGS   += $(MODELFLAGS) $(OPT_FLAGS)
64
65 #CFLAGS += -I$(LIBC_INC_DIR)
66
67
68 CFILES  = $(patsubst %,%.c,$(SRCS))
69 OFILES  = $(patsubst %.c,%.o,$(CFILES))
70
71 %.o: %.c
72         $(CC) $(CFLAGS) $(COMPILE_FLAGS) -c $<
73
74 all: build-library
75
76 build-library: $(LIB)
77
78 $(LIB): $(OFILES)
79         @echo Creating $(LIB) ...
80         @for object in $(OFILES) ; do \
81                 if [ ! -e $(LIB) ]; then \
82                         $(AR) -c $(LIB) $$object ; \
83                 else \
84                         $(AR) -r $(LIB) $$object ; \
85                 fi; \
86                 echo adding $$object ; \
87         done ;
88         mv -v $(LIB) ../bin
89
90
91 all-clean: clean
92
93 clean-intermediate:
94         @echo Removing intermediate files ...
95         $(RM) -f *.lst *.asm
96
97 clean: clean-intermediate
98         $(RM) -f $(LIB) *.o
99
100 dep .depend:
101         -rm .depend
102         @for source in $(CFILES); do                            \
103                 $(CC) $(MM) $(CFLAGS) $$source > .tmpdepend ;   \
104                 $(SED) s/.rel/.o/g .tmpdepend >> .depend ;      \
105                 $(RM) -f .tmpdepend;                            \
106         done
107
108 include .depend
109