Makefile과 쉘 스크립트에 모두 포함될 수있는 형태로 빌드 변수 집합 (LDFLAGS에 추가해야하는)을 배포하고 싶습니다. .Makefile과 쉘 스크립트 모두에 사용할 변수 정의하기
내가 지금 가지고있는 것은 파일 buildflags.conf입니다 :
include buildflags.conf
LDFLAGS+=$LDFLAGS_EXTRA
또는 그들이 때, : 그들은 메이크 파일을 사용할 때
이LDFLAGS_EXTRA="-static -foo -bar"
내가, 내 사용자가 할 수 있도록하려면 쉘 스크립트를 사용하여 다음과 같이하십시오 :
. buildflags.conf
gcc myapp.o -o myapp $LDFLAGS_EXTRA
bash는 내 LDFLAGS_E XTRA 정의, make는 그 (것)들을 원하지 않는다.
누구나 해결책이있는 사람이 있습니까? 단일 정의 파일에서 시작하여 다른 컨텍스트에 포함시키기에 적합한 스크립트 세트가 좋을지라도 여러개의 별도 buildflags 파일을 유지 관리하고 싶지는 않습니다.
target: sources
. buildflags.conf ; \
gcc -o [email protected] $^ $$LDFLAGS_EXTRA
참고에 추가 $
:
감사합니다,
LDFLAGS_EXTRA_POST
을 참조하십시오. 나는 대부분의 사용자가 makefile을 사용할 것이라고 생각한다. 그래서 나는 쉘 스크립트에 부담을 더 줄 것이다. 쉘 스크립트에 변수를 내보내는 방법이 있습니까? – Wim구성을 읽는 다른 쉘 스크립트를 사용하는 것이 허용됩니까? 그렇다면''awk -F = '{printf "% s = \"% s \ "\ n", $ 1, $ 2}'
Ivo
Perfect! 나는 그 동안 당신과 비슷한'awk' 명령을 사용하여 패키징 스크립트에 별도의 버전을 빌드함으로써 해결했습니다. – Wim