OSDN Git Service

mkostemp: fix implementation
[uclinux-h8/uClibc.git] / libintl / Makefile.in
index 8f5a75a..22ae70c 100644 (file)
@@ -1,41 +1,76 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2008 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CFLAGS+=$(SSP_ALL_CFLAGS)
+subdirs += libintl
 
-#DOMULTI=y
+CFLAGS-libintl := -DNOT_IN_libc -DIS_IN_libintl $(SSP_ALL_CFLAGS)
 
-LIB_NAME:=libintl
+LDFLAGS-libintl.so := $(LDFLAGS)
 
-MOBJ:=gettext.o ngettext.o  dgettext.o dcgettext.o dngettext.o dcngettext.o \
+LIBS-libintl.so := $(LIBS)
+
+libintl_FULL_NAME := libintl-$(VERSION).so
+
+MOBJ := \
+       gettext.o ngettext.o  dgettext.o dcgettext.o dngettext.o dcngettext.o \
        textdomain.o bindtextdomain.o bind_textdomain_codeset.o \
        _nl_expand_alias.o _nl_msg_cat_cntr.o # glibc-isms
 
-libintl_DIR:=$(top_srcdir)libintl
-libintl_OUT:=$(top_builddir)libintl
+libintl_DIR := $(top_srcdir)libintl
+libintl_OUT := $(top_builddir)libintl
 
-libintl_MSRC:=$(libintl_DIR)/intl.c
-libintl_MOBJ:=$(patsubst %.o,$(libintl_OUT)/%.o,$(MOBJ))
+libintl_MSRC := $(libintl_DIR)/intl.c
+libintl_MOBJ := $(patsubst %.o,$(libintl_OUT)/%.o,$(MOBJ))
 
-libintl_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(libintl_MOBJ))))
+ifneq ($(DOMULTI),n)
+CFLAGS-libintl += $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libintl_MOBJ))))
+endif
 
-$(libintl_MOBJ) $(libintl_MOBJ:.o=.os): $(libintl_MSRC)
-       $(compile.m)
+ifeq ($(DOPIC),y)
+libintl-a-y := $(libintl_MOBJ:.o=.os)
+else
+libintl-a-y := $(libintl_MOBJ)
+endif
+libintl-so-y := $(libintl_MOBJ:.o=.os)
+
+lib-a-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.a
+lib-so-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.so
+objclean-y += CLEAN_libintl
+
+ifeq ($(DOMULTI),n)
+ifeq ($(DOPIC),y)
+$(top_builddir)lib/libintl.so: $(top_builddir)lib/libintl.a $(libc.depend)
+else
+$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl_so.a $(libc.depend)
+endif
+       $(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+else
+$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
+       $(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
+endif
 
-libintl-a-$(UCLIBC_HAS_GETTEXT_AWARENESS):=$(libintl_MOBJ)
-libintl-a-pic-$(UCLIBC_HAS_GETTEXT_AWARENESS):=$(libintl_MOBJ:.o=.os)
-libintl-so-$(UCLIBC_HAS_GETTEXT_AWARENESS):=$(libintl_MOBJ:.o=.os)
+$(libintl_OUT)/libintl_so.a: $(libintl-so-y)
+       $(Q)$(RM) $@
+       $(do_ar)
 
-CFLAGS-multi-$(UCLIBC_HAS_GETTEXT_AWARENESS):=$(libintl_DEF)
-libintl-multi-$(UCLIBC_HAS_GETTEXT_AWARENESS):=$(libintl_MSRC)
+$(libintl_OUT)/libintl.oS: $(libintl_MSRC)
+       $(Q)$(RM) $@
+       $(compile-m)
 
-objclean-y+=libintl_clean
+$(top_builddir)lib/libintl.a: $(libintl-a-y)
+       $(Q)$(INSTALL) -d $(dir $@)
+       $(Q)$(RM) $@
+       $(do_ar)
+
+$(libintl_MOBJ): $(libintl_MSRC)
+       $(compile.m)
+
+$(libintl_MOBJ:.o=.os): $(libintl_MSRC)
+       $(compile.m)
 
-lib-a-$(UCLIBC_HAS_GETTEXT_AWARENESS)+=$(top_builddir)lib/libintl.a
-lib-a-pic-$(UCLIBC_HAS_GETTEXT_AWARENESS)+=$(top_builddir)lib/libintl.a
-lib-so-$(UCLIBC_HAS_GETTEXT_AWARENESS)+=$(top_builddir)lib/libintl.so
+CLEAN_libintl:
+       $(do_rm) $(addprefix $(libintl_OUT)/*., o os oS a)