You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by rb...@hyperreal.org on 1999/08/19 23:45:38 UTC
cvs commit: apache-2.0/mpm/src/lib/apr/include apr_lib.h
rbb 99/08/19 14:45:37
Modified: mpm/src/lib/apr Makefile.in
mpm/src/lib/apr/include apr_lib.h
Log:
A couple of changes required to make things work nicer with Apache. Mainly
moving the lib*.a when they are all built into a common dir, and putting some
declarations in the right spots.
Revision Changes Path
1.3 +5 -1 apache-2.0/mpm/src/lib/apr/Makefile.in
Index: Makefile.in
===================================================================
RCS file: /home/cvs/apache-2.0/mpm/src/lib/apr/Makefile.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Makefile.in 1999/08/19 06:48:10 1.2
+++ Makefile.in 1999/08/19 21:45:29 1.3
@@ -23,7 +23,7 @@
#
# Macros for target determination
#
-MODULES=lib file_io network_io threadproc locks misc time
+MODULES=lib file_io network_io threadproc locks misc time sig
SUBDIRS=lib file_io/@OSDIR@ network_io/@OSDIR@ threadproc/@OSDIR@ \
locks/@OSDIR@ misc/@OSDIR@ time/@OSDIR@ signal/@OSDIR@
#shmem/@OSDIR@
@@ -39,6 +39,10 @@
# building the entire package.
#
all: Makefile $(MODULES) subdirs
+ mkdir libs
+ @for i in $(SUBDIRS); do \
+ cp $$1/lib*.a libs \
+ done;
@echo APR built.
clean: subdirs_clean
1.2 +38 -4 apache-2.0/mpm/src/lib/apr/include/apr_lib.h
Index: apr_lib.h
===================================================================
RCS file: /home/cvs/apache-2.0/mpm/src/lib/apr/include/apr_lib.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- apr_lib.h 1999/08/17 15:59:53 1.1
+++ apr_lib.h 1999/08/19 21:45:34 1.2
@@ -125,6 +125,21 @@
char *elts;
} ap_array_header_t;
+typedef struct ap_table_entry_t {
+ char *key; /* maybe NULL in future;
+ * check when iterating thru table_elts
+ */
+ char *val;
+} ap_table_entry_t;
+
+/* XXX: these know about the definition of struct table in alloc.c. That
+ * definition is not here because it is supposed to be private, and by not
+ * placing it here we are able to get compile-time diagnostics from modules
+ * written which assume that a table is the same as an ap_array_header_t. -djg
+ */
+#define ap_table_elts(t) ((ap_array_header_t *)(t))
+#define ap_is_empty_table(t) (((t) == NULL)||(((ap_array_header_t *)(t))->nelts == 0))
+
/*
* Structure used by the variable-formatter routines.
*/
@@ -154,11 +169,28 @@
#define ap_create_mutex(x) (0)
#define ap_release_mutex(x) (0)
#define ap_acquire_mutex(x) (0)
-#define ap_islower(x) (0)
-#define ap_isalpha(x) (0)
-#define ap_isdigit(x) (0)
+
+/* These macros allow correct support of 8-bit characters on systems which
+ * support 8-bit characters. Pretty dumb how the cast is required, but
+ * that's legacy libc for ya. These new macros do not support EOF like
+ * the standard macros do. Tough.
+ */
+#define ap_isalnum(c) (isalnum(((unsigned char)(c))))
+#define ap_isalpha(c) (isalpha(((unsigned char)(c))))
+#define ap_iscntrl(c) (iscntrl(((unsigned char)(c))))
+#define ap_isdigit(c) (isdigit(((unsigned char)(c))))
+#define ap_isgraph(c) (isgraph(((unsigned char)(c))))
+#define ap_islower(c) (islower(((unsigned char)(c))))
+#define ap_isprint(c) (isprint(((unsigned char)(c))))
+#define ap_ispunct(c) (ispunct(((unsigned char)(c))))
+#define ap_isspace(c) (isspace(((unsigned char)(c))))
+#define ap_isupper(c) (isupper(((unsigned char)(c))))
+#define ap_isxdigit(c) (isxdigit(((unsigned char)(c))))
+#define ap_tolower(c) (tolower(((unsigned char)(c))))
+#define ap_toupper(c) (toupper(((unsigned char)(c))))
+
+
-#define apr_tolower(c) (tolower(((unsigned char)(c))))
/*
* Small utility macros to make things easier to read. Not usually a
@@ -308,6 +340,8 @@
API_EXPORT(void)
ap_table_do(int (*comp) (void *, const char *, const char *),
void *rec, const ap_table_t *t, ...);
+#define AP_OVERLAP_TABLES_SET (0)
+#define AP_OVERLAP_TABLES_MERGE (1)
API_EXPORT(void) ap_overlap_tables(ap_table_t *a, const ap_table_t *b,
unsigned flags);
API_EXPORT(void) ap_register_cleanup(struct context_t *p, void *data,