|
|
刚才好不容易写了一个configure.in和Makefile.am,可是发现得到的Makefile不会根据文件的新旧自动的选择要编译的文件,每次修改一点点,就要重新编译整个工程。因为工程里的文件太多了,所以编译起来特别的慢。不知道该怎么写才能使得到的Makefile能自动选择该编译的文件?
一下是我的configure.in和Makefile.am:
- AC_PREREQ(2.57)
- AC_INIT(myftp, 1.0, zhengda1936@sina.com)
- AC_CONFIG_SRCDIR([AddWidgetError.cc])
- AM_INIT_AUTOMAKE
- AC_CONFIG_HEADER([config.h])
- AC_DEFINE(GETTEXT_PACKAGE, "myftp", [Gettext domain name])
- GETTEXT_PACKAGE=myftp
- AC_SUBST(GETTEXT_PACKAGE)
- #IT_PROG_INTLTOOL([0.32])
- ALL_LINGUAS="zh_CN"
- AM_GLIB_GNU_GETTEXT
- # Checks for programs.
- AC_PROG_CXX
- AC_PROG_CC
- # Checks for libraries.
- AM_PATH_GTK_2_0(2.0.0,,exit 1)
- LIBGNOME_REQUIRED=2.0.0
- LIBGNOMEUI_REQUIRED=2.0.0
- PKG_CHECK_MODULES(MYFTP, libgnome-2.0 >= $LIBGNOME_REQUIRED
- libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED)
- AC_SUBST(MYFTP_CFLAGS)
- AC_SUBST(MYFTP_LIBS)
- # Checks for header files.
- AC_HEADER_DIRENT
- AC_HEADER_STDC
- AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h])
- # Checks for typedefs, structures, and compiler characteristics.
- AC_HEADER_STDBOOL
- AC_C_CONST
- AC_TYPE_MODE_T
- AC_TYPE_OFF_T
- AC_TYPE_SIZE_T
- AC_HEADER_TIME
- AC_STRUCT_TM
- # Checks for library functions.
- AC_FUNC_LSTAT
- AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
- AC_FUNC_MALLOC
- AC_FUNC_SELECT_ARGTYPES
- AC_CHECK_FUNCS([bzero gethostbyname inet_ntoa mkdir select socket strerror gettimeofday setlocale])
- AC_CONFIG_FILES([Makefile])
- AC_OUTPUT
复制代码
- MYFTP_DEBUG=-Wall -O0 -g
- localedir=$(datadir)/locale
- INCLUDES=\
- -DGTK_ENABLE_BROKEN \
- -DPIXMAPSDIR=""$(datadir)/pixmaps/myftp"" \
- -DLOCALEDIR="$(localedir)" \
- $(MYFTP_CFLAGS) $(MYFTP_DEBUG)
- LDADD=$(MYFTP_LIBS)
- bin_PROGRAMS=myftp
- myftp_SOURCES=\
- AboutDialog.cc CtrlList.cc FTPShow.cc MessageDialog.cc SiteTree.cc\
- AddWidgetError.cc CtrlSocket.cc GtkTree.cc Mutex.cc Sock5Socket.cc\
- AnonyButton.cc DataSocket.cc GtkTreeItem.cc NoteBook.cc Socket.cc\
- ButtonApply.cc DetailDialog.cc HTMLParse.cc OKCancelDialog.cc SocketSet.cc\
- ButtonCancel.cc Dialog.cc HTTPSocket.cc Pixmap.cc StatusBar.cc\
- Button.cc DirTree.cc IDButton.cc PopMenu.cc Text.cc\
- ButtonClose.cc EntryDialog.cc InfoEditDialog.cc ProgressBar.cc Thread.cc\
- ButtonConnect.cc ErrorDialog.cc InquireDialog.cc QueueCtrlList.cc Time.cc\
- ButtonDelete.cc Exception.cc IPEntry.cc QueueListDialog.cc TimeLabel.cc\
- ButtonNewGroup.cc FavariteSiteTree.cc Label.cc RadioButton.cc TimeProgress.cc\
- ButtonNewSite.cc FileAttr.cc LabelEntry.cc RemoteFile.cc ToolBar.cc\
- ButtonOK.cc File.cc LocalFile.cc RemoteFileList.cc URLAddr.cc\
- CheckButton.cc FileList.cc LocalFileList.cc ReplyAnalyze.cc UTFString.cc\
- ComboAddr.cc FTPFile.cc LoginInfo.cc SettingDialog.cc util.cc\
- Combo.cc FTPLog.cc LoginInfoHistory.cc ShowFileDialog.cc WaitDialog.cc\
- ConnectWindow.cc FTPNoteBook.cc main.cc ShowSiteDialog.cc Widget.cc\
- Container.cc FTPOption.cc MainDialog.cc SiteItem.cc\
- CSMWEntry.cc FTPSearch.cc Menu.cc SiteManageWindow.cc RegularDialog.cc
- imagedir=$(datadir)/pixmaps/myftp
- image_DATA= \
- dir.xpm down.xpm \
- error.xpm txt.xpm \
- up.xpm
- langdir=$(localedir)/zh_CN
- lang_DATA=myftp.mo
- EXTRA_DIST=$(image_DATA) $(lang_DATA)
- dist-hook:
- cp -R include $(distdir)
复制代码 |
|