commit de28c8bfa7ef799ee2e8e49e8a3a1828f80a7442
Author:     Evan Gates <[email protected]>
AuthorDate: Mon Oct 3 15:55:22 2016 -0700
Commit:     FRIGN <[email protected]>
CommitDate: Wed Oct 5 18:48:10 2016 +0200

    use only one getconf header
    
    this simplifies the getconf.sh script and handling parallel make

diff --git a/Makefile b/Makefile
index 6b2bfdf..25bab70 100644
--- a/Makefile
+++ b/Makefile
@@ -205,10 +205,10 @@ $(LIBUTIL): $(LIBUTILOBJ)
        $(AR) rc $@ $?
        $(RANLIB) $@
 
-getconf.c: confstr_l.h limits_l.h sysconf_l.h pathconf_l.h
+getconf.o: getconf.h
 
-confstr_l.h limits_l.h sysconf_l.h pathconf_l.h: getconf.sh
-       ./getconf.sh
+getconf.h: getconf.sh
+       ./getconf.sh > $@
 
 install: all
        mkdir -p $(DESTDIR)$(PREFIX)/bin
@@ -234,7 +234,7 @@ dist: clean
 sbase-box: $(LIB) $(SRC)
        mkdir -p build
        cp $(HDR) build
-       cp confstr_l.h limits_l.h sysconf_l.h pathconf_l.h build
+       cp getconf.h build
        for f in $(SRC); do sed "s/^main(/$$(echo "$${f%.c}" | sed s/-/_/g)_&/" 
< $$f > build/$$f; done
        echo '#include <libgen.h>'                                              
                                                       > build/[email protected]
        echo '#include <stdio.h>'                                               
                                                      >> build/[email protected]
@@ -270,7 +270,7 @@ sbase-box-uninstall: uninstall
 
 clean:
        rm -f $(BIN) $(OBJ) $(LIB) sbase-box sbase-$(VERSION).tar.gz
-       rm -f confstr_l.h limits_l.h sysconf_l.h pathconf_l.h
+       rm -f getconf.h
 
 .PHONY:
        all install uninstall dist sbase-box sbase-box-install 
sbase-box-uninstall clean
diff --git a/getconf.c b/getconf.c
index 94bff80..e611659 100644
--- a/getconf.c
+++ b/getconf.c
@@ -12,22 +12,7 @@ struct var {
        long v;
 };
 
-static const struct var pathconf_l[] = {
-#include "pathconf_l.h"
-};
-
-static const struct var sysconf_l[] = {
-#include "sysconf_l.h"
-};
-
-static const struct var confstr_l[] = {
-#include "confstr_l.h"
-};
-
-static const struct var limits_l[] = {
-#include "limits_l.h"
-};
-
+#include "getconf.h"
 
 void
 usage(void)
diff --git a/getconf.sh b/getconf.sh
index cca5873..e826385 100755
--- a/getconf.sh
+++ b/getconf.sh
@@ -1,14 +1,12 @@
 #!/bin/sh
 
-ifdef()
-{
- awk '{printf("#ifdef %s\n"\
-              "\t{\"%s\",\t%s},\n"\
-              "#endif\n", $2, $1, $2)}' > $1
+ifdef() {
+       printf 'static const struct var %s[] = {\n' "$1"
+       awk '{printf("#ifdef %s\n\t{\"%s\",\t%s},\n#endif\n", $2, $1, $2)}'
+       echo '};'
 }
 
-
-cat <<! | ifdef confstr_l.h
+cat <<! | ifdef confstr_l
 PATH                           _CS_PATH
 POSIX_V7_ILP32_OFF32_CFLAGS    _CS_POSIX_V7_ILP32_OFF32_CFLAGS
 POSIX_V7_ILP32_OFF32_LDFLAGS   _CS_POSIX_V7_ILP32_OFF32_LDFLAGS
@@ -28,7 +26,7 @@ POSIX_V7_WIDTH_RESTRICTED_ENVS 
_CS_POSIX_V7_WIDTH_RESTRICTED_ENVS
 V7_ENV                         _CS_V7_ENV
 !
 
-cat <<! | ifdef limits_l.h
+cat <<! | ifdef limits_l
 _POSIX_CLOCKRES_MIN                 _POSIX_CLOCKRES_MIN
 _POSIX_AIO_LISTIO_MAX               _POSIX_AIO_LISTIO_MAX
 _POSIX_AIO_MAX                      _POSIX_AIO_MAX
@@ -74,7 +72,7 @@ _POSIX2_LINE_MAX                    _POSIX2_LINE_MAX
 _POSIX2_RE_DUP_MAX                  _POSIX2_RE_DUP_MAX
 !
 
-cat <<! | ifdef sysconf_l.h
+cat <<! | ifdef sysconf_l
 AIO_LISTIO_MAX                    _SC_AIO_LISTIO_MAX
 AIO_MAX                           _SC_AIO_MAX
 AIO_PRIO_DELTA_MAX                _SC_AIO_PRIO_DELTA_MAX
@@ -195,7 +193,7 @@ _XOPEN_UUCP                       _SC_XOPEN_UUCP
 _XOPEN_VERSION                    _SC_XOPEN_VERSION
 !
 
-cat <<! | ifdef pathconf_l.h
+cat <<! | ifdef pathconf_l
 FILESIZEBITS                _PC_FILESIZEBITS
 LINK_MAX                    _PC_LINK_MAX
 MAX_CANON                   _PC_MAX_CANON

Reply via email to