mailing list of musl libc
 help / color / mirror / code / Atom feed
* [PATCH 1/5] generalize "generic" fallback for bits headers
@ 2016-07-06  3:54 Bobby Bingham
  2016-07-06  3:54 ` [PATCH 2/5] create big/little endian generic bits overlays Bobby Bingham
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Bobby Bingham @ 2016-07-06  3:54 UTC (permalink / raw)
  To: musl

Previously, ports could provide a given bits header, or they could inherit
a generic version.  There was a limitation that there could only be one
generic version of a given header.  In some cases, there were multiple
ports that could share one version of a header, and others which could
share a different version (e.g., 32-bit vs 64-bit versions).

This commit implements the makefile infrastructure necessary to provide
multiple bits header overlays, and to let each port decide which overlays
to use.  The first referenced overlay which contains a given bits header
will be the one that is used for that header.
---
 Makefile | 25 +++++++++++++++----------
 1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/Makefile b/Makefile
index 8246b78..b401cdf 100644
--- a/Makefile
+++ b/Makefile
@@ -46,7 +46,7 @@ CFLAGS_AUTO = -Os -pipe
 CFLAGS_C99FSE = -std=c99 -ffreestanding -nostdinc 
 
 CFLAGS_ALL = $(CFLAGS_C99FSE)
-CFLAGS_ALL += -D_XOPEN_SOURCE=700 -I$(srcdir)/arch/$(ARCH) -I$(srcdir)/arch/generic -Iobj/src/internal -I$(srcdir)/src/internal -Iobj/include -I$(srcdir)/include
+CFLAGS_ALL += -D_XOPEN_SOURCE=700 $(foreach a,$(ARCH_FALLBACKS),-I$(srcdir)/arch/$(a)) -Iobj/src/internal -I$(srcdir)/src/internal -Iobj/include -I$(srcdir)/include
 CFLAGS_ALL += $(CPPFLAGS) $(CFLAGS_AUTO) $(CFLAGS)
 
 LDFLAGS_ALL = $(LDFLAGS_AUTO) $(LDFLAGS)
@@ -55,10 +55,9 @@ AR      = $(CROSS_COMPILE)ar
 RANLIB  = $(CROSS_COMPILE)ranlib
 INSTALL = $(srcdir)/tools/install.sh
 
-ARCH_INCLUDES = $(wildcard $(srcdir)/arch/$(ARCH)/bits/*.h)
-GENERIC_INCLUDES = $(wildcard $(srcdir)/arch/generic/bits/*.h)
+ARCH_INCLUDES = $(sort $(foreach a,$(ARCH_FALLBACKS),$(patsubst $(srcdir)/arch/$(a)/%,include/%,$(wildcard $(srcdir)/arch/$(a)/bits/*.h))))
 INCLUDES = $(wildcard $(srcdir)/include/*.h $(srcdir)/include/*/*.h)
-ALL_INCLUDES = $(sort $(INCLUDES:$(srcdir)/%=%) $(GENH:obj/%=%) $(ARCH_INCLUDES:$(srcdir)/arch/$(ARCH)/%=include/%) $(GENERIC_INCLUDES:$(srcdir)/arch/generic/%=include/%))
+ALL_INCLUDES = $(sort $(INCLUDES:$(srcdir)/%=%) $(GENH:obj/%=%) $(ARCH_INCLUDES))
 
 EMPTY_LIB_NAMES = m rt pthread crypt util xnet resolv dl
 EMPTY_LIBS = $(EMPTY_LIB_NAMES:%=lib/lib%.a)
@@ -84,6 +83,12 @@ all:
 
 else
 
+-include $(srcdir)/arch/$(ARCH)/arch.mak
+
+ifeq ($(ARCH_FALLBACKS),)
+ARCH_FALLBACKS = $(ARCH) generic
+endif
+
 all: $(ALL_LIBS) $(ALL_TOOLS)
 
 OBJ_DIRS = $(sort $(patsubst %/,%,$(dir $(ALL_LIBS) $(ALL_TOOLS) $(ALL_OBJS) $(GENH) $(GENH_INT))) obj/include)
@@ -100,6 +105,12 @@ obj/include/bits/syscall.h: $(srcdir)/arch/$(ARCH)/bits/syscall.h.in
 	cp $< $@
 	sed -n -e s/__NR_/SYS_/p < $< >> $@
 
+define mkarchheaders
+$(DESTDIR)$(includedir)/bits/%: $(srcdir)/arch/$(1)/bits/%
+	$(INSTALL) -D -m 644 $$< $$@
+endef
+$(foreach a,$(ARCH_FALLBACKS),$(eval $(call mkarchheaders,$(a))))
+
 obj/src/internal/version.h: $(wildcard $(srcdir)/VERSION $(srcdir)/.git)
 	printf '#define VERSION "%s"\n' "$$(cd $(srcdir); sh tools/version.sh)" > $@
 
@@ -202,12 +213,6 @@ $(DESTDIR)$(libdir)/%.so: lib/%.so
 $(DESTDIR)$(libdir)/%: lib/%
 	$(INSTALL) -D -m 644 $< $@
 
-$(DESTDIR)$(includedir)/bits/%: $(srcdir)/arch/$(ARCH)/bits/%
-	$(INSTALL) -D -m 644 $< $@
-
-$(DESTDIR)$(includedir)/bits/%: $(srcdir)/arch/generic/bits/%
-	$(INSTALL) -D -m 644 $< $@
-
 $(DESTDIR)$(includedir)/bits/%: obj/include/bits/%
 	$(INSTALL) -D -m 644 $< $@
 
-- 
2.9.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 2/5] create big/little endian generic bits overlays
  2016-07-06  3:54 [PATCH 1/5] generalize "generic" fallback for bits headers Bobby Bingham
@ 2016-07-06  3:54 ` Bobby Bingham
  2016-07-06  3:54 ` [PATCH 3/5] create ld64/ld128 " Bobby Bingham
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Bobby Bingham @ 2016-07-06  3:54 UTC (permalink / raw)
  To: musl

---
 arch/{or1k => generic-be}/bits/endian.h   |  0
 arch/{i386 => generic-le}/bits/endian.h   |  0
 arch/{powerpc64 => generic}/bits/endian.h |  0
 arch/i386/arch.mak                        |  1 +
 arch/or1k/arch.mak                        |  1 +
 arch/powerpc/bits/endian.h                | 15 ---------------
 arch/sh/bits/endian.h                     |  5 -----
 arch/x32/arch.mak                         |  1 +
 arch/x32/bits/endian.h                    |  1 -
 arch/x86_64/arch.mak                      |  1 +
 arch/x86_64/bits/endian.h                 |  1 -
 11 files changed, 4 insertions(+), 22 deletions(-)
 rename arch/{or1k => generic-be}/bits/endian.h (100%)
 rename arch/{i386 => generic-le}/bits/endian.h (100%)
 rename arch/{powerpc64 => generic}/bits/endian.h (100%)
 create mode 100644 arch/i386/arch.mak
 create mode 100644 arch/or1k/arch.mak
 delete mode 100644 arch/powerpc/bits/endian.h
 delete mode 100644 arch/sh/bits/endian.h
 create mode 100644 arch/x32/arch.mak
 delete mode 100644 arch/x32/bits/endian.h
 create mode 100644 arch/x86_64/arch.mak
 delete mode 100644 arch/x86_64/bits/endian.h

diff --git a/arch/or1k/bits/endian.h b/arch/generic-be/bits/endian.h
similarity index 100%
rename from arch/or1k/bits/endian.h
rename to arch/generic-be/bits/endian.h
diff --git a/arch/i386/bits/endian.h b/arch/generic-le/bits/endian.h
similarity index 100%
rename from arch/i386/bits/endian.h
rename to arch/generic-le/bits/endian.h
diff --git a/arch/powerpc64/bits/endian.h b/arch/generic/bits/endian.h
similarity index 100%
rename from arch/powerpc64/bits/endian.h
rename to arch/generic/bits/endian.h
diff --git a/arch/i386/arch.mak b/arch/i386/arch.mak
new file mode 100644
index 0000000..9ed39c4
--- /dev/null
+++ b/arch/i386/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = i386 generic-le generic
diff --git a/arch/or1k/arch.mak b/arch/or1k/arch.mak
new file mode 100644
index 0000000..a44f82f
--- /dev/null
+++ b/arch/or1k/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = or1k generic-be generic
diff --git a/arch/powerpc/bits/endian.h b/arch/powerpc/bits/endian.h
deleted file mode 100644
index 4442abf..0000000
--- a/arch/powerpc/bits/endian.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#ifdef __BIG_ENDIAN__
-  #if __BIG_ENDIAN__
-    #define __BYTE_ORDER __BIG_ENDIAN
-  #endif
-#endif /* __BIG_ENDIAN__ */
-
-#ifdef __LITTLE_ENDIAN__
-  #if __LITTLE_ENDIAN__
-    #define __BYTE_ORDER __LITTLE_ENDIAN
-  #endif
-#endif /* __LITTLE_ENDIAN__ */
-
-#ifndef __BYTE_ORDER
-  #define __BYTE_ORDER __BIG_ENDIAN
-#endif
diff --git a/arch/sh/bits/endian.h b/arch/sh/bits/endian.h
deleted file mode 100644
index 2016cb2..0000000
--- a/arch/sh/bits/endian.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#if __BIG_ENDIAN__
-#define __BYTE_ORDER __BIG_ENDIAN
-#else
-#define __BYTE_ORDER __LITTLE_ENDIAN
-#endif
diff --git a/arch/x32/arch.mak b/arch/x32/arch.mak
new file mode 100644
index 0000000..f1c9ec5
--- /dev/null
+++ b/arch/x32/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = x32 generic-le generic
diff --git a/arch/x32/bits/endian.h b/arch/x32/bits/endian.h
deleted file mode 100644
index 172c338..0000000
--- a/arch/x32/bits/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-#define __BYTE_ORDER __LITTLE_ENDIAN
diff --git a/arch/x86_64/arch.mak b/arch/x86_64/arch.mak
new file mode 100644
index 0000000..a9dace7
--- /dev/null
+++ b/arch/x86_64/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = x86_64 generic-le generic
diff --git a/arch/x86_64/bits/endian.h b/arch/x86_64/bits/endian.h
deleted file mode 100644
index 172c338..0000000
--- a/arch/x86_64/bits/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-#define __BYTE_ORDER __LITTLE_ENDIAN
-- 
2.9.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 3/5] create ld64/ld128 generic bits overlays
  2016-07-06  3:54 [PATCH 1/5] generalize "generic" fallback for bits headers Bobby Bingham
  2016-07-06  3:54 ` [PATCH 2/5] create big/little endian generic bits overlays Bobby Bingham
@ 2016-07-06  3:54 ` Bobby Bingham
  2016-07-06  3:54 ` [PATCH 4/5] create 32-/64-bit " Bobby Bingham
  2016-07-06  3:54 ` [PATCH 5/5] move generic fcntl.h to generic-32 Bobby Bingham
  3 siblings, 0 replies; 7+ messages in thread
From: Bobby Bingham @ 2016-07-06  3:54 UTC (permalink / raw)
  To: musl

---
 arch/aarch64/arch.mak                        |  1 +
 arch/arm/arch.mak                            |  1 +
 arch/{aarch64 => generic-ld128}/bits/float.h |  0
 arch/{arm => generic-ld64}/bits/float.h      |  0
 arch/microblaze/arch.mak                     |  1 +
 arch/microblaze/bits/float.h                 | 16 ----------------
 arch/mips/arch.mak                           |  1 +
 arch/mips/bits/float.h                       | 16 ----------------
 arch/mips64/arch.mak                         |  1 +
 arch/mips64/bits/float.h                     | 16 ----------------
 arch/mipsn32/arch.mak                        |  1 +
 arch/mipsn32/bits/float.h                    | 16 ----------------
 arch/or1k/arch.mak                           |  2 +-
 arch/or1k/bits/float.h                       | 16 ----------------
 arch/powerpc/arch.mak                        |  1 +
 arch/powerpc/bits/float.h                    | 16 ----------------
 arch/powerpc64/arch.mak                      |  1 +
 arch/powerpc64/bits/float.h                  | 16 ----------------
 arch/sh/arch.mak                             |  1 +
 arch/sh/bits/float.h                         | 16 ----------------
 20 files changed, 10 insertions(+), 129 deletions(-)
 create mode 100644 arch/aarch64/arch.mak
 create mode 100644 arch/arm/arch.mak
 rename arch/{aarch64 => generic-ld128}/bits/float.h (100%)
 rename arch/{arm => generic-ld64}/bits/float.h (100%)
 create mode 100644 arch/microblaze/arch.mak
 delete mode 100644 arch/microblaze/bits/float.h
 create mode 100644 arch/mips/arch.mak
 delete mode 100644 arch/mips/bits/float.h
 create mode 100644 arch/mips64/arch.mak
 delete mode 100644 arch/mips64/bits/float.h
 create mode 100644 arch/mipsn32/arch.mak
 delete mode 100644 arch/mipsn32/bits/float.h
 delete mode 100644 arch/or1k/bits/float.h
 create mode 100644 arch/powerpc/arch.mak
 delete mode 100644 arch/powerpc/bits/float.h
 create mode 100644 arch/powerpc64/arch.mak
 delete mode 100644 arch/powerpc64/bits/float.h
 create mode 100644 arch/sh/arch.mak
 delete mode 100644 arch/sh/bits/float.h

diff --git a/arch/aarch64/arch.mak b/arch/aarch64/arch.mak
new file mode 100644
index 0000000..20b4b2e
--- /dev/null
+++ b/arch/aarch64/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = aarch64 generic-ld128 generic
diff --git a/arch/arm/arch.mak b/arch/arm/arch.mak
new file mode 100644
index 0000000..3d51073
--- /dev/null
+++ b/arch/arm/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = arm generic-ld64 generic
diff --git a/arch/aarch64/bits/float.h b/arch/generic-ld128/bits/float.h
similarity index 100%
rename from arch/aarch64/bits/float.h
rename to arch/generic-ld128/bits/float.h
diff --git a/arch/arm/bits/float.h b/arch/generic-ld64/bits/float.h
similarity index 100%
rename from arch/arm/bits/float.h
rename to arch/generic-ld64/bits/float.h
diff --git a/arch/microblaze/arch.mak b/arch/microblaze/arch.mak
new file mode 100644
index 0000000..2d907b7
--- /dev/null
+++ b/arch/microblaze/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = microblaze generic-ld64 generic
diff --git a/arch/microblaze/bits/float.h b/arch/microblaze/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/microblaze/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
diff --git a/arch/mips/arch.mak b/arch/mips/arch.mak
new file mode 100644
index 0000000..3d9f55e
--- /dev/null
+++ b/arch/mips/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = mips generic-ld64 generic
diff --git a/arch/mips/bits/float.h b/arch/mips/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/mips/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
diff --git a/arch/mips64/arch.mak b/arch/mips64/arch.mak
new file mode 100644
index 0000000..eb9c4bf
--- /dev/null
+++ b/arch/mips64/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = mips64 generic-ld128 generic
diff --git a/arch/mips64/bits/float.h b/arch/mips64/bits/float.h
deleted file mode 100644
index 719c790..0000000
--- a/arch/mips64/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L
-#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L
-#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L
-#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L
-
-#define LDBL_MANT_DIG 113
-#define LDBL_MIN_EXP (-16381)
-#define LDBL_MAX_EXP 16384
-
-#define LDBL_DIG 33
-#define LDBL_MIN_10_EXP (-4931)
-#define LDBL_MAX_10_EXP 4932
-
-#define DECIMAL_DIG 36
diff --git a/arch/mipsn32/arch.mak b/arch/mipsn32/arch.mak
new file mode 100644
index 0000000..7219df3
--- /dev/null
+++ b/arch/mipsn32/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = mipsn32 generic-ld128 generic
diff --git a/arch/mipsn32/bits/float.h b/arch/mipsn32/bits/float.h
deleted file mode 100644
index 719c790..0000000
--- a/arch/mipsn32/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L
-#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L
-#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L
-#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L
-
-#define LDBL_MANT_DIG 113
-#define LDBL_MIN_EXP (-16381)
-#define LDBL_MAX_EXP 16384
-
-#define LDBL_DIG 33
-#define LDBL_MIN_10_EXP (-4931)
-#define LDBL_MAX_10_EXP 4932
-
-#define DECIMAL_DIG 36
diff --git a/arch/or1k/arch.mak b/arch/or1k/arch.mak
index a44f82f..6dba423 100644
--- a/arch/or1k/arch.mak
+++ b/arch/or1k/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = or1k generic-be generic
+ARCH_FALLBACKS = or1k generic-be generic-ld64 generic
diff --git a/arch/or1k/bits/float.h b/arch/or1k/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/or1k/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
diff --git a/arch/powerpc/arch.mak b/arch/powerpc/arch.mak
new file mode 100644
index 0000000..71389fd
--- /dev/null
+++ b/arch/powerpc/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = powerpc generic-ld64 generic
diff --git a/arch/powerpc/bits/float.h b/arch/powerpc/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/powerpc/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
diff --git a/arch/powerpc64/arch.mak b/arch/powerpc64/arch.mak
new file mode 100644
index 0000000..939ccc2
--- /dev/null
+++ b/arch/powerpc64/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = powerpc64 generic-ld64 generic
diff --git a/arch/powerpc64/bits/float.h b/arch/powerpc64/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/powerpc64/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
diff --git a/arch/sh/arch.mak b/arch/sh/arch.mak
new file mode 100644
index 0000000..54c4951
--- /dev/null
+++ b/arch/sh/arch.mak
@@ -0,0 +1 @@
+ARCH_FALLBACKS = sh generic-ld64 generic
diff --git a/arch/sh/bits/float.h b/arch/sh/bits/float.h
deleted file mode 100644
index c4a655e..0000000
--- a/arch/sh/bits/float.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#define FLT_EVAL_METHOD 0
-
-#define LDBL_TRUE_MIN 4.94065645841246544177e-324L
-#define LDBL_MIN 2.22507385850720138309e-308L
-#define LDBL_MAX 1.79769313486231570815e+308L
-#define LDBL_EPSILON 2.22044604925031308085e-16L
-
-#define LDBL_MANT_DIG 53
-#define LDBL_MIN_EXP (-1021)
-#define LDBL_MAX_EXP 1024
-
-#define LDBL_DIG 15
-#define LDBL_MIN_10_EXP (-307)
-#define LDBL_MAX_10_EXP 308
-
-#define DECIMAL_DIG 17
-- 
2.9.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 4/5] create 32-/64-bit generic bits overlays
  2016-07-06  3:54 [PATCH 1/5] generalize "generic" fallback for bits headers Bobby Bingham
  2016-07-06  3:54 ` [PATCH 2/5] create big/little endian generic bits overlays Bobby Bingham
  2016-07-06  3:54 ` [PATCH 3/5] create ld64/ld128 " Bobby Bingham
@ 2016-07-06  3:54 ` Bobby Bingham
  2016-07-06  4:29   ` Rich Felker
  2016-07-06  4:31   ` Rich Felker
  2016-07-06  3:54 ` [PATCH 5/5] move generic fcntl.h to generic-32 Bobby Bingham
  3 siblings, 2 replies; 7+ messages in thread
From: Bobby Bingham @ 2016-07-06  3:54 UTC (permalink / raw)
  To: musl

---
 arch/aarch64/arch.mak                         |  2 +-
 arch/aarch64/bits/limits.h                    |  7 -------
 arch/arm/arch.mak                             |  2 +-
 arch/{microblaze => generic-32}/bits/limits.h |  0
 arch/{arm => generic-32}/bits/posix.h         |  0
 arch/{arm => generic-32}/bits/reg.h           |  1 -
 arch/{arm => generic-32}/bits/stdint.h        |  0
 arch/{mips64 => generic-64}/bits/limits.h     |  0
 arch/{aarch64 => generic-64}/bits/posix.h     |  0
 arch/{aarch64 => generic-64}/bits/reg.h       |  0
 arch/{aarch64 => generic-64}/bits/stdint.h    |  0
 arch/i386/arch.mak                            |  2 +-
 arch/i386/bits/posix.h                        |  2 --
 arch/i386/bits/stdint.h                       | 20 --------------------
 arch/microblaze/arch.mak                      |  2 +-
 arch/microblaze/bits/posix.h                  |  2 --
 arch/microblaze/bits/reg.h                    |  3 ---
 arch/microblaze/bits/stdint.h                 | 20 --------------------
 arch/mips/arch.mak                            |  2 +-
 arch/mips/bits/limits.h                       |  7 -------
 arch/mips/bits/posix.h                        |  2 --
 arch/mips/bits/stdint.h                       | 20 --------------------
 arch/mips64/arch.mak                          |  2 +-
 arch/mips64/bits/stdint.h                     | 20 --------------------
 arch/mipsn32/arch.mak                         |  2 +-
 arch/mipsn32/bits/limits.h                    |  7 -------
 arch/mipsn32/bits/posix.h                     |  2 --
 arch/mipsn32/bits/stdint.h                    | 20 --------------------
 arch/or1k/arch.mak                            |  2 +-
 arch/or1k/bits/posix.h                        |  2 --
 arch/or1k/bits/reg.h                          |  3 ---
 arch/or1k/bits/stdint.h                       | 20 --------------------
 arch/powerpc/arch.mak                         |  2 +-
 arch/powerpc/bits/limits.h                    |  7 -------
 arch/powerpc/bits/posix.h                     |  2 --
 arch/powerpc/bits/reg.h                       |  3 ---
 arch/powerpc/bits/stdint.h                    | 20 --------------------
 arch/powerpc64/arch.mak                       |  2 +-
 arch/powerpc64/bits/limits.h                  |  7 -------
 arch/powerpc64/bits/posix.h                   |  2 --
 arch/powerpc64/bits/reg.h                     |  3 ---
 arch/powerpc64/bits/stdint.h                  | 20 --------------------
 arch/sh/arch.mak                              |  2 +-
 arch/sh/bits/posix.h                          |  2 --
 arch/sh/bits/stdint.h                         | 20 --------------------
 arch/x32/arch.mak                             |  2 +-
 arch/x32/bits/posix.h                         |  2 --
 arch/x32/bits/stdint.h                        | 20 --------------------
 arch/x86_64/arch.mak                          |  2 +-
 arch/x86_64/bits/posix.h                      |  2 --
 arch/x86_64/bits/stdint.h                     | 20 --------------------
 51 files changed, 13 insertions(+), 301 deletions(-)
 delete mode 100644 arch/aarch64/bits/limits.h
 rename arch/{microblaze => generic-32}/bits/limits.h (100%)
 rename arch/{arm => generic-32}/bits/posix.h (100%)
 rename arch/{arm => generic-32}/bits/reg.h (76%)
 rename arch/{arm => generic-32}/bits/stdint.h (100%)
 rename arch/{mips64 => generic-64}/bits/limits.h (100%)
 rename arch/{aarch64 => generic-64}/bits/posix.h (100%)
 rename arch/{aarch64 => generic-64}/bits/reg.h (100%)
 rename arch/{aarch64 => generic-64}/bits/stdint.h (100%)
 delete mode 100644 arch/i386/bits/posix.h
 delete mode 100644 arch/i386/bits/stdint.h
 delete mode 100644 arch/microblaze/bits/posix.h
 delete mode 100644 arch/microblaze/bits/reg.h
 delete mode 100644 arch/microblaze/bits/stdint.h
 delete mode 100644 arch/mips/bits/limits.h
 delete mode 100644 arch/mips/bits/posix.h
 delete mode 100644 arch/mips/bits/stdint.h
 delete mode 100644 arch/mips64/bits/stdint.h
 delete mode 100644 arch/mipsn32/bits/limits.h
 delete mode 100644 arch/mipsn32/bits/posix.h
 delete mode 100644 arch/mipsn32/bits/stdint.h
 delete mode 100644 arch/or1k/bits/posix.h
 delete mode 100644 arch/or1k/bits/reg.h
 delete mode 100644 arch/or1k/bits/stdint.h
 delete mode 100644 arch/powerpc/bits/limits.h
 delete mode 100644 arch/powerpc/bits/posix.h
 delete mode 100644 arch/powerpc/bits/reg.h
 delete mode 100644 arch/powerpc/bits/stdint.h
 delete mode 100644 arch/powerpc64/bits/limits.h
 delete mode 100644 arch/powerpc64/bits/posix.h
 delete mode 100644 arch/powerpc64/bits/reg.h
 delete mode 100644 arch/powerpc64/bits/stdint.h
 delete mode 100644 arch/sh/bits/posix.h
 delete mode 100644 arch/sh/bits/stdint.h
 delete mode 100644 arch/x32/bits/posix.h
 delete mode 100644 arch/x32/bits/stdint.h
 delete mode 100644 arch/x86_64/bits/posix.h
 delete mode 100644 arch/x86_64/bits/stdint.h

diff --git a/arch/aarch64/arch.mak b/arch/aarch64/arch.mak
index 20b4b2e..08bfbe7 100644
--- a/arch/aarch64/arch.mak
+++ b/arch/aarch64/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = aarch64 generic-ld128 generic
+ARCH_FALLBACKS = aarch64 generic-64 generic-ld128 generic
diff --git a/arch/aarch64/bits/limits.h b/arch/aarch64/bits/limits.h
deleted file mode 100644
index 0226588..0000000
--- a/arch/aarch64/bits/limits.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define LONG_BIT 64
-#endif
-
-#define LONG_MAX  0x7fffffffffffffffL
-#define LLONG_MAX  0x7fffffffffffffffLL
diff --git a/arch/arm/arch.mak b/arch/arm/arch.mak
index 3d51073..fb84cd9 100644
--- a/arch/arm/arch.mak
+++ b/arch/arm/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = arm generic-ld64 generic
+ARCH_FALLBACKS = arm generic-32 generic-ld64 generic
diff --git a/arch/microblaze/bits/limits.h b/arch/generic-32/bits/limits.h
similarity index 100%
rename from arch/microblaze/bits/limits.h
rename to arch/generic-32/bits/limits.h
diff --git a/arch/arm/bits/posix.h b/arch/generic-32/bits/posix.h
similarity index 100%
rename from arch/arm/bits/posix.h
rename to arch/generic-32/bits/posix.h
diff --git a/arch/arm/bits/reg.h b/arch/generic-32/bits/reg.h
similarity index 76%
rename from arch/arm/bits/reg.h
rename to arch/generic-32/bits/reg.h
index 0c7bffc..0192a29 100644
--- a/arch/arm/bits/reg.h
+++ b/arch/generic-32/bits/reg.h
@@ -1,3 +1,2 @@
 #undef __WORDSIZE
 #define __WORDSIZE 32
-/* FIXME */
diff --git a/arch/arm/bits/stdint.h b/arch/generic-32/bits/stdint.h
similarity index 100%
rename from arch/arm/bits/stdint.h
rename to arch/generic-32/bits/stdint.h
diff --git a/arch/mips64/bits/limits.h b/arch/generic-64/bits/limits.h
similarity index 100%
rename from arch/mips64/bits/limits.h
rename to arch/generic-64/bits/limits.h
diff --git a/arch/aarch64/bits/posix.h b/arch/generic-64/bits/posix.h
similarity index 100%
rename from arch/aarch64/bits/posix.h
rename to arch/generic-64/bits/posix.h
diff --git a/arch/aarch64/bits/reg.h b/arch/generic-64/bits/reg.h
similarity index 100%
rename from arch/aarch64/bits/reg.h
rename to arch/generic-64/bits/reg.h
diff --git a/arch/aarch64/bits/stdint.h b/arch/generic-64/bits/stdint.h
similarity index 100%
rename from arch/aarch64/bits/stdint.h
rename to arch/generic-64/bits/stdint.h
diff --git a/arch/i386/arch.mak b/arch/i386/arch.mak
index 9ed39c4..3d760cf 100644
--- a/arch/i386/arch.mak
+++ b/arch/i386/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = i386 generic-le generic
+ARCH_FALLBACKS = i386 generic-32 generic-le generic
diff --git a/arch/i386/bits/posix.h b/arch/i386/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/i386/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/i386/bits/stdint.h b/arch/i386/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/i386/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/microblaze/arch.mak b/arch/microblaze/arch.mak
index 2d907b7..42d96fc 100644
--- a/arch/microblaze/arch.mak
+++ b/arch/microblaze/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = microblaze generic-ld64 generic
+ARCH_FALLBACKS = microblaze generic-32 generic-ld64 generic
diff --git a/arch/microblaze/bits/posix.h b/arch/microblaze/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/microblaze/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/microblaze/bits/reg.h b/arch/microblaze/bits/reg.h
deleted file mode 100644
index 0c7bffc..0000000
--- a/arch/microblaze/bits/reg.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 32
-/* FIXME */
diff --git a/arch/microblaze/bits/stdint.h b/arch/microblaze/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/microblaze/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/mips/arch.mak b/arch/mips/arch.mak
index 3d9f55e..7f288cb 100644
--- a/arch/mips/arch.mak
+++ b/arch/mips/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = mips generic-ld64 generic
+ARCH_FALLBACKS = mips generic-32 generic-ld64 generic
diff --git a/arch/mips/bits/limits.h b/arch/mips/bits/limits.h
deleted file mode 100644
index fbc6d23..0000000
--- a/arch/mips/bits/limits.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define LONG_BIT 32
-#endif
-
-#define LONG_MAX  0x7fffffffL
-#define LLONG_MAX  0x7fffffffffffffffLL
diff --git a/arch/mips/bits/posix.h b/arch/mips/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/mips/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/mips/bits/stdint.h b/arch/mips/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/mips/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/mips64/arch.mak b/arch/mips64/arch.mak
index eb9c4bf..abd5432 100644
--- a/arch/mips64/arch.mak
+++ b/arch/mips64/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = mips64 generic-ld128 generic
+ARCH_FALLBACKS = mips64 generic-64 generic-ld128 generic
diff --git a/arch/mips64/bits/stdint.h b/arch/mips64/bits/stdint.h
deleted file mode 100644
index 1bb147f..0000000
--- a/arch/mips64/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT64_MIN
-#define INTPTR_MAX      INT64_MAX
-#define UINTPTR_MAX     UINT64_MAX
-#define PTRDIFF_MIN     INT64_MIN
-#define PTRDIFF_MAX     INT64_MAX
-#define SIZE_MAX        UINT64_MAX
diff --git a/arch/mipsn32/arch.mak b/arch/mipsn32/arch.mak
index 7219df3..21ea05e 100644
--- a/arch/mipsn32/arch.mak
+++ b/arch/mipsn32/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = mipsn32 generic-ld128 generic
+ARCH_FALLBACKS = mipsn32 generic-32 generic-ld128 generic
diff --git a/arch/mipsn32/bits/limits.h b/arch/mipsn32/bits/limits.h
deleted file mode 100644
index fbc6d23..0000000
--- a/arch/mipsn32/bits/limits.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define LONG_BIT 32
-#endif
-
-#define LONG_MAX  0x7fffffffL
-#define LLONG_MAX  0x7fffffffffffffffLL
diff --git a/arch/mipsn32/bits/posix.h b/arch/mipsn32/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/mipsn32/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/mipsn32/bits/stdint.h b/arch/mipsn32/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/mipsn32/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/or1k/arch.mak b/arch/or1k/arch.mak
index 6dba423..e602974 100644
--- a/arch/or1k/arch.mak
+++ b/arch/or1k/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = or1k generic-be generic-ld64 generic
+ARCH_FALLBACKS = or1k generic-32 generic-be generic-ld64 generic
diff --git a/arch/or1k/bits/posix.h b/arch/or1k/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/or1k/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/or1k/bits/reg.h b/arch/or1k/bits/reg.h
deleted file mode 100644
index 0c7bffc..0000000
--- a/arch/or1k/bits/reg.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 32
-/* FIXME */
diff --git a/arch/or1k/bits/stdint.h b/arch/or1k/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/or1k/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/powerpc/arch.mak b/arch/powerpc/arch.mak
index 71389fd..cc6ba13 100644
--- a/arch/powerpc/arch.mak
+++ b/arch/powerpc/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = powerpc generic-ld64 generic
+ARCH_FALLBACKS = powerpc generic-32 generic-ld64 generic
diff --git a/arch/powerpc/bits/limits.h b/arch/powerpc/bits/limits.h
deleted file mode 100644
index fbc6d23..0000000
--- a/arch/powerpc/bits/limits.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define LONG_BIT 32
-#endif
-
-#define LONG_MAX  0x7fffffffL
-#define LLONG_MAX  0x7fffffffffffffffLL
diff --git a/arch/powerpc/bits/posix.h b/arch/powerpc/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/powerpc/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/powerpc/bits/reg.h b/arch/powerpc/bits/reg.h
deleted file mode 100644
index 0c7bffc..0000000
--- a/arch/powerpc/bits/reg.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 32
-/* FIXME */
diff --git a/arch/powerpc/bits/stdint.h b/arch/powerpc/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/powerpc/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/powerpc64/arch.mak b/arch/powerpc64/arch.mak
index 939ccc2..85d9f35 100644
--- a/arch/powerpc64/arch.mak
+++ b/arch/powerpc64/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = powerpc64 generic-ld64 generic
+ARCH_FALLBACKS = powerpc64 generic-64 generic-ld64 generic
diff --git a/arch/powerpc64/bits/limits.h b/arch/powerpc64/bits/limits.h
deleted file mode 100644
index 0226588..0000000
--- a/arch/powerpc64/bits/limits.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
- || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
-#define LONG_BIT 64
-#endif
-
-#define LONG_MAX  0x7fffffffffffffffL
-#define LLONG_MAX  0x7fffffffffffffffLL
diff --git a/arch/powerpc64/bits/posix.h b/arch/powerpc64/bits/posix.h
deleted file mode 100644
index c37b94c..0000000
--- a/arch/powerpc64/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_LP64_OFF64  1
-#define _POSIX_V7_LP64_OFF64  1
diff --git a/arch/powerpc64/bits/reg.h b/arch/powerpc64/bits/reg.h
deleted file mode 100644
index 49382c8..0000000
--- a/arch/powerpc64/bits/reg.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#undef __WORDSIZE
-#define __WORDSIZE 64
-/* FIXME */
diff --git a/arch/powerpc64/bits/stdint.h b/arch/powerpc64/bits/stdint.h
deleted file mode 100644
index 1bb147f..0000000
--- a/arch/powerpc64/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT64_MIN
-#define INTPTR_MAX      INT64_MAX
-#define UINTPTR_MAX     UINT64_MAX
-#define PTRDIFF_MIN     INT64_MIN
-#define PTRDIFF_MAX     INT64_MAX
-#define SIZE_MAX        UINT64_MAX
diff --git a/arch/sh/arch.mak b/arch/sh/arch.mak
index 54c4951..0f26a00 100644
--- a/arch/sh/arch.mak
+++ b/arch/sh/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = sh generic-ld64 generic
+ARCH_FALLBACKS = sh generic-32 generic-ld64 generic
diff --git a/arch/sh/bits/posix.h b/arch/sh/bits/posix.h
deleted file mode 100644
index 30a3871..0000000
--- a/arch/sh/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_ILP32_OFFBIG  1
-#define _POSIX_V7_ILP32_OFFBIG  1
diff --git a/arch/sh/bits/stdint.h b/arch/sh/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/sh/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/x32/arch.mak b/arch/x32/arch.mak
index f1c9ec5..e444e14 100644
--- a/arch/x32/arch.mak
+++ b/arch/x32/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = x32 generic-le generic
+ARCH_FALLBACKS = x32 generic-32 generic-le generic
diff --git a/arch/x32/bits/posix.h b/arch/x32/bits/posix.h
deleted file mode 100644
index c37b94c..0000000
--- a/arch/x32/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_LP64_OFF64  1
-#define _POSIX_V7_LP64_OFF64  1
diff --git a/arch/x32/bits/stdint.h b/arch/x32/bits/stdint.h
deleted file mode 100644
index d1b2712..0000000
--- a/arch/x32/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT32_MIN
-#define INTPTR_MAX      INT32_MAX
-#define UINTPTR_MAX     UINT32_MAX
-#define PTRDIFF_MIN     INT32_MIN
-#define PTRDIFF_MAX     INT32_MAX
-#define SIZE_MAX        UINT32_MAX
diff --git a/arch/x86_64/arch.mak b/arch/x86_64/arch.mak
index a9dace7..a71afe3 100644
--- a/arch/x86_64/arch.mak
+++ b/arch/x86_64/arch.mak
@@ -1 +1 @@
-ARCH_FALLBACKS = x86_64 generic-le generic
+ARCH_FALLBACKS = x86_64 generic-64 generic-le generic
diff --git a/arch/x86_64/bits/posix.h b/arch/x86_64/bits/posix.h
deleted file mode 100644
index c37b94c..0000000
--- a/arch/x86_64/bits/posix.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#define _POSIX_V6_LP64_OFF64  1
-#define _POSIX_V7_LP64_OFF64  1
diff --git a/arch/x86_64/bits/stdint.h b/arch/x86_64/bits/stdint.h
deleted file mode 100644
index 1bb147f..0000000
--- a/arch/x86_64/bits/stdint.h
+++ /dev/null
@@ -1,20 +0,0 @@
-typedef int32_t int_fast16_t;
-typedef int32_t int_fast32_t;
-typedef uint32_t uint_fast16_t;
-typedef uint32_t uint_fast32_t;
-
-#define INT_FAST16_MIN  INT32_MIN
-#define INT_FAST32_MIN  INT32_MIN
-
-#define INT_FAST16_MAX  INT32_MAX
-#define INT_FAST32_MAX  INT32_MAX
-
-#define UINT_FAST16_MAX UINT32_MAX
-#define UINT_FAST32_MAX UINT32_MAX
-
-#define INTPTR_MIN      INT64_MIN
-#define INTPTR_MAX      INT64_MAX
-#define UINTPTR_MAX     UINT64_MAX
-#define PTRDIFF_MIN     INT64_MIN
-#define PTRDIFF_MAX     INT64_MAX
-#define SIZE_MAX        UINT64_MAX
-- 
2.9.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 5/5] move generic fcntl.h to generic-32
  2016-07-06  3:54 [PATCH 1/5] generalize "generic" fallback for bits headers Bobby Bingham
                   ` (2 preceding siblings ...)
  2016-07-06  3:54 ` [PATCH 4/5] create 32-/64-bit " Bobby Bingham
@ 2016-07-06  3:54 ` Bobby Bingham
  3 siblings, 0 replies; 7+ messages in thread
From: Bobby Bingham @ 2016-07-06  3:54 UTC (permalink / raw)
  To: musl

This file matches the generic definitions used by the kernel, but does not
take into account that a few constants should vary between 32- and 64-bit
ports.  Thus, this file is only appropriate for use on 32-bit ports.
---
 arch/{generic => generic-32}/bits/fcntl.h | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename arch/{generic => generic-32}/bits/fcntl.h (100%)

diff --git a/arch/generic/bits/fcntl.h b/arch/generic-32/bits/fcntl.h
similarity index 100%
rename from arch/generic/bits/fcntl.h
rename to arch/generic-32/bits/fcntl.h
-- 
2.9.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 4/5] create 32-/64-bit generic bits overlays
  2016-07-06  3:54 ` [PATCH 4/5] create 32-/64-bit " Bobby Bingham
@ 2016-07-06  4:29   ` Rich Felker
  2016-07-06  4:31   ` Rich Felker
  1 sibling, 0 replies; 7+ messages in thread
From: Rich Felker @ 2016-07-06  4:29 UTC (permalink / raw)
  To: musl

Before committing this I'd like to consider whether it might make more
sense to remove even more. By having the arch's alltypes.h.in define
one or more simple internal-use macros for word-size, I think most/all
of these definitions could go in the top-level headers directly,
letting us actually remove entire files (posix.h, limits.h, stdint.h,
maybe others) from bits.

One thing I'd particularly like to do is get the duplicate pthread
type definitions out of the individual archs' alltypes.h.in files and
into the generic alltypes.h.in, so that there's no risk of introducing
inconsistency when new archs are added. This could be done with such a
macro, but it could also be done with an approach like what you have
now, using multiple bits fallback dirs to produce alltypes.h.

Rich


On Tue, Jul 05, 2016 at 10:54:13PM -0500, Bobby Bingham wrote:
> ---
>  arch/aarch64/arch.mak                         |  2 +-
>  arch/aarch64/bits/limits.h                    |  7 -------
>  arch/arm/arch.mak                             |  2 +-
>  arch/{microblaze => generic-32}/bits/limits.h |  0
>  arch/{arm => generic-32}/bits/posix.h         |  0
>  arch/{arm => generic-32}/bits/reg.h           |  1 -
>  arch/{arm => generic-32}/bits/stdint.h        |  0
>  arch/{mips64 => generic-64}/bits/limits.h     |  0
>  arch/{aarch64 => generic-64}/bits/posix.h     |  0
>  arch/{aarch64 => generic-64}/bits/reg.h       |  0
>  arch/{aarch64 => generic-64}/bits/stdint.h    |  0
>  arch/i386/arch.mak                            |  2 +-
>  arch/i386/bits/posix.h                        |  2 --
>  arch/i386/bits/stdint.h                       | 20 --------------------
>  arch/microblaze/arch.mak                      |  2 +-
>  arch/microblaze/bits/posix.h                  |  2 --
>  arch/microblaze/bits/reg.h                    |  3 ---
>  arch/microblaze/bits/stdint.h                 | 20 --------------------
>  arch/mips/arch.mak                            |  2 +-
>  arch/mips/bits/limits.h                       |  7 -------
>  arch/mips/bits/posix.h                        |  2 --
>  arch/mips/bits/stdint.h                       | 20 --------------------
>  arch/mips64/arch.mak                          |  2 +-
>  arch/mips64/bits/stdint.h                     | 20 --------------------
>  arch/mipsn32/arch.mak                         |  2 +-
>  arch/mipsn32/bits/limits.h                    |  7 -------
>  arch/mipsn32/bits/posix.h                     |  2 --
>  arch/mipsn32/bits/stdint.h                    | 20 --------------------
>  arch/or1k/arch.mak                            |  2 +-
>  arch/or1k/bits/posix.h                        |  2 --
>  arch/or1k/bits/reg.h                          |  3 ---
>  arch/or1k/bits/stdint.h                       | 20 --------------------
>  arch/powerpc/arch.mak                         |  2 +-
>  arch/powerpc/bits/limits.h                    |  7 -------
>  arch/powerpc/bits/posix.h                     |  2 --
>  arch/powerpc/bits/reg.h                       |  3 ---
>  arch/powerpc/bits/stdint.h                    | 20 --------------------
>  arch/powerpc64/arch.mak                       |  2 +-
>  arch/powerpc64/bits/limits.h                  |  7 -------
>  arch/powerpc64/bits/posix.h                   |  2 --
>  arch/powerpc64/bits/reg.h                     |  3 ---
>  arch/powerpc64/bits/stdint.h                  | 20 --------------------
>  arch/sh/arch.mak                              |  2 +-
>  arch/sh/bits/posix.h                          |  2 --
>  arch/sh/bits/stdint.h                         | 20 --------------------
>  arch/x32/arch.mak                             |  2 +-
>  arch/x32/bits/posix.h                         |  2 --
>  arch/x32/bits/stdint.h                        | 20 --------------------
>  arch/x86_64/arch.mak                          |  2 +-
>  arch/x86_64/bits/posix.h                      |  2 --
>  arch/x86_64/bits/stdint.h                     | 20 --------------------
>  51 files changed, 13 insertions(+), 301 deletions(-)
>  delete mode 100644 arch/aarch64/bits/limits.h
>  rename arch/{microblaze => generic-32}/bits/limits.h (100%)
>  rename arch/{arm => generic-32}/bits/posix.h (100%)
>  rename arch/{arm => generic-32}/bits/reg.h (76%)
>  rename arch/{arm => generic-32}/bits/stdint.h (100%)
>  rename arch/{mips64 => generic-64}/bits/limits.h (100%)
>  rename arch/{aarch64 => generic-64}/bits/posix.h (100%)
>  rename arch/{aarch64 => generic-64}/bits/reg.h (100%)
>  rename arch/{aarch64 => generic-64}/bits/stdint.h (100%)
>  delete mode 100644 arch/i386/bits/posix.h
>  delete mode 100644 arch/i386/bits/stdint.h
>  delete mode 100644 arch/microblaze/bits/posix.h
>  delete mode 100644 arch/microblaze/bits/reg.h
>  delete mode 100644 arch/microblaze/bits/stdint.h
>  delete mode 100644 arch/mips/bits/limits.h
>  delete mode 100644 arch/mips/bits/posix.h
>  delete mode 100644 arch/mips/bits/stdint.h
>  delete mode 100644 arch/mips64/bits/stdint.h
>  delete mode 100644 arch/mipsn32/bits/limits.h
>  delete mode 100644 arch/mipsn32/bits/posix.h
>  delete mode 100644 arch/mipsn32/bits/stdint.h
>  delete mode 100644 arch/or1k/bits/posix.h
>  delete mode 100644 arch/or1k/bits/reg.h
>  delete mode 100644 arch/or1k/bits/stdint.h
>  delete mode 100644 arch/powerpc/bits/limits.h
>  delete mode 100644 arch/powerpc/bits/posix.h
>  delete mode 100644 arch/powerpc/bits/reg.h
>  delete mode 100644 arch/powerpc/bits/stdint.h
>  delete mode 100644 arch/powerpc64/bits/limits.h
>  delete mode 100644 arch/powerpc64/bits/posix.h
>  delete mode 100644 arch/powerpc64/bits/reg.h
>  delete mode 100644 arch/powerpc64/bits/stdint.h
>  delete mode 100644 arch/sh/bits/posix.h
>  delete mode 100644 arch/sh/bits/stdint.h
>  delete mode 100644 arch/x32/bits/posix.h
>  delete mode 100644 arch/x32/bits/stdint.h
>  delete mode 100644 arch/x86_64/bits/posix.h
>  delete mode 100644 arch/x86_64/bits/stdint.h
> 
> diff --git a/arch/aarch64/arch.mak b/arch/aarch64/arch.mak
> index 20b4b2e..08bfbe7 100644
> --- a/arch/aarch64/arch.mak
> +++ b/arch/aarch64/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = aarch64 generic-ld128 generic
> +ARCH_FALLBACKS = aarch64 generic-64 generic-ld128 generic
> diff --git a/arch/aarch64/bits/limits.h b/arch/aarch64/bits/limits.h
> deleted file mode 100644
> index 0226588..0000000
> --- a/arch/aarch64/bits/limits.h
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> -#define LONG_BIT 64
> -#endif
> -
> -#define LONG_MAX  0x7fffffffffffffffL
> -#define LLONG_MAX  0x7fffffffffffffffLL
> diff --git a/arch/arm/arch.mak b/arch/arm/arch.mak
> index 3d51073..fb84cd9 100644
> --- a/arch/arm/arch.mak
> +++ b/arch/arm/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = arm generic-ld64 generic
> +ARCH_FALLBACKS = arm generic-32 generic-ld64 generic
> diff --git a/arch/microblaze/bits/limits.h b/arch/generic-32/bits/limits.h
> similarity index 100%
> rename from arch/microblaze/bits/limits.h
> rename to arch/generic-32/bits/limits.h
> diff --git a/arch/arm/bits/posix.h b/arch/generic-32/bits/posix.h
> similarity index 100%
> rename from arch/arm/bits/posix.h
> rename to arch/generic-32/bits/posix.h
> diff --git a/arch/arm/bits/reg.h b/arch/generic-32/bits/reg.h
> similarity index 76%
> rename from arch/arm/bits/reg.h
> rename to arch/generic-32/bits/reg.h
> index 0c7bffc..0192a29 100644
> --- a/arch/arm/bits/reg.h
> +++ b/arch/generic-32/bits/reg.h
> @@ -1,3 +1,2 @@
>  #undef __WORDSIZE
>  #define __WORDSIZE 32
> -/* FIXME */
> diff --git a/arch/arm/bits/stdint.h b/arch/generic-32/bits/stdint.h
> similarity index 100%
> rename from arch/arm/bits/stdint.h
> rename to arch/generic-32/bits/stdint.h
> diff --git a/arch/mips64/bits/limits.h b/arch/generic-64/bits/limits.h
> similarity index 100%
> rename from arch/mips64/bits/limits.h
> rename to arch/generic-64/bits/limits.h
> diff --git a/arch/aarch64/bits/posix.h b/arch/generic-64/bits/posix.h
> similarity index 100%
> rename from arch/aarch64/bits/posix.h
> rename to arch/generic-64/bits/posix.h
> diff --git a/arch/aarch64/bits/reg.h b/arch/generic-64/bits/reg.h
> similarity index 100%
> rename from arch/aarch64/bits/reg.h
> rename to arch/generic-64/bits/reg.h
> diff --git a/arch/aarch64/bits/stdint.h b/arch/generic-64/bits/stdint.h
> similarity index 100%
> rename from arch/aarch64/bits/stdint.h
> rename to arch/generic-64/bits/stdint.h
> diff --git a/arch/i386/arch.mak b/arch/i386/arch.mak
> index 9ed39c4..3d760cf 100644
> --- a/arch/i386/arch.mak
> +++ b/arch/i386/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = i386 generic-le generic
> +ARCH_FALLBACKS = i386 generic-32 generic-le generic
> diff --git a/arch/i386/bits/posix.h b/arch/i386/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/i386/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/i386/bits/stdint.h b/arch/i386/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/i386/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/microblaze/arch.mak b/arch/microblaze/arch.mak
> index 2d907b7..42d96fc 100644
> --- a/arch/microblaze/arch.mak
> +++ b/arch/microblaze/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = microblaze generic-ld64 generic
> +ARCH_FALLBACKS = microblaze generic-32 generic-ld64 generic
> diff --git a/arch/microblaze/bits/posix.h b/arch/microblaze/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/microblaze/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/microblaze/bits/reg.h b/arch/microblaze/bits/reg.h
> deleted file mode 100644
> index 0c7bffc..0000000
> --- a/arch/microblaze/bits/reg.h
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#undef __WORDSIZE
> -#define __WORDSIZE 32
> -/* FIXME */
> diff --git a/arch/microblaze/bits/stdint.h b/arch/microblaze/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/microblaze/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/mips/arch.mak b/arch/mips/arch.mak
> index 3d9f55e..7f288cb 100644
> --- a/arch/mips/arch.mak
> +++ b/arch/mips/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = mips generic-ld64 generic
> +ARCH_FALLBACKS = mips generic-32 generic-ld64 generic
> diff --git a/arch/mips/bits/limits.h b/arch/mips/bits/limits.h
> deleted file mode 100644
> index fbc6d23..0000000
> --- a/arch/mips/bits/limits.h
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> -#define LONG_BIT 32
> -#endif
> -
> -#define LONG_MAX  0x7fffffffL
> -#define LLONG_MAX  0x7fffffffffffffffLL
> diff --git a/arch/mips/bits/posix.h b/arch/mips/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/mips/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/mips/bits/stdint.h b/arch/mips/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/mips/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/mips64/arch.mak b/arch/mips64/arch.mak
> index eb9c4bf..abd5432 100644
> --- a/arch/mips64/arch.mak
> +++ b/arch/mips64/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = mips64 generic-ld128 generic
> +ARCH_FALLBACKS = mips64 generic-64 generic-ld128 generic
> diff --git a/arch/mips64/bits/stdint.h b/arch/mips64/bits/stdint.h
> deleted file mode 100644
> index 1bb147f..0000000
> --- a/arch/mips64/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT64_MIN
> -#define INTPTR_MAX      INT64_MAX
> -#define UINTPTR_MAX     UINT64_MAX
> -#define PTRDIFF_MIN     INT64_MIN
> -#define PTRDIFF_MAX     INT64_MAX
> -#define SIZE_MAX        UINT64_MAX
> diff --git a/arch/mipsn32/arch.mak b/arch/mipsn32/arch.mak
> index 7219df3..21ea05e 100644
> --- a/arch/mipsn32/arch.mak
> +++ b/arch/mipsn32/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = mipsn32 generic-ld128 generic
> +ARCH_FALLBACKS = mipsn32 generic-32 generic-ld128 generic
> diff --git a/arch/mipsn32/bits/limits.h b/arch/mipsn32/bits/limits.h
> deleted file mode 100644
> index fbc6d23..0000000
> --- a/arch/mipsn32/bits/limits.h
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> -#define LONG_BIT 32
> -#endif
> -
> -#define LONG_MAX  0x7fffffffL
> -#define LLONG_MAX  0x7fffffffffffffffLL
> diff --git a/arch/mipsn32/bits/posix.h b/arch/mipsn32/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/mipsn32/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/mipsn32/bits/stdint.h b/arch/mipsn32/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/mipsn32/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/or1k/arch.mak b/arch/or1k/arch.mak
> index 6dba423..e602974 100644
> --- a/arch/or1k/arch.mak
> +++ b/arch/or1k/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = or1k generic-be generic-ld64 generic
> +ARCH_FALLBACKS = or1k generic-32 generic-be generic-ld64 generic
> diff --git a/arch/or1k/bits/posix.h b/arch/or1k/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/or1k/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/or1k/bits/reg.h b/arch/or1k/bits/reg.h
> deleted file mode 100644
> index 0c7bffc..0000000
> --- a/arch/or1k/bits/reg.h
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#undef __WORDSIZE
> -#define __WORDSIZE 32
> -/* FIXME */
> diff --git a/arch/or1k/bits/stdint.h b/arch/or1k/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/or1k/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/powerpc/arch.mak b/arch/powerpc/arch.mak
> index 71389fd..cc6ba13 100644
> --- a/arch/powerpc/arch.mak
> +++ b/arch/powerpc/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = powerpc generic-ld64 generic
> +ARCH_FALLBACKS = powerpc generic-32 generic-ld64 generic
> diff --git a/arch/powerpc/bits/limits.h b/arch/powerpc/bits/limits.h
> deleted file mode 100644
> index fbc6d23..0000000
> --- a/arch/powerpc/bits/limits.h
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> -#define LONG_BIT 32
> -#endif
> -
> -#define LONG_MAX  0x7fffffffL
> -#define LLONG_MAX  0x7fffffffffffffffLL
> diff --git a/arch/powerpc/bits/posix.h b/arch/powerpc/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/powerpc/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/powerpc/bits/reg.h b/arch/powerpc/bits/reg.h
> deleted file mode 100644
> index 0c7bffc..0000000
> --- a/arch/powerpc/bits/reg.h
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#undef __WORDSIZE
> -#define __WORDSIZE 32
> -/* FIXME */
> diff --git a/arch/powerpc/bits/stdint.h b/arch/powerpc/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/powerpc/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/powerpc64/arch.mak b/arch/powerpc64/arch.mak
> index 939ccc2..85d9f35 100644
> --- a/arch/powerpc64/arch.mak
> +++ b/arch/powerpc64/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = powerpc64 generic-ld64 generic
> +ARCH_FALLBACKS = powerpc64 generic-64 generic-ld64 generic
> diff --git a/arch/powerpc64/bits/limits.h b/arch/powerpc64/bits/limits.h
> deleted file mode 100644
> index 0226588..0000000
> --- a/arch/powerpc64/bits/limits.h
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
> - || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
> -#define LONG_BIT 64
> -#endif
> -
> -#define LONG_MAX  0x7fffffffffffffffL
> -#define LLONG_MAX  0x7fffffffffffffffLL
> diff --git a/arch/powerpc64/bits/posix.h b/arch/powerpc64/bits/posix.h
> deleted file mode 100644
> index c37b94c..0000000
> --- a/arch/powerpc64/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_LP64_OFF64  1
> -#define _POSIX_V7_LP64_OFF64  1
> diff --git a/arch/powerpc64/bits/reg.h b/arch/powerpc64/bits/reg.h
> deleted file mode 100644
> index 49382c8..0000000
> --- a/arch/powerpc64/bits/reg.h
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -#undef __WORDSIZE
> -#define __WORDSIZE 64
> -/* FIXME */
> diff --git a/arch/powerpc64/bits/stdint.h b/arch/powerpc64/bits/stdint.h
> deleted file mode 100644
> index 1bb147f..0000000
> --- a/arch/powerpc64/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT64_MIN
> -#define INTPTR_MAX      INT64_MAX
> -#define UINTPTR_MAX     UINT64_MAX
> -#define PTRDIFF_MIN     INT64_MIN
> -#define PTRDIFF_MAX     INT64_MAX
> -#define SIZE_MAX        UINT64_MAX
> diff --git a/arch/sh/arch.mak b/arch/sh/arch.mak
> index 54c4951..0f26a00 100644
> --- a/arch/sh/arch.mak
> +++ b/arch/sh/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = sh generic-ld64 generic
> +ARCH_FALLBACKS = sh generic-32 generic-ld64 generic
> diff --git a/arch/sh/bits/posix.h b/arch/sh/bits/posix.h
> deleted file mode 100644
> index 30a3871..0000000
> --- a/arch/sh/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_ILP32_OFFBIG  1
> -#define _POSIX_V7_ILP32_OFFBIG  1
> diff --git a/arch/sh/bits/stdint.h b/arch/sh/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/sh/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/x32/arch.mak b/arch/x32/arch.mak
> index f1c9ec5..e444e14 100644
> --- a/arch/x32/arch.mak
> +++ b/arch/x32/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = x32 generic-le generic
> +ARCH_FALLBACKS = x32 generic-32 generic-le generic
> diff --git a/arch/x32/bits/posix.h b/arch/x32/bits/posix.h
> deleted file mode 100644
> index c37b94c..0000000
> --- a/arch/x32/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_LP64_OFF64  1
> -#define _POSIX_V7_LP64_OFF64  1
> diff --git a/arch/x32/bits/stdint.h b/arch/x32/bits/stdint.h
> deleted file mode 100644
> index d1b2712..0000000
> --- a/arch/x32/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT32_MIN
> -#define INTPTR_MAX      INT32_MAX
> -#define UINTPTR_MAX     UINT32_MAX
> -#define PTRDIFF_MIN     INT32_MIN
> -#define PTRDIFF_MAX     INT32_MAX
> -#define SIZE_MAX        UINT32_MAX
> diff --git a/arch/x86_64/arch.mak b/arch/x86_64/arch.mak
> index a9dace7..a71afe3 100644
> --- a/arch/x86_64/arch.mak
> +++ b/arch/x86_64/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = x86_64 generic-le generic
> +ARCH_FALLBACKS = x86_64 generic-64 generic-le generic
> diff --git a/arch/x86_64/bits/posix.h b/arch/x86_64/bits/posix.h
> deleted file mode 100644
> index c37b94c..0000000
> --- a/arch/x86_64/bits/posix.h
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -#define _POSIX_V6_LP64_OFF64  1
> -#define _POSIX_V7_LP64_OFF64  1
> diff --git a/arch/x86_64/bits/stdint.h b/arch/x86_64/bits/stdint.h
> deleted file mode 100644
> index 1bb147f..0000000
> --- a/arch/x86_64/bits/stdint.h
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -typedef int32_t int_fast16_t;
> -typedef int32_t int_fast32_t;
> -typedef uint32_t uint_fast16_t;
> -typedef uint32_t uint_fast32_t;
> -
> -#define INT_FAST16_MIN  INT32_MIN
> -#define INT_FAST32_MIN  INT32_MIN
> -
> -#define INT_FAST16_MAX  INT32_MAX
> -#define INT_FAST32_MAX  INT32_MAX
> -
> -#define UINT_FAST16_MAX UINT32_MAX
> -#define UINT_FAST32_MAX UINT32_MAX
> -
> -#define INTPTR_MIN      INT64_MIN
> -#define INTPTR_MAX      INT64_MAX
> -#define UINTPTR_MAX     UINT64_MAX
> -#define PTRDIFF_MIN     INT64_MIN
> -#define PTRDIFF_MAX     INT64_MAX
> -#define SIZE_MAX        UINT64_MAX
> -- 
> 2.9.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 4/5] create 32-/64-bit generic bits overlays
  2016-07-06  3:54 ` [PATCH 4/5] create 32-/64-bit " Bobby Bingham
  2016-07-06  4:29   ` Rich Felker
@ 2016-07-06  4:31   ` Rich Felker
  1 sibling, 0 replies; 7+ messages in thread
From: Rich Felker @ 2016-07-06  4:31 UTC (permalink / raw)
  To: musl

On Tue, Jul 05, 2016 at 10:54:13PM -0500, Bobby Bingham wrote:
> diff --git a/arch/mips64/arch.mak b/arch/mips64/arch.mak
> index eb9c4bf..abd5432 100644
> --- a/arch/mips64/arch.mak
> +++ b/arch/mips64/arch.mak
> @@ -1 +1 @@
> -ARCH_FALLBACKS = mips64 generic-ld128 generic
> +ARCH_FALLBACKS = mips64 generic-64 generic-ld128 generic

I think mips64/arch.mak (and likewise mipsn32/arch.mak) should
probably put mips in the fallback order so that we can share termios,
ioctl, etc. bits. Same for powerpc64 and powerpc.

Rich


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-07-06  4:31 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-06  3:54 [PATCH 1/5] generalize "generic" fallback for bits headers Bobby Bingham
2016-07-06  3:54 ` [PATCH 2/5] create big/little endian generic bits overlays Bobby Bingham
2016-07-06  3:54 ` [PATCH 3/5] create ld64/ld128 " Bobby Bingham
2016-07-06  3:54 ` [PATCH 4/5] create 32-/64-bit " Bobby Bingham
2016-07-06  4:29   ` Rich Felker
2016-07-06  4:31   ` Rich Felker
2016-07-06  3:54 ` [PATCH 5/5] move generic fcntl.h to generic-32 Bobby Bingham

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).