OSDN Git Service

Merge pull request #7 from conao3/fix-mkdir-option
[nkf/nkf.git] / Makefile
1 CC = cc
2 CFLAGS = -g -O2 -Wall -pedantic
3 # CFLAGS = -O3
4 SHAR = shar 
5 # SHAR = shar -T
6 PERL = perl
7 RM = rm -rf
8 VERSION = 2.1.5
9 MKDIR = $(shell if pwd | xargs mkdir 2>/dev/null -p ; then echo "mkdir -p"; else echo "mkdir"; fi)
10 prefix = /usr/local
11 PYTHON2 = python
12 PYTHON3 = python
13
14 .PHONY: clean install test tar shar
15
16 nkf : nkf.o utf8tbl.o
17         $(CC) $(CFLAGS) $(LDFLAGS) -o nkf nkf.o utf8tbl.o
18
19 nkf.o : nkf.c nkf.h utf8tbl.h config.h
20         $(CC) $(CFLAGS) -c nkf.c
21
22 utf8tbl.o : utf8tbl.c utf8tbl.h config.h
23         $(CC) $(CFLAGS) -c utf8tbl.c
24
25 clean:
26         -$(RM) nkf.o nkf nkf.exe nkf.in nkf.out nkf-$(VERSION) *~ *.bad utf8tbl.o
27         cd NKF.mod; if [ -f Makefile ]; then make clean; fi
28
29 test:   nkf
30         $(PERL) test.pl
31
32 perl:
33         ( cd NKF.mod ; \
34         $(PERL) Makefile.PL  ; \
35         make ; \
36         make test )
37
38 python2:
39         ( cd NKF.python2 ; \
40         $(PYTHON2) setup.py build )
41
42 python3:
43         ( cd NKF.python3 ; \
44         $(PYTHON3) setup.py build )
45
46 install: install-main install-man install-man-ja
47
48 install-main:
49         -$(MKDIR) $(prefix)/bin
50         cp -f nkf $(prefix)/bin/
51
52 install-man:
53         -$(MKDIR) $(prefix)/man
54         -$(MKDIR) $(prefix)/man/man1
55         cp -f nkf.1 $(prefix)/man/man1/
56
57 install-man-ja:
58         -$(MKDIR) $(prefix)/man/ja
59         -$(MKDIR) $(prefix)/man/ja/man1
60         cp -f nkf.1j $(prefix)/man/ja/man1/nkf.1
61
62 shar:
63         -$(MKDIR) nkf-$(VERSION)
64         -$(MKDIR) nkf-$(VERSION)/NKF.mod
65         for file in  `cat MANIFEST`;  \
66         do  \
67             nkf -j -m0 $$file > nkf-$(VERSION)/$$file ; \
68         done 
69         echo "#!/bin/sh" >nkf-$(VERSION).shar
70         echo "mkdir nkf-$(VERSION)" >>nkf-$(VERSION).shar
71         echo "mkdir nkf-$(VERSION)/NKF.mod" >>nkf-$(VERSION).shar
72         echo "cd nkf-$(VERSION)" >>nkf-$(VERSION).shar
73         ( cd nkf-$(VERSION) ; $(SHAR)  `cat ../MANIFEST` ) >> nkf-$(VERSION).shar
74         -$(RM) nkf-$(VERSION)
75
76 tar:
77         -$(MKDIR) nkf-$(VERSION)
78         -$(MKDIR) nkf-$(VERSION)/NKF.mod
79         -$(MKDIR) nkf-$(VERSION)/NKF.python2
80         -$(MKDIR) nkf-$(VERSION)/NKF.python3
81         -$(MKDIR) nkf-$(VERSION)/man
82         for file in  `cat MANIFEST`;  \
83         do  \
84             cp $$file nkf-$(VERSION)/$$file ; \
85         done 
86         tar cf nkf-$(VERSION).tar nkf-$(VERSION)
87         -$(RM) nkf-$(VERSION)