Hi

Happy New Year.

I spent a couple of weeks abroad, so I didn't get anything done.

Porting V3 was a lot easier than V2_x - so far:

----------------------------------------------------------------------------------------

I encountered a problem I'm not sure I can fix quickly:

Apparently there is a problem with a pathname:


"IRIX/IRIXPlatformUtils.cpp":  using precompiled header file
"IRIXPlatformUtils.pch".
cc-3032 CC: ERROR File =
/usr/people/marc/xml4csrc3_0_0/include/util/Janitor.hpp, Line = 110
  Could not create instantiation information directory
          /usr/people/marc/xml4csrc3_0_0/obj/IRIX/ii_files/

  template <class T> class ArrayJanitor
                           ^

1 catastrophic error detected in the compilation of
"IRIX/IRIXPlatformUtils.cpp".

Do you know where "IRIX" comes from? ii_files lives in obj



-----------------------------------------------------------------------------------------

/src/Makefile.incl
IRIX
- I've removed the -mips4 compile option. This flag is not really useful as
the SGI compilers are able to figure out on which hardware they run.
I would suggest that in your documentation you recommend that if people
cannot live with these
defaults, they should have a look at

  man CC

in order to determine which SGI Application Binary Interface they need and
add the appropriate
flag. However, the defaults are really good and no changes should be
neccessary.


- The pch option is ok but does not speed up compilation significantly.

#=============== IRIX SPECIFIC OPTIONS ============================
ifeq (${PLATFORM}, IRIX)
PLATFORM_COMPILE_OPTIONS = -LANG:pch -LANG:std -O2 \
                           -D${PLATFORM} -D_REENTRANT \
                           -I/usr/local/include
OBJ_OUT=${XERCESCROOT}/obj/
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared
ALLLIBS = -L/usr/lib32 -lC
SHLIBSUFFIX=.so
endif
-----------------------

OBJ_OUT has to use XERCESCROOT rather than XML4CROOT


------------------------------------------------------------------------------------------

More return-type warnings:


cc-3303 CC: WARNING File = SAXParser.cpp, Line = 809
  A type qualifier on a return type is meaningless.

  const bool SAXParser::expandSystemId(const XMLCh* const, XMLBuffer&)


cc-3303 CC: WARNING File =
/usr/people/marc/xml4csrc3_0_0/src/include/framework/XMLEntityHandler.hpp,
Line = 118
  A type qualifier on a return type is meaningless.

      virtual const bool expandSystemId
                         ^

cc-3303 CC: WARNING File =
/usr/people/marc/xml4csrc3_0_0/src/include/parsers/DOMParser.hpp, Line =
333
  A type qualifier on a return type is meaningless.

  inline const bool DOMParser::expandSystemId(const XMLCh* const,
XMLBuffer&)


cc-3303 CC: WARNING File =
/usr/people/marc/xml4csrc3_0_0/src/include/validators/DTD/DTDEntityDecl.hpp,
Line = 118
  A type qualifier on a return type is meaningless.

      const void setDeclaredInIntSubset(const bool newValue);
                 ^

cc-3303 CC: WARNING File =
/usr/people/marc/xml4csrc3_0_0/src/include/validators/DTD/DTDEntityDecl.hpp,
Line = 223
  A type qualifier on a return type is meaningless.

  inline const void DTDEntityDecl::setDeclaredInIntSubset(const bool
newValue)

----------------------------------------------------------------------------------------------






marc
#
# The Apache Software License, Version 1.1
# 
# Copyright (c) 1999 The Apache Software Foundation.  All rights 
# reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer. 
# 
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in
#    the documentation and/or other materials provided with the
#    distribution.
# 
# 3. The end-user documentation included with the redistribution,
#    if any, must include the following acknowledgment:  
#       "This product includes software developed by the
#        Apache Software Foundation (http://www.apache.org/)."
#    Alternately, this acknowledgment may appear in the software itself,
#    if and wherever such third-party acknowledgments normally appear.
# 
# 4. The names "Xerces" and "Apache Software Foundation" must
#    not be used to endorse or promote products derived from this
#    software without prior written permission. For written 
#    permission, please contact [EMAIL PROTECTED]
# 
# 5. Products derived from this software may not be called "Apache",
#    nor may "Apache" appear in their name, without prior written
#    permission of the Apache Software Foundation.
# 
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
# ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
# ====================================================================
# 
# This software consists of voluntary contributions made by many
# individuals on behalf of the Apache Software Foundation, and was
# originally based on software copyright (c) 1999, International
# Business Machines, Inc., http://www.ibm.com .  For more information
# on the Apache Software Foundation, please see
# <http://www.apache.org/>.
# 
#
# $Log: Makefile.incl,v $
# Revision 1.6  1999/12/01 17:16:15  rahulj
# Added support for IRIX 6.5.5 using SGI MIPSpro C++ 7.3 and 7.21 generating 32 
bit objects. Changes submitted by Marc Stuessel
#
# Revision 1.5  1999/11/23 01:59:28  rahulj
# Code now works under HPUX 11. Tested inmemory message loader.
Revamped makefiles. Builds with both DCE threads as well as pthread libraries.
#
# Revision 1.4  1999/11/17 22:36:31  rahulj
# Code works with ICU transcoding service
#
# Revision 1.3  1999/11/12 20:38:49  rahulj
# Replaced XML4CROOT with XERCESCROOT.
#
# Revision 1.1.1.1  1999/11/09 01:02:55  twl
# Initial checkin
#
# Revision 1.4  1999/11/08 20:44:09  rahul
# Swat for adding in Product name and CVS comment log variable.
#
#

###################################################################
#                    IMPORTANT NOTE                               #
###################################################################
# Before you try to run the Makefile, make sure you have set      #
# the following environment variables properly.                   #
#                                                                 #
# export XERCESCROOT=<the directory where you installed XRECES-C> #
#                                                                 #
# In case you intend to use either the ICU transcoder or the      #
# ICU message loader, you must set ICUROOT correctly.             #
# export ICUROOT=<the directory where you installed ICU>          #
#                                                                 #
# For netaccessor, if you intend to use libwww, then you must     #
# also set another environment variable called LIBWWWROOT         #
# export LIBWWWROOT=<the directory where you installed libwww>    #
###################################################################

###################################################################
#         SPECIAL INSTRUCTIONS FOR OS/390 BATCH MODE              #
###################################################################
# If you are going to do the OS390BATCH build, make sure you have #
# the OS390BATCH environment variable set.                        #
#                                                                 #
#   export OS390BATCH=1                                           #
#                                                                 #
# Also, search for the LOADMOD variable and set it to your        #
# LOADMOD dataset. Make sure you have at least UPDATE access to   #
# the dataset.                                                    #
###################################################################

ALL:    all

ALL_OBJECTS_DIR   = ${XERCESCROOT}/obj

XML_BUILD_OPTIONS = ${CXXFLAGS}

XML_LIB_DIR = $(XERCESCROOT)/lib
XML_INC_DIR = $(XERCESCROOT)/include
XML_INCL    = -I$(XML_INC_DIR)

####################### PLATFORM DEPENDENCIES #####################

#=============== SOLARIS SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, SOLARIS)
  ifeq (${CXX}, g++)
        PLATFORM_COMPILE_OPTIONS = -fPIC -instances=static -D${PLATFORM} 
-D_REENTRANT
        MAKE_SHARED = ${CXX} -D${PLATFORM} -shared
        MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared
        ALLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -lm -lw 
-lgen
  else
        PLATFORM_COMPILE_OPTIONS = -KPIC -mt -xs -instances=static 
-features=rtti -D${PLATFORM} -D_REENTRANT
        MAKE_SHARED = ${CXX} -D${PLATFORM} -G
        MAKE_SHARED_C = ${CC} -D${PLATFORM} -G
        EXTRA_LINK_OPTIONS = ${LIBS} -L/usr/local/SUNWspro/lib -L/usr/ccs/lib 
-lm -lw -lC -lc -lgen
  endif
  SHLIBSUFFIX=.so
endif

#================= AIX SPECIFIC OPTIONS ===========================
ifeq (${PLATFORM}, AIX)

#PLATFORM_CPP_COMPILER = xlC_r
#PLATFORM_C_COMPILER = xlc_r
#ifdef ICUROOT
#  ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -L${ICUROOT}/lib -licu-uc -lbsd
#else
#  ALLLIBS = -L/usr/lpp/xlC/lib -lbsd
#endif

ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -lbsd
PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_THREAD_SAFE
MAKE_SHARED = makeC++SharedLib_r -p 5000
MAKE_SHARED_C = makeC++SharedLib_r -p 5000
SHLIBSUFFIX=.a
endif

#=============== LINUX SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, LINUX)
PLATFORM_COMPILE_OPTIONS = -fpic -instances=static -D${PLATFORM} -D_REENTRANT
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fpic
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fpic
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -lc
SHLIBSUFFIX=.so
endif

#=============== IRIX SPECIFIC OPTIONS ============================
ifeq (${PLATFORM}, IRIX)
PLATFORM_COMPILE_OPTIONS = -LANG:pch -LANG:std -O2 \
                           -D${PLATFORM} -D_REENTRANT \
                           -I/usr/local/include
OBJ_OUT=${XERCESCROOT}/obj/
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared
ALLLIBS = -L/usr/lib32 -lC
SHLIBSUFFIX=.so
endif


#=============== OS2 SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, OS/2)
#PLATFORM_CPP_COMPILER = icc
#PLATFORM_C_COMPILER = icc
PLATFORM_LIBRARIES= CPPOM30.LIB os2386.lib mmpm2.lib
PLATFORM_COMPILE_OPTIONS = /C+ /Gd- /Ge- /Gm+ /Gs- /Re /J+  /Ms /Sm /Sn /Ss+
MAKE_SHARED = ilink /nofree
MAKE_SHARED_C = ilink /nofree
EXTRA_LINK_OPTIONS = /map /nod /noe /noi /packcode /packdata /exepack /align:4
SHLIBSUFFIX= .dll
ifneq (${DEBUG}, 1)
XML_BUILD_OPTIONS = -2
endif
endif

#================= HP SPECIFIC OPTIONS ===========================

ifeq (${PLATFORM}, HPUX)

  OSVERDEFINE=HPUX11
  ifeq (${OSVER}, HPUX10)
    OSVERDEFINE=HPUX10
  endif

  ifeq (${CXX}, aCC)
    PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC \
        -D${OSVERDEFINE} +DAportable +z +inst_compiletime
    MAKE_SHARED = ${CXX} -D${PLATFORM} -b
    MAKE_SHARED_C = ${CC} -D${PLATFORM} -b
    ALLLIBS = ${LIBS} -lCsup -lstream
    SHLIBSUFFIX=.sl
  else
    TEMPLATESREPOSITORY = ${ALL_OBJECTS_DIR}/ptrepository
    COMMON_COMPILE_OPTIONS = -D_HP_UX -DXML4C_TMPLSINC \
        -D${OSVERDEFINE} +DAportable +eh +z -z +a1
    ifeq ($(MODULE), dom)
      PLATFORM_COMPILE_OPTIONS  = -DDOM_PROJ $(COMMON_COMPILE_OPTIONS)
    else
      PLATFORM_COMPILE_OPTIONS  = $(COMMON_COMPILE_OPTIONS) 
-ptr${TEMPLATESREPOSITORY}
    endif
    MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL)
    MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL)
    ALLLIBS = ${LIBS}
    EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,-a,shared
    SHLIBSUFFIX=.sl
  endif
endif


#================ OS/390 SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, OS390)
PLATFORM_CPP_COMPILER = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++
PLATFORM_C_COMPILER = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" cc
PLATFORM_LIBRARIES=
## OS390BATCH
ifeq (${OS390BATCH},1)
PLATFORM_COMPILE_OPTIONS =-Wc,dll,expo -W0,"langlvl(extended)" -D${PLATFORM} 
-D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED -DOS390BATCH
else
PLATFORM_COMPILE_OPTIONS =-Wc,dll,expo -W0,"langlvl(extended)" -D${PLATFORM} 
-D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED
endif
MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -W l,dll
MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -W l,dll
## OS390BATCH
ifeq (${OS390BATCH},1)
LOADMOD = USERID.LOAD
LOADEXP = USERID.EXP
ALLLIBS = "//'${LOADEXP}(ICUUC)'"
else
ALLLIBS = ${ICUROOT}/lib/libicu-uc.x
endif
EXTRA_LINK_OPTIONS =
SHLIBSUFFIX=.dll
OS390SIDEDECK=.x
ifneq (${DEBUG}, 1)
  XML_BUILD_OPTIONS = -2
endif
endif

###################### STANDARD TOOLS #############################
CP = -cp -fp
RM = -rm -f
CAT = cat
AR = ar -cqv
CD = cd
CC1     = ${CXX} ${PLATFORM_COMPILE_OPTIONS}
JUST_CC = ${CC} -D${PLATFORM}
ECHO = echo
CREATE_DEPENDS_FILE = echo "" > depends
MAKE_DEPEND = ${CC1} -E -xM


##################### HELPER MACROS ###############################
DEPFILE = depends
LINKLIB = $(XML_LIB_DIR)

######################### SUFFIX RULES ############################
.SUFFIXES:
.SUFFIXES: .cpp .c .o

.cpp.o:
        $(CC1) -c $(XML_BUILD_OPTIONS) $(XML_DEF) $(XML_INCL) 
$(EXTRA_COMPILE_OPTIONS) -o $(@) $(<)
ifeq (${PLATFORM}, IRIX)
        $(CC1) -c $(XML_BUILD_OPTIONS) $(XML_DEF) $(XML_INCL) 
$(EXTRA_COMPILE_OPTIONS) -o $(OBJ_OUT)$(@) $(<)
endif

.c.o:
        $(JUST_CC) -c $(XML_BUILD_OPTIONS) $(XML_DEF) $(XML_INCL) 
$(EXTRA_COMPILE_OPTIONS) -o $(@) $(<)

Reply via email to