URI:
       Makefile - susmb - fork from usmb 20130204: mount SMB/CIFS shares via FUSE
  HTML git clone git://git.codemadness.org/susmb
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
       Makefile (2621B)
       ---
            1 .POSIX:
            2 
            3 NAME = susmb
            4 VERSION = 0.9
            5 
            6 # paths
            7 PREFIX = /usr/local
            8 MANPREFIX = ${PREFIX}/man
            9 DOCPREFIX = ${PREFIX}/share/doc/${NAME}
           10 
           11 # use system flags.
           12 SUSMB_CFLAGS = ${CFLAGS}
           13 SUSMB_LDFLAGS = ${LDFLAGS}
           14 SUSMB_CPPFLAGS = -D_DEFAULT_SOURCE
           15 
           16 # OpenBSD
           17 # pkg-config --cflags smbclient
           18 SMBCLIENT_CFLAGS = -I/usr/local/include/samba-4.0
           19 # pkg-config --libs smbclient
           20 SMBCLIENT_LDFLAGS = -L/usr/local/lib -lsmbclient
           21 # pkg-config --cflags fuse
           22 FUSE_CFLAGS = -I/usr/local/include
           23 # pkg-config --libs fuse
           24 FUSE_LDFLAGS = -lfuse
           25 
           26 # Linux
           27 #SUSMB_CFLAGS += -D_GNU_SOURCE
           28 # Linux: use libbsd (for arc4random, etc).
           29 #SUSMB_LDFLAGS += -lbsd
           30 #SMBCLIENT_CFLAGS = -I/usr/include/samba-4.0
           31 #SMBCLIENT_LDFLAGS = -lsmbclient
           32 #FUSE_CFLAGS = -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse
           33 #FUSE_LDFLAGS = -lfuse -pthread
           34 
           35 # test: debug
           36 #SUSMB_CFLAGS = -O0 -g -ggdb -Wall -Wextra -pedantic -Wformat-security -Winit-self -Wwrite-strings -Wstrict-prototypes -Wmissing-declarations
           37 
           38 BIN = ${NAME}
           39 SCRIPTS =
           40 SRC = ${BIN:=.c}
           41 HDR =
           42 MAN1 = ${BIN:=.1}\
           43         ${SCRIPTS:=.1}
           44 DOC = \
           45         LICENSE\
           46         README
           47 
           48 all: ${BIN}
           49 
           50 ${BIN}: ${@:=.o}
           51 
           52 OBJ = ${SRC:.c=.o}
           53 
           54 ${OBJ}: ${HDR}
           55 
           56 .o:
           57         ${CC} -o $@ $< ${SUSMB_LDFLAGS} ${SMBCLIENT_LDFLAGS} ${FUSE_LDFLAGS} ${SUSMB_LDFLAGS}
           58 
           59 .c.o:
           60         ${CC} -o $@ -c $< ${SUSMB_CPPFLAGS} ${SMBCLIENT_CFLAGS} ${FUSE_CFLAGS} ${SUSMB_CFLAGS} ${SUSMB_CPPFLAGS}
           61 
           62 dist:
           63         rm -rf "${NAME}-${VERSION}"
           64         mkdir -p "${NAME}-${VERSION}"
           65         cp -f ${MAN1} ${DOC} ${HDR} ${SCRIPTS} \
           66                 ${SRC} Makefile "${NAME}-${VERSION}"
           67         # make tarball
           68         tar cf - "${NAME}-${VERSION}" | gzip -c > "${NAME}-${VERSION}.tar.gz"
           69         rm -rf "${NAME}-${VERSION}"
           70 
           71 clean:
           72         rm -f ${BIN} ${OBJ}
           73 
           74 install: all
           75         # installing executable files and scripts.
           76         mkdir -p "${DESTDIR}${PREFIX}/bin"
           77         cp -f ${BIN} ${SCRIPTS} "${DESTDIR}${PREFIX}/bin"
           78         for f in ${BIN} ${SCRIPTS}; do chmod 755 "${DESTDIR}${PREFIX}/bin/$$f"; done
           79         # installing example files.
           80         mkdir -p "${DESTDIR}${DOCPREFIX}"
           81         cp -f ${DOC} "${DESTDIR}${DOCPREFIX}"
           82         for d in ${DOC}; do chmod 644 "${DESTDIR}${DOCPREFIX}/$$d"; done
           83         # installing manual pages for general commands: section 1.
           84         mkdir -p "${DESTDIR}${MANPREFIX}/man1"
           85         cp -f ${MAN1} "${DESTDIR}${MANPREFIX}/man1"
           86         for m in ${MAN1}; do chmod 644 "${DESTDIR}${MANPREFIX}/man1/$$m"; done
           87 
           88 uninstall:
           89         # removing executable files and scripts.
           90         for f in ${BIN} ${SCRIPTS}; do rm -f "${DESTDIR}${PREFIX}/bin/$$f"; done
           91         # removing example files.
           92         for d in ${DOC}; do rm -f "${DESTDIR}${DOCPREFIX}/$$d"; done
           93         -rmdir "${DESTDIR}${DOCPREFIX}"
           94         # removing manual pages.
           95         for m in ${MAN1}; do rm -f "${DESTDIR}${MANPREFIX}/man1/$$m"; done
           96 
           97 .PHONY: all clean dist install uninstall