(file) Return to config-linux.mak CVS log (file) (dir) Up to [Pegasus] / pegasus / mak

Diff for /pegasus/mak/config-linux.mak between version 1.25 and 1.61.8.1

version 1.25, 2004/12/30 16:07:43 version 1.61.8.1, 2013/06/03 22:34:47
Line 1 
Line 1 
   #//%LICENSE////////////////////////////////////////////////////////////////
   #//
   #// Licensed to The Open Group (TOG) under one or more contributor license
   #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
   #// this work for additional information regarding copyright ownership.
   #// Each contributor licenses this file to you under the OpenPegasus Open
   #// Source License; you may not use this file except in compliance with the
   #// License.
   #//
   #// Permission is hereby granted, free of charge, to any person obtaining a
   #// copy of this software and associated documentation files (the "Software"),
   #// to deal in the Software without restriction, including without limitation
   #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
   #// and/or sell copies of the Software, and to permit persons to whom the
   #// Software is furnished to do so, subject to the following conditions:
   #//
   #// The above copyright notice and this permission notice shall be included
   #// in all copies or substantial portions of the Software.
   #//
   #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
   #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
   #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
   #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
   #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
   #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   #//
   #//////////////////////////////////////////////////////////////////////////
 # Configuration options for Pegasus on all architectures running Linux # Configuration options for Pegasus on all architectures running Linux
   # These options are also used by clang( which was designed as dropin
   # replacement for gcc). So some of the names are misleading like
   # PEGASUS_PLATFORM_LINUX_GENERIC_GNU due to GNU appended, Better will
   # be PEGASUS_PLATFORM_LINUX_GENERIC and GNU and CLANG can add it.
   # Changing this now(for 9236) will involve lot of work, Will take up
   # this work later.
   
  
 include $(ROOT)/mak/config-unix.mak include $(ROOT)/mak/config-unix.mak
  
Line 6 
Line 41 
 DEFINES += -DPEGASUS_PLATFORM_LINUX_GENERIC_GNU DEFINES += -DPEGASUS_PLATFORM_LINUX_GENERIC_GNU
 DEFINES += -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM) DEFINES += -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM)
  
 OS = linux  #########################################################################
   ##
   ## Platform specific compile options controlled by environment variables
   ## are set here.
   ##
   #########################################################################
  
 COMPILER = gnu  
  
 PLATFORM_VERSION_SUPPORTED = yes  # Enable OOP by default if preference not already set in the environment
   #
   ifndef PEGASUS_DEFAULT_ENABLE_OOP
   PEGASUS_DEFAULT_ENABLE_OOP = true
   endif
   
  
   # Enable CMPI by default.
   #
   ifndef PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
   PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=true
   endif
   
   #########################################################################
   
   OS = linux
   
   
   ifeq ($(findstring _CLANG, $(PEGASUS_PLATFORM)), _CLANG)
       COMPILER = clang
       CXX = clang++
       CC = clang
   else
       COMPILER = gnu
 ifndef CXX ifndef CXX
 CXX = g++ CXX = g++
 endif endif
   endif
  
 SH = sh  PLATFORM_VERSION_SUPPORTED = yes
   
 YACC = yacc  
  
 COPY = cp  
  
 MOVE = mv  SH = sh
  
 MKDIRHIER = mkdir -p  YACC = bison
  
 PEGASUS_SUPPORTS_DYNLIB = yes PEGASUS_SUPPORTS_DYNLIB = yes
  
Line 34 
Line 93 
  
 DEFINES += -DPEGASUS_USE_SYSLOGS DEFINES += -DPEGASUS_USE_SYSLOGS
  
 DEFINES += -DPEGASUS_HAS_SIGNALS  SYS_LIBS = -ldl -lpthread -lcrypt
   
 SYS_LIBS = -ldl -lpthread  
   
 # Build using fixed release settings  
 #  
 ifdef PEGASUS_USE_RELEASE_DIRS  
   PEGASUS_DEST_LIB_DIR=/opt/tog-pegasus/lib  
 endif  
  
 # PAM support  ifeq ($(COMPILER), clang)
 ifdef PEGASUS_PAM_AUTHENTICATION      FLAGS += -W -Wall -Wno-unused-parameter  -Wno-unused-value -D_GNU_SOURCE \
    ifeq ($(HPUX_IA64_VERSION), yes)          -DTHREAD_SAFE -D_REENTRANT -Werror=unused-variable -Wno-unused-function
       SYS_LIBS += -L$(PAMLIB_HOME) -lpam  
    else    else
       SYS_LIBS += -lpam      FLAGS += -W -Wall -Wno-unused -Wunused-variable
     # Starting with gcc 4.3 specific warnings can be reported as error
     # Enabling a specific selection of warnings to turn into errors
     ifeq ($(shell expr $(GCC_VERSION) '>=' 4.3), 1)
       FLAGS += -Werror=unused-variable
    endif    endif
       FLAGS += -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT
 ## The following flags need to be set or unset  
 ## to compile-in the code required for PAM authentication  
 ## and compile-out the code that uses the password file.  
   
  DEFINES += -DPEGASUS_PAM_AUTHENTICATION -DPEGASUS_NO_PASSWORDFILE  
   
 endif endif
  
  
 ifdef PEGASUS_DEBUG  ##==============================================================================
 FLAGS += -g -fPIC -W -Wall -Wno-unused  -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT  ##
   ## The DYNAMIC_FLAGS variable defines linker flags that only apply to shared
   ## libraries.
   ##
   ##==============================================================================
   DYNAMIC_FLAGS += -fPIC
   
   ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS
     FLAGS += -g
 else else
 FLAGS += -O2 -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT -s    #
     # The -fno-enforce-eh-specs is not available in 2.9.5 and it probably
     # appeared in the 3.0 series of compilers.
     #
     ifeq ($(COMPILER), gnu)
      FLAGS += -s
      ifeq ($(shell expr $(GCC_VERSION) '>=' 3.0), 1)
        EXTRA_CXX_FLAGS += -fno-enforce-eh-specs
 endif endif
   
 ifndef PEGASUS_USE_MU_DEPEND  
 PEGASUS_HAS_MAKEDEPEND = yes  
 endif endif
  
 ifdef PEGASUS_LOCAL_DOMAIN_SOCKET    ifdef PEGASUS_OPTIMIZE_FOR_SIZE
  FLAGS += -DPEGASUS_LOCAL_DOMAIN_SOCKET      ifeq ($(COMPILER), gnu)
         FLAGS += -Os
       else
         FLAGS += -Oz
       endif
     else
       FLAGS += -O2
 endif endif
   
 ifdef USE_CONNECTLOCAL  
  FLAGS += -DUSE_CONNECTLOCAL  
 endif endif
  
 # l10n  FLAGS += $(CXX_MACHINE_OPTIONS)
 ifdef PEGASUS_HAS_MESSAGES  
   DEFINES += -DPEGASUS_HAS_MESSAGES  
   ifdef ICU_ROOT  
         MSG_COMPILE = genrb  
         MSG_FLAGS =  
         MSG_SOURCE_EXT = .txt  
         MSG_COMPILE_EXT = .res  
         CNV_ROOT_CMD = cnv2rootbundle  
  
 ##################################  ifdef PEGASUS_ENABLE_GCOV
 ##    FLAGS += -ftest-coverage -fprofile-arcs
 ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,    SYS_LIBS += -lgcc -lgcov
 ## default is to uppercase the root resource bundle##    EXTRA_LIBRARIES += -lgcc -lgcov
 ##################################  endif
  
 ifdef ICU_NO_UPPERCASE_ROOT  ifndef PEGASUS_USE_MU_DEPEND
   CNV_ROOT_FLAGS =  PEGASUS_HAS_MAKEDEPEND = yes
 else  
   CNV_ROOT_FLAGS = -u  
 endif endif
  
 ####################################  ##==============================================================================
 ## ##
 ##   ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from  ## Set the default visibility symbol to hidden for shared libraries. This
 ##   defaults to _en if not set.  if set, for any directory containing resource bundles,  ## feature is only available in GCC 4.0 and later.
 ##   there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail  
 ## ##
 ####################################  ##==============================================================================
  
 ifdef ICU_ROOT_BUNDLE_LANG  ifeq ($(COMPILER), gnu)
   MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)   ifeq ($(shell expr $(GCC_VERSION) '>=' 4.0), 1)
       FLAGS += -fvisibility=hidden
    endif
 else else
   MSG_ROOT_SOURCE = _en      FLAGS +=-fvisibility=hidden
 endif endif
  
     SYS_INCLUDES += -I${ICU_ROOT}/source/common -I${ICU_ROOT}/source/i18n  ifndef PEGASUS_ARCH_LIB
     DEFINES += -DPEGASUS_HAS_ICU    ifeq ($(PEGASUS_PLATFORM),LINUX_X86_64_GNU)
     SYS_LIBS += -licuuc          PEGASUS_ARCH_LIB = lib64
     SYS_LIBS += -licui18n  
   endif   endif
     ifeq ($(PEGASUS_PLATFORM),LINUX_X86_64_CLANG)
           PEGASUS_ARCH_LIB = lib64
 endif endif
     PEGASUS_ARCH_LIB = lib
 ####################################  
 ##  
 ##   If PEGASUS_LSB is set, set the rest of the variables.  
 ##  
 ####################################  
   
 ifdef PEGASUS_LSB  
     SYS_INCLUDES += -I/usr/include -I/usr/include/c++ -I/opt/lsbdev-base/include/c++ -I/opt/lsbdev-base/include/  
     FLAGS += -DPEGASUS_OS_LSB  
 endif endif
   DEFINES += -DPEGASUS_ARCH_LIB=\"$(PEGASUS_ARCH_LIB)\"


Legend:
Removed from v.1.25  
changed lines
  Added in v.1.61.8.1

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2