dougm 00/06/20 09:04:53 Modified: lib/Apache Build.pm lib/ModPerl BuildOptions.pm Code.pm pod modperl_dev.pod src/modules/perl mod_perl.h modperl_callback.h modperl_config.c modperl_config.h modperl_gtop.c modperl_log.c modperl_log.h modperl_tipool.h Log: add MP_MAINTAINER options and compile clean with it Revision Changes Path 1.21 +12 -1 modperl-2.0/lib/Apache/Build.pm Index: Build.pm =================================================================== RCS file: /home/cvs/modperl-2.0/lib/Apache/Build.pm,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- Build.pm 2000/06/12 03:25:04 1.20 +++ Build.pm 2000/06/20 16:04:21 1.21 @@ -82,6 +82,9 @@ $ldopts; } +my $Wall = + "-Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations"; + sub ccopts { my($self) = @_; @@ -91,9 +94,17 @@ $ccopts .= " -DMP_USE_GTOP"; } + if ($self->{MP_MAINTAINER}) { + $self->{MP_DEBUG} = 1; + if ($self->perl_config('gccversion')) { + #same as --with-maintainter-mode + $ccopts .= " $Wall -DAP_DEBUG"; + } + } + if ($self->{MP_DEBUG}) { $self->{MP_TRACE} = 1; - $ccopts .= " -g -Wall"; + $ccopts .= " -g"; } if ($self->{MP_CCOPTS}) { 1.2 +2 -1 modperl-2.0/lib/ModPerl/BuildOptions.pm Index: BuildOptions.pm =================================================================== RCS file: /home/cvs/modperl-2.0/lib/ModPerl/BuildOptions.pm,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- BuildOptions.pm 2000/06/09 04:30:11 1.1 +++ BuildOptions.pm 2000/06/20 16:04:26 1.2 @@ -135,7 +135,8 @@ __DATA__ USE_GTOP Link with libgtop and enable libgtop reporting -DEBUG Turning on debugging (-g -Wall -lperld) and tracing +DEBUG Turning on debugging (-g -lperld) and tracing +MAINTAINER Maintainer mode: DEBUG=1 -DAP_DEBUG -Wall ... CCOPTS Add to compiler flags TRACE Turn on tracing USE_DSO Build mod_perl as a dso 1.32 +2 -2 modperl-2.0/lib/ModPerl/Code.pm Index: Code.pm =================================================================== RCS file: /home/cvs/modperl-2.0/lib/ModPerl/Code.pm,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- Code.pm 2000/06/19 03:03:32 1.31 +++ Code.pm 2000/06/20 16:04:28 1.32 @@ -54,14 +54,14 @@ PerSrv => { args => [{type => 'cmd_parms', name => 'parms'}, {type => 'void', name => 'dummy'}, - {type => 'char', name => 'arg'}], + {type => 'const char', name => 'arg'}], cfg => {get => $scfg_get, name => 'scfg'}, scope => 'RSRC_CONF', }, PerDir => { args => [{type => 'cmd_parms', name => 'parms'}, {type => 'void', name => 'dummy'}, - {type => 'char', name => 'arg'}], + {type => 'const char', name => 'arg'}], cfg => {get => $dcfg_get, name => 'dcfg'}, scope => 'OR_ALL', }, 1.4 +11 -2 modperl-2.0/pod/modperl_dev.pod Index: modperl_dev.pod =================================================================== RCS file: /home/cvs/modperl-2.0/pod/modperl_dev.pod,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- modperl_dev.pod 2000/06/13 21:05:36 1.3 +++ modperl_dev.pod 2000/06/20 16:04:33 1.4 @@ -42,15 +42,24 @@ =item MP_DEBUG -Turn on debugging (-g -Wall -lperld) and tracing +Turn on debugging (-g -lperld) and tracing +=item MP_MAINTAINER + +Maintainer compile mode, turn on MP_DEBUG and add gcc flags: + + -DAP_DEBUG \ + -Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations + =item MP_TRACE Enable tracing =item MP_CCOPTS + +Add to compiler flags, e.g. -Add to compiler flags + MP_CCOPTS = -Werror =item MP_INST_APACHE2 1.16 +6 -0 modperl-2.0/src/modules/perl/mod_perl.h Index: mod_perl.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- mod_perl.h 2000/06/13 21:05:39 1.15 +++ mod_perl.h 2000/06/20 16:04:37 1.16 @@ -41,6 +41,12 @@ #include "modperl_directives.h" void modperl_init(server_rec *s, ap_pool_t *p); +void modperl_hook_init(ap_pool_t *pconf, ap_pool_t *plog, + ap_pool_t *ptemp, server_rec *s); +void modperl_pre_config_handler(ap_pool_t *p, ap_pool_t *plog, + ap_pool_t *ptemp); +void modperl_register_hooks(void); +PerlInterpreter *modperl_startup(server_rec *s, ap_pool_t *p); void xs_init(pTHXo); #endif /* MOD_PERL_H */ 1.7 +3 -0 modperl-2.0/src/modules/perl/modperl_callback.h Index: modperl_callback.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_callback.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- modperl_callback.h 2000/05/26 20:34:49 1.6 +++ modperl_callback.h 2000/06/20 16:04:38 1.7 @@ -25,6 +25,9 @@ int modperl_callback(pTHX_ modperl_handler_t *handler, ap_pool_t *p); +int modperl_run_handlers(int idx, request_rec *r, conn_rec *c, + server_rec *s, int type); + void modperl_process_callback(int idx, ap_pool_t *p, server_rec *s); void modperl_files_callback(int idx, 1.13 +4 -3 modperl-2.0/src/modules/perl/modperl_config.c Index: modperl_config.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_config.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- modperl_config.c 2000/06/13 21:05:39 1.12 +++ modperl_config.c 2000/06/20 16:04:38 1.13 @@ -1,6 +1,7 @@ #include "mod_perl.h" -char *modperl_cmd_push_handlers(MpAV **handlers, char *name, ap_pool_t *p) +char *modperl_cmd_push_handlers(MpAV **handlers, const char *name, + ap_pool_t *p) { modperl_handler_t *h = modperl_handler_new(p, (void*)name, MP_HANDLER_TYPE_CHAR); @@ -49,7 +50,7 @@ } #define scfg_push_argv(arg) \ - *(char **)ap_push_array(scfg->argv) = arg + *(const char **)ap_push_array(scfg->argv) = arg modperl_srv_config_t *modperl_srv_config_new(ap_pool_t *p) { @@ -223,7 +224,7 @@ #define MP_IMP_INTERP_POOL_CFG(item) \ const char *modperl_cmd_interp_##item(cmd_parms *parms, \ - void *dummy, char *arg) \ + void *dummy, const char *arg) \ { \ MP_dSCFG(parms->server); \ int item = atoi(arg); \ 1.13 +3 -2 modperl-2.0/src/modules/perl/modperl_config.h Index: modperl_config.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_config.h,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- modperl_config.h 2000/06/19 03:03:34 1.12 +++ modperl_config.h 2000/06/20 16:04:39 1.13 @@ -15,13 +15,14 @@ void *modperl_merge_srv_config(ap_pool_t *p, void *basev, void *addv); -char *modperl_cmd_push_handlers(MpAV **handlers, char *name, ap_pool_t *p); +char *modperl_cmd_push_handlers(MpAV **handlers, const char *name, + ap_pool_t *p); char **modperl_srv_config_argv_init(modperl_srv_config_t *scfg, int *argc); #define MP_DECLARE_SRV_CMD(item) \ const char *modperl_cmd_##item(cmd_parms *parms, \ - void *dummy, char *arg) + void *dummy, const char *arg) MP_DECLARE_SRV_CMD(trace); MP_DECLARE_SRV_CMD(switches); MP_DECLARE_SRV_CMD(options); 1.3 +3 -3 modperl-2.0/src/modules/perl/modperl_gtop.c Index: modperl_gtop.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_gtop.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- modperl_gtop.c 2000/04/25 05:57:48 1.2 +++ modperl_gtop.c 2000/06/20 16:04:39 1.3 @@ -2,7 +2,7 @@ #include "mod_perl.h" -int modperl_gtop_size_string(size_t size, char *size_string) +static int modperl_gtop_size_string(size_t size, char *size_string) { if (size == (size_t)-1) { ap_snprintf(size_string, MP_GTOP_SSS, "-"); @@ -29,7 +29,7 @@ return 1; } -ap_status_t modperl_gtop_exit(void *data) +static ap_status_t modperl_gtop_exit(void *data) { glibtop_close(); return APR_SUCCESS; @@ -71,7 +71,7 @@ * XXX: this is pretty ugly, * but avoids allocating buffers for the size string */ -void modperl_gtop_proc_mem_size_string(modperl_gtop_t *gtop, int type) +static void modperl_gtop_proc_mem_size_string(modperl_gtop_t *gtop, int type) { int is_diff = (type == SS_TYPE_DIFF); glibtop_proc_mem *pm = NULL; 1.4 +1 -1 modperl-2.0/src/modules/perl/modperl_log.c Index: modperl_log.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_log.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- modperl_log.c 2000/04/18 22:59:15 1.3 +++ modperl_log.c 2000/06/20 16:04:40 1.4 @@ -15,7 +15,7 @@ va_end(args); } -void modperl_trace_level_set(char *level) +void modperl_trace_level_set(const char *level) { if (!level) { if (!(level = getenv("MOD_PERL_TRACE"))) { 1.4 +1 -1 modperl-2.0/src/modules/perl/modperl_log.h Index: modperl_log.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_log.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- modperl_log.h 2000/05/26 20:34:49 1.3 +++ modperl_log.h 2000/06/20 16:04:41 1.4 @@ -18,6 +18,6 @@ void modperl_trace(char *func, const char *fmt, ...); -void modperl_trace_level_set(char *level); +void modperl_trace_level_set(const char *level); #endif /* MODPERL_LOG_H */ 1.4 +4 -0 modperl-2.0/src/modules/perl/modperl_tipool.h Index: modperl_tipool.h =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_tipool.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- modperl_tipool.h 2000/05/26 20:34:50 1.3 +++ modperl_tipool.h 2000/06/20 16:04:41 1.4 @@ -31,6 +31,10 @@ void modperl_tipool_remove(modperl_tipool_t *tipool, modperl_list_t *listp); +modperl_list_t *modperl_list_remove_data(modperl_list_t *list, + void *data, + modperl_list_t **listp); + modperl_list_t *modperl_tipool_pop(modperl_tipool_t *tipool); void modperl_tipool_putback(modperl_tipool_t *tipool,