SHARE
TWEET

Untitled

a guest Jun 6th, 2011 542 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # ограничение версии
  2. cmake_minimum_required(VERSION 2.6)
  3.  
  4. # Generic - не использовать дополнительные настройки библиотек и пр. - собирать и линковать только то и с тем, о чем сказано явно
  5. SET(CMAKE_SYSTEM_NAME Generic)
  6.  
  7. # Путь поиска библиотек (/lib) и заголовочных файлов (/include)
  8. SET(CMAKE_FIND_ROOT_PATH C:/WinAVR/avr/)
  9.  
  10. # Имя исполняемого файла компилятора С
  11. SET(CMAKE_C_COMPILER avr-gcc)
  12. # И С++
  13. SET(CMAKE_CXX_COMPILER avr-g++)
  14.  
  15. # Устанавливаем флаги
  16. SET(CSTANDARD "-std=gnu99")
  17. SET(CDEBUG "-gstabs")
  18. SET(CWARN "-Wall -Wstrict-prototypes")
  19. SET(CTUNING "-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums")
  20. SET(COPT "-Os")
  21. SET(CMCU "-mmcu=atmega8")
  22. SET(CDEFS "-DF_CPU=8000000")
  23.  
  24. SET(CFLAGS "${CMCU} ${CDEBUG} ${CDEFS} ${CINCS} ${COPT} ${CWARN} ${CSTANDARD} ${CEXTRA}")
  25. SET(CXXFLAGS "${CMCU} ${CDEFS} ${CINCS} ${COPT}")
  26.  
  27. # Чтобы флаги задействовать при сборке, нужно их поместить в соответствующие переменные
  28. SET(CMAKE_C_FLAGS ${CFLAGS})
  29. SET(CMAKE_CXX_FLAGS ${CXXFLAGS})
  30.  
  31. # Объявляем новый проект
  32. project(D_SENSORS)
  33. # Дополнительные пути поиска заголовочных файлов
  34. include_directories($(D_SENSORS_SOURCE_DIR)/periph/avr $(D_SENSORS_SOURCE_DIR)/sensors)
  35. # Добавляем цель - static library
  36. add_library(periph periph/avr/TWI_Master.c)
  37. # И еще одну
  38. add_library(sensors sensors/ITG320x/ITG320x.cpp sensors/MMA7455/MMA7455.cpp)
  39. # Sensors зависит от Periph - линкуем их между собой
  40. target_link_libraries(sensors periph)
  41. # Добавляем цель - исполняемый файл
  42. add_executable(main sensors.cpp)
  43. # И линкуем его с библиотеками
  44. target_link_libraries(main periph sensors)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top