| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- CFLAGS ?= -std=gnu99 -Os -Wall
- CXXFLAGS ?= -std=gnu++11 -Os -Wall
- VERSION ?= $(shell git describe --always)
- ifeq ($(OS),Windows_NT)
- TARGET_OS := WINDOWS
- DIST_SUFFIX := windows
- ARCHIVE_CMD := 7z a
- ARCHIVE_EXTENSION := zip
- TARGET := mklfs.exe
- TARGET_CFLAGS := -O2 -mno-ms-bitfields -Ilfs -I. -DVERSION=\"$(VERSION)\"
- TARGET_LDFLAGS := -Wl,-static -static-libgcc
- TARGET_CXXFLAGS := -Ilfs -I. -DVERSION=\"$(VERSION)\" -D__NO_INLINE__
- CC=gcc
- CXX=g++
- else
- UNAME_S := $(shell uname -s)
- ifeq ($(UNAME_S),Linux)
- TARGET_OS := LINUX
- UNAME_P := $(shell uname -p)
- ifeq ($(UNAME_P),x86_64)
- DIST_SUFFIX := linux64
- endif
- ifneq ($(filter %86,$(UNAME_P)),)
- DIST_SUFFIX := linux32
- endif
- CC=gcc
- CXX=g++
- TARGET_CFLAGS = -std=gnu99 -O2 -Wall -Ilfs -I. -D$(TARGET_OS) -DVERSION=\"$(VERSION)\" -D__NO_INLINE__
- TARGET_CXXFLAGS = -std=gnu++11 -O2 -Wall -Ilfs -I. -D$(TARGET_OS) -DVERSION=\"$(VERSION)\" -D__NO_INLINE__
- endif
- ifeq ($(UNAME_S),Darwin)
- TARGET_OS := OSX
- DIST_SUFFIX := osx
- CC=clang
- CXX=clang++
- TARGET_CFLAGS = -std=gnu99 -O2 -Wall -Ilfs -I. -D$(TARGET_OS) -DVERSION=\"$(VERSION)\" -D__NO_INLINE__ -mmacosx-version-min=10.7 -arch x86_64
- TARGET_CXXFLAGS = -std=gnu++11 -O2 -Wall -Ilfs -I. -D$(TARGET_OS) -DVERSION=\"$(VERSION)\" -D__NO_INLINE__ -mmacosx-version-min=10.7 -arch x86_64 -stdlib=libc++
- TARGET_LDFLAGS = -arch x86_64 -stdlib=libc++
- endif
- ARCHIVE_CMD := tar czf
- ARCHIVE_EXTENSION := tar.gz
- TARGET := mklfs
- endif
- OBJ := mklfs.o \
- lfs/lfs.o \
- lfs/lfs_util.o \
-
- VERSION ?= $(shell git describe --always)
- .PHONY: all clean
- all: $(TARGET)
- $(TARGET):
- @echo "Building mklfs ..."
- $(CC) $(TARGET_CFLAGS) -c lfs/lfs.c -o lfs/lfs.o
- $(CC) $(TARGET_CFLAGS) -c lfs/lfs_util.c -o lfs/lfs_util.o
- $(CC) $(TARGET_CFLAGS) -c mklfs.c -o mklfs.o
- $(CC) $(TARGET_CFLAGS) -c unlfs.c -o unlfs.o
- $(CC) $(TARGET_CFLAGS) -o $(TARGET) $(OBJ) $(TARGET_LDFLAGS)
- $(CC) $(TARGET_CFLAGS) -o unlfs.exe unlfs.o lfs/lfs.o lfs/lfs_util.o $(TARGET_LDFLAGS)
- clean:
- @rm -f *.o
- @rm -f lfs/*.o
- @rm -f $(TARGET)
- @rm -f unlfs.exe
|