URI:
       Makefile - sbase - suckless unix tools
  HTML git clone git://git.suckless.org/sbase
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
       Makefile (4138B)
       ---
            1 .POSIX:
            2 include config.mk
            3 
            4 .SUFFIXES:
            5 .SUFFIXES: .y .o .c
            6 
            7 CPPFLAGS =\
            8         -DPREFIX=\"$(PREFIX)\" \
            9         -D_DEFAULT_SOURCE \
           10         -D_NETBSD_SOURCE \
           11         -D_BSD_SOURCE \
           12         -D_XOPEN_SOURCE=700 \
           13         -D_FILE_OFFSET_BITS=64
           14 
           15 HDR =\
           16         arg.h\
           17         compat.h\
           18         crypt.h\
           19         fs.h\
           20         md5.h\
           21         queue.h\
           22         sha1.h\
           23         sha224.h\
           24         sha256.h\
           25         sha384.h\
           26         sha512.h\
           27         sha512-224.h\
           28         sha512-256.h\
           29         text.h\
           30         utf.h\
           31         util.h
           32 
           33 LIBUTFOBJ =\
           34         libutf/fgetrune.o\
           35         libutf/fputrune.o\
           36         libutf/isalnumrune.o\
           37         libutf/isalpharune.o\
           38         libutf/isblankrune.o\
           39         libutf/iscntrlrune.o\
           40         libutf/isdigitrune.o\
           41         libutf/isgraphrune.o\
           42         libutf/isprintrune.o\
           43         libutf/ispunctrune.o\
           44         libutf/isspacerune.o\
           45         libutf/istitlerune.o\
           46         libutf/isxdigitrune.o\
           47         libutf/lowerrune.o\
           48         libutf/rune.o\
           49         libutf/runetype.o\
           50         libutf/upperrune.o\
           51         libutf/utf.o\
           52         libutf/utftorunestr.o
           53 
           54 LIBUTILOBJ =\
           55         libutil/concat.o\
           56         libutil/cp.o\
           57         libutil/crypt.o\
           58         libutil/confirm.o\
           59         libutil/ealloc.o\
           60         libutil/enmasse.o\
           61         libutil/eprintf.o\
           62         libutil/eregcomp.o\
           63         libutil/estrtod.o\
           64         libutil/fnck.o\
           65         libutil/fshut.o\
           66         libutil/getlines.o\
           67         libutil/human.o\
           68         libutil/linecmp.o\
           69         libutil/md5.o\
           70         libutil/memmem.o\
           71         libutil/mkdirp.o\
           72         libutil/mode.o\
           73         libutil/parseoffset.o\
           74         libutil/putword.o\
           75         libutil/reallocarray.o\
           76         libutil/recurse.o\
           77         libutil/rm.o\
           78         libutil/sha1.o\
           79         libutil/sha224.o\
           80         libutil/sha256.o\
           81         libutil/sha384.o\
           82         libutil/sha512.o\
           83         libutil/sha512-224.o\
           84         libutil/sha512-256.o\
           85         libutil/strcasestr.o\
           86         libutil/strlcat.o\
           87         libutil/strlcpy.o\
           88         libutil/strsep.o\
           89         libutil/strnsubst.o\
           90         libutil/strtonum.o\
           91         libutil/unescape.o\
           92         libutil/writeall.o
           93 
           94 LIB = libutf.a libutil.a
           95 
           96 BIN =\
           97         basename\
           98         bc\
           99         cal\
          100         cat\
          101         chgrp\
          102         chmod\
          103         chown\
          104         chroot\
          105         cksum\
          106         cmp\
          107         cols\
          108         comm\
          109         cp\
          110         cron\
          111         cut\
          112         date\
          113         dc\
          114         dd\
          115         dirname\
          116         du\
          117         echo\
          118         ed\
          119         env\
          120         expand\
          121         expr\
          122         false\
          123         find\
          124         flock\
          125         fold\
          126         getconf\
          127         grep\
          128         head\
          129         hostname\
          130         join\
          131         kill\
          132         link\
          133         ln\
          134         logger\
          135         logname\
          136         ls\
          137         make/make\
          138         md5sum\
          139         mkdir\
          140         mkfifo\
          141         mknod\
          142         mktemp\
          143         mv\
          144         nice\
          145         nl\
          146         nohup\
          147         od\
          148         paste\
          149         pathchk\
          150         printenv\
          151         printf\
          152         pwd\
          153         readlink\
          154         renice\
          155         rev\
          156         rm\
          157         rmdir\
          158         sed\
          159         seq\
          160         setsid\
          161         sha1sum\
          162         sha224sum\
          163         sha256sum\
          164         sha384sum\
          165         sha512sum\
          166         sha512-224sum\
          167         sha512-256sum\
          168         sleep\
          169         sort\
          170         split\
          171         sponge\
          172         strings\
          173         sync\
          174         tail\
          175         tar\
          176         tee\
          177         test\
          178         tftp\
          179         time\
          180         touch\
          181         tr\
          182         true\
          183         tsort\
          184         tty\
          185         uname\
          186         unexpand\
          187         uniq\
          188         unlink\
          189         uudecode\
          190         uuencode\
          191         wc\
          192         which\
          193         whoami\
          194         xargs\
          195         xinstall\
          196         yes
          197 
          198 MAKEOBJ =\
          199         make/defaults.o\
          200         make/main.o\
          201         make/parser.o\
          202         make/posix.o\
          203         make/rules.o\
          204 
          205 OBJ = $(LIBUTFOBJ) $(LIBUTILOBJ) $(MAKEOBJ)
          206 
          207 all: scripts/make
          208         +@$(SMAKE) $(BIN)
          209 
          210 scripts/make:
          211         $(CC) -o $@ make/*.c
          212 
          213 $(BIN): $(LIB)
          214 
          215 $(OBJ) $(BIN): $(HDR)
          216 
          217 .o:
          218         $(CC) $(LDFLAGS) -o $@ $< $(LIB)
          219 
          220 .c.o:
          221         $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $<
          222 
          223 .c:
          224         $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LIB)
          225 
          226 bc: bc.c
          227         $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ bc.c $(LIB)
          228 
          229 $(MAKEOBJ): make/make.h
          230 
          231 make/make: $(MAKEOBJ)
          232         $(CC) $(LDFLAGS) -o $@ $(MAKEOBJ) $(LIB)
          233 
          234 libutf.a: $(LIBUTFOBJ)
          235         $(AR) $(ARFLAGS) $@ $?
          236         $(RANLIB) $@
          237 
          238 libutil.a: $(LIBUTILOBJ)
          239         $(AR) $(ARFLAGS) $@ $?
          240         $(RANLIB) $@
          241 
          242 getconf: getconf.h
          243 
          244 getconf.h:
          245         scripts/getconf.sh > $@
          246 
          247 proto: $(BIN)
          248         scripts/mkproto $(DESTDIR)$(PREFIX) $(DESTDIR)$(MANPREFIX) proto
          249 
          250 install uninstall: proto
          251         scripts/$@ proto
          252 
          253 sbase-box-install: sbase-box proto
          254         scripts/install proto
          255         $(DESTDIR)$(PREFIX)/bin/sbase-box -i $(DESTDIR)$(PREFIX)/bin/
          256 
          257 sbase-box-uninstall: sbase-box proto
          258         $(DESTDIR)$(PREFIX)/bin/sbase-box -d $(DESTDIR)$(PREFIX)/bin/
          259         scripts/uninstall proto
          260 
          261 tests: all
          262         @cd $@ && $(MAKE)
          263 
          264 dist: clean
          265         mkdir -p sbase
          266         cp LICENSE Makefile README TODO config.mk *.c *.1 *.h  sbase
          267         cp -R libutf libutil make scripts tests sbase
          268         mv sbase sbase-$(VERSION)
          269         tar -cf sbase-$(VERSION).tar sbase-$(VERSION)
          270         gzip sbase-$(VERSION).tar
          271         rm -rf sbase-$(VERSION)
          272 
          273 sbase-box: $(BIN)
          274         scripts/mkbox
          275         $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ build/*.c $(LIB)
          276 
          277 clean:
          278         @cd tests && $(MAKE) clean
          279         rm -f *.o
          280         rm -f $(BIN) $(LIB) sbase-box sbase-$(VERSION).tar.gz
          281         rm -f scripts/make
          282         rm -f getconf.h bc.c
          283         rm -f proto
          284         rm -rf build
          285 
          286 .PHONY: all install uninstall dist sbase-box-install sbase-box-uninstall clean