axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rangika Mendis" <rang...@opensource.lk>
Subject Re: AttachmentHelper breaks Windows and AIX
Date Fri, 28 Jan 2005 11:25:46 GMT
  Hi Roshan,

  Thanx for the solution...... it works in windows.

  So sorry for the late reply.

  Regards,
  Rangika
  ----- Original Message -----
  From: "Roshan Weerasuriya" <roshan@opensource.lk>
  To: "Apache AXIS C Developers List" <axis-c-dev@ws.apache.org>
  Sent: Tuesday, January 25, 2005 3:07 PM
  Subject: Re: AttachmentHelper breaks Windows and AIX


  > hi All,
  >
  > The following hack will make the code work. If you add this in the
  > AttachmentHelper.h then it builds fine.
  >
  > //-----add this code to AttachmentHelper.h-----
  > #ifdef strtoul
  > #undef strtoul
  > #endif
  > #define strtoul strtoul
  > //-----end add this code to AttachmentHelper.h-----
  >
  > But I doubt whether using this hack is OK simple because apache doesn't
  > like this "strtoul" function. What we do is going against apache. But
  > there is no other solution as I see when you look at the following
  > summary.
  >
  > Summary:
  > Rangika or Nithya is not using this "strtoul" function at all in any of
  > the files including AttachmentHelper.h. It is that when VC++ 6 buids,
  > one of its files which is "program files\microsoft visual
  > studio\vc98\include\xlocnum" is the which is using this function, so it
  > is totaly out of our control.
  >
  > I tried to define strtol instead of strtoul but it didn't compile in
  > windows/VC++
  >
  > //-----add this code to AttachmentHelper.h but doesn't build-----
  > #ifdef strtoul
  > #undef strtoul
  > #endif
  > #define strtoul strtol
  > //-----end add this code to AttachmentHelper.h-----
  >
  > Roshan
  >
  >
  > On Tue, 2005-01-25 at 10:35, Roshan Weerasuriya wrote:
  > > hi All,
  > >
  > > I checked the same in Linux. The linux apache version (apache2) also
has
  > > the same entry in its httpd.h include file. But in linux the module
  > > builds fine.
  > >
  > > I think when you build the "Axis C++ Apache2 module" in windows, VC++
6
  > > uses the following file in the compilation process:
  > > "program files\microsoft visual studio\vc98\include\xlocnum"
  > >
  > > This file has funcation calls to the "strtoul" function which Apache
  > > doesn't like for some reason (as Apache says it is not a portable
  > > function)
  > >
  > > But probably in linux there are no function calls to "strtoul" so it
  > > builds fine in linux.
  > >
  > > Any ideas abt solving this problem???
  > >
  > > Roshan
  > >
  > > On Tue, 2005-01-25 at 10:28, Roshan Weerasuriya wrote:
  > > > hi All,
  > > >
  > > > When I investigated this problem I found the following. In the
  > > > apache2_0\httpd.h include file the following is there:
  > > >
//-----from apache2_0\httpd.h ------
  > > > ..
  > > > ....
  > > > /** strtoul does not exist on sunos4. */
  > > > #ifdef strtoul
  > > > #undef strtoul
  > > > #endif
  > > > #define strtoul
strtoul_is_not_a_portable_function_use_strtol_instead
  > > > ...
  > > > ......
  > > > //-----end from apache2_0\httpd.h ------
  > > >
  > > > This causes this compile error in windows. I just commented above
from
  > > > the httpd.h file and then the Axis C++ Apache2 module started to
compile
  > > > fine. But this is not the soulution since we can't comment Apache's
  > > > httpd.h file entries.
  > > >
  > > > Any idea???
  > > >
  > > > Roshan
  > > >
  > > >
  > > > On Tue, 2005-01-25 at 10:07, Rangika Mendis wrote:
  > > > >         Hi John,
  > > > >
  > > > >         When I tried to compile the Apache2Transport with
  > > > >         AttachmentHelper class included I also got the linking
errors
  > > > >         that you  mentioned. Then I renamed strtoul with strtol in
the
  > > > >         xlocnum file. That solved the compilation problems.
  > > > >
  > > > >         We tested all the classes related to ws-attachments in
windows
  > > > >         before committing and it worked.
  > > > >
  > > > >         Well I guess we'll have to test again.
  > > > >
  > > > >         Regards,
  > > > >         Rangika
  > > > >
  > > > >
  > > > >         ----- Original Message -----
  > > > >                 From: John Hawkins
  > > > >                 To: axis-c-dev@ws.apache.org
  > > > >                 Sent: Tuesday, January 25, 2005 2:55 AM
  > > > >                 Subject: AttachmentHelper breaks Windows and AIX
  > > > >
  > > > >                 Hi Folks,
  > > > >
  > > > >                 Attachments appear to have broken the builds again
I'm
  > > > >                 afraid. It broke on Windows and AIX. It appears,
after
  > > > >                 some investigation, that AttachmentHelper is the
  > > > >                 offending class. It appears to compile fine on
Linux
  > > > >                 but not on the other platforms. The errors below
are
  > > > >                 what we see in the ANT (windows) build. Perhaps
this
  > > > >                 is an ANT build issue only? The issues on AIX are
  > > > >                 similar.
  > > > >
  > > > >                 We've been struggling to fix this and we really
need a
  > > > >                 stable build. So I'm sorry but the best that I
could
  > > > >                 do was remove the offending Objects from CVS until
we
  > > > >                 can discuss it on the mailing list. If this is an
ANT
  > > > >                 build issue only when please could you explain
what
  > > > >                 the scripts need to include/exclude and we'll be
happy
  > > > >                 to fix it.
  > > > >
  > > > >
  > > > >
  > > > >
  > > > >                 compileApache20Module:
  > > > >                     [copy] Copying 102 files to
  > > > >                 F:\build\nw00_PA\src\ws-axis\c\include\apache2_0
  > > > >                 Suspicious library name starting with "lib":
libapr
  > > > >                 Suspicious library name starting with "lib":
libhttpd
  > > > >                       [cc] 3 total files to be compiled.
  > > > >                       [cc] Apache2Transport.cpp
  > > > >                       [cc] D:\msdev6\VC98\INCLUDE\xlocnum(155) :
error
  > > > >                 C2065:
  > > > >
'strtoul_is_not_a_portable_function_use_strtol_instead' : undeclared
identifier
  > > > >                       [cc]
D:\msdev6\VC98\INCLUDE\xlocnum(144)
  > > > >                 : while compiling class-template member function
  > > > >                 'class std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> > __thiscall
  > > > >                 std::num_get<char,class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> > >::do_get(class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> >,class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> >,class std::ios_base
&,int
  > > > >                 &,bool &) const'
  > > > >                       [cc] mod_axis2.cpp
  > > > >                       [cc] D:\msdev6\VC98\INCLUDE\xlocnum(155) :
error
  > > > >                 C2065:
  > > > >
'strtoul_is_not_a_portable_function_use_strtol_instead' : undeclared
identifier
  > > > >                       [cc]
D:\msdev6\VC98\INCLUDE\xlocnum(144)
  > > > >                 : while compiling class-template member function
  > > > >                 'class std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> > __thiscall
  > > > >                 std::num_get<char,class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> > >::do_get(class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> >,class
  > > > >                 std::istreambuf_iterator<char,struct
  > > > >                 std::char_traits<char> >,class std::ios_base
&,int
  > > > >                 &,bool &) const'
  > > > >
  > > > >                 The changes I've made are to remove
AttachmentHelper
  > > > >                 from being included in
  > > > >
  > > > >                  Modified:    c/src/server/apache2
AttachmentHelper.h
  > > > >                 Apache2Transport.cpp
  > > > >                                        Apache2Transport.h
  > > > >
  > > > >                 sorry for any inconvenience.
  > > > >                 John.
  > > > >
  > > > >                 John Hawkins
  > > > >
  > > >
  > > >
  > >
  > >
  >
  >
  >



Mime
View raw message