summaryrefslogtreecommitdiff
path: root/package/aufs2-util/src/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'package/aufs2-util/src/Makefile')
-rw-r--r--package/aufs2-util/src/Makefile103
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