diff options
Diffstat (limited to 'package/aufs2-util/src/Makefile')
-rw-r--r-- | package/aufs2-util/src/Makefile | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/package/aufs2-util/src/Makefile b/package/aufs2-util/src/Makefile new file mode 100644 index 000000000..c7aacfc14 --- /dev/null +++ b/package/aufs2-util/src/Makefile @@ -0,0 +1,103 @@ + +# Copyright (C) 2005-2009 Junjiro Okajima +# +# This program, aufs is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +ifndef KDIR +KDIR = /lib/modules/$(shell uname -r)/build +endif + +CFLAGS += -I${KDIR}/include +CFLAGS += -O -Wall + +Cmd = umount.aufs auchk aubrsync +Man = aufs.5 +Etc = etc_default_aufs +Bin = auplink mount.aufs #auctl +BinObj = $(addsuffix .o, ${Bin}) +LibSo = libau.so +LibSoObj = rdu.o +LibSoHdr = compat.h +LibUtil = libautil.a +LibUtilObj = proc_mnt.o br.o plink.o mtab.o +LibUtilHdr = au_util.h + +all: ${Man} ${Bin} ${Etc} #${LibSo} + +${Bin}: LDFLAGS += -static -s +${Bin}: LDLIBS = -L. -lautil +${BinObj}: %.o: %.c ${LibUtilHdr} ${LibUtil} + +${LibUtilObj}: %.o: %.c ${LibUtilHdr} +${LibUtil}: ${LibUtil}(${LibUtilObj}) + +${LibSoObj}: CFLAGS += -fPIC +${LibSoObj}: %.o: %.c ${LibSolHdr} + +# in order to reuse the default rule +Dummy = $(basename $(word 1,${LibSoObj})) +${Dummy}: LDFLAGS += --shared +${Dummy}: LDLIBS += -ldl -lpthread +${Dummy}: ${LibSoObj} +${LibSo}: ${Dummy} + ln -f $< $@ + +etc_default_aufs: c2sh aufs.shlib + ${RM} $@ + echo '# aufs variables for shell scripts' > $@ + ./c2sh >> $@ + echo >> $@ + sed -e '0,/^$$/d' aufs.shlib >> $@ + +aufs.5: aufs.in.5 c2tmac + ${RM} $@ + ./c2tmac > $@ + awk '{ \ + gsub(/\140[^\047]*\047/, "\\[oq]&\\[cq]"); \ + gsub(/\\\[oq\]\140/, "\\[oq]"); \ + gsub(/\047\\\[cq\]/, "\\[cq]"); \ + gsub(/\047/, "\\[aq]"); \ + print; \ + }' aufs.in.5 >> $@ + chmod a-w $@ + +.INTERMEDIATE: c2sh c2tmac + +install_sbin: File = mount.aufs umount.aufs auplink +install_sbin: Tgt = ${DESTDIR}/sbin +install_ubin: File = auchk aubrsync #auctl +install_ubin: Tgt = ${DESTDIR}/usr/bin +install_man: File = aufs.5 +install_man: Tgt = ${DESTDIR}/usr/share/man/man5 +install_ulib: Opt = -s +install_ulib: File = ${LibSo} +install_ulib: Tgt = ${DESTDIR}/ulib +install_sbin install_ubin install_man install_ulib: ${File} + install -d ${Tgt} + install -m 755 -o root -g root -p ${Opt} ${File} ${Tgt} +install_etc: File = etc_default_aufs +install_etc: Tgt = ${DESTDIR}/etc/default/aufs +install_etc: ${File} + install -d $(dir ${Tgt}) + install -m 644 -o root -g root -p -T ${File} ${Tgt} + +# do not inlcude install_ulib here +install: install_man install_sbin install_ubin install_etc + +clean: + ${RM} ${Man} ${Bin} ${Etc} ${LibUtil} ${LibSo} *~ + ${RM} ${BinObj} ${LibUtilObj} ${LibSoObj} ${Dummy} + +-include priv.mk |