initial commit
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,93 +1,103 @@
|
||||
prefix=/usr/local
|
||||
-bindir=$(prefix)/bin
|
||||
-includedir=$(prefix)/include
|
||||
-libdir=$(prefix)/lib
|
||||
-sysconfdir=$(prefix)/etc
|
||||
-datarootdir=$(prefix)/share
|
||||
-datadir=$(datarootdir)/gettext-tiny
|
||||
-acdir=$(datarootdir)/aclocal
|
||||
-
|
||||
-ifeq ($(LIBINTL), MUSL)
|
||||
- LIBSRC = libintl/libintl-musl.c
|
||||
- HEADERS =
|
||||
-else ifeq ($(LIBINTL), NONE)
|
||||
- LIBSRC =
|
||||
- HEADERS =
|
||||
-else
|
||||
- LIBSRC = libintl/libintl.c
|
||||
- HEADERS = libintl.h
|
||||
-endif
|
||||
-PROGSRC = $(sort $(wildcard src/*.c))
|
||||
-
|
||||
-PARSEROBJS = src/poparser.o src/poparser_sysdep.o src/StringEscape.o
|
||||
-PROGOBJS = $(PROGSRC:.c=.o)
|
||||
-LIBOBJS = $(LIBSRC:.c=.o)
|
||||
-OBJS = $(PROGOBJS) $(LIBOBJS)
|
||||
+bindir=${prefix}/bin
|
||||
+includedir=${prefix}/include
|
||||
+libdir=${prefix}/lib
|
||||
+sysconfdir=${prefix}/etc
|
||||
+datarootdir=${prefix}/share
|
||||
+datadir=${datarootdir}/gettext-tiny
|
||||
+acdir=${datarootdir}/aclocal
|
||||
+
|
||||
+LIBINTL ?= default
|
||||
+LIBINTL_MODE=${LIBINTL:tl}
|
||||
+
|
||||
+.if ${LIBINTL_MODE} == "musl"
|
||||
+LIBSRC=libintl/libintl-musl.c
|
||||
+HEADERS=
|
||||
+.elif ${LIBINTL_MODE} == "none"
|
||||
+LIBSRC=
|
||||
+HEADERS=
|
||||
+.else
|
||||
+LIBSRC=libintl/libintl.c
|
||||
+HEADERS=libintl.h
|
||||
+.endif
|
||||
+
|
||||
+PARSEROBJS=src/poparser.o src/poparser_sysdep.o src/StringEscape.o
|
||||
+PROGOBJS=src/msgfmt.o src/msgmerge.o src/poparser.o src/poparser_sysdep.o src/StringEscape.o
|
||||
+LIBOBJS=${LIBSRC:.c=.o}
|
||||
+OBJS=${PROGOBJS} ${LIBOBJS}
|
||||
|
||||
-ALL_INCLUDES = $(HEADERS)
|
||||
-ifneq ($(LIBINTL), NONE)
|
||||
+ALL_INCLUDES=${HEADERS}
|
||||
+.if ${LIBINTL_MODE} != "none"
|
||||
ALL_LIBS=libintl.a
|
||||
-endif
|
||||
+.else
|
||||
+ALL_LIBS=
|
||||
+.endif
|
||||
ALL_TOOLS=msgfmt msgmerge xgettext autopoint
|
||||
-ALL_M4S=$(sort $(wildcard m4/*.m4))
|
||||
-ALL_DATA=$(sort $(wildcard data/*))
|
||||
+AC_DATADIR_REL=${datadir:S,${datarootdir}/,,}
|
||||
|
||||
CFLAGS ?= -O0 -fPIC
|
||||
|
||||
-AR ?= $(CROSS_COMPILE)ar
|
||||
-RANLIB ?= $(CROSS_COMPILE)ranlib
|
||||
-CC ?= $(CROSS_COMPILE)cc
|
||||
+AR ?= ${CROSS_COMPILE}ar
|
||||
+RANLIB ?= ${CROSS_COMPILE}ranlib
|
||||
+CC ?= ${CROSS_COMPILE}cc
|
||||
|
||||
INSTALL ?= ./install.sh
|
||||
|
||||
--include config.mak
|
||||
-
|
||||
-LDLIBS:=$(shell echo "int main(){}" | $(CC) $(CFLAGS) $(LDFLAGS) -liconv -x c - >/dev/null 2>&1 && printf %s -liconv)
|
||||
-
|
||||
-BUILDCFLAGS=$(CFLAGS)
|
||||
-
|
||||
-all: $(ALL_LIBS) $(ALL_TOOLS)
|
||||
-
|
||||
-install: $(ALL_LIBS:lib%=$(DESTDIR)$(libdir)/lib%) $(ALL_INCLUDES:%=$(DESTDIR)$(includedir)/%) $(ALL_TOOLS:%=$(DESTDIR)$(bindir)/%) $(ALL_M4S:%=$(DESTDIR)$(datadir)/%) $(ALL_M4S:%=$(DESTDIR)$(acdir)/%) $(ALL_DATA:%=$(DESTDIR)$(datadir)/%)
|
||||
+.if exists(config.mak)
|
||||
+.include "config.mak"
|
||||
+.endif
|
||||
+
|
||||
+LDLIBS!=echo 'int main(){}' | ${CC} ${CFLAGS} ${LDFLAGS} -liconv -x c - >/dev/null 2>&1 && printf '%s' -liconv || true
|
||||
+
|
||||
+BUILDCFLAGS=${CFLAGS}
|
||||
+
|
||||
+all: ${ALL_LIBS} ${ALL_TOOLS}
|
||||
+
|
||||
+install: ${ALL_LIBS} ${ALL_TOOLS}
|
||||
+.for lib in ${ALL_LIBS}
|
||||
+ ${INSTALL} -D -m 755 ${lib} ${DESTDIR}${libdir}/${lib}
|
||||
+.endfor
|
||||
+.for hdr in ${ALL_INCLUDES}
|
||||
+ ${INSTALL} -D -m 644 include/${hdr} ${DESTDIR}${includedir}/${hdr}
|
||||
+.endfor
|
||||
+.for tool in ${ALL_TOOLS}
|
||||
+ ${INSTALL} -D -m 755 ${tool} ${DESTDIR}${bindir}/${tool}
|
||||
+.endfor
|
||||
+ @set -e; \
|
||||
+ for m4f in m4/*.m4; do \
|
||||
+ [ -f "$$m4f" ] || continue; \
|
||||
+ ${INSTALL} -D -m 644 "$$m4f" "${DESTDIR}${datadir}/$${m4f##*/}"; \
|
||||
+ ${INSTALL} -D -l "../${AC_DATADIR_REL}/$${m4f##*/}" "${DESTDIR}${acdir}/$${m4f##*/}"; \
|
||||
+ done
|
||||
+ @set -e; \
|
||||
+ for dataf in data/*; do \
|
||||
+ [ -f "$$dataf" ] || continue; \
|
||||
+ ${INSTALL} -D -m 644 "$$dataf" "${DESTDIR}${datadir}/$${dataf##*/}"; \
|
||||
+ done
|
||||
|
||||
clean:
|
||||
- rm -f $(ALL_LIBS)
|
||||
- rm -f $(OBJS)
|
||||
- rm -f $(ALL_TOOLS)
|
||||
-
|
||||
-%.o: %.c
|
||||
- $(CC) $(BUILDCFLAGS) -c -o $@ $<
|
||||
-
|
||||
-libintl.a: $(LIBOBJS)
|
||||
- rm -f $@
|
||||
- $(AR) rc $@ $(LIBOBJS)
|
||||
- $(RANLIB) $@
|
||||
+ rm -f ${ALL_LIBS}
|
||||
+ rm -f ${OBJS}
|
||||
+ rm -f ${ALL_TOOLS}
|
||||
+
|
||||
+.c.o:
|
||||
+ ${CC} ${BUILDCFLAGS} -c -o ${.TARGET} ${.IMPSRC}
|
||||
+
|
||||
+libintl.a: ${LIBOBJS}
|
||||
+ rm -f ${.TARGET}
|
||||
+ ${AR} rc ${.TARGET} ${LIBOBJS}
|
||||
+ ${RANLIB} ${.TARGET}
|
||||
|
||||
-msgmerge: $(OBJS)
|
||||
- $(CC) -o $@ src/msgmerge.o $(PARSEROBJS) $(LDFLAGS) $(LDLIBS)
|
||||
+msgmerge: ${OBJS}
|
||||
+ ${CC} -o ${.TARGET} src/msgmerge.o ${PARSEROBJS} ${LDFLAGS} ${LDLIBS}
|
||||
|
||||
-msgfmt: $(OBJS)
|
||||
- $(CC) -o $@ src/msgfmt.o $(PARSEROBJS) $(LDFLAGS) $(LDLIBS)
|
||||
+msgfmt: ${OBJS}
|
||||
+ ${CC} -o ${.TARGET} src/msgfmt.o ${PARSEROBJS} ${LDFLAGS} ${LDLIBS}
|
||||
|
||||
xgettext:
|
||||
cp src/xgettext.sh ./xgettext
|
||||
|
||||
autopoint: src/autopoint.in
|
||||
- cat $< | sed 's,@datadir@,$(datadir),' > $@
|
||||
-
|
||||
-$(DESTDIR)$(libdir)/%.a: %.a
|
||||
- $(INSTALL) -D -m 755 $< $@
|
||||
-
|
||||
-$(DESTDIR)$(includedir)/%.h: include/%.h
|
||||
- $(INSTALL) -D -m 644 $< $@
|
||||
-
|
||||
-$(DESTDIR)$(bindir)/%: %
|
||||
- $(INSTALL) -D -m 755 $< $@
|
||||
-
|
||||
-$(DESTDIR)$(datadir)/%: %
|
||||
- $(INSTALL) -D -m 644 $< $@
|
||||
-
|
||||
-$(DESTDIR)$(acdir)/%: %
|
||||
- $(INSTALL) -D -l ../$(subst $(datarootdir)/,,$(datadir))/$< $(patsubst %m4/,%,$(dir $@))/$(notdir $@)
|
||||
+ sed 's,@datadir@,${datadir},' < src/autopoint.in > ${.TARGET}
|
||||
|
||||
.PHONY: all clean install
|
||||
Reference in New Issue
Block a user