hitimes 1.0.1-x86-mswin32-60 → 1.0.2-x86-mswin32-60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/HISTORY +13 -6
 - data/Rakefile +3 -0
 - data/ext/{extconf.rb → hitimes/extconf.rb} +7 -1
 - data/ext/{hitimes_ext.c → hitimes/hitimes_ext.c} +0 -0
 - data/ext/{hitimes_instant_clock_gettime.c → hitimes/hitimes_instant_clock_gettime.c} +7 -4
 - data/ext/{hitimes_instant_osx.c → hitimes/hitimes_instant_osx.c} +0 -0
 - data/ext/{hitimes_instant_windows.c → hitimes/hitimes_instant_windows.c} +1 -1
 - data/ext/{hitimes_interval.c → hitimes/hitimes_interval.c} +13 -24
 - data/ext/{hitimes_interval.h → hitimes/hitimes_interval.h} +5 -5
 - data/ext/{hitimes_stats.c → hitimes/hitimes_stats.c} +5 -4
 - data/ext/{hitimes_stats.h → hitimes/hitimes_stats.h} +5 -5
 - data/gemspec.rb +2 -1
 - data/lib/hitimes.rb +7 -1
 - data/lib/hitimes/version.rb +1 -1
 - data/spec/interval_spec.rb +11 -5
 - data/spec/mutex_stats_spec.rb +1 -1
 - data/spec/timed_metric_spec.rb +2 -2
 - data/spec/timed_value_metric_spec.rb +1 -1
 - data/tasks/config.rb +2 -1
 - data/tasks/distribution.rake +15 -2
 - data/tasks/extension.rake +27 -9
 - data/tasks/rubyforge.rake +3 -0
 - metadata +21 -20
 - data/ext/rbconfig-mingw.rb +0 -178
 - data/ext/rbconfig.rb +0 -178
 - data/lib/hitimes_ext.so +0 -0
 
    
        data/HISTORY
    CHANGED
    
    | 
         @@ -1,16 +1,23 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            = Changelog
         
     | 
| 
      
 2 
     | 
    
         
            +
            == Version 1.0.2 2009-06-28
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            * Fix bug with time.h on linode (reported by Roger Pack) 
         
     | 
| 
      
 5 
     | 
    
         
            +
            * Fix potential garbage collection issue with Interval class
         
     | 
| 
      
 6 
     | 
    
         
            +
            * Windows gem is now a fat binary to support installing in 1.8 or 1.9 from the
         
     | 
| 
      
 7 
     | 
    
         
            +
              same gem
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
       2 
9 
     | 
    
         
             
            == Version 1.0.1 2009-06-12
         
     | 
| 
       3 
10 
     | 
    
         | 
| 
       4 
11 
     | 
    
         
             
            * Fix examples
         
     | 
| 
       5 
     | 
    
         
            -
            * performance tuning, new Metric classes are faster than old Timer class
         
     | 
| 
      
 12 
     | 
    
         
            +
            * performance tuning, new Hitimes::Metric derived classes are faster than old Timer class
         
     | 
| 
       6 
13 
     | 
    
         | 
| 
       7 
14 
     | 
    
         
             
            == Version 1.0.0 2009-06-12
         
     | 
| 
       8 
15 
     | 
    
         | 
| 
       9 
16 
     | 
    
         
             
            * Major version bump with complete refactor of the metric collection API
         
     | 
| 
       10 
17 
     | 
    
         
             
            * 3 types of metrics now instead of just 1 Timer
         
     | 
| 
       11 
     | 
    
         
            -
              * ValueMetric
         
     | 
| 
       12 
     | 
    
         
            -
              * TimedMetric
         
     | 
| 
       13 
     | 
    
         
            -
              * TimedValueMetric
         
     | 
| 
      
 18 
     | 
    
         
            +
              * Hitimes::ValueMetric
         
     | 
| 
      
 19 
     | 
    
         
            +
              * Hitimes::TimedMetric
         
     | 
| 
      
 20 
     | 
    
         
            +
              * Hitimes::TimedValueMetric
         
     | 
| 
       14 
21 
     | 
    
         
             
            * The ability to convert all metrics #to_hash
         
     | 
| 
       15 
22 
     | 
    
         
             
            * Updated documentation with examples using each metric type
         
     | 
| 
       16 
23 
     | 
    
         | 
| 
         @@ -23,7 +30,7 @@ 
     | 
|
| 
       23 
30 
     | 
    
         | 
| 
       24 
31 
     | 
    
         
             
            * Added new stat 'rate'
         
     | 
| 
       25 
32 
     | 
    
         
             
            * Added new stat method to_hash
         
     | 
| 
       26 
     | 
    
         
            -
            * Added MutexedStats class for threadsafe stats collection 
         
     | 
| 
      
 33 
     | 
    
         
            +
            * Added Hitimes::MutexedStats class for threadsafe stats collection 
         
     | 
| 
       27 
34 
     | 
    
         
             
              - not needed when used in MRI 1.8.x
         
     | 
| 
       28 
35 
     | 
    
         
             
            * remove stale dependency on mkrf
         
     | 
| 
       29 
36 
     | 
    
         | 
| 
         @@ -41,7 +48,7 @@ 
     | 
|
| 
       41 
48 
     | 
    
         
             
            == Version 0.2.0
         
     | 
| 
       42 
49 
     | 
    
         | 
| 
       43 
50 
     | 
    
         
             
            * Performance improvements
         
     | 
| 
       44 
     | 
    
         
            -
            * Added Stats class
         
     | 
| 
      
 51 
     | 
    
         
            +
            * Added Hitimes::Stats class
         
     | 
| 
       45 
52 
     | 
    
         | 
| 
       46 
53 
     | 
    
         
             
            == Version 0.1.0
         
     | 
| 
       47 
54 
     | 
    
         | 
    
        data/Rakefile
    CHANGED
    
    
| 
         @@ -12,4 +12,10 @@ else 
     | 
|
| 
       12 
12 
     | 
    
         
             
              end
         
     | 
| 
       13 
13 
     | 
    
         
             
            end
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
      
 15 
     | 
    
         
            +
            # put in a different location if on windows so we can have fat binaries
         
     | 
| 
      
 16 
     | 
    
         
            +
            parent_dir = "hitimes"
         
     | 
| 
      
 17 
     | 
    
         
            +
            if RUBY_PLATFORM =~ /(mswin|mingw)/i then
         
     | 
| 
      
 18 
     | 
    
         
            +
              v = RUBY_VERSION.gsub(/\.\d$/,'')
         
     | 
| 
      
 19 
     | 
    
         
            +
              parent_dir = File.join( parent_dir, v )
         
     | 
| 
      
 20 
     | 
    
         
            +
            end
         
     | 
| 
      
 21 
     | 
    
         
            +
            create_makefile("#{parent_dir}/hitimes_ext")
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -2,11 +2,14 @@ 
     | 
|
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            #include "hitimes_interval.h"
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
     | 
    
         
            -
            #include < 
     | 
| 
      
 5 
     | 
    
         
            +
            #include <time.h>
         
     | 
| 
       6 
6 
     | 
    
         
             
            #ifndef CLOCK_MONOTONIC
         
     | 
| 
       7 
     | 
    
         
            -
            #  
     | 
| 
       8 
     | 
    
         
            -
            # 
     | 
| 
       9 
     | 
    
         
            -
            #  
     | 
| 
      
 7 
     | 
    
         
            +
            #  include <sys/time.h>
         
     | 
| 
      
 8 
     | 
    
         
            +
            #  ifndef CLOCK_MONOTONIC
         
     | 
| 
      
 9 
     | 
    
         
            +
            #    ifdef __linux__
         
     | 
| 
      
 10 
     | 
    
         
            +
            #      include <linux/time.h>
         
     | 
| 
      
 11 
     | 
    
         
            +
            #    endif
         
     | 
| 
      
 12 
     | 
    
         
            +
            #  endif
         
     | 
| 
       10 
13 
     | 
    
         
             
            #endif
         
     | 
| 
       11 
14 
     | 
    
         | 
| 
       12 
15 
     | 
    
         
             
            hitimes_instant_t hitimes_get_current_instant( )
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -7,7 +7,7 @@ 
     | 
|
| 
       7 
7 
     | 
    
         
             
             * returns the conversion factor, this value is used to convert
         
     | 
| 
       8 
8 
     | 
    
         
             
             * the value from hitimes_get_current_instant() into seconds
         
     | 
| 
       9 
9 
     | 
    
         
             
             */
         
     | 
| 
       10 
     | 
    
         
            -
            double hitimes_instant_conversion_factor()
         
     | 
| 
      
 10 
     | 
    
         
            +
            long double hitimes_instant_conversion_factor()
         
     | 
| 
       11 
11 
     | 
    
         
             
            {
         
     | 
| 
       12 
12 
     | 
    
         
             
                LARGE_INTEGER ticks_per_second;
         
     | 
| 
       13 
13 
     | 
    
         
             
                QueryPerformanceFrequency( &ticks_per_second );
         
     | 
| 
         @@ -16,10 +16,6 @@ VALUE cH_Interval;         /* class  Hitimes::Interval  */ 
     | 
|
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
            VALUE hitimes_interval_free(hitimes_interval_t* i) 
         
     | 
| 
       18 
18 
     | 
    
         
             
            {
         
     | 
| 
       19 
     | 
    
         
            -
                if ( Qnil != i->duration ) {
         
     | 
| 
       20 
     | 
    
         
            -
                    rb_gc_unregister_address( &(i->duration) );
         
     | 
| 
       21 
     | 
    
         
            -
                    i->duration = Qnil;
         
     | 
| 
       22 
     | 
    
         
            -
                }
         
     | 
| 
       23 
19 
     | 
    
         
             
                xfree( i );
         
     | 
| 
       24 
20 
     | 
    
         
             
                return Qnil;
         
     | 
| 
       25 
21 
     | 
    
         
             
            }
         
     | 
| 
         @@ -31,7 +27,7 @@ VALUE hitimes_interval_alloc(VALUE klass) 
     | 
|
| 
       31 
27 
     | 
    
         | 
| 
       32 
28 
     | 
    
         
             
                i->start_instant = 0L;
         
     | 
| 
       33 
29 
     | 
    
         
             
                i->stop_instant  = 0L;
         
     | 
| 
       34 
     | 
    
         
            -
                i->duration      =  
     | 
| 
      
 30 
     | 
    
         
            +
                i->duration      = -1.0l;
         
     | 
| 
       35 
31 
     | 
    
         | 
| 
       36 
32 
     | 
    
         
             
                obj = Data_Wrap_Struct(klass, NULL, hitimes_interval_free, i);
         
     | 
| 
       37 
33 
     | 
    
         
             
                return obj;
         
     | 
| 
         @@ -50,7 +46,7 @@ VALUE hitimes_interval_now( VALUE self ) 
     | 
|
| 
       50 
46 
     | 
    
         | 
| 
       51 
47 
     | 
    
         
             
                i->start_instant = hitimes_get_current_instant( );
         
     | 
| 
       52 
48 
     | 
    
         
             
                i->stop_instant  = 0L;
         
     | 
| 
       53 
     | 
    
         
            -
                i->duration      =  
     | 
| 
      
 49 
     | 
    
         
            +
                i->duration      = -1.0l;
         
     | 
| 
       54 
50 
     | 
    
         | 
| 
       55 
51 
     | 
    
         
             
                obj = Data_Wrap_Struct(cH_Interval, NULL, hitimes_interval_free, i);
         
     | 
| 
       56 
52 
     | 
    
         | 
| 
         @@ -67,7 +63,7 @@ VALUE hitimes_interval_measure( VALUE self ) 
     | 
|
| 
       67 
63 
     | 
    
         
             
            {
         
     | 
| 
       68 
64 
     | 
    
         
             
                hitimes_instant_t before;
         
     | 
| 
       69 
65 
     | 
    
         
             
                hitimes_instant_t after;
         
     | 
| 
       70 
     | 
    
         
            -
                double 
     | 
| 
      
 66 
     | 
    
         
            +
                long double       duration;
         
     | 
| 
       71 
67 
     | 
    
         | 
| 
       72 
68 
     | 
    
         
             
                if ( !rb_block_given_p() ) {
         
     | 
| 
       73 
69 
     | 
    
         
             
                    rb_raise(eH_Error, "No block given to Interval.measure" );
         
     | 
| 
         @@ -99,7 +95,7 @@ VALUE hitimes_interval_split( VALUE self ) 
     | 
|
| 
       99 
95 
     | 
    
         | 
| 
       100 
96 
     | 
    
         
             
                second->start_instant = first->stop_instant;
         
     | 
| 
       101 
97 
     | 
    
         
             
                second->stop_instant  = 0L;
         
     | 
| 
       102 
     | 
    
         
            -
                second->duration      =  
     | 
| 
      
 98 
     | 
    
         
            +
                second->duration      = -1.0l;
         
     | 
| 
       103 
99 
     | 
    
         | 
| 
       104 
100 
     | 
    
         
             
                obj = Data_Wrap_Struct(cH_Interval, NULL, hitimes_interval_free, second);
         
     | 
| 
       105 
101 
     | 
    
         | 
| 
         @@ -124,7 +120,7 @@ VALUE hitimes_interval_start( VALUE self ) 
     | 
|
| 
       124 
120 
     | 
    
         
             
                if ( 0L == i->start_instant ) {
         
     | 
| 
       125 
121 
     | 
    
         
             
                  i->start_instant = hitimes_get_current_instant( );
         
     | 
| 
       126 
122 
     | 
    
         
             
                  i->stop_instant  = 0L;
         
     | 
| 
       127 
     | 
    
         
            -
                  i->duration      =  
     | 
| 
      
 123 
     | 
    
         
            +
                  i->duration      = -1.0l;
         
     | 
| 
       128 
124 
     | 
    
         | 
| 
       129 
125 
     | 
    
         
             
                  rc = Qtrue;
         
     | 
| 
       130 
126 
     | 
    
         
             
                }
         
     | 
| 
         @@ -152,13 +148,9 @@ VALUE hitimes_interval_stop( VALUE self ) 
     | 
|
| 
       152 
148 
     | 
    
         
             
                }
         
     | 
| 
       153 
149 
     | 
    
         | 
| 
       154 
150 
     | 
    
         
             
                if ( 0L == i->stop_instant ) {
         
     | 
| 
       155 
     | 
    
         
            -
                  double d;
         
     | 
| 
       156 
     | 
    
         
            -
             
     | 
| 
       157 
151 
     | 
    
         
             
                  i->stop_instant = hitimes_get_current_instant( );
         
     | 
| 
       158 
     | 
    
         
            -
                   
     | 
| 
       159 
     | 
    
         
            -
                   
     | 
| 
       160 
     | 
    
         
            -
                  rb_gc_register_address( &(i->duration) );
         
     | 
| 
       161 
     | 
    
         
            -
                  rc = i->duration;
         
     | 
| 
      
 152 
     | 
    
         
            +
                  i->duration = ( i->stop_instant - i->start_instant ) / HITIMES_INSTANT_CONVERSION_FACTOR;
         
     | 
| 
      
 153 
     | 
    
         
            +
                  rc = rb_float_new( i->duration );
         
     | 
| 
       162 
154 
     | 
    
         
             
                }
         
     | 
| 
       163 
155 
     | 
    
         | 
| 
       164 
156 
     | 
    
         
             
                return rc;
         
     | 
| 
         @@ -176,7 +168,6 @@ VALUE hitimes_interval_duration_so_far( VALUE self ) 
     | 
|
| 
       176 
168 
     | 
    
         
             
            {
         
     | 
| 
       177 
169 
     | 
    
         
             
                hitimes_interval_t *i;
         
     | 
| 
       178 
170 
     | 
    
         
             
                VALUE               rc = Qfalse;
         
     | 
| 
       179 
     | 
    
         
            -
                double              d;
         
     | 
| 
       180 
171 
     | 
    
         | 
| 
       181 
172 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_interval_t, i );
         
     | 
| 
       182 
173 
     | 
    
         
             
                if ( 0L == i->start_instant ) {
         
     | 
| 
         @@ -184,6 +175,7 @@ VALUE hitimes_interval_duration_so_far( VALUE self ) 
     | 
|
| 
       184 
175 
     | 
    
         
             
                }
         
     | 
| 
       185 
176 
     | 
    
         | 
| 
       186 
177 
     | 
    
         
             
                if ( 0L == i->stop_instant ) {
         
     | 
| 
      
 178 
     | 
    
         
            +
                    long double         d;
         
     | 
| 
       187 
179 
     | 
    
         
             
                    hitimes_instant_t now = hitimes_get_current_instant( );
         
     | 
| 
       188 
180 
     | 
    
         
             
                    d = ( now - i->start_instant ) / HITIMES_INSTANT_CONVERSION_FACTOR;
         
     | 
| 
       189 
181 
     | 
    
         
             
                    rc = rb_float_new( d );
         
     | 
| 
         @@ -293,7 +285,6 @@ VALUE hitimes_interval_stop_instant( VALUE self ) 
     | 
|
| 
       293 
285 
     | 
    
         
             
            VALUE hitimes_interval_duration ( VALUE self )
         
     | 
| 
       294 
286 
     | 
    
         
             
            {
         
     | 
| 
       295 
287 
     | 
    
         
             
                hitimes_interval_t *i;
         
     | 
| 
       296 
     | 
    
         
            -
                double             d;
         
     | 
| 
       297 
288 
     | 
    
         | 
| 
       298 
289 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_interval_t, i );
         
     | 
| 
       299 
290 
     | 
    
         | 
| 
         @@ -301,22 +292,20 @@ VALUE hitimes_interval_duration ( VALUE self ) 
     | 
|
| 
       301 
292 
     | 
    
         
             
                 * if stop has not yet been called, then return the amount of time so far
         
     | 
| 
       302 
293 
     | 
    
         
             
                 */
         
     | 
| 
       303 
294 
     | 
    
         
             
                if ( 0L == i->stop_instant ) {
         
     | 
| 
      
 295 
     | 
    
         
            +
                    long double d;
         
     | 
| 
       304 
296 
     | 
    
         
             
                    hitimes_instant_t now = hitimes_get_current_instant( );
         
     | 
| 
       305 
297 
     | 
    
         
             
                    d = ( now - i->start_instant ) / HITIMES_INSTANT_CONVERSION_FACTOR;
         
     | 
| 
       306 
298 
     | 
    
         
             
                    return rb_float_new( d );
         
     | 
| 
       307 
     | 
    
         
            -
                }
         
     | 
| 
       308 
     | 
    
         
            -
             
     | 
| 
      
 299 
     | 
    
         
            +
                } 
         
     | 
| 
       309 
300 
     | 
    
         | 
| 
       310 
301 
     | 
    
         
             
                /*
         
     | 
| 
       311 
302 
     | 
    
         
             
                 * stop has been called, calculate the duration and save the result
         
     | 
| 
       312 
303 
     | 
    
         
             
                 */
         
     | 
| 
       313 
     | 
    
         
            -
                if (  
     | 
| 
       314 
     | 
    
         
            -
                     
     | 
| 
       315 
     | 
    
         
            -
                    i->duration = rb_float_new( d );
         
     | 
| 
       316 
     | 
    
         
            -
                    rb_gc_register_address( &(i->duration) );
         
     | 
| 
      
 304 
     | 
    
         
            +
                if ( i->duration < 0.0 ) {
         
     | 
| 
      
 305 
     | 
    
         
            +
                    i->duration = ( i->stop_instant - i->start_instant ) / HITIMES_INSTANT_CONVERSION_FACTOR;
         
     | 
| 
       317 
306 
     | 
    
         
             
                }
         
     | 
| 
       318 
307 
     | 
    
         | 
| 
       319 
     | 
    
         
            -
                return i->duration;
         
     | 
| 
      
 308 
     | 
    
         
            +
                return rb_float_new( i->duration );
         
     | 
| 
       320 
309 
     | 
    
         
             
            }
         
     | 
| 
       321 
310 
     | 
    
         | 
| 
       322 
311 
     | 
    
         | 
| 
         @@ -10,14 +10,14 @@ 
     | 
|
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         
             
            #include <ruby.h>
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
     | 
    
         
            -
            #define NANOSECONDS_PER_SECOND   
     | 
| 
      
 13 
     | 
    
         
            +
            #define NANOSECONDS_PER_SECOND  1e9l
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            #ifdef USE_INSTANT_CLOCK_GETTIME
         
     | 
| 
       16 
16 
     | 
    
         
             
            #    define HITIMES_U64INT unsigned long long int
         
     | 
| 
       17 
     | 
    
         
            -
            #    define HITIMES_INSTANT_CONVERSION_FACTOR  
     | 
| 
      
 17 
     | 
    
         
            +
            #    define HITIMES_INSTANT_CONVERSION_FACTOR 1e9l
         
     | 
| 
       18 
18 
     | 
    
         
             
            #elif USE_INSTANT_OSX
         
     | 
| 
       19 
19 
     | 
    
         
             
            #    define HITIMES_U64INT unsigned long long int
         
     | 
| 
       20 
     | 
    
         
            -
            #    define HITIMES_INSTANT_CONVERSION_FACTOR  
     | 
| 
      
 20 
     | 
    
         
            +
            #    define HITIMES_INSTANT_CONVERSION_FACTOR 1e9l
         
     | 
| 
       21 
21 
     | 
    
         
             
            #elif USE_INSTANT_WINDOWS
         
     | 
| 
       22 
22 
     | 
    
         
             
            #    define HITIMES_U64INT unsigned __int64
         
     | 
| 
       23 
23 
     | 
    
         
             
            #    define HITIMES_INSTANT_CONVERSION_FACTOR hitimes_instant_conversion_factor()
         
     | 
| 
         @@ -34,12 +34,12 @@ typedef HITIMES_U64INT hitimes_instant_t; 
     | 
|
| 
       34 
34 
     | 
    
         
             
            typedef struct hitimes_interval {
         
     | 
| 
       35 
35 
     | 
    
         
             
                hitimes_instant_t start_instant;
         
     | 
| 
       36 
36 
     | 
    
         
             
                hitimes_instant_t stop_instant;
         
     | 
| 
       37 
     | 
    
         
            -
                 
     | 
| 
      
 37 
     | 
    
         
            +
                long double       duration;
         
     | 
| 
       38 
38 
     | 
    
         
             
            } hitimes_interval_t;
         
     | 
| 
       39 
39 
     | 
    
         | 
| 
       40 
40 
     | 
    
         
             
            /* all the backends must define this method */
         
     | 
| 
       41 
41 
     | 
    
         
             
            hitimes_instant_t hitimes_get_current_instant( );
         
     | 
| 
       42 
     | 
    
         
            -
            double hitimes_instant_conversion_factor( );
         
     | 
| 
      
 42 
     | 
    
         
            +
            long double hitimes_instant_conversion_factor( );
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
44 
     | 
    
         
             
            /* init methods */
         
     | 
| 
       45 
45 
     | 
    
         
             
            void Init_hitimes_stats();
         
     | 
| 
         @@ -46,10 +46,11 @@ VALUE hitimes_stats_alloc(VALUE klass) 
     | 
|
| 
       46 
46 
     | 
    
         
             
             */
         
     | 
| 
       47 
47 
     | 
    
         
             
            VALUE hitimes_stats_update( VALUE self, VALUE v )
         
     | 
| 
       48 
48 
     | 
    
         
             
            {
         
     | 
| 
       49 
     | 
    
         
            -
                double 
     | 
| 
      
 49 
     | 
    
         
            +
                long double      new_v;
         
     | 
| 
       50 
50 
     | 
    
         
             
                hitimes_stats_t *stats;
         
     | 
| 
       51 
51 
     | 
    
         | 
| 
       52 
52 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_stats_t, stats );
         
     | 
| 
      
 53 
     | 
    
         
            +
                new_v = NUM2DBL( v );
         
     | 
| 
       53 
54 
     | 
    
         | 
| 
       54 
55 
     | 
    
         
             
                if ( 0 == stats->count ) {
         
     | 
| 
       55 
56 
     | 
    
         
             
                  stats->min = new_v;
         
     | 
| 
         @@ -76,7 +77,7 @@ VALUE hitimes_stats_update( VALUE self, VALUE v ) 
     | 
|
| 
       76 
77 
     | 
    
         
             
            VALUE hitimes_stats_mean( VALUE self )
         
     | 
| 
       77 
78 
     | 
    
         
             
            {
         
     | 
| 
       78 
79 
     | 
    
         
             
                hitimes_stats_t *stats;
         
     | 
| 
       79 
     | 
    
         
            -
                double 
     | 
| 
      
 80 
     | 
    
         
            +
                long double      mean = 0.0;
         
     | 
| 
       80 
81 
     | 
    
         | 
| 
       81 
82 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_stats_t, stats );
         
     | 
| 
       82 
83 
     | 
    
         | 
| 
         @@ -106,7 +107,7 @@ VALUE hitimes_stats_mean( VALUE self ) 
     | 
|
| 
       106 
107 
     | 
    
         
             
            VALUE hitimes_stats_rate( VALUE self )
         
     | 
| 
       107 
108 
     | 
    
         
             
            {
         
     | 
| 
       108 
109 
     | 
    
         
             
                hitimes_stats_t *stats;
         
     | 
| 
       109 
     | 
    
         
            -
                double 
     | 
| 
      
 110 
     | 
    
         
            +
                long double      rate = 0.0;
         
     | 
| 
       110 
111 
     | 
    
         | 
| 
       111 
112 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_stats_t, stats );
         
     | 
| 
       112 
113 
     | 
    
         | 
| 
         @@ -210,7 +211,7 @@ VALUE hitimes_stats_sumsq( VALUE self ) 
     | 
|
| 
       210 
211 
     | 
    
         
             
            VALUE hitimes_stats_stddev ( VALUE self )
         
     | 
| 
       211 
212 
     | 
    
         
             
            {
         
     | 
| 
       212 
213 
     | 
    
         
             
                hitimes_stats_t *stats;
         
     | 
| 
       213 
     | 
    
         
            -
                double 
     | 
| 
      
 214 
     | 
    
         
            +
                long double     stddev = 0.0;
         
     | 
| 
       214 
215 
     | 
    
         | 
| 
       215 
216 
     | 
    
         
             
                Data_Get_Struct( self, hitimes_stats_t, stats );
         
     | 
| 
       216 
217 
     | 
    
         
             
                if ( stats->count > 1 ) {
         
     | 
| 
         @@ -18,11 +18,11 @@ extern VALUE cH_Stats;  /* Hitimes::Stats */ 
     | 
|
| 
       18 
18 
     | 
    
         | 
| 
       19 
19 
     | 
    
         | 
| 
       20 
20 
     | 
    
         
             
            typedef struct hitimes_stats {
         
     | 
| 
       21 
     | 
    
         
            -
                double min;
         
     | 
| 
       22 
     | 
    
         
            -
                double max;
         
     | 
| 
       23 
     | 
    
         
            -
                double sum;
         
     | 
| 
       24 
     | 
    
         
            -
                double sumsq;
         
     | 
| 
       25 
     | 
    
         
            -
                long   count;
         
     | 
| 
      
 21 
     | 
    
         
            +
                long double min;
         
     | 
| 
      
 22 
     | 
    
         
            +
                long double max;
         
     | 
| 
      
 23 
     | 
    
         
            +
                long double sum;
         
     | 
| 
      
 24 
     | 
    
         
            +
                long double sumsq;
         
     | 
| 
      
 25 
     | 
    
         
            +
                long long   count;
         
     | 
| 
       26 
26 
     | 
    
         
             
            } hitimes_stats_t;
         
     | 
| 
       27 
27 
     | 
    
         | 
| 
       28 
28 
     | 
    
         
             
            #endif
         
     | 
    
        data/gemspec.rb
    CHANGED
    
    | 
         @@ -24,6 +24,7 @@ Hitimes::GEM_SPEC = Gem::Specification.new do |spec| 
     | 
|
| 
       24 
24 
     | 
    
         
             
              spec.add_dependency("configuration", " ~> 0.0.5")
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
              spec.add_development_dependency( "json", "~> 1.1.3")
         
     | 
| 
      
 27 
     | 
    
         
            +
              spec.add_development_dependency( "rake-compiler", "~> 0.5.0")
         
     | 
| 
       27 
28 
     | 
    
         | 
| 
       28 
29 
     | 
    
         
             
              if ext_conf = Configuration.for_if_exist?("extension") then
         
     | 
| 
       29 
30 
     | 
    
         
             
                spec.extensions <<  ext_conf.configs
         
     | 
| 
         @@ -51,6 +52,6 @@ end 
     | 
|
| 
       51 
52 
     | 
    
         
             
            Hitimes::GEM_SPEC_WIN = Hitimes::GEM_SPEC.clone
         
     | 
| 
       52 
53 
     | 
    
         
             
            Hitimes::GEM_SPEC_WIN.platform = ::Gem::Platform.new( "i386-mswin32_60" )
         
     | 
| 
       53 
54 
     | 
    
         
             
            Hitimes::GEM_SPEC_WIN.extensions = []
         
     | 
| 
       54 
     | 
    
         
            -
            Hitimes::GEM_SPEC_WIN.files +=  ["lib/ 
     | 
| 
      
 55 
     | 
    
         
            +
            Hitimes::GEM_SPEC_WIN.files +=  FileList["lib/hitimes/{1.8,1.9}/**.{dll,so}"].to_a
         
     | 
| 
       55 
56 
     | 
    
         | 
| 
       56 
57 
     | 
    
         
             
            Hitimes::SPECS = [ Hitimes::GEM_SPEC, Hitimes::GEM_SPEC_WIN ]
         
     | 
    
        data/lib/hitimes.rb
    CHANGED
    
    | 
         @@ -18,7 +18,13 @@ module Hitimes 
     | 
|
| 
       18 
18 
     | 
    
         
             
            end
         
     | 
| 
       19 
19 
     | 
    
         
             
            require 'hitimes/paths'
         
     | 
| 
       20 
20 
     | 
    
         
             
            require 'hitimes/version'
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            # support for fat binaries on windows
         
     | 
| 
      
 23 
     | 
    
         
            +
            if RUBY_PLATFORM =~ /(mswin|mingw)/i
         
     | 
| 
      
 24 
     | 
    
         
            +
              require "hitimes/#{RUBY_VERSION.sub(/\.\d$/,'')}/hitimes_ext"
         
     | 
| 
      
 25 
     | 
    
         
            +
            else
         
     | 
| 
      
 26 
     | 
    
         
            +
              require 'hitimes/hitimes_ext'
         
     | 
| 
      
 27 
     | 
    
         
            +
            end
         
     | 
| 
       22 
28 
     | 
    
         
             
            require 'hitimes/stats'
         
     | 
| 
       23 
29 
     | 
    
         
             
            require 'hitimes/mutexed_stats'
         
     | 
| 
       24 
30 
     | 
    
         
             
            require 'hitimes/metric'
         
     | 
    
        data/lib/hitimes/version.rb
    CHANGED
    
    
    
        data/spec/interval_spec.rb
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require File.expand_path( File.join( File.dirname( __FILE__ ), "spec_helper.rb" ) )
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require 'hitimes_ext'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'hitimes/hitimes_ext'
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            describe Hitimes::Interval do
         
     | 
| 
       6 
6 
     | 
    
         
             
              it "has a 0 duration when newly created" do
         
     | 
| 
         @@ -85,13 +85,19 @@ describe Hitimes::Interval do 
     | 
|
| 
       85 
85 
     | 
    
         | 
| 
       86 
86 
     | 
    
         
             
              end
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
     | 
    
         
            -
              it " 
     | 
| 
      
 88 
     | 
    
         
            +
              it "duration does not change after stop is calledd" do
         
     | 
| 
       89 
89 
     | 
    
         
             
                i = Hitimes::Interval.new
         
     | 
| 
       90 
90 
     | 
    
         
             
                i.start
         
     | 
| 
       91 
     | 
    
         
            -
                i.stop
         
     | 
| 
       92 
     | 
    
         
            -
                x = i.duration
         
     | 
| 
      
 91 
     | 
    
         
            +
                x = i.stop
         
     | 
| 
       93 
92 
     | 
    
         
             
                y = i.duration
         
     | 
| 
       94 
     | 
    
         
            -
                 
     | 
| 
      
 93 
     | 
    
         
            +
                i.stop.should == false
         
     | 
| 
      
 94 
     | 
    
         
            +
             
     | 
| 
      
 95 
     | 
    
         
            +
                z = i.duration
         
     | 
| 
      
 96 
     | 
    
         
            +
             
     | 
| 
      
 97 
     | 
    
         
            +
                x.should == y
         
     | 
| 
      
 98 
     | 
    
         
            +
                x.should == z
         
     | 
| 
      
 99 
     | 
    
         
            +
             
     | 
| 
      
 100 
     | 
    
         
            +
                y.should == z
         
     | 
| 
       95 
101 
     | 
    
         
             
              end
         
     | 
| 
       96 
102 
     | 
    
         | 
| 
       97 
103 
     | 
    
         
             
              it "can return how much time has elapsed from the start without stopping the interval" do
         
     | 
    
        data/spec/mutex_stats_spec.rb
    CHANGED
    
    
    
        data/spec/timed_metric_spec.rb
    CHANGED
    
    | 
         @@ -65,12 +65,12 @@ describe Hitimes::TimedMetric do 
     | 
|
| 
       65 
65 
     | 
    
         | 
| 
       66 
66 
     | 
    
         
             
              it "keeps track of the min value" do
         
     | 
| 
       67 
67 
     | 
    
         
             
                2.times { @tm.start ; sleep 0.05 ; @tm.stop }
         
     | 
| 
       68 
     | 
    
         
            -
                @tm.min.should be_close( 0.05, 0. 
     | 
| 
      
 68 
     | 
    
         
            +
                @tm.min.should be_close( 0.05, 0.002 )
         
     | 
| 
       69 
69 
     | 
    
         
             
              end
         
     | 
| 
       70 
70 
     | 
    
         | 
| 
       71 
71 
     | 
    
         
             
              it "keeps track of the max value" do
         
     | 
| 
       72 
72 
     | 
    
         
             
                2.times { @tm.start ; sleep 0.05 ; @tm.stop }
         
     | 
| 
       73 
     | 
    
         
            -
                @tm.max.should be_close( 0.05, 0. 
     | 
| 
      
 73 
     | 
    
         
            +
                @tm.max.should be_close( 0.05, 0.002 )
         
     | 
| 
       74 
74 
     | 
    
         
             
              end
         
     | 
| 
       75 
75 
     | 
    
         | 
| 
       76 
76 
     | 
    
         
             
              it "keeps track of the sum value" do
         
     | 
| 
         @@ -151,7 +151,7 @@ describe Hitimes::TimedValueMetric do 
     | 
|
| 
       151 
151 
     | 
    
         
             
                it "has a rate" do
         
     | 
| 
       152 
152 
     | 
    
         
             
                  5.times { |x| @tm.start ; sleep 0.05 ; @tm.stop( x ) }
         
     | 
| 
       153 
153 
     | 
    
         
             
                  h = @tm.to_hash
         
     | 
| 
       154 
     | 
    
         
            -
                  h['rate'].should be_close( 40.0, 0. 
     | 
| 
      
 154 
     | 
    
         
            +
                  h['rate'].should be_close( 40.0, 0.3 )
         
     | 
| 
       155 
155 
     | 
    
         
             
                end
         
     | 
| 
       156 
156 
     | 
    
         | 
| 
       157 
157 
     | 
    
         
             
                it "has a unit_count" do
         
     | 
    
        data/tasks/config.rb
    CHANGED
    
    | 
         @@ -27,7 +27,7 @@ Configuration.for('packaging') { 
     | 
|
| 
       27 
27 
     | 
    
         
             
              proj_conf = Configuration.for('project')
         
     | 
| 
       28 
28 
     | 
    
         
             
              files {
         
     | 
| 
       29 
29 
     | 
    
         
             
                bin       FileList["bin/*"]
         
     | 
| 
       30 
     | 
    
         
            -
                ext       FileList["ext/*.{c,h,rb}"]
         
     | 
| 
      
 30 
     | 
    
         
            +
                ext       FileList["ext/hitimes/*.{c,h,rb}"]
         
     | 
| 
       31 
31 
     | 
    
         
             
                examples  FileList["examples/*.rb"]
         
     | 
| 
       32 
32 
     | 
    
         
             
                lib       FileList["lib/**/*.rb"]
         
     | 
| 
       33 
33 
     | 
    
         
             
                test      FileList["spec/**/*.rb", "test/**/*.rb"]
         
     | 
| 
         @@ -92,6 +92,7 @@ Configuration.for('rdoc') { 
     | 
|
| 
       92 
92 
     | 
    
         
             
            #-----------------------------------------------------------------------
         
     | 
| 
       93 
93 
     | 
    
         
             
            Configuration.for('extension') {
         
     | 
| 
       94 
94 
     | 
    
         
             
              configs   Configuration.for('packaging').files.ext.find_all { |x| %w[ mkrf_conf.rb extconf.rb ].include?(File.basename(x)) }
         
     | 
| 
      
 95 
     | 
    
         
            +
              cross_rbconfig YAML.load_file( File.expand_path("~/.rake-compiler/config.yml"))
         
     | 
| 
       95 
96 
     | 
    
         
             
            }
         
     | 
| 
       96 
97 
     | 
    
         | 
| 
       97 
98 
     | 
    
         
             
            #-----------------------------------------------------------------------
         
     | 
    
        data/tasks/distribution.rake
    CHANGED
    
    | 
         @@ -35,12 +35,25 @@ if pkg_config = Configuration.for_if_exist?("packaging") then 
     | 
|
| 
       35 
35 
     | 
    
         
             
                task :reinstall => [:uninstall, :repackage, :install]
         
     | 
| 
       36 
36 
     | 
    
         | 
| 
       37 
37 
     | 
    
         
             
                desc "package up a windows gem"
         
     | 
| 
       38 
     | 
    
         
            -
                task :package_win =>  
     | 
| 
       39 
     | 
    
         
            -
                   
     | 
| 
      
 38 
     | 
    
         
            +
                task :package_win => :clean do
         
     | 
| 
      
 39 
     | 
    
         
            +
                  Configuration.for("extension").cross_rbconfig.keys.each do |rbconfig|
         
     | 
| 
      
 40 
     | 
    
         
            +
                    v = rbconfig.split("-").last
         
     | 
| 
      
 41 
     | 
    
         
            +
                    s = v.sub(/\.\d$/,'')
         
     | 
| 
      
 42 
     | 
    
         
            +
                    sh "rake ext:build_win-#{v}"
         
     | 
| 
      
 43 
     | 
    
         
            +
                    mkdir_p "lib/hitimes/#{s}", :verbose => true
         
     | 
| 
      
 44 
     | 
    
         
            +
                    cp "ext/hitimes/hitimes_ext.so", "lib/hitimes/#{s}/", :verbose => true
         
     | 
| 
      
 45 
     | 
    
         
            +
                  end
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
       40 
47 
     | 
    
         
             
                  Gem::Builder.new( Hitimes::GEM_SPEC_WIN ).build 
         
     | 
| 
      
 48 
     | 
    
         
            +
                  mkdir "pkg" unless File.directory?( 'pkg' )
         
     | 
| 
       41 
49 
     | 
    
         
             
                  mv Dir["*.gem"].first, "pkg"
         
     | 
| 
       42 
50 
     | 
    
         
             
                end
         
     | 
| 
       43 
51 
     | 
    
         | 
| 
      
 52 
     | 
    
         
            +
                task :clobber do
         
     | 
| 
      
 53 
     | 
    
         
            +
                  rm_rf "lib/hitimes/1.8"
         
     | 
| 
      
 54 
     | 
    
         
            +
                  rm_rf "lib/hitimes/1.9"
         
     | 
| 
      
 55 
     | 
    
         
            +
                end
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
       44 
57 
     | 
    
         
             
                desc "distribute copiously"
         
     | 
| 
       45 
58 
     | 
    
         
             
                task :copious => [:package, :package_win ] do
         
     | 
| 
       46 
59 
     | 
    
         
             
                  gems = Hitimes::SPECS.collect { |s| "#{s.full_name}.gem" }
         
     | 
    
        data/tasks/extension.rake
    CHANGED
    
    | 
         @@ -8,41 +8,59 @@ require 'pathname' 
     | 
|
| 
       8 
8 
     | 
    
         
             
            if ext_config = Configuration.for_if_exist?('extension') then
         
     | 
| 
       9 
9 
     | 
    
         
             
              namespace :ext do  
         
     | 
| 
       10 
10 
     | 
    
         
             
                desc "Build the extension(s)"
         
     | 
| 
       11 
     | 
    
         
            -
                task :build do
         
     | 
| 
      
 11 
     | 
    
         
            +
                task :build => :clean do
         
     | 
| 
       12 
12 
     | 
    
         
             
                  Hitimes::GEM_SPEC.extensions.each do |extension|
         
     | 
| 
       13 
13 
     | 
    
         
             
                    path = Pathname.new(extension)
         
     | 
| 
       14 
14 
     | 
    
         
             
                    parts = path.split
         
     | 
| 
       15 
15 
     | 
    
         
             
                    conf = parts.last
         
     | 
| 
       16 
16 
     | 
    
         
             
                    Dir.chdir(path.dirname) do |d| 
         
     | 
| 
       17 
17 
     | 
    
         
             
                      ruby conf.to_s
         
     | 
| 
       18 
     | 
    
         
            -
                      #sh "rake default"
         
     | 
| 
       19 
18 
     | 
    
         
             
                      sh "make" 
         
     | 
| 
       20 
19 
     | 
    
         
             
                    end
         
     | 
| 
       21 
20 
     | 
    
         
             
                  end
         
     | 
| 
       22 
21 
     | 
    
         
             
                end 
         
     | 
| 
       23 
22 
     | 
    
         | 
| 
       24 
     | 
    
         
            -
                 
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
      
 23 
     | 
    
         
            +
                def build_win( version = "1.8.6" )
         
     | 
| 
      
 24 
     | 
    
         
            +
                  ext_config = Configuration.for("extension")
         
     | 
| 
      
 25 
     | 
    
         
            +
                  rbconfig = ext_config.cross_rbconfig["rbconfig-#{version}"]
         
     | 
| 
      
 26 
     | 
    
         
            +
                  raise ArgumentError, "No cross compiler for version #{version}, we have #{ext_config.cross_rbconfig.keys.join(",")}" unless rbconfig
         
     | 
| 
      
 27 
     | 
    
         
            +
                  ruby_exe = if version =~ /1\.8/ then
         
     | 
| 
      
 28 
     | 
    
         
            +
                               "ruby"
         
     | 
| 
      
 29 
     | 
    
         
            +
                             else
         
     | 
| 
      
 30 
     | 
    
         
            +
                               "ruby1.9"
         
     | 
| 
      
 31 
     | 
    
         
            +
                             end
         
     | 
| 
       26 
32 
     | 
    
         
             
                  Hitimes::GEM_SPEC.extensions.each do |extension|
         
     | 
| 
       27 
33 
     | 
    
         
             
                    path = Pathname.new(extension)
         
     | 
| 
       28 
34 
     | 
    
         
             
                    parts = path.split
         
     | 
| 
       29 
35 
     | 
    
         
             
                    conf = parts.last
         
     | 
| 
       30 
36 
     | 
    
         
             
                    Dir.chdir(path.dirname) do |d| 
         
     | 
| 
       31 
     | 
    
         
            -
                      cp "rbconfig 
     | 
| 
       32 
     | 
    
         
            -
                      sh " 
     | 
| 
      
 37 
     | 
    
         
            +
                      cp "#{rbconfig}", "rbconfig.rb"
         
     | 
| 
      
 38 
     | 
    
         
            +
                      sh "#{ruby_exe} -I. extconf.rb"
         
     | 
| 
       33 
39 
     | 
    
         
             
                      sh "make"
         
     | 
| 
       34 
40 
     | 
    
         
             
                    end
         
     | 
| 
       35 
41 
     | 
    
         
             
                  end
         
     | 
| 
       36 
42 
     | 
    
         
             
                end
         
     | 
| 
       37 
43 
     | 
    
         | 
| 
      
 44 
     | 
    
         
            +
                win_builds = []
         
     | 
| 
      
 45 
     | 
    
         
            +
                ext_config.cross_rbconfig.keys.each do |v|
         
     | 
| 
      
 46 
     | 
    
         
            +
                  s = v.split("-").last
         
     | 
| 
      
 47 
     | 
    
         
            +
                  desc "Build the extension for windows version #{s}"
         
     | 
| 
      
 48 
     | 
    
         
            +
                  win_bname = "build_win-#{s}"
         
     | 
| 
      
 49 
     | 
    
         
            +
                  win_builds << win_bname
         
     | 
| 
      
 50 
     | 
    
         
            +
                  task win_bname => :clean do
         
     | 
| 
      
 51 
     | 
    
         
            +
                    build_win( s )
         
     | 
| 
      
 52 
     | 
    
         
            +
                  end
         
     | 
| 
      
 53 
     | 
    
         
            +
                end
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
       38 
55 
     | 
    
         
             
                task :clean do
         
     | 
| 
       39 
56 
     | 
    
         
             
                  ext_config.configs.each do |extension|
         
     | 
| 
       40 
57 
     | 
    
         
             
                    path  = Pathname.new(extension)
         
     | 
| 
       41 
58 
     | 
    
         
             
                    parts = path.split
         
     | 
| 
       42 
59 
     | 
    
         
             
                    conf  = parts.last
         
     | 
| 
       43 
60 
     | 
    
         
             
                    Dir.chdir(path.dirname) do |d| 
         
     | 
| 
       44 
     | 
    
         
            -
                       
     | 
| 
       45 
     | 
    
         
            -
             
     | 
| 
      
 61 
     | 
    
         
            +
                      if File.exist?( "Makefile" ) then
         
     | 
| 
      
 62 
     | 
    
         
            +
                        sh "make clean"
         
     | 
| 
      
 63 
     | 
    
         
            +
                      end
         
     | 
| 
       46 
64 
     | 
    
         
             
                    end 
         
     | 
| 
       47 
65 
     | 
    
         
             
                  end 
         
     | 
| 
       48 
66 
     | 
    
         
             
                end 
         
     | 
| 
         @@ -53,10 +71,10 @@ if ext_config = Configuration.for_if_exist?('extension') then 
     | 
|
| 
       53 
71 
     | 
    
         
             
                    parts = path.split
         
     | 
| 
       54 
72 
     | 
    
         
             
                    conf  = parts.last
         
     | 
| 
       55 
73 
     | 
    
         
             
                    Dir.chdir(path.dirname) do |d| 
         
     | 
| 
       56 
     | 
    
         
            -
                      #sh "rake clobber"
         
     | 
| 
       57 
74 
     | 
    
         
             
                      if File.exist?( "Makefile" ) then
         
     | 
| 
       58 
75 
     | 
    
         
             
                        sh "make distclean"
         
     | 
| 
       59 
76 
     | 
    
         
             
                      end
         
     | 
| 
      
 77 
     | 
    
         
            +
                      rm_f "rbconfig.rb"
         
     | 
| 
       60 
78 
     | 
    
         
             
                    end 
         
     | 
| 
       61 
79 
     | 
    
         
             
                  end 
         
     | 
| 
       62 
80 
     | 
    
         
             
                end
         
     | 
    
        data/tasks/rubyforge.rake
    CHANGED
    
    | 
         @@ -31,6 +31,9 @@ if rf_conf = Configuration.for_if_exist?("rubyforge") then 
     | 
|
| 
       31 
31 
     | 
    
         | 
| 
       32 
32 
     | 
    
         
             
                  puts "Uploading to rubyforge..."
         
     | 
| 
       33 
33 
     | 
    
         
             
                  files = FileList[File.join("pkg","#{Hitimes::GEM_SPEC.name}-#{Hitimes::VERSION}*.*")].to_a
         
     | 
| 
      
 34 
     | 
    
         
            +
                  files.each do |f|
         
     | 
| 
      
 35 
     | 
    
         
            +
                    puts "  * #{f}"
         
     | 
| 
      
 36 
     | 
    
         
            +
                  end
         
     | 
| 
       34 
37 
     | 
    
         
             
                  rubyforge.login
         
     | 
| 
       35 
38 
     | 
    
         
             
                  rubyforge.add_release(Hitimes::GEM_SPEC.rubyforge_project, Hitimes::GEM_SPEC.name, Hitimes::VERSION, *files)
         
     | 
| 
       36 
39 
     | 
    
         
             
                  puts "done."
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: hitimes
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.2
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: x86-mswin32-60
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors: 
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Jeremy Hinegardner
         
     | 
| 
         @@ -9,7 +9,7 @@ autorequire: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
            date: 2009-06- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2009-06-28 00:00:00 -06:00
         
     | 
| 
       13 
13 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
         @@ -42,6 +42,16 @@ dependencies: 
     | 
|
| 
       42 
42 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       43 
43 
     | 
    
         
             
                    version: 1.1.3
         
     | 
| 
       44 
44 
     | 
    
         
             
                version: 
         
     | 
| 
      
 45 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency 
         
     | 
| 
      
 46 
     | 
    
         
            +
              name: rake-compiler
         
     | 
| 
      
 47 
     | 
    
         
            +
              type: :development
         
     | 
| 
      
 48 
     | 
    
         
            +
              version_requirement: 
         
     | 
| 
      
 49 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement 
         
     | 
| 
      
 50 
     | 
    
         
            +
                requirements: 
         
     | 
| 
      
 51 
     | 
    
         
            +
                - - ~>
         
     | 
| 
      
 52 
     | 
    
         
            +
                  - !ruby/object:Gem::Version 
         
     | 
| 
      
 53 
     | 
    
         
            +
                    version: 0.5.0
         
     | 
| 
      
 54 
     | 
    
         
            +
                version: 
         
     | 
| 
       45 
55 
     | 
    
         
             
            description: "Hitimes is a fast, high resolution timer library for recording performance metrics.  It uses the appropriate C method calls for each system to get the highest granularity time increments possible.    It currently supports any of the following systems:  * any system with the POSIX call <tt>clock_gettime()</tt>, * Mac OS X * Windows  Using Hitimes can be faster than using a series of +Time.new+ calls, and it will have a much higher granularity.   It is definitely faster than using +Process.times+."
         
     | 
| 
       46 
56 
     | 
    
         
             
            email: jeremy@copiousfreetime.org
         
     | 
| 
       47 
57 
     | 
    
         
             
            executables: []
         
     | 
| 
         @@ -61,26 +71,18 @@ extra_rdoc_files: 
     | 
|
| 
       61 
71 
     | 
    
         
             
            - lib/hitimes/value_metric.rb
         
     | 
| 
       62 
72 
     | 
    
         
             
            - lib/hitimes/version.rb
         
     | 
| 
       63 
73 
     | 
    
         
             
            - lib/hitimes.rb
         
     | 
| 
       64 
     | 
    
         
            -
            - ext/hitimes_ext.c
         
     | 
| 
       65 
     | 
    
         
            -
            - ext/hitimes_instant_clock_gettime.c
         
     | 
| 
       66 
     | 
    
         
            -
            - ext/hitimes_instant_osx.c
         
     | 
| 
       67 
     | 
    
         
            -
            - ext/hitimes_instant_windows.c
         
     | 
| 
       68 
     | 
    
         
            -
            - ext/hitimes_interval.c
         
     | 
| 
       69 
     | 
    
         
            -
            - ext/hitimes_stats.c
         
     | 
| 
       70 
74 
     | 
    
         
             
            files: 
         
     | 
| 
       71 
75 
     | 
    
         
             
            - examples/benchmarks.rb
         
     | 
| 
       72 
76 
     | 
    
         
             
            - examples/stats.rb
         
     | 
| 
       73 
     | 
    
         
            -
            - ext/hitimes_ext.c
         
     | 
| 
       74 
     | 
    
         
            -
            - ext/hitimes_instant_clock_gettime.c
         
     | 
| 
       75 
     | 
    
         
            -
            - ext/hitimes_instant_osx.c
         
     | 
| 
       76 
     | 
    
         
            -
            - ext/hitimes_instant_windows.c
         
     | 
| 
       77 
     | 
    
         
            -
            - ext/hitimes_interval.c
         
     | 
| 
       78 
     | 
    
         
            -
            - ext/hitimes_stats.c
         
     | 
| 
       79 
     | 
    
         
            -
            - ext/hitimes_interval.h
         
     | 
| 
       80 
     | 
    
         
            -
            - ext/hitimes_stats.h
         
     | 
| 
       81 
     | 
    
         
            -
            - ext/extconf.rb
         
     | 
| 
       82 
     | 
    
         
            -
            - ext/rbconfig-mingw.rb
         
     | 
| 
       83 
     | 
    
         
            -
            - ext/rbconfig.rb
         
     | 
| 
      
 77 
     | 
    
         
            +
            - ext/hitimes/hitimes_ext.c
         
     | 
| 
      
 78 
     | 
    
         
            +
            - ext/hitimes/hitimes_instant_clock_gettime.c
         
     | 
| 
      
 79 
     | 
    
         
            +
            - ext/hitimes/hitimes_instant_osx.c
         
     | 
| 
      
 80 
     | 
    
         
            +
            - ext/hitimes/hitimes_instant_windows.c
         
     | 
| 
      
 81 
     | 
    
         
            +
            - ext/hitimes/hitimes_interval.c
         
     | 
| 
      
 82 
     | 
    
         
            +
            - ext/hitimes/hitimes_stats.c
         
     | 
| 
      
 83 
     | 
    
         
            +
            - ext/hitimes/hitimes_interval.h
         
     | 
| 
      
 84 
     | 
    
         
            +
            - ext/hitimes/hitimes_stats.h
         
     | 
| 
      
 85 
     | 
    
         
            +
            - ext/hitimes/extconf.rb
         
     | 
| 
       84 
86 
     | 
    
         
             
            - lib/hitimes/metric.rb
         
     | 
| 
       85 
87 
     | 
    
         
             
            - lib/hitimes/mutexed_stats.rb
         
     | 
| 
       86 
88 
     | 
    
         
             
            - lib/hitimes/paths.rb
         
     | 
| 
         @@ -113,7 +115,6 @@ files: 
     | 
|
| 
       113 
115 
     | 
    
         
             
            - tasks/utils.rb
         
     | 
| 
       114 
116 
     | 
    
         
             
            - Rakefile
         
     | 
| 
       115 
117 
     | 
    
         
             
            - gemspec.rb
         
     | 
| 
       116 
     | 
    
         
            -
            - lib/hitimes_ext.so
         
     | 
| 
       117 
118 
     | 
    
         
             
            has_rdoc: true
         
     | 
| 
       118 
119 
     | 
    
         
             
            homepage: http://copiousfreetime.rubyforge.org/hitimes/
         
     | 
| 
       119 
120 
     | 
    
         
             
            post_install_message: 
         
     | 
    
        data/ext/rbconfig-mingw.rb
    DELETED
    
    | 
         @@ -1,178 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            # This file was created by mkconfig.rb when ruby was built.  Any
         
     | 
| 
       3 
     | 
    
         
            -
            # changes made to this file will be lost the next time ruby is built.
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            module Config
         
     | 
| 
       6 
     | 
    
         
            -
              RUBY_VERSION == "1.8.6" or
         
     | 
| 
       7 
     | 
    
         
            -
                raise "ruby lib version (1.8.6) doesn't match executable version (#{RUBY_VERSION})"
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
              TOPDIR = File.dirname(__FILE__).chomp!("/lib/ruby/1.8/i386-mingw32")
         
     | 
| 
       10 
     | 
    
         
            -
              DESTDIR = '' unless defined? DESTDIR
         
     | 
| 
       11 
     | 
    
         
            -
              CONFIG = {}
         
     | 
| 
       12 
     | 
    
         
            -
              CONFIG["DESTDIR"] = DESTDIR
         
     | 
| 
       13 
     | 
    
         
            -
              CONFIG["INSTALL"] = '/opt/local/bin/ginstall -c'
         
     | 
| 
       14 
     | 
    
         
            -
              CONFIG["prefix"] = (TOPDIR || DESTDIR + "#{ENV["HOME"]}/ruby-mingw32")
         
     | 
| 
       15 
     | 
    
         
            -
              CONFIG["EXEEXT"] = ".exe"
         
     | 
| 
       16 
     | 
    
         
            -
              CONFIG["ruby_install_name"] = "ruby"
         
     | 
| 
       17 
     | 
    
         
            -
              CONFIG["RUBY_INSTALL_NAME"] = "ruby"
         
     | 
| 
       18 
     | 
    
         
            -
              CONFIG["RUBY_SO_NAME"] = "msvcrt-ruby18"
         
     | 
| 
       19 
     | 
    
         
            -
              CONFIG["SHELL"] = "/bin/sh"
         
     | 
| 
       20 
     | 
    
         
            -
              CONFIG["PATH_SEPARATOR"] = ":"
         
     | 
| 
       21 
     | 
    
         
            -
              CONFIG["PACKAGE_NAME"] = ""
         
     | 
| 
       22 
     | 
    
         
            -
              CONFIG["PACKAGE_TARNAME"] = ""
         
     | 
| 
       23 
     | 
    
         
            -
              CONFIG["PACKAGE_VERSION"] = ""
         
     | 
| 
       24 
     | 
    
         
            -
              CONFIG["PACKAGE_STRING"] = ""
         
     | 
| 
       25 
     | 
    
         
            -
              CONFIG["PACKAGE_BUGREPORT"] = ""
         
     | 
| 
       26 
     | 
    
         
            -
              CONFIG["exec_prefix"] = "$(prefix)"
         
     | 
| 
       27 
     | 
    
         
            -
              CONFIG["bindir"] = "$(exec_prefix)/bin"
         
     | 
| 
       28 
     | 
    
         
            -
              CONFIG["sbindir"] = "$(exec_prefix)/sbin"
         
     | 
| 
       29 
     | 
    
         
            -
              CONFIG["libexecdir"] = "$(exec_prefix)/libexec"
         
     | 
| 
       30 
     | 
    
         
            -
              CONFIG["datarootdir"] = "$(prefix)/share"
         
     | 
| 
       31 
     | 
    
         
            -
              CONFIG["datadir"] = "$(datarootdir)"
         
     | 
| 
       32 
     | 
    
         
            -
              CONFIG["sysconfdir"] = "$(prefix)/etc"
         
     | 
| 
       33 
     | 
    
         
            -
              CONFIG["sharedstatedir"] = "$(prefix)/com"
         
     | 
| 
       34 
     | 
    
         
            -
              CONFIG["localstatedir"] = "$(prefix)/var"
         
     | 
| 
       35 
     | 
    
         
            -
              CONFIG["includedir"] = "$(prefix)/include"
         
     | 
| 
       36 
     | 
    
         
            -
              CONFIG["oldincludedir"] = "/usr/include"
         
     | 
| 
       37 
     | 
    
         
            -
              CONFIG["docdir"] = "$(datarootdir)/doc/$(PACKAGE)"
         
     | 
| 
       38 
     | 
    
         
            -
              CONFIG["infodir"] = "$(datarootdir)/info"
         
     | 
| 
       39 
     | 
    
         
            -
              CONFIG["htmldir"] = "$(docdir)"
         
     | 
| 
       40 
     | 
    
         
            -
              CONFIG["dvidir"] = "$(docdir)"
         
     | 
| 
       41 
     | 
    
         
            -
              CONFIG["pdfdir"] = "$(docdir)"
         
     | 
| 
       42 
     | 
    
         
            -
              CONFIG["psdir"] = "$(docdir)"
         
     | 
| 
       43 
     | 
    
         
            -
              CONFIG["libdir"] = "$(exec_prefix)/lib"
         
     | 
| 
       44 
     | 
    
         
            -
              CONFIG["localedir"] = "$(datarootdir)/locale"
         
     | 
| 
       45 
     | 
    
         
            -
              CONFIG["mandir"] = "$(datarootdir)/man"
         
     | 
| 
       46 
     | 
    
         
            -
              CONFIG["ECHO_C"] = ""
         
     | 
| 
       47 
     | 
    
         
            -
              CONFIG["ECHO_N"] = "-n"
         
     | 
| 
       48 
     | 
    
         
            -
              CONFIG["ECHO_T"] = ""
         
     | 
| 
       49 
     | 
    
         
            -
              CONFIG["LIBS"] = "-lwsock32 "
         
     | 
| 
       50 
     | 
    
         
            -
              CONFIG["build_alias"] = "i686-darwin9.2.2"
         
     | 
| 
       51 
     | 
    
         
            -
              CONFIG["host_alias"] = "i386-mingw32"
         
     | 
| 
       52 
     | 
    
         
            -
              CONFIG["target_alias"] = "i386-mingw32"
         
     | 
| 
       53 
     | 
    
         
            -
              CONFIG["MAJOR"] = "1"
         
     | 
| 
       54 
     | 
    
         
            -
              CONFIG["MINOR"] = "8"
         
     | 
| 
       55 
     | 
    
         
            -
              CONFIG["TEENY"] = "6"
         
     | 
| 
       56 
     | 
    
         
            -
              CONFIG["build"] = "i686-pc-darwin9.2.2"
         
     | 
| 
       57 
     | 
    
         
            -
              CONFIG["build_cpu"] = "i686"
         
     | 
| 
       58 
     | 
    
         
            -
              CONFIG["build_vendor"] = "pc"
         
     | 
| 
       59 
     | 
    
         
            -
              CONFIG["build_os"] = "darwin9.2.2"
         
     | 
| 
       60 
     | 
    
         
            -
              CONFIG["host"] = "i386-pc-mingw32"
         
     | 
| 
       61 
     | 
    
         
            -
              CONFIG["host_cpu"] = "i386"
         
     | 
| 
       62 
     | 
    
         
            -
              CONFIG["host_vendor"] = "pc"
         
     | 
| 
       63 
     | 
    
         
            -
              CONFIG["host_os"] = "mingw32"
         
     | 
| 
       64 
     | 
    
         
            -
              CONFIG["target"] = "i386-pc-mingw32"
         
     | 
| 
       65 
     | 
    
         
            -
              CONFIG["target_cpu"] = "i386"
         
     | 
| 
       66 
     | 
    
         
            -
              CONFIG["target_vendor"] = "pc"
         
     | 
| 
       67 
     | 
    
         
            -
              CONFIG["target_os"] = "mingw32"
         
     | 
| 
       68 
     | 
    
         
            -
              CONFIG["CC"] = "i386-mingw32-gcc"
         
     | 
| 
       69 
     | 
    
         
            -
              CONFIG["CFLAGS"] = "-g -O2 "
         
     | 
| 
       70 
     | 
    
         
            -
              CONFIG["LDFLAGS"] = "-L. "
         
     | 
| 
       71 
     | 
    
         
            -
              CONFIG["CPPFLAGS"] = ""
         
     | 
| 
       72 
     | 
    
         
            -
              CONFIG["OBJEXT"] = "o"
         
     | 
| 
       73 
     | 
    
         
            -
              CONFIG["CPP"] = "i386-mingw32-gcc -E"
         
     | 
| 
       74 
     | 
    
         
            -
              CONFIG["GREP"] = "/usr/bin/grep"
         
     | 
| 
       75 
     | 
    
         
            -
              CONFIG["EGREP"] = "/usr/bin/grep -E"
         
     | 
| 
       76 
     | 
    
         
            -
              CONFIG["GNU_LD"] = "yes"
         
     | 
| 
       77 
     | 
    
         
            -
              CONFIG["CPPOUTFILE"] = "-o conftest.i"
         
     | 
| 
       78 
     | 
    
         
            -
              CONFIG["OUTFLAG"] = "-o "
         
     | 
| 
       79 
     | 
    
         
            -
              CONFIG["YACC"] = "bison -y"
         
     | 
| 
       80 
     | 
    
         
            -
              CONFIG["YFLAGS"] = ""
         
     | 
| 
       81 
     | 
    
         
            -
              CONFIG["RANLIB"] = "i386-mingw32-ranlib"
         
     | 
| 
       82 
     | 
    
         
            -
              CONFIG["AR"] = "i386-mingw32-ar"
         
     | 
| 
       83 
     | 
    
         
            -
              CONFIG["AS"] = "i386-mingw32-as"
         
     | 
| 
       84 
     | 
    
         
            -
              CONFIG["ASFLAGS"] = ""
         
     | 
| 
       85 
     | 
    
         
            -
              CONFIG["NM"] = "i386-mingw32-nm"
         
     | 
| 
       86 
     | 
    
         
            -
              CONFIG["WINDRES"] = "i386-mingw32-windres"
         
     | 
| 
       87 
     | 
    
         
            -
              CONFIG["DLLWRAP"] = "i386-mingw32-dllwrap"
         
     | 
| 
       88 
     | 
    
         
            -
              CONFIG["OBJDUMP"] = "i386-mingw32-objdump"
         
     | 
| 
       89 
     | 
    
         
            -
              CONFIG["LN_S"] = "ln -s"
         
     | 
| 
       90 
     | 
    
         
            -
              CONFIG["SET_MAKE"] = ""
         
     | 
| 
       91 
     | 
    
         
            -
              CONFIG["INSTALL_PROGRAM"] = "$(INSTALL)"
         
     | 
| 
       92 
     | 
    
         
            -
              CONFIG["INSTALL_SCRIPT"] = "$(INSTALL)"
         
     | 
| 
       93 
     | 
    
         
            -
              CONFIG["INSTALL_DATA"] = "$(INSTALL) -m 644"
         
     | 
| 
       94 
     | 
    
         
            -
              CONFIG["RM"] = "rm -f"
         
     | 
| 
       95 
     | 
    
         
            -
              CONFIG["CP"] = "cp"
         
     | 
| 
       96 
     | 
    
         
            -
              CONFIG["MAKEDIRS"] = "mkdir -p"
         
     | 
| 
       97 
     | 
    
         
            -
              CONFIG["ALLOCA"] = ""
         
     | 
| 
       98 
     | 
    
         
            -
              CONFIG["DLDFLAGS"] = " -Wl,--enable-auto-image-base,--enable-auto-import,--export-all"
         
     | 
| 
       99 
     | 
    
         
            -
              CONFIG["ARCH_FLAG"] = ""
         
     | 
| 
       100 
     | 
    
         
            -
              CONFIG["STATIC"] = ""
         
     | 
| 
       101 
     | 
    
         
            -
              CONFIG["CCDLFLAGS"] = ""
         
     | 
| 
       102 
     | 
    
         
            -
              CONFIG["LDSHARED"] = "i386-mingw32-gcc -shared -s"
         
     | 
| 
       103 
     | 
    
         
            -
              CONFIG["DLEXT"] = "so"
         
     | 
| 
       104 
     | 
    
         
            -
              CONFIG["DLEXT2"] = "dll"
         
     | 
| 
       105 
     | 
    
         
            -
              CONFIG["LIBEXT"] = "a"
         
     | 
| 
       106 
     | 
    
         
            -
              CONFIG["LINK_SO"] = ""
         
     | 
| 
       107 
     | 
    
         
            -
              CONFIG["LIBPATHFLAG"] = " -L\"%s\""
         
     | 
| 
       108 
     | 
    
         
            -
              CONFIG["RPATHFLAG"] = ""
         
     | 
| 
       109 
     | 
    
         
            -
              CONFIG["LIBPATHENV"] = ""
         
     | 
| 
       110 
     | 
    
         
            -
              CONFIG["TRY_LINK"] = ""
         
     | 
| 
       111 
     | 
    
         
            -
              CONFIG["STRIP"] = "strip"
         
     | 
| 
       112 
     | 
    
         
            -
              CONFIG["EXTSTATIC"] = ""
         
     | 
| 
       113 
     | 
    
         
            -
              CONFIG["setup"] = "Setup"
         
     | 
| 
       114 
     | 
    
         
            -
              CONFIG["MINIRUBY"] = "ruby -I#{ENV['HOME']}/pkgs/ruby-1.8.6-p114 -rfake"
         
     | 
| 
       115 
     | 
    
         
            -
              CONFIG["PREP"] = "fake.rb"
         
     | 
| 
       116 
     | 
    
         
            -
              CONFIG["RUNRUBY"] = "$(MINIRUBY) -I`cd $(srcdir)/lib; pwd`"
         
     | 
| 
       117 
     | 
    
         
            -
              CONFIG["EXTOUT"] = ".ext"
         
     | 
| 
       118 
     | 
    
         
            -
              CONFIG["ARCHFILE"] = ""
         
     | 
| 
       119 
     | 
    
         
            -
              CONFIG["RDOCTARGET"] = ""
         
     | 
| 
       120 
     | 
    
         
            -
              CONFIG["XCFLAGS"] = " -DRUBY_EXPORT"
         
     | 
| 
       121 
     | 
    
         
            -
              CONFIG["XLDFLAGS"] = " -Wl,--stack,0x02000000"
         
     | 
| 
       122 
     | 
    
         
            -
              CONFIG["LIBRUBY_LDSHARED"] = "i386-mingw32-gcc -shared -s"
         
     | 
| 
       123 
     | 
    
         
            -
              CONFIG["LIBRUBY_DLDFLAGS"] = " -Wl,--enable-auto-image-base,--enable-auto-import,--export-all -Wl,--out-implib=$(LIBRUBY)"
         
     | 
| 
       124 
     | 
    
         
            -
              CONFIG["rubyw_install_name"] = "rubyw"
         
     | 
| 
       125 
     | 
    
         
            -
              CONFIG["RUBYW_INSTALL_NAME"] = "rubyw"
         
     | 
| 
       126 
     | 
    
         
            -
              CONFIG["LIBRUBY_A"] = "lib$(RUBY_SO_NAME)-static.a"
         
     | 
| 
       127 
     | 
    
         
            -
              CONFIG["LIBRUBY_SO"] = "$(RUBY_SO_NAME).dll"
         
     | 
| 
       128 
     | 
    
         
            -
              CONFIG["LIBRUBY_ALIASES"] = ""
         
     | 
| 
       129 
     | 
    
         
            -
              CONFIG["LIBRUBY"] = "lib$(LIBRUBY_SO).a"
         
     | 
| 
       130 
     | 
    
         
            -
              CONFIG["LIBRUBYARG"] = "$(LIBRUBYARG_SHARED)"
         
     | 
| 
       131 
     | 
    
         
            -
              CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
         
     | 
| 
       132 
     | 
    
         
            -
              CONFIG["LIBRUBYARG_SHARED"] = "-l$(RUBY_SO_NAME)"
         
     | 
| 
       133 
     | 
    
         
            -
              CONFIG["SOLIBS"] = "$(LIBS)"
         
     | 
| 
       134 
     | 
    
         
            -
              CONFIG["DLDLIBS"] = ""
         
     | 
| 
       135 
     | 
    
         
            -
              CONFIG["ENABLE_SHARED"] = "yes"
         
     | 
| 
       136 
     | 
    
         
            -
              CONFIG["MAINLIBS"] = ""
         
     | 
| 
       137 
     | 
    
         
            -
              CONFIG["COMMON_LIBS"] = "m"
         
     | 
| 
       138 
     | 
    
         
            -
              CONFIG["COMMON_MACROS"] = ""
         
     | 
| 
       139 
     | 
    
         
            -
              CONFIG["COMMON_HEADERS"] = "windows.h winsock.h"
         
     | 
| 
       140 
     | 
    
         
            -
              CONFIG["EXPORT_PREFIX"] = ""
         
     | 
| 
       141 
     | 
    
         
            -
              CONFIG["MAKEFILES"] = "Makefile GNUmakefile"
         
     | 
| 
       142 
     | 
    
         
            -
              CONFIG["arch"] = "i386-mingw32"
         
     | 
| 
       143 
     | 
    
         
            -
              CONFIG["sitearch"] = "i386-msvcrt"
         
     | 
| 
       144 
     | 
    
         
            -
              CONFIG["sitedir"] = "$(prefix)/lib/ruby/site_ruby"
         
     | 
| 
       145 
     | 
    
         
            -
              CONFIG["configure_args"] = " '--host=i386-mingw32' '--target=i386-mingw32' '--build=i686-darwin9.2.2' '--prefix=#{ENV['HOME']}/ruby-mingw32' 'build_alias=i686-darwin9.2.2' 'host_alias=i386-mingw32' 'target_alias=i386-mingw32'"
         
     | 
| 
       146 
     | 
    
         
            -
              CONFIG["NROFF"] = "/usr/bin/nroff"
         
     | 
| 
       147 
     | 
    
         
            -
              CONFIG["MANTYPE"] = "doc"
         
     | 
| 
       148 
     | 
    
         
            -
              CONFIG["ruby_version"] = "$(MAJOR).$(MINOR)"
         
     | 
| 
       149 
     | 
    
         
            -
              CONFIG["rubylibdir"] = "$(libdir)/ruby/$(ruby_version)"
         
     | 
| 
       150 
     | 
    
         
            -
              CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
         
     | 
| 
       151 
     | 
    
         
            -
              CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
         
     | 
| 
       152 
     | 
    
         
            -
              CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"
         
     | 
| 
       153 
     | 
    
         
            -
              CONFIG["topdir"] = File.dirname(__FILE__)
         
     | 
| 
       154 
     | 
    
         
            -
              MAKEFILE_CONFIG = {}
         
     | 
| 
       155 
     | 
    
         
            -
              CONFIG.each{|k,v| MAKEFILE_CONFIG[k] = v.dup}
         
     | 
| 
       156 
     | 
    
         
            -
              def Config::expand(val, config = CONFIG)
         
     | 
| 
       157 
     | 
    
         
            -
                val.gsub!(/\$\$|\$\(([^()]+)\)|\$\{([^{}]+)\}/) do |var|
         
     | 
| 
       158 
     | 
    
         
            -
                  if !(v = $1 || $2)
         
     | 
| 
       159 
     | 
    
         
            -
            	'$'
         
     | 
| 
       160 
     | 
    
         
            -
                  elsif key = config[v = v[/\A[^:]+(?=(?::(.*?)=(.*))?\z)/]]
         
     | 
| 
       161 
     | 
    
         
            -
            	pat, sub = $1, $2
         
     | 
| 
       162 
     | 
    
         
            -
            	config[v] = false
         
     | 
| 
       163 
     | 
    
         
            -
            	Config::expand(key, config)
         
     | 
| 
       164 
     | 
    
         
            -
            	config[v] = key
         
     | 
| 
       165 
     | 
    
         
            -
            	key = key.gsub(/#{Regexp.quote(pat)}(?=\s|\z)/n) {sub} if pat
         
     | 
| 
       166 
     | 
    
         
            -
            	key
         
     | 
| 
       167 
     | 
    
         
            -
                  else
         
     | 
| 
       168 
     | 
    
         
            -
            	var
         
     | 
| 
       169 
     | 
    
         
            -
                  end
         
     | 
| 
       170 
     | 
    
         
            -
                end
         
     | 
| 
       171 
     | 
    
         
            -
                val
         
     | 
| 
       172 
     | 
    
         
            -
              end
         
     | 
| 
       173 
     | 
    
         
            -
              CONFIG.each_value do |val|
         
     | 
| 
       174 
     | 
    
         
            -
                Config::expand(val)
         
     | 
| 
       175 
     | 
    
         
            -
              end
         
     | 
| 
       176 
     | 
    
         
            -
            end
         
     | 
| 
       177 
     | 
    
         
            -
            RbConfig = Config # compatibility for ruby-1.9
         
     | 
| 
       178 
     | 
    
         
            -
            CROSS_COMPILING = nil unless defined? CROSS_COMPILING
         
     | 
    
        data/ext/rbconfig.rb
    DELETED
    
    | 
         @@ -1,178 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            # This file was created by mkconfig.rb when ruby was built.  Any
         
     | 
| 
       3 
     | 
    
         
            -
            # changes made to this file will be lost the next time ruby is built.
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            module Config
         
     | 
| 
       6 
     | 
    
         
            -
              RUBY_VERSION == "1.8.6" or
         
     | 
| 
       7 
     | 
    
         
            -
                raise "ruby lib version (1.8.6) doesn't match executable version (#{RUBY_VERSION})"
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
              TOPDIR = File.dirname(__FILE__).chomp!("/lib/ruby/1.8/i386-mingw32")
         
     | 
| 
       10 
     | 
    
         
            -
              DESTDIR = '' unless defined? DESTDIR
         
     | 
| 
       11 
     | 
    
         
            -
              CONFIG = {}
         
     | 
| 
       12 
     | 
    
         
            -
              CONFIG["DESTDIR"] = DESTDIR
         
     | 
| 
       13 
     | 
    
         
            -
              CONFIG["INSTALL"] = '/opt/local/bin/ginstall -c'
         
     | 
| 
       14 
     | 
    
         
            -
              CONFIG["prefix"] = (TOPDIR || DESTDIR + "#{ENV["HOME"]}/ruby-mingw32")
         
     | 
| 
       15 
     | 
    
         
            -
              CONFIG["EXEEXT"] = ".exe"
         
     | 
| 
       16 
     | 
    
         
            -
              CONFIG["ruby_install_name"] = "ruby"
         
     | 
| 
       17 
     | 
    
         
            -
              CONFIG["RUBY_INSTALL_NAME"] = "ruby"
         
     | 
| 
       18 
     | 
    
         
            -
              CONFIG["RUBY_SO_NAME"] = "msvcrt-ruby18"
         
     | 
| 
       19 
     | 
    
         
            -
              CONFIG["SHELL"] = "/bin/sh"
         
     | 
| 
       20 
     | 
    
         
            -
              CONFIG["PATH_SEPARATOR"] = ":"
         
     | 
| 
       21 
     | 
    
         
            -
              CONFIG["PACKAGE_NAME"] = ""
         
     | 
| 
       22 
     | 
    
         
            -
              CONFIG["PACKAGE_TARNAME"] = ""
         
     | 
| 
       23 
     | 
    
         
            -
              CONFIG["PACKAGE_VERSION"] = ""
         
     | 
| 
       24 
     | 
    
         
            -
              CONFIG["PACKAGE_STRING"] = ""
         
     | 
| 
       25 
     | 
    
         
            -
              CONFIG["PACKAGE_BUGREPORT"] = ""
         
     | 
| 
       26 
     | 
    
         
            -
              CONFIG["exec_prefix"] = "$(prefix)"
         
     | 
| 
       27 
     | 
    
         
            -
              CONFIG["bindir"] = "$(exec_prefix)/bin"
         
     | 
| 
       28 
     | 
    
         
            -
              CONFIG["sbindir"] = "$(exec_prefix)/sbin"
         
     | 
| 
       29 
     | 
    
         
            -
              CONFIG["libexecdir"] = "$(exec_prefix)/libexec"
         
     | 
| 
       30 
     | 
    
         
            -
              CONFIG["datarootdir"] = "$(prefix)/share"
         
     | 
| 
       31 
     | 
    
         
            -
              CONFIG["datadir"] = "$(datarootdir)"
         
     | 
| 
       32 
     | 
    
         
            -
              CONFIG["sysconfdir"] = "$(prefix)/etc"
         
     | 
| 
       33 
     | 
    
         
            -
              CONFIG["sharedstatedir"] = "$(prefix)/com"
         
     | 
| 
       34 
     | 
    
         
            -
              CONFIG["localstatedir"] = "$(prefix)/var"
         
     | 
| 
       35 
     | 
    
         
            -
              CONFIG["includedir"] = "$(prefix)/include"
         
     | 
| 
       36 
     | 
    
         
            -
              CONFIG["oldincludedir"] = "/usr/include"
         
     | 
| 
       37 
     | 
    
         
            -
              CONFIG["docdir"] = "$(datarootdir)/doc/$(PACKAGE)"
         
     | 
| 
       38 
     | 
    
         
            -
              CONFIG["infodir"] = "$(datarootdir)/info"
         
     | 
| 
       39 
     | 
    
         
            -
              CONFIG["htmldir"] = "$(docdir)"
         
     | 
| 
       40 
     | 
    
         
            -
              CONFIG["dvidir"] = "$(docdir)"
         
     | 
| 
       41 
     | 
    
         
            -
              CONFIG["pdfdir"] = "$(docdir)"
         
     | 
| 
       42 
     | 
    
         
            -
              CONFIG["psdir"] = "$(docdir)"
         
     | 
| 
       43 
     | 
    
         
            -
              CONFIG["libdir"] = "$(exec_prefix)/lib"
         
     | 
| 
       44 
     | 
    
         
            -
              CONFIG["localedir"] = "$(datarootdir)/locale"
         
     | 
| 
       45 
     | 
    
         
            -
              CONFIG["mandir"] = "$(datarootdir)/man"
         
     | 
| 
       46 
     | 
    
         
            -
              CONFIG["ECHO_C"] = ""
         
     | 
| 
       47 
     | 
    
         
            -
              CONFIG["ECHO_N"] = "-n"
         
     | 
| 
       48 
     | 
    
         
            -
              CONFIG["ECHO_T"] = ""
         
     | 
| 
       49 
     | 
    
         
            -
              CONFIG["LIBS"] = "-lwsock32 "
         
     | 
| 
       50 
     | 
    
         
            -
              CONFIG["build_alias"] = "i686-darwin9.2.2"
         
     | 
| 
       51 
     | 
    
         
            -
              CONFIG["host_alias"] = "i386-mingw32"
         
     | 
| 
       52 
     | 
    
         
            -
              CONFIG["target_alias"] = "i386-mingw32"
         
     | 
| 
       53 
     | 
    
         
            -
              CONFIG["MAJOR"] = "1"
         
     | 
| 
       54 
     | 
    
         
            -
              CONFIG["MINOR"] = "8"
         
     | 
| 
       55 
     | 
    
         
            -
              CONFIG["TEENY"] = "6"
         
     | 
| 
       56 
     | 
    
         
            -
              CONFIG["build"] = "i686-pc-darwin9.2.2"
         
     | 
| 
       57 
     | 
    
         
            -
              CONFIG["build_cpu"] = "i686"
         
     | 
| 
       58 
     | 
    
         
            -
              CONFIG["build_vendor"] = "pc"
         
     | 
| 
       59 
     | 
    
         
            -
              CONFIG["build_os"] = "darwin9.2.2"
         
     | 
| 
       60 
     | 
    
         
            -
              CONFIG["host"] = "i386-pc-mingw32"
         
     | 
| 
       61 
     | 
    
         
            -
              CONFIG["host_cpu"] = "i386"
         
     | 
| 
       62 
     | 
    
         
            -
              CONFIG["host_vendor"] = "pc"
         
     | 
| 
       63 
     | 
    
         
            -
              CONFIG["host_os"] = "mingw32"
         
     | 
| 
       64 
     | 
    
         
            -
              CONFIG["target"] = "i386-pc-mingw32"
         
     | 
| 
       65 
     | 
    
         
            -
              CONFIG["target_cpu"] = "i386"
         
     | 
| 
       66 
     | 
    
         
            -
              CONFIG["target_vendor"] = "pc"
         
     | 
| 
       67 
     | 
    
         
            -
              CONFIG["target_os"] = "mingw32"
         
     | 
| 
       68 
     | 
    
         
            -
              CONFIG["CC"] = "i386-mingw32-gcc"
         
     | 
| 
       69 
     | 
    
         
            -
              CONFIG["CFLAGS"] = "-g -O2 "
         
     | 
| 
       70 
     | 
    
         
            -
              CONFIG["LDFLAGS"] = "-L. "
         
     | 
| 
       71 
     | 
    
         
            -
              CONFIG["CPPFLAGS"] = ""
         
     | 
| 
       72 
     | 
    
         
            -
              CONFIG["OBJEXT"] = "o"
         
     | 
| 
       73 
     | 
    
         
            -
              CONFIG["CPP"] = "i386-mingw32-gcc -E"
         
     | 
| 
       74 
     | 
    
         
            -
              CONFIG["GREP"] = "/usr/bin/grep"
         
     | 
| 
       75 
     | 
    
         
            -
              CONFIG["EGREP"] = "/usr/bin/grep -E"
         
     | 
| 
       76 
     | 
    
         
            -
              CONFIG["GNU_LD"] = "yes"
         
     | 
| 
       77 
     | 
    
         
            -
              CONFIG["CPPOUTFILE"] = "-o conftest.i"
         
     | 
| 
       78 
     | 
    
         
            -
              CONFIG["OUTFLAG"] = "-o "
         
     | 
| 
       79 
     | 
    
         
            -
              CONFIG["YACC"] = "bison -y"
         
     | 
| 
       80 
     | 
    
         
            -
              CONFIG["YFLAGS"] = ""
         
     | 
| 
       81 
     | 
    
         
            -
              CONFIG["RANLIB"] = "i386-mingw32-ranlib"
         
     | 
| 
       82 
     | 
    
         
            -
              CONFIG["AR"] = "i386-mingw32-ar"
         
     | 
| 
       83 
     | 
    
         
            -
              CONFIG["AS"] = "i386-mingw32-as"
         
     | 
| 
       84 
     | 
    
         
            -
              CONFIG["ASFLAGS"] = ""
         
     | 
| 
       85 
     | 
    
         
            -
              CONFIG["NM"] = "i386-mingw32-nm"
         
     | 
| 
       86 
     | 
    
         
            -
              CONFIG["WINDRES"] = "i386-mingw32-windres"
         
     | 
| 
       87 
     | 
    
         
            -
              CONFIG["DLLWRAP"] = "i386-mingw32-dllwrap"
         
     | 
| 
       88 
     | 
    
         
            -
              CONFIG["OBJDUMP"] = "i386-mingw32-objdump"
         
     | 
| 
       89 
     | 
    
         
            -
              CONFIG["LN_S"] = "ln -s"
         
     | 
| 
       90 
     | 
    
         
            -
              CONFIG["SET_MAKE"] = ""
         
     | 
| 
       91 
     | 
    
         
            -
              CONFIG["INSTALL_PROGRAM"] = "$(INSTALL)"
         
     | 
| 
       92 
     | 
    
         
            -
              CONFIG["INSTALL_SCRIPT"] = "$(INSTALL)"
         
     | 
| 
       93 
     | 
    
         
            -
              CONFIG["INSTALL_DATA"] = "$(INSTALL) -m 644"
         
     | 
| 
       94 
     | 
    
         
            -
              CONFIG["RM"] = "rm -f"
         
     | 
| 
       95 
     | 
    
         
            -
              CONFIG["CP"] = "cp"
         
     | 
| 
       96 
     | 
    
         
            -
              CONFIG["MAKEDIRS"] = "mkdir -p"
         
     | 
| 
       97 
     | 
    
         
            -
              CONFIG["ALLOCA"] = ""
         
     | 
| 
       98 
     | 
    
         
            -
              CONFIG["DLDFLAGS"] = " -Wl,--enable-auto-image-base,--enable-auto-import,--export-all"
         
     | 
| 
       99 
     | 
    
         
            -
              CONFIG["ARCH_FLAG"] = ""
         
     | 
| 
       100 
     | 
    
         
            -
              CONFIG["STATIC"] = ""
         
     | 
| 
       101 
     | 
    
         
            -
              CONFIG["CCDLFLAGS"] = ""
         
     | 
| 
       102 
     | 
    
         
            -
              CONFIG["LDSHARED"] = "i386-mingw32-gcc -shared -s"
         
     | 
| 
       103 
     | 
    
         
            -
              CONFIG["DLEXT"] = "so"
         
     | 
| 
       104 
     | 
    
         
            -
              CONFIG["DLEXT2"] = "dll"
         
     | 
| 
       105 
     | 
    
         
            -
              CONFIG["LIBEXT"] = "a"
         
     | 
| 
       106 
     | 
    
         
            -
              CONFIG["LINK_SO"] = ""
         
     | 
| 
       107 
     | 
    
         
            -
              CONFIG["LIBPATHFLAG"] = " -L\"%s\""
         
     | 
| 
       108 
     | 
    
         
            -
              CONFIG["RPATHFLAG"] = ""
         
     | 
| 
       109 
     | 
    
         
            -
              CONFIG["LIBPATHENV"] = ""
         
     | 
| 
       110 
     | 
    
         
            -
              CONFIG["TRY_LINK"] = ""
         
     | 
| 
       111 
     | 
    
         
            -
              CONFIG["STRIP"] = "strip"
         
     | 
| 
       112 
     | 
    
         
            -
              CONFIG["EXTSTATIC"] = ""
         
     | 
| 
       113 
     | 
    
         
            -
              CONFIG["setup"] = "Setup"
         
     | 
| 
       114 
     | 
    
         
            -
              CONFIG["MINIRUBY"] = "ruby -I#{ENV['HOME']}/pkgs/ruby-1.8.6-p114 -rfake"
         
     | 
| 
       115 
     | 
    
         
            -
              CONFIG["PREP"] = "fake.rb"
         
     | 
| 
       116 
     | 
    
         
            -
              CONFIG["RUNRUBY"] = "$(MINIRUBY) -I`cd $(srcdir)/lib; pwd`"
         
     | 
| 
       117 
     | 
    
         
            -
              CONFIG["EXTOUT"] = ".ext"
         
     | 
| 
       118 
     | 
    
         
            -
              CONFIG["ARCHFILE"] = ""
         
     | 
| 
       119 
     | 
    
         
            -
              CONFIG["RDOCTARGET"] = ""
         
     | 
| 
       120 
     | 
    
         
            -
              CONFIG["XCFLAGS"] = " -DRUBY_EXPORT"
         
     | 
| 
       121 
     | 
    
         
            -
              CONFIG["XLDFLAGS"] = " -Wl,--stack,0x02000000"
         
     | 
| 
       122 
     | 
    
         
            -
              CONFIG["LIBRUBY_LDSHARED"] = "i386-mingw32-gcc -shared -s"
         
     | 
| 
       123 
     | 
    
         
            -
              CONFIG["LIBRUBY_DLDFLAGS"] = " -Wl,--enable-auto-image-base,--enable-auto-import,--export-all -Wl,--out-implib=$(LIBRUBY)"
         
     | 
| 
       124 
     | 
    
         
            -
              CONFIG["rubyw_install_name"] = "rubyw"
         
     | 
| 
       125 
     | 
    
         
            -
              CONFIG["RUBYW_INSTALL_NAME"] = "rubyw"
         
     | 
| 
       126 
     | 
    
         
            -
              CONFIG["LIBRUBY_A"] = "lib$(RUBY_SO_NAME)-static.a"
         
     | 
| 
       127 
     | 
    
         
            -
              CONFIG["LIBRUBY_SO"] = "$(RUBY_SO_NAME).dll"
         
     | 
| 
       128 
     | 
    
         
            -
              CONFIG["LIBRUBY_ALIASES"] = ""
         
     | 
| 
       129 
     | 
    
         
            -
              CONFIG["LIBRUBY"] = "lib$(LIBRUBY_SO).a"
         
     | 
| 
       130 
     | 
    
         
            -
              CONFIG["LIBRUBYARG"] = "$(LIBRUBYARG_SHARED)"
         
     | 
| 
       131 
     | 
    
         
            -
              CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
         
     | 
| 
       132 
     | 
    
         
            -
              CONFIG["LIBRUBYARG_SHARED"] = "-l$(RUBY_SO_NAME)"
         
     | 
| 
       133 
     | 
    
         
            -
              CONFIG["SOLIBS"] = "$(LIBS)"
         
     | 
| 
       134 
     | 
    
         
            -
              CONFIG["DLDLIBS"] = ""
         
     | 
| 
       135 
     | 
    
         
            -
              CONFIG["ENABLE_SHARED"] = "yes"
         
     | 
| 
       136 
     | 
    
         
            -
              CONFIG["MAINLIBS"] = ""
         
     | 
| 
       137 
     | 
    
         
            -
              CONFIG["COMMON_LIBS"] = "m"
         
     | 
| 
       138 
     | 
    
         
            -
              CONFIG["COMMON_MACROS"] = ""
         
     | 
| 
       139 
     | 
    
         
            -
              CONFIG["COMMON_HEADERS"] = "windows.h winsock.h"
         
     | 
| 
       140 
     | 
    
         
            -
              CONFIG["EXPORT_PREFIX"] = ""
         
     | 
| 
       141 
     | 
    
         
            -
              CONFIG["MAKEFILES"] = "Makefile GNUmakefile"
         
     | 
| 
       142 
     | 
    
         
            -
              CONFIG["arch"] = "i386-mingw32"
         
     | 
| 
       143 
     | 
    
         
            -
              CONFIG["sitearch"] = "i386-msvcrt"
         
     | 
| 
       144 
     | 
    
         
            -
              CONFIG["sitedir"] = "$(prefix)/lib/ruby/site_ruby"
         
     | 
| 
       145 
     | 
    
         
            -
              CONFIG["configure_args"] = " '--host=i386-mingw32' '--target=i386-mingw32' '--build=i686-darwin9.2.2' '--prefix=#{ENV['HOME']}/ruby-mingw32' 'build_alias=i686-darwin9.2.2' 'host_alias=i386-mingw32' 'target_alias=i386-mingw32'"
         
     | 
| 
       146 
     | 
    
         
            -
              CONFIG["NROFF"] = "/usr/bin/nroff"
         
     | 
| 
       147 
     | 
    
         
            -
              CONFIG["MANTYPE"] = "doc"
         
     | 
| 
       148 
     | 
    
         
            -
              CONFIG["ruby_version"] = "$(MAJOR).$(MINOR)"
         
     | 
| 
       149 
     | 
    
         
            -
              CONFIG["rubylibdir"] = "$(libdir)/ruby/$(ruby_version)"
         
     | 
| 
       150 
     | 
    
         
            -
              CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
         
     | 
| 
       151 
     | 
    
         
            -
              CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
         
     | 
| 
       152 
     | 
    
         
            -
              CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"
         
     | 
| 
       153 
     | 
    
         
            -
              CONFIG["topdir"] = File.dirname(__FILE__)
         
     | 
| 
       154 
     | 
    
         
            -
              MAKEFILE_CONFIG = {}
         
     | 
| 
       155 
     | 
    
         
            -
              CONFIG.each{|k,v| MAKEFILE_CONFIG[k] = v.dup}
         
     | 
| 
       156 
     | 
    
         
            -
              def Config::expand(val, config = CONFIG)
         
     | 
| 
       157 
     | 
    
         
            -
                val.gsub!(/\$\$|\$\(([^()]+)\)|\$\{([^{}]+)\}/) do |var|
         
     | 
| 
       158 
     | 
    
         
            -
                  if !(v = $1 || $2)
         
     | 
| 
       159 
     | 
    
         
            -
            	'$'
         
     | 
| 
       160 
     | 
    
         
            -
                  elsif key = config[v = v[/\A[^:]+(?=(?::(.*?)=(.*))?\z)/]]
         
     | 
| 
       161 
     | 
    
         
            -
            	pat, sub = $1, $2
         
     | 
| 
       162 
     | 
    
         
            -
            	config[v] = false
         
     | 
| 
       163 
     | 
    
         
            -
            	Config::expand(key, config)
         
     | 
| 
       164 
     | 
    
         
            -
            	config[v] = key
         
     | 
| 
       165 
     | 
    
         
            -
            	key = key.gsub(/#{Regexp.quote(pat)}(?=\s|\z)/n) {sub} if pat
         
     | 
| 
       166 
     | 
    
         
            -
            	key
         
     | 
| 
       167 
     | 
    
         
            -
                  else
         
     | 
| 
       168 
     | 
    
         
            -
            	var
         
     | 
| 
       169 
     | 
    
         
            -
                  end
         
     | 
| 
       170 
     | 
    
         
            -
                end
         
     | 
| 
       171 
     | 
    
         
            -
                val
         
     | 
| 
       172 
     | 
    
         
            -
              end
         
     | 
| 
       173 
     | 
    
         
            -
              CONFIG.each_value do |val|
         
     | 
| 
       174 
     | 
    
         
            -
                Config::expand(val)
         
     | 
| 
       175 
     | 
    
         
            -
              end
         
     | 
| 
       176 
     | 
    
         
            -
            end
         
     | 
| 
       177 
     | 
    
         
            -
            RbConfig = Config # compatibility for ruby-1.9
         
     | 
| 
       178 
     | 
    
         
            -
            CROSS_COMPILING = nil unless defined? CROSS_COMPILING
         
     | 
    
        data/lib/hitimes_ext.so
    DELETED
    
    | 
         Binary file 
     |