Fool-proofing Makefiles
[openssl.git] / crypto / idea / Makefile
1 #
2 # SSLeay/crypto/idea/Makefile
3 #
4
5 DIR=    idea
6 TOP=    ../..
7 CC=     cc
8 INCLUDES=
9 CFLAG=-g
10 MAKEDEPPROG=    makedepend
11 MAKEDEPEND=     $(TOP)/util/domd $(TOP) -MD $(MAKEDEPPROG)
12 MAKEFILE=       Makefile
13 AR=             ar r
14
15 CFLAGS= $(INCLUDES) $(CFLAG)
16
17 GENERAL=Makefile
18 TEST=ideatest.c
19 APPS=
20
21 LIB=$(TOP)/libcrypto.a
22 LIBSRC=i_cbc.c i_cfb64.c i_ofb64.c i_ecb.c i_skey.c
23 LIBOBJ=i_cbc.o i_cfb64.o i_ofb64.o i_ecb.o i_skey.o
24
25 SRC= $(LIBSRC)
26
27 EXHEADER= idea.h
28 HEADER= idea_lcl.h $(EXHEADER)
29
30 ALL=    $(GENERAL) $(SRC) $(HEADER)
31
32 top:
33         (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
34
35 all:    lib
36
37 lib:    $(LIBOBJ)
38         $(AR) $(LIB) $(LIBOBJ)
39         $(RANLIB) $(LIB) || echo Never mind.
40         @touch lib
41
42 files:
43         $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
44
45 links:
46         @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
47         @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
48         @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
49
50 install:
51         @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
52         @headerlist="$(EXHEADER)"; for i in $$headerlist ; \
53         do  \
54         (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
55         chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
56         done;
57
58 tags:
59         ctags $(SRC)
60
61 tests:
62
63 lint:
64         lint -DLINT $(INCLUDES) $(SRC)>fluff
65
66 depend:
67         $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
68
69 dclean:
70         $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
71         mv -f Makefile.new $(MAKEFILE)
72
73 clean:
74         rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
75
76 # DO NOT DELETE THIS LINE -- make depend depends on it.
77
78 i_cbc.o: ../../include/openssl/idea.h ../../include/openssl/opensslconf.h
79 i_cbc.o: i_cbc.c idea_lcl.h
80 i_cfb64.o: ../../include/openssl/idea.h ../../include/openssl/opensslconf.h
81 i_cfb64.o: i_cfb64.c idea_lcl.h
82 i_ecb.o: ../../include/openssl/idea.h ../../include/openssl/opensslconf.h
83 i_ecb.o: ../../include/openssl/opensslv.h i_ecb.c idea_lcl.h
84 i_ofb64.o: ../../include/openssl/idea.h ../../include/openssl/opensslconf.h
85 i_ofb64.o: i_ofb64.c idea_lcl.h
86 i_skey.o: ../../include/openssl/idea.h ../../include/openssl/opensslconf.h
87 i_skey.o: i_skey.c idea_lcl.h