
SET( girlTools_PUBLIC_HEADERS 
  girlToolsImage.hpp
  girlToolsImageFeatureAbstract.hpp
  girlToolsImageFeature.hpp
  girlToolsPainter.hpp  
  girlToolsPixel.hpp  
  girlToolsPixelFromImage.hxx  
  girlToolsPixelStandAlone.hxx
  girlToolsVector.hpp 
  girlToolsRegionInfos.hpp 
  TogerPainter.hpp )

#SET( girlTools_PRIVATE_HEADERS  )

SET( girlTools_SOURCES 
  girlToolsImage.cpp 
  girlToolsImageFeature.cpp 
  girlToolsPainter.cpp  
  girlToolsRegionInfos.cpp  
)



SET( girlTools_SRCS ${girlTools_SOURCES} ${girlTools_PUBLIC_HEADERS} ${girlTools_PRIVATE_HEADERS} )


INCLUDE_DIRECTORIES(${GIRLTOOLS_INCLUDE_PATH})
INCLUDE_DIRECTORIES(${GIRLTOOLS_INCLUDE_DIRS})

ADD_DEFINITIONS(${GIRLTOOLS_DEFS})

ADD_LIBRARY( ${girlTools_major_minor} STATIC ${girlTools_SRCS} )
SET_TARGET_PROPERTIES( ${girlTools_major_minor} PROPERTIES DEFINE_SYMBOL "GIRL_DLL" )
SET_TARGET_PROPERTIES( ${girlTools_major_minor} PROPERTIES DEFINE_SYMBOL "GIRL_DLL_EXPORTS" )
IF(CMAKE_COMPILER_IS_GNUCC AND NOT APPLE)
  SET_TARGET_PROPERTIES( ${girlTools_major_minor} PROPERTIES LINK_FLAGS "-Wl,--no-undefined" )
ENDIF(CMAKE_COMPILER_IS_GNUCC AND NOT APPLE)


TARGET_LINK_LIBRARIES(${girlTools_major_minor} ${GIRLTOOLS_LINK_LIBS})


# We do not install with 
# INSTALL(FILES ${girlTools_PUBLIC_HEADERS} DESTINATION include/${girlTools_major_minor}/girlTools)
# but by setting PUBLIC/PRIVATE_HEADER properties of target

FOREACH(FILE ${girlTools_PUBLIC_HEADERS})
  SET(girlTools_PUBLIC_HEADER_S "${girlTools_PUBLIC_HEADER_S};${FILE}")
ENDFOREACH()
FOREACH(FILE ${girlTools_PRIVATE_HEADERS})
  SET(girlTools_PRIVATE_HEADER_S "${girlTools_PRIVATE_HEADER_S};${FILE}")
ENDFOREACH()


SET_TARGET_PROPERTIES( ${girlTools_major_minor} 
  PROPERTIES
  # PRIVATE_HEADER "${girlTools_PRIVATE_HEADER_S}"
  PUBLIC_HEADER "${girlTools_PUBLIC_HEADER_S}" 
  )

IF(APPLE)
  
  IF (WANT_FRAMEWORK)

    SET_TARGET_PROPERTIES( ${girlTools_major_minor} 
      PROPERTIES
      FRAMEWORK TRUE
      FRAMEWORK_VERSION ${girlTools_VERSION}
      #	PRIVATE_HEADER ${girlTools_PRIVATE_HEADERS}
      #	PUBLIC_HEADER ${girlTools_PUBLIC_HEADERS}
      MACOSX_FRAMEWORK_BUNDLE_VERSION "${girlTools_VERSION}" 
      MACOSX_FRAMEWORK_SHORT_VERSION_STRING "${girlTools_VERSION}" 
      #	MACOSX_FRAMEWORK_IDENTIFIER "girlTools ${MACOSX_BUNDLE_VERSION}" 
      ### Don't know what to put as identifier ??? 
      )
    
  ELSE(WANT_FRAMEWORK)

    SET_TARGET_PROPERTIES( ${girlTools_major_minor} 
      PROPERTIES
      FRAMEWORK FALSE
      )

  ENDIF(WANT_FRAMEWORK)

ENDIF()


INSTALL(TARGETS ${girlTools_major_minor}
  FRAMEWORK DESTINATION Library/Frameworks
  RUNTIME DESTINATION bin 
  LIBRARY DESTINATION lib 
  ARCHIVE DESTINATION lib
  #The following is ignored for Mac frameworks. 
  # PUBLIC_HEADER DESTINATION ${includedir}/${girlTools_major_minor}/girlTools
  PUBLIC_HEADER DESTINATION include/${girlTools_major_minor}/girlTools
  )


