diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..61f9469 --- /dev/null +++ b/Makefile @@ -0,0 +1,136 @@ +.POSIX: + +CONFIGFILE = config.mk +include $(CONFIGFILE) + +OS = linux +# Linux: linux +# Mac OS: macos +# Windows: windows +include mk/$(OS).mk + + +LIB_MAJOR = 1 +LIB_MINOR = 0 +LIB_VERSION = $(LIB_MAJOR).$(LIB_MINOR) +LIB_NAME = charconv + + +BIN =\ + convert-to-shogi\ + convert-to-dice\ + convert-to-go\ + convert-to-draughts\ + convert-to-region-indicators\ + convert-to-tags\ + convert-to-gender-symbols\ + convert-to-latin\ + convert-to-cypriot\ + convert-to-bold\ + convert-to-italic\ + convert-to-bold-italic\ + convert-to-monospace\ + convert-to-segmented\ + convert-to-sans-serif\ + convert-to-sans-serif-bold\ + convert-to-sans-serif-italic\ + convert-to-sans-serif-bold-italic\ + convert-to-double-struck\ + convert-to-double-struck-italic\ + convert-to-fraktur\ + convert-to-bold-fraktur\ + convert-to-script\ + convert-to-bold-script\ + convert-to-buhid + +LIBOBJ =\ + libcharconv_shogi.o\ + libcharconv_dice.o\ + libcharconv_go_white.o\ + libcharconv_go_black.o\ + libcharconv_draughts.o\ + libcharconv_region_indicators.o\ + libcharconv_tags.o\ + libcharconv_gender_symbols.o\ + libcharconv_latin.o\ + libcharconv_cypriot.o\ + libcharconv_bold.o\ + libcharconv_italic.o\ + libcharconv_bold_italic.o\ + libcharconv_monospace.o\ + libcharconv_segmented.o\ + libcharconv_sans_serif.o\ + libcharconv_sans_serif_bold.o\ + libcharconv_sans_serif_italic.o\ + libcharconv_sans_serif_bold_italic.o\ + libcharconv_double_struck.o\ + libcharconv_double_struck_italic.o\ + libcharconv_fraktur.o\ + libcharconv_bold_fraktur.o\ + libcharconv_script.o\ + libcharconv_bold_script.o\ + libcharconv_buhid.o + +HDR =\ + libcharconv.h + +LOBJ = $(LIBOBJ:.o=.lo) + +BINOBJ = $(BIN:=.o) common.o + + +all: libcharconv.a libcharconv.$(LIBEXT) $(BIN) +common.o: $(HDR) +$(LIBOBJ): $(HDR) +$(BINOBJ): $(HDR) common.h +$(LOBJ): $(HDR) +$(BIN): common.o libcharconv.a + +.c.o: + $(CC) -c -o $@ $< $(CFLAGS) $(CPPFLAGS) + +.c.lo: + $(CC) -fPIC -c -o $@ $< $(CFLAGS) $(CPPFLAGS) + +.o: + $(CC) -fPIC -o $@ $< common.o libcharconv.a $(LDFLAGS) + +.c: + $(CC) -fPIC -o $@ $< common.o libcharconv.a $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) + +libcharconv.a: $(LIBOBJ) + @rm -f -- $@ + $(AR) rc $@ $(LIBOBJ) + $(AR) ts $@ > /dev/null + +libcharconv.$(LIBEXT): $(LOBJ) + $(CC) $(LIBFLAGS) -o $@ $(LOBJ) $(LDFLAGS) + +install: libcharconv.a libcharconv.$(LIBEXT) $(BIN) + mkdir -p -- "$(DESTDIR)$(PREFIX)/lib" + mkdir -p -- "$(DESTDIR)$(PREFIX)/bin" + mkdir -p -- "$(DESTDIR)$(PREFIX)/include" + cp -- libcharconv.a "$(DESTDIR)$(PREFIX)/lib/" + cp -- libcharconv.$(LIBEXT) "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBMINOREXT)" + $(FIX_INSTALL_NAME) "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBMINOREXT)" + ln -sf -- libcharconv.$(LIBMINOREXT) "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBMAJOREXT)" + ln -sf -- libcharconv.$(LIBMAJOREXT) "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBEXT)" + cp -- libcharconv.h "$(DESTDIR)$(PREFIX)/include/" + cp -- $(BIN) "$(DESTDIR)$(PREFIX)/bin/" + +uninstall: + -rm -f -- "$(DESTDIR)$(PREFIX)/lib/libcharconv.a" + -rm -f -- "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBMAJOREXT)" + -rm -f -- "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBMINOREXT)" + -rm -f -- "$(DESTDIR)$(PREFIX)/lib/libcharconv.$(LIBEXT)" + -rm -f -- "$(DESTDIR)$(PREFIX)/include/libcharconv.h" + -cd -- "$(DESTDIR)$(PREFIX)/bin/" && rm -f -- $(BIN) + +clean: + -rm -f -- *.o *.a *.lo *.su *.so *.so.* *.dll *.dylib + -rm -f -- *.gch *.gcov *.gcno *.gcda *.$(LIBEXT) $(BIN) + +.SUFFIXES: +.SUFFIXES: .lo .o .c + +.PHONY: all install uninstall clean |
