123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- # Makefile
- #
- # Copyright (C) 2008 Daniel Baumann <daniel@debian.org>
- #
- # This program 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 3 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, see <http://www.gnu.org/licenses/>.
- #
- # On Debian systems, the complete text of the GNU General Public License
- # can be found in /usr/share/common-licenses/GPL-3 file.
- DESTDIR =
- PREFIX = /usr/local
- SBINDIR = $(PREFIX)/sbin
- DOCDIR = $(PREFIX)/share/doc
- MANDIR = $(PREFIX)/share/man
- #OPTFLAGS = -O2 -fomit-frame-pointer -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
- OPTFLAGS = -O2 -fomit-frame-pointer $(shell getconf LFS_CFLAGS)
- #WARNFLAGS = -Wall -pedantic -std=c99
- WARNFLAGS = -Wall
- DEBUGFLAGS = -g
- CFLAGS += $(OPTFLAGS) $(WARNFLAGS) $(DEBUGFLAGS)
- VPATH = src
- all: build
- build: dosfsck dosfslabel mkdosfs
- dosfsck: boot.o check.o common.o fat.o file.o io.o lfn.o dosfsck.o
- dosfslabel: boot.o check.o common.o fat.o file.o io.o lfn.o dosfslabel.o
- mkdosfs: mkdosfs.o
- rebuild: distclean build
- install: install-bin install-doc install-man
- install-bin: build
- install -d -m 0755 $(DESTDIR)/$(SBINDIR)
- install -m 0755 dosfsck dosfslabel mkdosfs $(DESTDIR)/$(SBINDIR)
- ln -sf dosfsck $(DESTDIR)/$(SBINDIR)/fsck.msdos
- ln -sf dosfsck $(DESTDIR)/$(SBINDIR)/fsck.vfat
- ln -sf mkdosfs $(DESTDIR)/$(SBINDIR)/mkfs.msdos
- ln -sf mkdosfs $(DESTDIR)/$(SBINDIR)/mkfs.vfat
- install-doc:
- install -d -m 0755 $(DESTDIR)/$(DOCDIR)/dosfstools
- install -p -m 0644 ChangeLog doc/* $(DESTDIR)/$(DOCDIR)/dosfstools
- install-man:
- install -d -m 0755 $(DESTDIR)/$(MANDIR)/man8
- install -p -m 0644 man/*.8 $(DESTDIR)/$(MANDIR)/man8
- ln -sf dosfsck.8 $(DESTDIR)/$(MANDIR)/man8/fsck.msdos.8
- ln -sf dosfsck.8 $(DESTDIR)/$(MANDIR)/man8/fsck.vfat.8
- ln -sf mkdosfs.8 $(DESTDIR)/$(MANDIR)/man8/mkfs.msdos.8
- ln -sf mkdosfs.8 $(DESTDIR)/$(MANDIR)/man8/mkfs.vfat.8
- uninstall: uninstall-bin uninstall-doc uninstall-man
- uninstall-bin:
- rm -f $(DESTDIR)/$(SBINDIR)/dosfsck
- rm -f $(DESTDIR)/$(SBINDIR)/dosfslabel
- rm -f $(DESTDIR)/$(SBINDIR)/mkdosfs
- rm -f $(DESTDIR)/$(SBINDIR)/fsck.msdos
- rm -f $(DESTDIR)/$(SBINDIR)/fsck.vfat
- rm -f $(DESTDIR)/$(SBINDIR)/mkfs.msdos
- rm -f $(DESTDIR)/$(SBINDIR)/mkfs.vfat
- rmdir --ignore-fail-on-non-empty $(DESTDIR)/$(SBINDIR)
- uninstall-doc:
- rm -rf $(DESTDIR)/$(DOCDIR)/dosfstools
- rmdir --ignore-fail-on-non-empty $(DESTDIR)/$(DOCDIR)
- uninstall-man:
- rm -f $(DESTDIR)/$(MANDIR)/man8/dosfsck.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/dosfslabel.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/mkdosfs.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/fsck.msdos.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/fsck.vfat.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/mkfs.msdos.8
- rm -f $(DESTDIR)/$(MANDIR)/man8/mkfs.vfat.8
- rmdir --ignore-fail-on-non-empty $(DESTDIR)/$(MANDIR)/man8
- rmdir --ignore-fail-on-non-empty $(DESTDIR)/$(MANDIR)
- reinstall: distclean install
- clean:
- rm -f *.o
- distclean: clean
- rm -f dosfsck dosfslabel mkdosfs
- .PHONY: build rebuild install install-bin install-doc install-man uninstall uninstall-bin uninstall-doc uninstall-man reinstall clean distclean
|