저는 Autoconf에 새로 도입되었습니다. 전화 할 때 구성 파일을 갖고 싶습니다. : configure --enable-gtest=yes
, 컴파일러 플래그를 추가합니다. 다음 코드는 검색 한 결과 다음과 같이 보이지만 트릭을 수행하지는 않습니다.autoconf에서 기능을 활성화하여 컴파일러 플래그를 설정하는 방법
고마워요.
이것은 내 메이크 파일의 모습입니다.
-include Makefile.config
SRC = $(wildcard *.cpp)
OBJ = $(SRC:.cpp=.o)
install: $(OBJ)
$(CC) $(CXXFLAGS) $(DEBUGFLAG) $(OBJ) -o run
%.o:%.cpp
$(CC) $(CXXFLAGS) $(DEBUGFLAG) -c $<
clean:
rm -f *.o
이
내 configure.acAC_INIT([test], [1.7.0])
AC_PREREQ([2.59])
AC_CONFIG_MACRO_DIR([m4])
AC_CHECK_PROGS(CXX, [g++ c++ clang], ":")
AC_PROG_CXX
AC_SUBST(CXX)
AC_ARG_ENABLE([debug],
[ --enable-debug Turn on debugging],
[case "${enableval}" in
yes) debug=true ;;
no) debug=false ;;
*) AC_MSG_ERROR([bad value ${enableval} for --enable-debug]) ;;
esac],[debug=false])
AM_CONDITIONAL([DEBUG], [test x$debug = xtrue])
AC_CONFIG_FILES(Makefile.config)
AC_OUTPUT
내
Makefile.config.in
CC = @[email protected]
CXXFLAGS = -std=c++14
if DEBUG
DBG = debug
else
DBG =
endif
감사
입니다
감사합니다. AC_SUBST를 사용하여 효과가있었습니다. – apramc