Bug 70970 - kdeedu/kig/misc/conic-common.cpp doesn't compile on Solaris
Summary: kdeedu/kig/misc/conic-common.cpp doesn't compile on Solaris
Status: RESOLVED FIXED
Alias: None
Product: configure
Classification: Developer tools
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Solaris
: NOR normal
Target Milestone: ---
Assignee: Stephan Kulow
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-21 16:30 UTC by Torsten Kasch
Modified: 2004-01-11 22:32 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
patch for kdeedu (1.69 KB, patch)
2003-12-21 18:07 UTC, Torsten Kasch
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Torsten Kasch 2003-12-21 16:30:22 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc version 2.95.3 20010315 (release) 
OS:          Solaris

Trying to compile kdeedu HEAD on my Solaris 8 x86 box breaks with:

source='conic-common.cpp' object='conic-common.lo' libtool=yes \
depfile='.deps/conic-common.Plo' tmpdepfile='.deps/conic-common.TPlo' \
depmode=gcc /bin/ksh ../../admin/depcomp \
/bin/ksh ../../libtool --silent --mode=compile --tag=CXX g++ -pipe -DHAVE_CONFIG_H -I. -I. -I../.. -I/vol/kde-cvs/include -I/vol/qt-3.2.3/include   -I/vol/local/include -I/vol/graphics/include  -DQT_THREAD_SUPPORT  -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4  -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION  -c -o conic-common.lo `test -f 'conic-common.cpp' || echo './'`conic-common.cpp
conic-common.cpp: In method `bool ConicCartesianData::valid() const':
conic-common.cpp:866: implicit declaration of function `int finite(...)'
make[3]: *** [conic-common.lo] Error 1
make[3]: Leaving directory `/vol/src/kde/cvs/kdeedu/kig/misc'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/vol/src/kde/cvs/kdeedu/kig'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/vol/src/kde/cvs/kdeedu'
make: *** [all] Error 2

The manual page for finite() tells me that we have to "#include <ieeefp.h>" on Solaris, so I suspect we need another autoconf test for this header?
Comment 1 Torsten Kasch 2003-12-21 18:07:21 UTC
Created attachment 3813 [details]
patch for kdeedu

Applying the attached patch seems to resolve the compilation issue for me.
Comment 2 Dirk Mueller 2004-01-10 12:55:26 UTC
Subject: kdeedu/kig

CVS commit by mueller: 

fix compile
CCMAIL: 70970-done@bugs.kde.org


  M +2 -0      configure.in.in   1.22
  M +6 -0      misc/conic-common.cpp   1.13
  M +6 -0      misc/cubic-common.cc   1.6


--- kdeedu/kig/configure.in.in  #1.21:1.22
@@ -61,4 +61,6 @@
 AC_DEFINE_UNQUOTED( KIGVERSION, "$kig_version", [The current Kig version as a string] )
 
+AC_CHECK_HEADERS([ieeefp.h])
+
 # apparently the KDE build system wants to see "dnl AC_OUTPUT( ... )",
 # not a normal AC_OUTPUT

--- kdeedu/kig/misc/cubic-common.cc  #1.5:1.6
@@ -17,8 +17,14 @@
 // 02111-1307, USA.
 
+#include <config.h>
+
 #include "cubic-common.h"
 #include "kignumerics.h"
 #include "kigtransform.h"
 
+#ifdef HAVE_IEEEFP_H
+#include <ieeefp.h>
+#endif
+
 /*
  * coefficients of the cartesian equation for cubics

--- kdeedu/kig/misc/conic-common.cpp  #1.12:1.13
@@ -19,4 +19,6 @@
 **/
 
+#include <config.h>
+
 #include "conic-common.h"
 
@@ -27,4 +29,8 @@
 #include <algorithm>
 
+#ifdef HAVE_IEEEFP_H
+#include <ieeeefp.h>
+#endif
+
 ConicCartesianData::ConicCartesianData(
   const ConicPolarData& polardata


Comment 3 Torsten Kasch 2004-01-11 22:23:23 UTC
Hmm, looks like one "e" too much in "#include <ieeeefp.h>" ;-)
Comment 4 Dirk Mueller 2004-01-11 22:32:01 UTC
Subject: kdeedu/kig/misc

CVS commit by mueller: 

argh
CCMAIL: 70970-done@bugs.kde.org


  M +1 -1      conic-common.cpp   1.14


--- kdeedu/kig/misc/conic-common.cpp  #1.13:1.14
@@ -30,5 +30,5 @@
 
 #ifdef HAVE_IEEEFP_H
-#include <ieeeefp.h>
+#include <ieeefp.h>
 #endif