CMAKE_MINIMUM_REQUIRED(VERSION 2.6.3 FATAL_ERROR)
PROJECT(GCC C)

IF(GCCXML_INSTALL_COMPONENT_NAME_RUNTIME_EXECUTABLE)
  SET(GCCXML_INSTALL_COMPONENT_RUNTIME_EXECUTABLE
    COMPONENT ${GCCXML_INSTALL_COMPONENT_NAME_RUNTIME_EXECUTABLE})
ENDIF(GCCXML_INSTALL_COMPONENT_NAME_RUNTIME_EXECUTABLE)

# Do not place internal build-related executables in a parent project
# executable path.  Backup the real executable output path so it can
# be restored in gcc/cp for building gccxml_cc1plus.
SET(GCC_EXECUTABLE_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})
SET(EXECUTABLE_OUTPUT_PATH "${GCC_BINARY_DIR}/gcc")

# Do not inherit library building rules from the parent project.
SET(BUILD_SHARED_LIBS 0)
SET(LIBRARY_OUTPUT_PATH "${GCC_BINARY_DIR}/gcc")

IF(APPLE)
  IF(CMAKE_COMPILER_IS_GNUCC)
    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -no-cpp-precomp")
  ENDIF(CMAKE_COMPILER_IS_GNUCC)
ENDIF(APPLE)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_ANSI_CFLAGS}")

IF(CMAKE_C_COMPILER MATCHES "cl")
  STRING(REGEX REPLACE "/W([0-4])?" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
  SET(CMAKE_CXX_WARNING_LEVEL 0)
  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W0")
ELSE(CMAKE_C_COMPILER MATCHES "cl")
  IF(CMAKE_C_COMPILER MATCHES "bcc32")
    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w-")
  ELSE(CMAKE_C_COMPILER MATCHES "bcc32")
    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w")
  ENDIF(CMAKE_C_COMPILER MATCHES "bcc32")
ENDIF(CMAKE_C_COMPILER MATCHES "cl")

ADD_DEFINITIONS(-DALMOST_STDC)

SUBDIRS(config_cmake libiberty libdecnumber libcpp gcc)
