Define. New define. (g_bit_nth_msf): Use it. Also, add prototype.
authorTom Tromey <tromey@cygnus.com>
Sun, 6 Sep 1998 00:31:48 +0000 (00:31 +0000)
committerTom Tromey <tromey@src.gnome.org>
Sun, 6 Sep 1998 00:31:48 +0000 (00:31 +0000)
Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>

* gutils.c (GLIB_INLINE): Define.
* glib.h (GLIB_INLINE): New define.
(g_bit_nth_msf): Use it.  Also, add prototype.
(g_bit_storage): Likewise.
(g_bit_storage): Likewise.

13 files changed:
ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-12
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
glib-config [new file with mode: 0755]
glib.h
glib/glib.h
glib/gutils.c
gutils.c

index 635d567..d9d208a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
index 635d567..d9d208a 100644 (file)
@@ -1,3 +1,11 @@
+Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * gutils.c (GLIB_INLINE): Define.
+       * glib.h (GLIB_INLINE): New define.
+       (g_bit_nth_msf): Use it.  Also, add prototype.
+       (g_bit_storage): Likewise.
+       (g_bit_storage): Likewise.
+
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: 
diff --git a/glib-config b/glib-config
new file mode 100755 (executable)
index 0000000..1934807
--- /dev/null
@@ -0,0 +1,97 @@
+#!/bin/sh
+
+prefix=/opt/gnome
+exec_prefix=${prefix}
+exec_prefix_set=no
+
+usage()
+{
+       cat <<EOF
+Usage: glib-config [OPTIONS] [LIBRARIES]
+Options:
+       [--prefix[=DIR]]
+       [--exec-prefix[=DIR]]
+       [--version]
+       [--libs]
+       [--cflags]
+Libraries:
+       glib
+       gmodule
+EOF
+       exit $1
+}
+
+if test $# -eq 0; then
+       usage 1 1>&2
+fi
+
+lib_glib=yes
+
+while test $# -gt 0; do
+  case "$1" in
+  -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+  *) optarg= ;;
+  esac
+
+  case $1 in
+    --prefix=*)
+      prefix=$optarg
+      if test $exec_prefix_set = no ; then
+        exec_prefix=$optarg
+      fi
+      ;;
+    --prefix)
+      echo_prefix=yes
+      ;;
+    --exec-prefix=*)
+      exec_prefix=$optarg
+      exec_prefix_set=yes
+      ;;
+    --exec-prefix)
+      echo_exec_prefix=yes
+      ;;
+    --version)
+      echo 1.1.3
+      exit 0
+      ;;
+    --cflags)
+      if test "${prefix}/include" != /usr/include ; then
+        includes="-I${prefix}/include"
+      fi
+      echo_cflags=yes
+      ;;
+    --libs)
+      echo_libs=yes
+      ;;
+    glib)
+      lib_glib=yes
+      ;;
+    gmodule)
+      lib_gmodule=yes
+      ;;
+    *)
+      usage 1 1>&2
+      ;;
+  esac
+  shift
+done
+
+if test "$echo_prefix" = "yes"; then
+       echo $prefix
+fi
+if test "$echo_exec_prefix" = "yes"; then
+       echo $exec_prefix
+fi
+if test "$echo_cflags" = "yes"; then
+       echo -I${exec_prefix}/lib/glib/include $includes
+fi
+if test "$echo_libs" = "yes"; then
+       libs=""
+       if test "$lib_glib" = "yes"; then
+               libs="$libs -lglib-1.1"
+       fi
+       if test "$lib_gmodule" = "yes"; then
+               libs="-rdynamic -lgmodule-1.1 $libs -ldl"
+       fi
+       echo "-L${exec_prefix}/lib $libs"
+fi
diff --git a/glib.h b/glib.h
index 64c2943..da6fb45 100644 (file)
--- a/glib.h
+++ b/glib.h
 #  endif /* !__GNUC__ */
 #endif /* __STRICT_ANSI__ */
 
+/* When using gcc we want to use `extern inline' to avoid random
+ * warnings with -Wall.  */
+#ifdef __GNUC__
+/* We want to also have a non-inlined version of the function
+ * available.  We implement this by redefining GLIB_INLINE in a glib
+ * implementation file.  */
+#  ifndef GLIB_INLINE
+#    define GLIB_INLINE extern inline
+#  endif
+#else
+#  undef GLIB_INLINE
+#  define GLIB_INLINE inline
+#endif
 
 /* Provide macros to feature the GCC function attribute.
  */
@@ -1195,9 +1208,17 @@ gchar*   g_get_current_dir       (void);
 #endif
 
 
+
 /* Bit tests
  */
-static inline gint
+
+/* Prototypes are required for inline functions to pacify gcc when
+ * some warnings are enabled.  */
+gint g_bit_nth_lsf (guint32 mask, gint nth_bit);
+gint g_bit_nth_msf (guint32 mask, gint nth_bit);
+guint g_bit_storage (guint number);
+
+GLIB_INLINE gint
 g_bit_nth_lsf (guint32 mask,
               gint    nth_bit)
 {
@@ -1210,7 +1231,7 @@ g_bit_nth_lsf (guint32 mask,
   while (nth_bit < 32);
   return -1;
 }
-static inline gint
+GLIB_INLINE gint
 g_bit_nth_msf (guint32 mask,
               gint    nth_bit)
 {
@@ -1225,7 +1246,7 @@ g_bit_nth_msf (guint32 mask,
   while (nth_bit > 0);
   return -1;
 }
-static inline guint
+GLIB_INLINE guint
 g_bit_storage (guint number)
 {
   register guint n_bits = 0;
index 64c2943..da6fb45 100644 (file)
 #  endif /* !__GNUC__ */
 #endif /* __STRICT_ANSI__ */
 
+/* When using gcc we want to use `extern inline' to avoid random
+ * warnings with -Wall.  */
+#ifdef __GNUC__
+/* We want to also have a non-inlined version of the function
+ * available.  We implement this by redefining GLIB_INLINE in a glib
+ * implementation file.  */
+#  ifndef GLIB_INLINE
+#    define GLIB_INLINE extern inline
+#  endif
+#else
+#  undef GLIB_INLINE
+#  define GLIB_INLINE inline
+#endif
 
 /* Provide macros to feature the GCC function attribute.
  */
@@ -1195,9 +1208,17 @@ gchar*   g_get_current_dir       (void);
 #endif
 
 
+
 /* Bit tests
  */
-static inline gint
+
+/* Prototypes are required for inline functions to pacify gcc when
+ * some warnings are enabled.  */
+gint g_bit_nth_lsf (guint32 mask, gint nth_bit);
+gint g_bit_nth_msf (guint32 mask, gint nth_bit);
+guint g_bit_storage (guint number);
+
+GLIB_INLINE gint
 g_bit_nth_lsf (guint32 mask,
               gint    nth_bit)
 {
@@ -1210,7 +1231,7 @@ g_bit_nth_lsf (guint32 mask,
   while (nth_bit < 32);
   return -1;
 }
-static inline gint
+GLIB_INLINE gint
 g_bit_nth_msf (guint32 mask,
               gint    nth_bit)
 {
@@ -1225,7 +1246,7 @@ g_bit_nth_msf (guint32 mask,
   while (nth_bit > 0);
   return -1;
 }
-static inline guint
+GLIB_INLINE guint
 g_bit_storage (guint number)
 {
   register guint n_bits = 0;
index d58b447..419487e 100644 (file)
@@ -1,5 +1,5 @@
 /* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ * Copyright (C) 1995-1998  Peter Mattis, Spencer Kimball and Josh MacDonald
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
 #include <pwd.h>
 #include <sys/types.h>
 #include <sys/param.h>
+
+/* When using gcc, we want to have a non-inlined version of the
+ * `extern inline'd functions in glib.h.  We do this here.  */
+#define GLIB_INLINE
+
 #include "glib.h"
 
 const guint glib_major_version = GLIB_MAJOR_VERSION;
index d58b447..419487e 100644 (file)
--- a/gutils.c
+++ b/gutils.c
@@ -1,5 +1,5 @@
 /* GLIB - Library of useful routines for C programming
- * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
+ * Copyright (C) 1995-1998  Peter Mattis, Spencer Kimball and Josh MacDonald
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
 #include <pwd.h>
 #include <sys/types.h>
 #include <sys/param.h>
+
+/* When using gcc, we want to have a non-inlined version of the
+ * `extern inline'd functions in glib.h.  We do this here.  */
+#define GLIB_INLINE
+
 #include "glib.h"
 
 const guint glib_major_version = GLIB_MAJOR_VERSION;