Changeset 155
- Timestamp:
- 01/18/06 16:21:39 (17 years ago)
- Files:
-
- trunk/libfreebob/ChangeLog (modified) (1 diff)
- trunk/libfreebob/config.h.in (modified) (1 diff)
- trunk/libfreebob/configure.ac (modified) (4 diffs)
- trunk/libfreebob/INSTALL (modified) (10 diffs)
- trunk/libfreebob/src/libfreebobavc/ieee1394service.h (modified) (1 diff)
- trunk/libfreebob/src/libfreebobavc/Makefile.am (modified) (1 diff)
- trunk/libfreebob/src/Makefile.am (modified) (2 diffs)
- trunk/libfreebob/tests/Makefile.am (modified) (2 diffs)
- trunk/libfreebob/tests/test-extplugcmd.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/libfreebob/ChangeLog
r154 r155 1 2006-01-19 Daniel Wagner <wagi@monom.org> 2 3 * This patch cleans up the external dependency detection for 4 libfreebob. At present, building libfreebob is not possible 5 if libraries are outside the system include/library paths 6 (ie /usr/ and /usr/local). Use the results of pkg-config to 7 specify the correct paths to the automake system. 8 9 Becuase we're using pkgconfig, there's no real need to use 10 AC_CHECK_LIB or AC_CHECK_HEADERS. However, these could 11 potentially be reinstated, but need to be fixed to check in 12 the locations specified by pkgconfig. 13 14 * It is not currently possible to build freebob in a directory 15 outside the source dir (ie, builddir != srcdir). This patch 16 fixes the include paths to allow this. (it's handy for keeping 17 the source tree clean, or when building on multiple architectures 18 - I use a build dir of $srcdir/obj-$arch-$os) 19 20 Both patches are written by Jeremy Kerr <jk@ozlabs.org> 21 1 22 2006-01-12 Daniel Wagner <wagi@monom.org> 2 23 trunk/libfreebob/config.h.in
r125 r155 13 13 #undef HAVE_DLFCN_H 14 14 15 /* Wheter or not execinfo.h is present */16 #undef HAVE_EXECINFO_H17 18 15 /* Define to 1 if you have the <inttypes.h> header file. */ 19 16 #undef HAVE_INTTYPES_H 20 17 21 /* Define to 1 if you have the `avc1394' library (-lavc1394). */22 #undef HAVE_LIBAVC139423 24 18 /* Define to 1 if you have the `pthread' library (-lpthread). */ 25 19 #undef HAVE_LIBPTHREAD 26 27 /* Define to 1 if you have the `raw1394' library (-lraw1394). */28 #undef HAVE_LIBRAW139429 30 /* Define to 1 if you have the <libraw1394/raw1394.h> header file. */31 #undef HAVE_LIBRAW1394_RAW1394_H32 20 33 21 /* Define to 1 if you have the <memory.h> header file. */ trunk/libfreebob/configure.ac
r151 r155 83 83 AC_PROG_LIBTOOL 84 84 85 # Checks for typedefs, structures, and compiler characteristics. 86 AC_CANONICAL_HOST 87 AC_C_CONST 88 AC_C_VOLATILE 89 AC_TYPE_SIZE_T 90 85 91 # XXX Debian specific hack: 86 92 # by Marcelo Magallon <mmagallo@efis.ucr.ac.cr> … … 97 103 esac 98 104 99 AC_CHECK_LIB(raw1394, raw1394_new_handle, ,100 [AC_MSG_ERROR([Unable to link with libraw1394. Check that you have libraw1394 installed])])101 102 AC_CHECK_LIB(avc1394, avc1394_vcr_record, ,103 [AC_MSG_ERROR([Unable to link with libavc1394. Check that you have libavc1394 installed and that the version is 0.5.1 or newer])])104 105 105 AC_CHECK_LIB(pthread, pthread_create,, 106 106 [ … … 108 108 ]) 109 109 110 # Checks for header files. 111 AC_CHECK_HEADERS([libraw1394/raw1394.h], , 112 [AC_MSG_ERROR([raw1394.h not found install libraw1394-devel]) 113 ]) 114 115 AC_CHECK_HEADER([libavc1394/avc1394.h], , 116 [AC_MSG_ERROR([avc1394.h not found, install libavc1394-devel]) 117 ]) 118 AC_CHECK_HEADER(execinfo.h, [AC_DEFINE(HAVE_EXECINFO_H, 1, Wheter or not execinfo.h is present) 119 EXTRA_LIBS="$EXTRA_LIBS -rdynamic"]) 120 121 # Check for libXML2 110 # Check for dependencies 111 PKG_CHECK_MODULES(LIBRAW1394, libraw1394 >= 1.2.0) 112 PKG_CHECK_MODULES(LIBIEC61883, libiec61883 >= 1.1.0) 113 PKG_CHECK_MODULES(LIBAVC1394, libavc1394 >= 0.5.2) 114 PKG_CHECK_MODULES(ALSA, alsa >= 1.0.0) 122 115 PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= 2.6.0) 123 AC_SUBST([LIBXML_LIBS])124 AC_SUBST([LIBXML_CFLAGS])125 126 # Checks for typedefs, structures, and compiler characteristics.127 AC_CANONICAL_HOST128 AC_C_CONST129 AC_C_VOLATILE130 AC_TYPE_SIZE_T131 116 132 117 # Setup CFLAGS and CXXFLAGS … … 157 142 AC_ENABLE_SHARED(yes) 158 143 159 # Create links for header file.160 161 # Checks for library functions.162 PKG_CHECK_MODULES(LIBRAW1394, libraw1394 >= 1.2.0)163 PKG_CHECK_MODULES(LIBIEC61883, libiec61883 >= 1.1.0)164 165 PKG_CHECK_MODULES(ALSA, alsa >= 1.0.0)166 167 144 AC_SUBST([LIBSIGC_CFLAGS]) 168 145 AC_SUBST([LIBSIGC_LIBS]) 146 AC_SUBST([ALSA_CFLAGS]) 147 AC_SUBST([ALSA_LIBS]) 169 148 AC_SUBST([LIBRAW1394_CFLAGS]) 170 149 AC_SUBST([LIBRAW1394_LIBS]) 171 150 AC_SUBST([LIBIEC61883_CFLAGS]) 172 151 AC_SUBST([LIBIEC61883_LIBS]) 173 AC_SUBST([ ALSA_CFLAGS])174 AC_SUBST([ ALSA_LIBS])175 LIBAVC_LIBS="-lrom1394 -lavc1394" 176 AC_SUBST([LIB AVC_LIBS])152 AC_SUBST([LIBAVC1394_CFLAGS]) 153 AC_SUBST([LIBAVC1394_LIBS]) 154 AC_SUBST([LIBXML_LIBS]) 155 AC_SUBST([LIBXML_CFLAGS]) 177 156 178 157 AC_CONFIG_FILES([Makefile trunk/libfreebob/INSTALL
r138 r155 1 Installation Instructions 2 ************************* 3 4 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free 5 Software Foundation, Inc. 6 7 This file is free documentation; the Free Software Foundation gives 1 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software 2 Foundation, Inc. 3 4 This file is free documentation; the Free Software Foundation gives 8 5 unlimited permission to copy, distribute and modify it. 9 6 … … 11 8 ================== 12 9 13 These are generic installation instructions.10 These are generic installation instructions. 14 11 15 12 The `configure' shell script attempts to guess correct values for … … 71 68 ===================== 72 69 73 Some systems require unusual options for compilation or linking that the 74 `configure' script does not know about. Run `./configure --help' for 75 details on some of the pertinent environment variables.70 Some systems require unusual options for compilation or linking that 71 the `configure' script does not know about. Run `./configure --help' 72 for details on some of the pertinent environment variables. 76 73 77 74 You can give `configure' initial values for configuration parameters … … 86 83 ==================================== 87 84 88 You can compile the package for more than one kind of computer at the85 You can compile the package for more than one kind of computer at the 89 86 same time, by placing the object files for each architecture in their 90 87 own directory. To do this, you must use a version of `make' that … … 103 100 ================== 104 101 105 By default, `make install' will install the package's files in102 By default, `make install' will install the package's files in 106 103 `/usr/local/bin', `/usr/local/man', etc. You can specify an 107 104 installation prefix other than `/usr/local' by giving `configure' the 108 option `--prefix=P REFIX'.105 option `--prefix=PATH'. 109 106 110 107 You can specify separate installation prefixes for 111 108 architecture-specific files and architecture-independent files. If you 112 give `configure' the option `--exec-prefix=P REFIX', the package will113 use PREFIXas the prefix for installing programs and libraries.109 give `configure' the option `--exec-prefix=PATH', the package will use 110 PATH as the prefix for installing programs and libraries. 114 111 Documentation and other data files will still use the regular prefix. 115 112 116 113 In addition, if you use an unusual directory layout you can give 117 options like `--bindir= DIR' to specify different values for particular114 options like `--bindir=PATH' to specify different values for particular 118 115 kinds of files. Run `configure --help' for a list of the directories 119 116 you can set and what kinds of files go in them. … … 126 123 ================= 127 124 128 Some packages pay attention to `--enable-FEATURE' options to125 Some packages pay attention to `--enable-FEATURE' options to 129 126 `configure', where FEATURE indicates an optional part of the package. 130 127 They may also pay attention to `--with-PACKAGE' options, where PACKAGE … … 141 138 ========================== 142 139 143 There may be some features `configure' cannot figure out automatically, 144 but needs to determine by the type of machine the package will run on. 145 Usually, assuming the package is built to be run on the _same_ 146 architectures, `configure' can figure that out, but if it prints a 147 message saying it cannot guess the machine type, give it the140 There may be some features `configure' cannot figure out 141 automatically, but needs to determine by the type of machine the package 142 will run on. Usually, assuming the package is built to be run on the 143 _same_ architectures, `configure' can figure that out, but if it prints 144 a message saying it cannot guess the machine type, give it the 148 145 `--build=TYPE' option. TYPE can either be a short name for the system 149 146 type, such as `sun4', or a canonical name which has the form: … … 171 168 ================ 172 169 173 If you want to set default values for `configure' scripts to share, you 174 can create a site shell script called `config.site' that gives default 175 values for variables like `CC', `cache_file', and `prefix'.170 If you want to set default values for `configure' scripts to share, 171 you can create a site shell script called `config.site' that gives 172 default values for variables like `CC', `cache_file', and `prefix'. 176 173 `configure' looks for `PREFIX/share/config.site' if it exists, then 177 174 `PREFIX/etc/config.site' if it exists. Or, you can set the … … 182 179 ================== 183 180 184 Variables not defined in a site shell script can be set in the181 Variables not defined in a site shell script can be set in the 185 182 environment passed to `configure'. However, some packages may run 186 183 configure again during the build, and the customized values of these … … 190 187 ./configure CC=/usr/local2/bin/gcc 191 188 192 causes the specified `gcc' to be used as the C compiler (unless it is 193 overridden in the site shell script). Here is a another example: 194 195 /bin/bash ./configure CONFIG_SHELL=/bin/bash 196 197 Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent 198 configuration-related scripts to be executed by `/bin/bash'. 189 will cause the specified gcc to be used as the C compiler (unless it is 190 overridden in the site shell script). 199 191 200 192 `configure' Invocation 201 193 ====================== 202 194 203 `configure' recognizes the following options to control how it operates. 195 `configure' recognizes the following options to control how it 196 operates. 204 197 205 198 `--help' trunk/libfreebob/src/libfreebobavc/ieee1394service.h
r125 r155 22 22 #define FREEBOBIEEE1394SERVICE_H 23 23 24 #include " src/fbtypes.h"24 #include "fbtypes.h" 25 25 26 26 #include <libraw1394/raw1394.h> trunk/libfreebob/src/libfreebobavc/Makefile.am
r125 r155 44 44 ieee1394service.cpp 45 45 46 INCLUDES = $(LIBRAW1394_CFLAGS) $(LIBIEC61883_CFLAGS) 47 libfreebobavc_la_LIBADD = $(LIBRAW1394_LIBS) $(LIBIEC61883_LIBS) $(LIBAVC_LIBS) 46 INCLUDES = $(LIBRAW1394_CFLAGS) $(LIBIEC61883_CFLAGS) $(LIBAVC1394_CFLAGS) \ 47 -I$(top_srcdir)/src 48 libfreebobavc_la_LIBADD = $(LIBRAW1394_LIBS) $(LIBIEC61883_LIBS) \ 49 $(LIBAVC1394_LIBS) 48 50 49 51 MAINTAINERCLEANFILES = Makefile.in trunk/libfreebob/src/Makefile.am
r125 r155 18 18 SUBDIRS = debugmodule libfreebobavc 19 19 20 INCLUDES = $(LIBSIGC_CFLAGS) $(LIBRAW1394_CFLAGS) $(LIBIEC61883_CFLAGS) $(LIBAVC_CFLAGS) $(LIBLO_CFLAGS) $(LIBXML_CFLAGS) 20 INCLUDES = $(LIBSIGC_CFLAGS) $(LIBRAW1394_CFLAGS) $(LIBIEC61883_CFLAGS) \ 21 $(LIBAVC1394_CFLAGS) $(LIBLO_CFLAGS) $(LIBXML_CFLAGS) \ 22 -I$(top_srcdir) -I$(top_srcdir)/src 21 23 22 24 lib_LTLIBRARIES = libfreebob.la … … 39 41 fbtypes.h 40 42 41 libfreebob_la_LDFLAGS = -version-info $(LT_VERSION) -lpthread $(LIBSIGC_LIBS) $(LIBRAW1394_LIBS) $(LIBIEC61883_LIBS) $(LIBAVC_LIBS) $(LIBLO_LIBS) $(LIBXML_LIBS) debugmodule/libdebugmodule.la libfreebobavc/libfreebobavc.la -safe-temps 43 libfreebob_la_LDFLAGS = -version-info $(LT_VERSION) -lpthread $(LIBSIGC_LIBS) \ 44 $(LIBRAW1394_LIBS) $(LIBIEC61883_LIBS) $(LIBAVC1394_LIBS) \ 45 $(LIBLO_LIBS) $(LIBXML_LIBS) debugmodule/libdebugmodule.la \ 46 libfreebobavc/libfreebobavc.la -safe-temps 42 47 trunk/libfreebob/tests/Makefile.am
r125 r155 16 16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 17 17 18 AM_CFLAGS = -I@top_srcdir@libfreebob -I@top_builddir@/libfreebob $(LIBXML_CFLAGS) 18 INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src $(LIBXML_CFLAGS) \ 19 $(LIBAVC1394_CFLAGS) 19 20 20 21 noinst_PROGRAMS = test-freebob test-extplugcmd … … 22 23 23 24 test_freebob_SOURCES = test-freebob.c 24 test_freebob_LDADD = @top_builddir@src/libfreebob.la $(LIBXML_LIBS)25 test_freebob_LDADD = $(top_builddir)/src/libfreebob.la $(LIBXML_LIBS) 25 26 26 27 test_extplugcmd_SOURCES = test-extplugcmd.cpp 27 test_extplugcmd_LDADD = @top_builddir@src/libfreebobavc/libfreebobavc.la28 test_extplugcmd_LDADD = $(top_builddir)/src/libfreebobavc/libfreebobavc.la 28 29 29 30 #TESTS_ENVIRONMENT trunk/libfreebob/tests/test-extplugcmd.cpp
r142 r155 19 19 */ 20 20 21 #include " src/libfreebobavc/avc_extended_plug_info.h"22 #include " src/libfreebobavc/avc_plug_info.h"23 #include " src/libfreebobavc/serialize.h"24 #include " src/libfreebobavc/ieee1394service.h"21 #include "libfreebobavc/avc_extended_plug_info.h" 22 #include "libfreebobavc/avc_plug_info.h" 23 #include "libfreebobavc/serialize.h" 24 #include "libfreebobavc/ieee1394service.h" 25 25 26 26 #include <argp.h>