components/python/python34/patches/00-dtrace.patch
branchs11-update
changeset 3779 d01825f968e9
parent 3778 35735ffdda43
child 2183 5d00686e81da
equal deleted inserted replaced
3778:35735ffdda43 3779:d01825f968e9
  1009 +    run_unittest(DTraceTestsOptimize)
  1009 +    run_unittest(DTraceTestsOptimize)
  1010 +
  1010 +
  1011 +if __name__ == '__main__':
  1011 +if __name__ == '__main__':
  1012 +    test_main()
  1012 +    test_main()
  1013 +
  1013 +
  1014 --- Python-3.4.0/Lib/test/test_sys.py
  1014 --- Python-3.4.1/Lib/test/test_sys.py.~1~	2014-05-18 22:19:38.000000000 -0700
  1015 +++ Python-3.4.0/Lib/test/test_sys.py
  1015 +++ Python-3.4.1/Lib/test/test_sys.py	2014-05-27 10:34:04.212950775 -0700
  1016 @@ -729,6 +729,7 @@
  1016 @@ -728,6 +728,7 @@
  1017          self.assertEqual(sys.getsizeof(True, -1), size('') + self.longdigit)
  1017          self.assertEqual(sys.getsizeof(True, -1), size('') + self.longdigit)
  1018  
  1018  
  1019      def test_objecttypes(self):
  1019      def test_objecttypes(self):
  1020 +        import dtrace
  1020 +        import dtrace
  1021          # check all types defined in Objects/
  1021          # check all types defined in Objects/
  1022          size = test.support.calcobjsize
  1022          size = test.support.calcobjsize
  1023          vsize = test.support.calcvobjsize
  1023          vsize = test.support.calcvobjsize
  1024 @@ -754,13 +755,17 @@
  1024 @@ -753,13 +754,17 @@
  1025              return inner
  1025              return inner
  1026          check(get_cell().__closure__[0], size('P'))
  1026          check(get_cell().__closure__[0], size('P'))
  1027          # code
  1027          # code
  1028 -        check(get_cell().__code__, size('5i9Pi3P'))
  1028 -        check(get_cell().__code__, size('5i9Pi3P'))
  1029 -        check(get_cell.__code__, size('5i9Pi3P'))
  1029 -        check(get_cell.__code__, size('5i9Pi3P'))
  1040 -        check(get_cell2.__code__, size('5i9Pi3P') + 1)
  1040 -        check(get_cell2.__code__, size('5i9Pi3P') + 1)
  1041 +        check(get_cell2.__code__, size(code) + 1)
  1041 +        check(get_cell2.__code__, size(code) + 1)
  1042          # complex
  1042          # complex
  1043          check(complex(0,1), size('2d'))
  1043          check(complex(0,1), size('2d'))
  1044          # method_descriptor (descriptor object)
  1044          # method_descriptor (descriptor object)
  1045 --- Python-3.4.0/Makefile.pre.in
  1045 --- Python-3.4.1/Makefile.pre.in.~1~	2014-05-18 22:19:39.000000000 -0700
  1046 +++ Python-3.4.0/Makefile.pre.in
  1046 +++ Python-3.4.1/Makefile.pre.in	2014-05-27 10:34:04.213739956 -0700
  1047 @@ -52,6 +52,13 @@
  1047 @@ -52,6 +52,13 @@
  1048  # Use this to make a link between python$(VERSION) and python in $(BINDIR)
  1048  # Use this to make a link between python$(VERSION) and python in $(BINDIR)
  1049  LN=		@LN@
  1049  LN=		@LN@
  1050  
  1050  
  1051 +DTRACE=         @DTRACE@
  1051 +DTRACE=         @DTRACE@
  1143 +	fi;
  1143 +	fi;
  1144 +
  1144 +
  1145  ############################################################################
  1145  ############################################################################
  1146  # Header files
  1146  # Header files
  1147  
  1147  
  1148 @@ -1515,6 +1567,11 @@
  1148 @@ -1516,6 +1568,11 @@
  1149  	find build -name '*.py[co]' -exec rm -f {} ';' || true
  1149  	find build -name '*.py[co]' -exec rm -f {} ';' || true
  1150  	-rm -f pybuilddir.txt
  1150  	-rm -f pybuilddir.txt
  1151  	-rm -f Lib/lib2to3/*Grammar*.pickle
  1151  	-rm -f Lib/lib2to3/*Grammar*.pickle
  1152 +	rm -f Include/pydtrace.h
  1152 +	rm -f Include/pydtrace.h
  1153 +	rm -f Include/pydtrace_offsets Include/pydtrace_offsets.h
  1153 +	rm -f Include/pydtrace_offsets Include/pydtrace_offsets.h
  1155 +	rm -f Modules/gcmodule.o.ts_dtrace
  1155 +	rm -f Modules/gcmodule.o.ts_dtrace
  1156 +	rm -f Objects/typeobject.o.ts_dtrace
  1156 +	rm -f Objects/typeobject.o.ts_dtrace
  1157  	-rm -f Modules/_testembed Modules/_freeze_importlib
  1157  	-rm -f Modules/_testembed Modules/_freeze_importlib
  1158  
  1158  
  1159  profile-removal:
  1159  profile-removal:
  1160 @@ -1546,6 +1603,11 @@
  1160 @@ -1547,6 +1604,11 @@
  1161  				     -o -name '*.orig' -o -name '*.rej' \
  1161  				     -o -name '*.orig' -o -name '*.rej' \
  1162  				     -o -name '*.bak' ')' \
  1162  				     -o -name '*.bak' ')' \
  1163  				     -exec rm -f {} ';'
  1163  				     -exec rm -f {} ';'
  1164 +	rm -f Include/pydtrace.h
  1164 +	rm -f Include/pydtrace.h
  1165 +	rm -f Include/pydtrace_offsets Include/pydtrace_offsets.h
  1165 +	rm -f Include/pydtrace_offsets Include/pydtrace_offsets.h
  1217 +            return NULL;
  1217 +            return NULL;
  1218 +        }
  1218 +        }
  1219 +    }
  1219 +    }
  1220 +    return m;
  1220 +    return m;
  1221 +}
  1221 +}
  1222 --- Python-3.4.0/Modules/gcmodule.c
  1222 --- Python-3.4.1/Modules/gcmodule.c.~1~	2014-05-18 22:19:39.000000000 -0700
  1223 +++ Python-3.4.0/Modules/gcmodule.c
  1223 +++ Python-3.4.1/Modules/gcmodule.c	2014-05-27 10:34:04.215193143 -0700
  1224 @@ -26,6 +26,10 @@
  1224 @@ -26,6 +26,10 @@
  1225  #include "Python.h"
  1225  #include "Python.h"
  1226  #include "frameobject.h"        /* for PyFrame_ClearFreeList */
  1226  #include "frameobject.h"        /* for PyFrame_ClearFreeList */
  1227  
  1227  
  1228 +#ifdef WITH_DTRACE
  1228 +#ifdef WITH_DTRACE
  1230 +#endif
  1230 +#endif
  1231 +
  1231 +
  1232  /* Get an object's GC head */
  1232  /* Get an object's GC head */
  1233  #define AS_GC(o) ((PyGC_Head *)(o)-1)
  1233  #define AS_GC(o) ((PyGC_Head *)(o)-1)
  1234  
  1234  
  1235 @@ -905,7 +909,12 @@
  1235 @@ -917,7 +921,12 @@
  1236  /* This is the main function.  Read this to understand how the
  1236  /* This is the main function.  Read this to understand how the
  1237   * collection process works. */
  1237   * collection process works. */
  1238  static Py_ssize_t
  1238  static Py_ssize_t
  1239 -collect(int generation, Py_ssize_t *n_collected, Py_ssize_t *n_uncollectable,
  1239 -collect(int generation, Py_ssize_t *n_collected, Py_ssize_t *n_uncollectable,
  1240 +#ifdef WITH_DTRACE
  1240 +#ifdef WITH_DTRACE
  1244 +#endif
  1244 +#endif
  1245 +(int generation, Py_ssize_t *n_collected, Py_ssize_t *n_uncollectable,
  1245 +(int generation, Py_ssize_t *n_collected, Py_ssize_t *n_uncollectable,
  1246          int nofail)
  1246          int nofail)
  1247  {
  1247  {
  1248      int i;
  1248      int i;
  1249 @@ -1080,6 +1089,50 @@
  1249 @@ -1092,6 +1101,50 @@
  1250      return n+m;
  1250      return n+m;
  1251  }
  1251  }
  1252  
  1252  
  1253 +#ifdef WITH_DTRACE
  1253 +#ifdef WITH_DTRACE
  1254 +static void
  1254 +static void
  1768    --with-valgrind         Enable Valgrind support
  1768    --with-valgrind         Enable Valgrind support
  1769 +  --with(out)-dtrace      disable/enable dtrace support
  1769 +  --with(out)-dtrace      disable/enable dtrace support
  1770    --with-fpectl           enable SIGFPE catching
  1770    --with-fpectl           enable SIGFPE catching
  1771    --with-libm=STRING      math library
  1771    --with-libm=STRING      math library
  1772    --with-libc=STRING      C library
  1772    --with-libc=STRING      C library
  1773 @@ -10391,6 +10398,174 @@
  1773 @@ -10368,6 +10375,174 @@
  1774      OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT"
  1774      OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT"
  1775  fi
  1775  fi
  1776  
  1776  
  1777 +# Check for dtrace support
  1777 +# Check for dtrace support
  1778 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-dtrace" >&5
  1778 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-dtrace" >&5
  1943 +
  1943 +
  1944 +
  1944 +
  1945  # -I${DLINCLDIR} is added to the compile rule for importdl.o
  1945  # -I${DLINCLDIR} is added to the compile rule for importdl.o
  1946  
  1946  
  1947  DLINCLDIR=.
  1947  DLINCLDIR=.
  1948 --- Python-3.4.0/configure.ac
  1948 --- Python-3.4.1/configure.ac.~1~	2014-05-18 22:19:40.000000000 -0700
  1949 +++ Python-3.4.0/configure.ac
  1949 +++ Python-3.4.1/configure.ac	2014-05-27 10:34:04.224755986 -0700
  1950 @@ -2868,6 +2868,62 @@
  1950 @@ -2857,6 +2857,62 @@
  1951      OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT"
  1951      OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT"
  1952  fi
  1952  fi
  1953  
  1953  
  1954 +# Check for dtrace support
  1954 +# Check for dtrace support
  1955 +AC_MSG_CHECKING(for --with-dtrace)
  1955 +AC_MSG_CHECKING(for --with-dtrace)