Makefile.am 프로젝트 구성 내용을 CMakeLists.txt 형식에 맞게 변환하는 법

redstorm의 이미지

INCLUDES = -I$(top_srcdir)/Common -I$(top_srcdir)/CommonSrv \
-I$(top_srcdir)/LoginAgent -I$(top_srcdir)/library -I$(top_srcdir)/library/Buffer \
-I/usr/include/pgsql -I/usr/local/include/boost -I/usr/local/pgsql/include
METASOURCES = AUTO
noinst_HEADERS = AccountMgr.h CharacterMgr.h Config.h GameServer.h \
GameServerManager.h MemoryDBManager.h PetMgr.h SubCharacterMgr.h
noinst_PROGRAMS = memorydb_rga
memorydb_rga_SOURCES = Config.cpp DBCacheServer.cpp GameServer.cpp \
GameServerManager.cpp MemoryDBManager.cpp ServiceMain.cpp
memorydb_rga_LDADD = $(top_builddir)/Common/libCommon.a \
$(top_builddir)/CommonSrv/libCommonSrv.a $(top_builddir)/library/ASIO/libasiowrapper.a \
$(top_builddir)/library/Database/libDatabase.a $(top_builddir)/library/Etc/libEtc.a \
$(top_builddir)/library/Lock/libLock.a $(top_builddir)/library/Log4cxx/libLog4cxx.a \
$(top_builddir)/library/XML/libXML.a $(top_builddir)/library/Crypt/libcrypt.a \
$(top_builddir)/library/Buffer/libBuffer.a $(top_builddir)/library/Encode/libEncode.a -L/usr/local/lib/log4cxx \
-L/usr/local/pgsql/lib -lboost_system -lboost_thread -llog4cxx -lpq -lrt

AM_CPPFLAGS = -D_COMPILE_OPTIONS_="\"@CPPFLAGS@\"" \
-D_SVN_VERSION_="\"`svnversion -n $(top_srcdir)`\""

위의 내용은 제가 지금 진행중인 kdevelop3 기반의 프로젝트의 Makefile.am 파일 내용입니다.
위의 프로젝트 구성 내용을 CMakeLists.txt 로 재구성해서 kdevelop4에서 작업을 하려고 합니다.
add_subdirectory(), include_directory() 뭐 이런건 알겟는데, 다른건 어떻게 변환을 해서 txt파일을 작성해야될지 감이 안오는군요
고수분들 많은 도움 주시길 바랍니다(__)

마냥의 이미지

* noinst_HEADERS, noinst_PROGRAMS 등등 변수 선언 : http://www.cmake.org/cmake/help/cmake2.6docs.html#command:set
* link library 설정 : http://www.cmake.org/cmake/help/cmake2.6docs.html#command:target_link_libraries
* definition 설정 : http://www.cmake.org/cmake/help/cmake2.6docs.html#command:add_definitions
* pkg-config 사용 : http://www.cmake.org/cmake/help/cmake2.6docs.html#module:FindPkgConfig

cmake를 사용하는 다른 프로그램들을 참고해보세요. 구글에서 CMakeLists.txt 로만 찾아도 나옵니다.

Gentoo Rules!

redstorm의 이미지

구글에 찾아서 보고 또 봐도 감이 안오던데 어떻게 세팅해줘야 할지 ㅠ
아무튼 너무 감사드립니다. 이래저래 시도 해봐야겠어요 ㅎ

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.