나는 다음과 같은 구조로 프로젝트의 저장소가 프로젝트 :를 사용하여 상위 디렉토리가
repo/ configure.ac Makefile.am project1/ configure.ac Makefile.am [sources] project2/ configure.ac Makefile.am [sources] project3/ configure.ac Makefile.am [sources]
그리고 지금은 디렉토리를 추가 할 필요가 repo/
에 어떻게 든 project1
및 project2
을 수정 (common_logic/
말할 수 있습니다) common_logic
의 출처를 사용합니다. 내가 볼 수있는 솔루션
하나는 ./configure
후 사본 ../common_logic/
이다 project1/
실행 및 Makefile.am에 추가 할 다음 행 (또는 메이크의 모든 규칙 전) :
project1_la_CFLAGS += -I./common_logic project1_la_SOURCES += ./common_logic/foo.h ./common_logic/foo.c
이 경우 어느 쪽도 없습니다 make
또는 make dist
이 깨졌습니다. 그러나 그것은 나에게 목발처럼 보인다.
어쨌든 project1
과 project2
을 새로 생성 된 폴더를 사용하도록 수정해야한다고 말씀해 주시겠습니까? 아니면 다른 솔루션을 가리 킵니까?
이 유념하라 - PLACE_ 빌드에 대한 솔루션입니다. 그러나'make dist'는 망가질 것입니다, 맞습니까? – ilardm
맞지 않습니다. 'libcommonlogic.la'는'$ (top_builddir)/common_logic /'에 만들어 질 것이고,'project1.la' 빌드는'$ (top_builddir)/project1'의 작업 디렉토리를 가지기 때문에'make dist '가 작동 할 것입니다. 따라서 경로는 서로 상대적으로 동일하게 유지됩니다. – ptomato
하지만 당신이 나를 믿지 않는다면, 그냥 시도해보십시오 - 내가 잘못 될 수 있습니다 ;-) – ptomato