搜索

Google
 

星期四, 三月 08, 2007

程序库的autotools脚本

1、configure.ac的不同

AC_INIT()
AM_INIT_AUTOMAKE(lclibs, 0.1)
AM_CONFIG_HEADER([config.h])

# Checks for programs.
AC_PROG_CC

# 库与应用程序不一样,需要libtool支持
# 一般不用intltool,所以没有AC_PROG_INTLTOOL
AC_PROG_LIBTOOL

# Checks for libraries.

# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h stdlib.h string.h strings.h sys/socket.h unistd.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T

# Checks for library functions.
AC_FUNC_MALLOC
AC_FUNC_REALLOC
AC_CHECK_FUNCS([atexit bzero gethostbyname inet_ntoa memset socket strcasecmp strchr strdup strpbrk strspn strstr])

AC_OUTPUT([
Makefile
src/Makefile
])


2、src/Makefile.am的不同

lib_LTLIBRARIES = liblclibs.la
liblclibs_la_SOURCES = \
utils.c\
stack.c\
sockets_wrapper.c\
queue.c\
packages.c\
inifiles.c\
hash.c

lclibsincludedir = $(includedir)/lclibs
lclibsinclude_HEADERS = \
lclibs.h\
utils.h\
threads_wrapper.h\
stack.h\
sockets_wrapper.h\
queue.h\
packages.h\
inifiles.h\
hash.h

没有评论: