cvs commit: modperl-2.0/src/modules/perl modperl_util.c modperl_util.h

2002-05-23 Thread dougm

dougm   02/05/23 15:18:48

  Modified:src/modules/perl modperl_util.c modperl_util.h
  Log:
  add modperl_perl_sv_setref_uv function
  
  Revision  ChangesPath
  1.42  +8 -0  modperl-2.0/src/modules/perl/modperl_util.c
  
  Index: modperl_util.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_util.c,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- modperl_util.c19 May 2002 02:10:13 -  1.41
  +++ modperl_util.c23 May 2002 22:18:47 -  1.42
   -164,6 +164,14 
   return sv;
   }
   
  +/* XXX: sv_setref_uv does not exist in 5.6.x */
  +MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv,
  +const char *classname, UV uv)
  +{
  +sv_setuv(newSVrv(rv, classname), uv);
  +return rv;
  +}
  +
   apr_pool_t *modperl_sv2pool(pTHX_ SV *obj)
   {
   apr_pool_t *p = NULL;
  
  
  
  1.33  +3 -0  modperl-2.0/src/modules/perl/modperl_util.h
  
  Index: modperl_util.h
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_util.h,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- modperl_util.h13 May 2002 03:17:54 -  1.32
  +++ modperl_util.h23 May 2002 22:18:47 -  1.33
   -59,6 +59,9 
   
   MP_INLINE SV *modperl_ptr2obj(pTHX_ char *classname, void *ptr);
   
  +MP_INLINE SV *modperl_perl_sv_setref_uv(pTHX_ SV *rv,
  +const char *classname, UV uv);
  +
   apr_pool_t *modperl_sv2pool(pTHX_ SV *obj);
   
   char *modperl_apr_strerror(apr_status_t rv);
  
  
  



cvs commit: modperl-2.0/lib/ModPerl WrapXS.pm

2002-05-23 Thread dougm

dougm   02/05/23 15:19:52

  Modified:lib/ModPerl WrapXS.pm
  Log:
  UV is better than IV for apr_os_thread_t
  
  Revision  ChangesPath
  1.44  +1 -0  modperl-2.0/lib/ModPerl/WrapXS.pm
  
  Index: WrapXS.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/ModPerl/WrapXS.pm,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- WrapXS.pm 23 May 2002 00:43:35 -  1.43
  +++ WrapXS.pm 23 May 2002 22:19:52 -  1.44
   -521,6 +521,7 
   'Apache::RequestRec' = 'T_APACHEOBJ',
   'apr_time_t' = 'T_APR_TIME',
   'APR::Table' = 'T_HASHOBJ',
  +'APR::OS::Thread' = 'T_UVOBJ',
   );
   
   sub write_typemap {
  
  
  



cvs commit: modperl-2.0/t/conf modperl_extra.pl

2002-05-23 Thread dougm

dougm   02/05/23 15:40:48

  Modified:lib/APR  XSLoader.pm
   lib/Apache XSLoader.pm
   src/modules/perl mod_perl.c modperl_perl_includes.h
   t/conf   modperl_extra.pl
  Log:
  better workaround for 5.6.x DynaLoader vs. XSLoader issue
  
  Revision  ChangesPath
  1.3   +0 -1  modperl-2.0/lib/APR/XSLoader.pm
  
  Index: XSLoader.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/APR/XSLoader.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XSLoader.pm   16 Apr 2002 23:29:18 -  1.2
  +++ XSLoader.pm   23 May 2002 22:40:47 -  1.3
   -3,7 +3,6 
   use strict;
   use warnings FATAL = 'all';
   
  -use DynaLoader (); #XXX workaround for 5.6.1 bug
   use XSLoader ();
   
   BEGIN {
  
  
  
  1.3   +0 -1  modperl-2.0/lib/Apache/XSLoader.pm
  
  Index: XSLoader.pm
  ===
  RCS file: /home/cvs/modperl-2.0/lib/Apache/XSLoader.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XSLoader.pm   16 Apr 2002 23:29:18 -  1.2
  +++ XSLoader.pm   23 May 2002 22:40:47 -  1.3
   -3,7 +3,6 
   use strict;
   use warnings FATAL = 'all';
   
  -use DynaLoader (); #XXX workaround for 5.6.1 bug
   use XSLoader ();
   
   BEGIN {
  
  
  
  1.118 +8 -0  modperl-2.0/src/modules/perl/mod_perl.c
  
  Index: mod_perl.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v
  retrieving revision 1.117
  retrieving revision 1.118
  diff -u -r1.117 -r1.118
  --- mod_perl.c23 May 2002 17:30:26 -  1.117
  +++ mod_perl.c23 May 2002 22:40:47 -  1.118
   -119,6 +119,14 
   
   newCONSTSUB(PL_defstash, Apache::MPM_IS_THREADED,
   newSViv(scfg-threaded_mpm));
  +
  +#ifdef MP_PERL_5_6_x
  +/* make sure DynaLoader is loaded before XSLoader
  + * to workaround bug in 5.6.1 that can trigger a segv
  + * when using modperl as a dso
  + */
  +modperl_require_module(aTHX_ DynaLoader, FALSE);
  +#endif
   }
   
   static void modperl_xs_init(pTHX)
  
  
  
  1.12  +5 -1  modperl-2.0/src/modules/perl/modperl_perl_includes.h
  
  Index: modperl_perl_includes.h
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_perl_includes.h,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- modperl_perl_includes.h   11 May 2002 18:55:41 -  1.11
  +++ modperl_perl_includes.h   23 May 2002 22:40:47 -  1.12
   -40,7 +40,11 
   #include perl.h
   #include XSUB.h
   
  -#if (PERL_REVISION == 5)  (PERL_VERSION == 6)  (PERL_SUBVERSION == 1)
  +#if (PERL_REVISION == 5)  (PERL_VERSION == 6)
  +#   define MP_PERL_5_6_x
  +#endif
  +
  +#if defined(MP_PERL_5_6_x)  (PERL_SUBVERSION == 1)
   #   define MP_PERL_5_6_1
   #endif
   
  
  
  
  1.16  +3 -0  modperl-2.0/t/conf/modperl_extra.pl
  
  Index: modperl_extra.pl
  ===
  RCS file: /home/cvs/modperl-2.0/t/conf/modperl_extra.pl,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- modperl_extra.pl  18 May 2002 02:14:47 -  1.15
  +++ modperl_extra.pl  23 May 2002 22:40:47 -  1.16
   -1,3 +1,6 
  +use Socket (); #test DynaLoader vs. XSLoader workaround for 5.6.x
  +use IO::File ();
  +
   use Apache2 ();
   
   use ModPerl::Util (); #for CORE::GLOBAL::exit
  
  
  



cvs commit: modperl-2.0/src/modules/perl mod_perl.c

2002-05-23 Thread dougm

dougm   02/05/23 16:01:55

  Modified:src/modules/perl mod_perl.c
  Log:
  pp_srefgen workaround should be applied to 5.6.x not just 5.6.1
  
  Revision  ChangesPath
  1.119 +1 -1  modperl-2.0/src/modules/perl/mod_perl.c
  
  Index: mod_perl.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v
  retrieving revision 1.118
  retrieving revision 1.119
  diff -u -r1.118 -r1.119
  --- mod_perl.c23 May 2002 22:40:47 -  1.118
  +++ mod_perl.c23 May 2002 23:01:55 -  1.119
   -42,7 +42,7 
   apr_pool_t *p = MP_boot_data.p; \
   server_rec *s = MP_boot_data.s
   
  -#if defined(USE_ITHREADS)  defined(MP_PERL_5_6_1)
  +#if defined(USE_ITHREADS)  defined(MP_PERL_5_6_x)
   #   define MP_REFGEN_FIXUP
   #endif
   
  
  
  



cvs commit: modperl-2.0/lib/Apache Build.pm

2002-05-23 Thread dougm

dougm   02/05/23 16:36:31

  Modified:lib/Apache Build.pm
  Log:
  leave out libperl dep if it isnt found in the properl place
  
  Revision  ChangesPath
  1.93  +9 -5  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.92
  retrieving revision 1.93
  diff -u -r1.92 -r1.93
  --- Build.pm  23 May 2002 02:35:19 -  1.92
  +++ Build.pm  23 May 2002 23:36:31 -  1.93
   -940,11 +940,15 
   print $fh $self-canon_make_attr(lib_$type, $libs{$type});
   }
   
  -print $fh $self-canon_make_attr('libperl',
  - join '/',
  - $self-perl_config('archlibexp'),
  - 'CORE',
  - $self-perl_config('libperl'));
  +my $libperl = join '/',
  +  $self-perl_config('archlibexp'), 'CORE', $self-perl_config('libperl');
  +
  +#this is only used for deps, if libperl has changed, relink mod_perl.so
  +#not all perl dists put libperl where it should be, so just leave this
  +#out if it isn't in the proper place
  +if (-e $libperl) {
  +print $fh $self-canon_make_attr('libperl', $libperl);
  +}
   
   for my $method (qw(ccopts ldopts inc)) {
   print $fh $self-canon_make_attr($method, $self-$method());
  
  
  



cvs commit: modperl-2.0/t/response/TestModperl methodname.pm

2002-05-23 Thread dougm

dougm   02/05/23 19:33:06

  Modified:src/modules/perl modperl_mgv.c
   t/response/TestModperl methodname.pm
  Log:
  if Class-method syntax is used for a Perl*Handler, the :method
  attribute is not required (and we had been segfaulting without it)
  
  Revision  ChangesPath
  1.17  +4 -3  modperl-2.0/src/modules/perl/modperl_mgv.c
  
  Index: modperl_mgv.c
  ===
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_mgv.c,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- modperl_mgv.c 18 May 2002 01:49:37 -  1.16
  +++ modperl_mgv.c 24 May 2002 02:33:06 -  1.17
   -303,9 +303,10 
   if ((gv = gv_fetchmethod(stash, handler_name))  (cv = GvCV(gv))) {
   if (CvFLAGS(cv)  CVf_METHOD) { /* sub foo : method {}; */
   MpHandlerMETHOD_On(handler);
  -if (!handler-mgv_obj) {
  -modperl_mgv_new_name(handler-mgv_obj, p, HvNAME(stash));
  -}
  +}
  +
  +if (MpHandlerMETHOD(handler)  !handler-mgv_obj) {
  +modperl_mgv_new_name(handler-mgv_obj, p, HvNAME(stash));
   }
   
   handler-attrs = (U32)MP_CODE_ATTRS(cv);
  
  
  
  1.2   +2 -1  modperl-2.0/t/response/TestModperl/methodname.pm
  
  Index: methodname.pm
  ===
  RCS file: /home/cvs/modperl-2.0/t/response/TestModperl/methodname.pm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- methodname.pm 18 May 2002 02:07:42 -  1.1
  +++ methodname.pm 24 May 2002 02:33:06 -  1.2
   -10,7 +10,8 
   
   use TestModperl::method ();
   
  -sub response : method {
  +#no : method attribute required when - config syntax is used
  +sub response {
   TestModperl::method::handler(_);
   }
   
  
  
  



cvs commit: modperl-2.0 Changes

2002-05-23 Thread dougm

dougm   02/05/23 19:47:01

  Modified:.Changes
  Log:
  update Changes
  
  Revision  ChangesPath
  1.12  +32 -0 modperl-2.0/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl-2.0/Changes,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- Changes   19 May 2002 11:41:53 -  1.11
  +++ Changes   24 May 2002 02:47:01 -  1.12
  @@ -10,7 +10,39 @@
   
   =item 1.99_02-dev
   
  +added Apache::MPM_IS_THREADED constant
  +
  +added compat function for Apache::Constants::SERVER_VERSION
  +
  +added Apache::Constants::export stub for compat
  +
  +added noop stubs for timeout functions removed from 2.0:
  +$r-{soft,hard,reset,kill}_timeout
  +
  +turned on PerlOptions +GlobalRequest by default for perl-script handler
  +unless it is explicitly turned off with PerlOptions -GlobalRequest
  +
  +added APR::OS::thread_current function
  +
  +added support for 1.x $r-subprocess_env functionality
  +
  +added support for $r-push_handlers(PerlHandler = ...)
  +
  +added support for $r-proxyreq to detect proxy requests
  +
  +$r-content_type($val) now calls ap_set_content_type underneath
  +
   add the err_header_out() wrapper to Apache::compat + corresponding tests
  +[Stas Bekman]
  +
  +fix $r-dir_config lookup of values set in the server context
  +
  +added Apache::REDIRECT shortcut constant
  +
  +various fixes for method handlers
  +
  +use Apache::ServerUtil in Apache::compat so Apache-server works in compat
  +mode [Dave Rolsky [EMAIL PROTECTED]]
   
   add Apache::Util::unescape_uri alias to Apache::unescape_url in Apache::compat
   
  
  
  



cvs commit: modperl-2.0/xs typemap

2002-05-23 Thread dougm

dougm   02/05/23 21:42:57

  Modified:xs   typemap
  Log:
  need to use modperl version of sv_setref_uv, since it doesn't exist in
  5.6.x
  
  Revision  ChangesPath
  1.8   +1 -1  modperl-2.0/xs/typemap
  
  Index: typemap
  ===
  RCS file: /home/cvs/modperl-2.0/xs/typemap,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- typemap   23 May 2002 22:19:34 -  1.7
  +++ typemap   24 May 2002 04:42:57 -  1.8
   -18,7 +18,7 
sv_setnv($arg, (NV)($var / APR_USEC_PER_SEC));
   
   T_UVOBJ
  - sv_setref_uv($arg, \${ntype}\, (UV)$var);
  + modperl_perl_sv_setref_uv(aTHX_ $arg, \${ntype}\, (UV)$var);
   
   ##
   INPUT
  
  
  



cvs commit: modperl-2.0/xs/tables/current/ModPerl FunctionTable.pm

2002-05-23 Thread dougm

dougm   02/05/23 22:13:08

  Modified:xs/tables/current/ModPerl FunctionTable.pm
  Log:
  sync
  
  Revision  ChangesPath
  1.68  +26 -1 modperl-2.0/xs/tables/current/ModPerl/FunctionTable.pm
  
  Index: FunctionTable.pm
  ===
  RCS file: /home/cvs/modperl-2.0/xs/tables/current/ModPerl/FunctionTable.pm,v
  retrieving revision 1.67
  retrieving revision 1.68
  diff -u -r1.67 -r1.68
  --- FunctionTable.pm  22 May 2002 16:30:40 -  1.67
  +++ FunctionTable.pm  24 May 2002 05:13:07 -  1.68
   -2,7 +2,7 
   
   # !!
   # ! WARNING: generated by ModPerl::ParseSource/0.01
  -# !  Wed May 22 09:10:46 2002
  +# !  Thu May 23 22:06:43 2002
   # !  do NOT edit, any changes will be lost !
   # !!
   
   -3171,6 +3171,31 
 {
   'type' = 'const char *',
   'name' = 'name'
  +  }
  +]
  +  },
  +  {
  +'return_type' = 'SV *',
  +'name' = 'modperl_perl_sv_setref_uv',
  +'attr' = [
  +  '__inline__'
  +],
  +'args' = [
  +  {
  +'type' = 'PerlInterpreter *',
  +'name' = 'my_perl'
  +  },
  +  {
  +'type' = 'SV *',
  +'name' = 'rv'
  +  },
  +  {
  +'type' = 'const char *',
  +'name' = 'classname'
  +  },
  +  {
  +'type' = 'UV',
  +'name' = 'uv'
 }
   ]
 },