For better or for worse. Add sheepluva's forcing of clean on engine subdirectory. This works around a bug in fpc 2.4-2.6 that appears to generate incorrect inlining of loops on 2nd build. -B avoids this, but without a clean, the -B never got called. Also restore options, which I had confused w/ config. my bad.
authornemo
Sat, 10 Sep 2011 21:02:34 -0400
changeset 5843 8c5168e3194c
parent 5842 30e374a27269
child 5844 fdf22a4843f7
For better or for worse. Add sheepluva's forcing of clean on engine subdirectory. This works around a bug in fpc 2.4-2.6 that appears to generate incorrect inlining of loops on 2nd build. -B avoids this, but without a clean, the -B never got called. Also restore options, which I had confused w/ config. my bad.
hedgewars/CMakeLists.txt
hedgewars/uFloat.pas
--- a/hedgewars/CMakeLists.txt	Sun Sep 11 02:24:46 2011 +0200
+++ b/hedgewars/CMakeLists.txt	Sat Sep 10 21:02:34 2011 -0400
@@ -183,6 +183,8 @@
 
 
 add_custom_target(${engine_output_name} ALL DEPENDS "${EXECUTABLE_OUTPUT_PATH}/${engine_output_name}${CMAKE_EXECUTABLE_SUFFIX}")
+add_custom_target(CLEAN COMMAND ${CMAKE_BUILD_TOOL} "clean" WORKING_DIRECTORY "${hedgewars_SOURCE_DIR}/hedgewars")
+add_dependencies(${engine_output_name} CLEAN)
 
 install(PROGRAMS "${EXECUTABLE_OUTPUT_PATH}/${engine_output_name}${CMAKE_EXECUTABLE_SUFFIX}" DESTINATION ${target_dir})
 
--- a/hedgewars/uFloat.pas	Sun Sep 11 02:24:46 2011 +0200
+++ b/hedgewars/uFloat.pas	Sat Sep 10 21:02:34 2011 -0400
@@ -16,6 +16,8 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
  *)
 
+{$INCLUDE "options.inc"}
+
 unit uFloat;
 (*
  * This unit provides a custom data type, hwFloat.
@@ -79,7 +81,7 @@
 function hwRound(const t: hwFloat): LongInt; inline; // Does NOT really round but returns the integer representation of the hwFloat without fractional digits. (-_0_9 -> -0, _1_5 -> _1)
 function hwAbs(const t: hwFloat): hwFloat; inline; // Returns the value of t with positive sign.
 function hwSqr(const t: hwFloat): hwFloat; inline; // Returns the square value of parameter t.
-function hwSqrt(const t: hwFloat): hwFloat; // Returns the the positive square root of parameter t.
+function hwSqrt(const t: hwFloat): hwFloat; inline; // Returns the the positive square root of parameter t.
 function Distance(const dx, dy: hwFloat): hwFloat; // Returns the distance between two points in 2-dimensional space, of which the parameters are the horizontal and vertical distance.
 function DistanceI(const dx, dy: LongInt): hwFloat; // Same as above for integer parameters.
 function AngleSin(const Angle: Longword): hwFloat;