[Lognorm] [libee] parallel make
Rainer Gerhards
rgerhards at hq.adiscon.com
Wed Apr 17 15:40:10 CEST 2013
On Wed, 2013-04-17 at 09:27 -0400, Yao Zhao wrote:
> On 13-04-17 02:37 AM, Rainer Gerhards wrote:
> > On Tue, 2013-04-16 at 15:59 -0400, Yao Zhao wrote:
> >> On 13-04-11 03:08 PM, Rainer Gerhards wrote:
> >>> I haven't seen the patch on quick glimpse, but i am definitely
> >>> interested in adding it. If I have not done by Monday, please ping me.
> >>>
> >>>
> >> Hi Rainer,
> >> Just ping you!
> >>
> > Thx - I have been unexpectedly busy most of the past two days. It's now
> > merged :-).
> Thanks Rainer.
>
> Did you apply the patch for liblognorm too?
>
did I overlook that one? I saw one patch attached to the original
message. Anyhow, I'll merge soon. Can you mail me the file?
Rainer
> $cat liblognorm/liblognorm-parallel-make.patch
> fix parallel compiling problem
>
> without specifying lognormalizer_DEPENDENCIES = liblognorm.la,
> lognormalizer won't link successfully with liblognorm.la as
> liblognorm may not be generated yet.
>
> Upstream-Status: Pending
>
> Signed-off-by: Yao Zhao <yao.zhao at windriver.com>
> ---
> diff --git a/src/Makefile.am b/src/Makefile.am
> index 8c15217..60f48c5 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -10,6 +10,7 @@ bin_PROGRAMS = lognormalizer
> lognormalizer_SOURCES = lognormalizer.c
> lognormalizer_CPPFLAGS = -I$(top_srcdir) $(LIBEE_CFLAGS)
> $(LIBESTR_CFLAGS)
> lognormalizer_LDADD = $(LIBEE_LIBS) $(LIBLOGNORM_LIBS) $(LIBESTR_LIBS)
> +lognormalizer_DEPENDENCIES = liblognorm.la
>
> lib_LTLIBRARIES = liblognorm.la
>
> thanks,
> yao
> > Rainer
> >> thanks,
> >> yao
> >>> Sent from phone, thus brief.
> >>>
> >>>
> >>>
> >>> -------- Ursprüngliche Nachricht --------
> >>> Von: Yao Zhao <yao.zhao at windriver.com>
> >>> Datum: 11.04.2013 20:16 (GMT+01:00)
> >>> An: David Lang <david at lang.hm>
> >>> Cc: lognorm <lognorm at lists.adiscon.com>
> >>> Betreff: Re: [Lognorm] [libee] parallel make
> >>>
> >>>
> >>> On 13-04-11 02:13 PM, David Lang wrote:
> >>>> don't do a parallel make, do a normal make (no -j), do you still have
> >>>> the problem?
> >>>>
> >>> No.
> >>>
> >>> The patch is not acceptable?
> >>>
> >>> thanks,
> >>> yao
> >>>> David Lang
> >>>>
> >>>> On Thu, 11 Apr 2013, Yao Zhao wrote:
> >>>>
> >>>>> Date: Thu, 11 Apr 2013 14:06:51 -0400
> >>>>> From: Yao Zhao <yao.zhao at windriver.com>
> >>>>> To: David Lang <david at lang.hm>
> >>>>> Cc: lognorm <lognorm at lists.adiscon.com>
> >>>>> Subject: Re: [Lognorm] [libee] parallel make
> >>>>>
> >>>>> On 13-04-11 02:03 PM, David Lang wrote:
> >>>>>> do you continue to have the problem if you don't do a parallel make?
> >>>>>>
> >>>>> I don't have problem without parallel make as I indicated in original
> >>>>> email below.
> >>>>>> If I am reading it correctly, you are failing at the linking stage,
> >>>>>> after everything should be compiled. This could be a error in the
> >>>>>> dependancy mapping.
> >>>>>>
> >>>>> Yes, it happens at link as the libee.la is not ready yet because of
> >>>>> parallel making.
> >>>>> and that is why I add a libee_convert_DEPENDENCIES=libee.la
> >>>>> I don't quite understand why the automake didn't get a correct
> >>>>> _DEPENDENCIES automatically.
> >>>>>
> >>>>> Do you have a better way?
> >>>>>
> >>>>> yao
> >>>>>> David Lang
> >>>>>>
> >>>>>> On Thu, 11 Apr 2013, Yao Zhao wrote:
> >>>>>>
> >>>>>>> Date: Thu, 11 Apr 2013 10:22:51 -0400
> >>>>>>> From: Yao Zhao <yao.zhao at windriver.com>
> >>>>>>> Reply-To: lognorm <lognorm at lists.adiscon.com>
> >>>>>>> To: lognorm at lists.adiscon.com, Yao Zhao <yao.zhao at windriver.com>
> >>>>>>> Subject: [Lognorm] [libee] parallel make
> >>>>>>>
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> I got problem with libee's parallel making:
> >>>>>>>
> >>>>>>> yzhao2 at yzhao2-OptiPlex-990:~/src/libee$ ./configure
> >>>>>>> --libdir=/usr/local/lib --includedir=/home/yzhao2/src/include
> >>>>>>> LIBESTR_CFLAGS=-I/home/yzhao2/src/include
> >>>>>>> LIBESTR_LIBS='-L/usr/local/lib -lestr'
> >>>>>>> checking for a BSD-compatible install... /usr/bin/install -c
> >>>>>>> checking whether build environment is sane... yes
> >>>>>>> checking for a thread-safe mkdir -p... /bin/mkdir -p
> >>>>>>> checking for gawk... gawk
> >>>>>>> checking whether make sets $(MAKE)... yes
> >>>>>>> checking whether make supports nested variables... yes
> >>>>>>> checking for gcc... gcc
> >>>>>>> checking whether the C compiler works... yes
> >>>>>>> checking for C compiler default output file name... a.out
> >>>>>>> checking for suffix of executables...
> >>>>>>> checking whether we are cross compiling... no
> >>>>>>> checking for suffix of object files... o
> >>>>>>> checking whether we are using the GNU C compiler... yes
> >>>>>>> checking whether gcc accepts -g... yes
> >>>>>>> checking for gcc option to accept ISO C89... none needed
> >>>>>>> checking for style of include used by make... GNU
> >>>>>>> checking dependency style of gcc... gcc3
> >>>>>>> checking whether gcc and cc understand -c and -o together... yes
> >>>>>>> checking build system type... x86_64-unknown-linux-gnu
> >>>>>>> checking host system type... x86_64-unknown-linux-gnu
> >>>>>>> checking how to print strings... printf
> >>>>>>> checking for a sed that does not truncate output... /bin/sed
> >>>>>>> checking for grep that handles long lines and -e... /bin/grep
> >>>>>>> checking for egrep... /bin/grep -E
> >>>>>>> checking for fgrep... /bin/grep -F
> >>>>>>> checking for ld used by gcc... /usr/bin/ld
> >>>>>>> checking if the linker (/usr/bin/ld) is GNU ld... yes
> >>>>>>> checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
> >>>>>>> checking the name lister (/usr/bin/nm -B) interface... BSD nm
> >>>>>>> checking whether ln -s works... yes
> >>>>>>> checking the maximum length of command line arguments... 1572864
> >>>>>>> checking whether the shell understands some XSI constructs... yes
> >>>>>>> checking whether the shell understands "+="... yes
> >>>>>>> checking how to convert x86_64-unknown-linux-gnu file names to
> >>>>>>> x86_64-unknown-linux-gnu format... func_convert_file_noop
> >>>>>>> checking how to convert x86_64-unknown-linux-gnu file names to
> >>>>>>> toolchain format... func_convert_file_noop
> >>>>>>> checking for /usr/bin/ld option to reload object files... -r
> >>>>>>> checking for objdump... objdump
> >>>>>>> checking how to recognize dependent libraries... pass_all
> >>>>>>> checking for dlltool... no
> >>>>>>> checking how to associate runtime and link libraries... printf %s\n
> >>>>>>> checking for ar... ar
> >>>>>>> checking for archiver @FILE support... @
> >>>>>>> checking for strip... strip
> >>>>>>> checking for ranlib... ranlib
> >>>>>>> checking command to parse /usr/bin/nm -B output from gcc object... ok
> >>>>>>> checking for sysroot... no
> >>>>>>> checking for mt... mt
> >>>>>>> checking if mt is a manifest tool... no
> >>>>>>> checking how to run the C preprocessor... gcc -E
> >>>>>>> checking for ANSI C header files... yes
> >>>>>>> checking for sys/types.h... yes
> >>>>>>> checking for sys/stat.h... yes
> >>>>>>> checking for stdlib.h... yes
> >>>>>>> checking for string.h... yes
> >>>>>>> checking for memory.h... yes
> >>>>>>> checking for strings.h... yes
> >>>>>>> checking for inttypes.h... yes
> >>>>>>> checking for stdint.h... yes
> >>>>>>> checking for unistd.h... yes
> >>>>>>> checking for dlfcn.h... yes
> >>>>>>> checking for objdir... .libs
> >>>>>>> checking if gcc supports -fno-rtti -fno-exceptions... no
> >>>>>>> checking for gcc option to produce PIC... -fPIC -DPIC
> >>>>>>> checking if gcc PIC flag -fPIC -DPIC works... yes
> >>>>>>> checking if gcc static flag -static works... yes
> >>>>>>> checking if gcc supports -c -o file.o... yes
> >>>>>>> checking if gcc supports -c -o file.o... (cached) yes
> >>>>>>> checking whether the gcc linker (/usr/bin/ld -m elf_x86_64)
> >>>>>>> supports shared libraries... yes
> >>>>>>> checking whether -lc should be explicitly linked in... no
> >>>>>>> checking dynamic linker characteristics... GNU/Linux ld.so
> >>>>>>> checking how to hardcode library paths into programs... immediate
> >>>>>>> checking whether stripping libraries is possible... yes
> >>>>>>> checking if libtool supports shared libraries... yes
> >>>>>>> checking whether to build shared libraries... yes
> >>>>>>> checking whether to build static libraries... yes
> >>>>>>> checking for library containing pow... -lm
> >>>>>>> checking for stdlib.h... (cached) yes
> >>>>>>> checking for GNU libc compatible malloc... yes
> >>>>>>> checking for pkg-config... /usr/bin/pkg-config
> >>>>>>> checking pkg-config is at least version 0.9.0... yes
> >>>>>>> checking for LIBESTR... yes
> >>>>>>> configure: creating ./config.status
> >>>>>>> config.status: creating Makefile
> >>>>>>> config.status: creating libee.pc
> >>>>>>> config.status: creating src/Makefile
> >>>>>>> config.status: creating include/Makefile
> >>>>>>> config.status: creating include/libee/Makefile
> >>>>>>> config.status: creating tests/Makefile
> >>>>>>> config.status: creating config.h
> >>>>>>> config.status: executing depfiles commands
> >>>>>>> config.status: executing libtool commands
> >>>>>>> *****************************************************
> >>>>>>> libee will be compiled with the following settings:
> >>>>>>>
> >>>>>>> Debug mode enabled: no
> >>>>>>> Testbench enabled: yes
> >>>>>>> yzhao2 at yzhao2-OptiPlex-990:~/src/libee$ make -j 6
> >>>>>>> make all-recursive
> >>>>>>> make[1]: Entering directory `/home/yzhao2/src/libee'
> >>>>>>> Making all in tests
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/tests'
> >>>>>>> make[2]: Nothing to be done for `all'.
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/tests'
> >>>>>>> Making all in include
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/include'
> >>>>>>> Making all in libee
> >>>>>>> make[3]: Entering directory `/home/yzhao2/src/libee/include/libee'
> >>>>>>> make[3]: Nothing to be done for `all'.
> >>>>>>> make[3]: Leaving directory `/home/yzhao2/src/libee/include/libee'
> >>>>>>> make[3]: Entering directory `/home/yzhao2/src/libee/include'
> >>>>>>> make[3]: Nothing to be done for `all-am'.
> >>>>>>> make[3]: Leaving directory `/home/yzhao2/src/libee/include'
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/include'
> >>>>>>> Making all in src
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/src'
> >>>>>>> CC libee_la-cjson.lo
> >>>>>>> CC libee_la-ctx.lo
> >>>>>>> CC libee_la-tag.lo
> >>>>>>> CC libee_la-event.lo
> >>>>>>> CC libee_la-value.lo
> >>>>>>> CC libee_la-json_event.lo
> >>>>>>> value.c: In function 'ee_newValue':
> >>>>>>> value.c:37:20: warning: unused parameter 'ctx' [-Wunused-parameter]
> >>>>>>> CC libee_la-tagbucket.lo
> >>>>>>> CC libee_la-field.lo
> >>>>>>> CC libee_la-fieldbucket.lo
> >>>>>>> CC libee_la-primitivetype.lo
> >>>>>>> CC libee_la-int_dec.lo
> >>>>>>> primitivetype.c: In function 'ee_parseRFC5424Date':
> >>>>>>> primitivetype.c:136:7: warning: variable 'OffsetMode' set but not
> >>>>>>> used [-Wunused-but-set-variable]
> >>>>>>> primitivetype.c:135:6: warning: variable 'secfracPrecision' set but
> >>>>>>> not used [-Wunused-but-set-variable]
> >>>>>>> primitivetype.c:134:6: warning: variable 'secfrac' set but not used
> >>>>>>> [-Wunused-but-set-variable]
> >>>>>>> primitivetype.c:128:6: warning: variable 'year' set but not used
> >>>>>>> [-Wunused-but-set-variable]
> >>>>>>> primitivetype.c: In function 'ee_parseRFC3164Date':
> >>>>>>> primitivetype.c:261:6: warning: variable 'month' set but not used
> >>>>>>> [-Wunused-but-set-variable]
> >>>>>>> primitivetype.c: In function 'ee_parseNumber':
> >>>>>>> primitivetype.c:497:12: warning: variable 'n' set but not used
> >>>>>>> [-Wunused-but-set-variable]
> >>>>>>> CC libee_la-json_dec.lo
> >>>>>>> CC libee_la-apache_dec.lo
> >>>>>>> CC libee_la-syslog_enc.lo
> >>>>>>> CC libee_la-json_enc.lo
> >>>>>>> apache_dec.c: In function 'ee_newApache':
> >>>>>>> apache_dec.c:37:21: warning: unused parameter 'ctx'
> >>>>>>> [-Wunused-parameter]
> >>>>>>> apache_dec.c: In function 'ee_apacheAddName':
> >>>>>>> apache_dec.c:71:25: warning: unused parameter 'ctx'
> >>>>>>> [-Wunused-parameter]
> >>>>>>> apache_dec.c: In function 'processLn':
> >>>>>>> apache_dec.c:205:19: warning: unused variable 'value'
> >>>>>>> [-Wunused-variable]
> >>>>>>> apache_dec.c: In function 'ee_apacheDec':
> >>>>>>> apache_dec.c:212:3: warning: 'r' may be used uninitialized in this
> >>>>>>> function [-Wuninitialized]
> >>>>>>> apache_dec.c:143:6: note: 'r' was declared here
> >>>>>>> CC libee_la-csv_enc.lo
> >>>>>>> csv_enc.c: In function 'ee_AddName':
> >>>>>>> csv_enc.c:66:19: warning: unused parameter 'ctx' [-Wunused-parameter]
> >>>>>>> CC libee_la-xml_enc.lo
> >>>>>>> CC libee_convert-convert.o
> >>>>>>> xml_enc.c: In function 'ee_addValue_XML':
> >>>>>>> xml_enc.c:60:6: warning: unused variable 'j' [-Wunused-variable]
> >>>>>>> xml_enc.c:59:7: warning: unused variable 'numbuf' [-Wunused-variable]
> >>>>>>> xml_enc.c: At top level:
> >>>>>>> xml_enc.c:40:13: warning: 'hexdigit' defined but not used
> >>>>>>> [-Wunused-variable]
> >>>>>>> CCLD libee-convert
> >>>>>>> libtool: link: cannot find the library `../src/libee.la' or
> >>>>>>> unhandled argument `../src/libee.la'
> >>>>>>> make[2]: *** [libee-convert] Error 1
> >>>>>>> make[2]: *** Waiting for unfinished jobs....
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/src'
> >>>>>>> make[1]: *** [all-recursive] Error 1
> >>>>>>> make[1]: Leaving directory `/home/yzhao2/src/libee'
> >>>>>>> make: *** [all] Error 2
> >>>>>>> yzhao2 at yzhao2-OptiPlex-990:~/src/libee$ make
> >>>>>>> make all-recursive
> >>>>>>> make[1]: Entering directory `/home/yzhao2/src/libee'
> >>>>>>> Making all in tests
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/tests'
> >>>>>>> make[2]: Nothing to be done for `all'.
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/tests'
> >>>>>>> Making all in include
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/include'
> >>>>>>> Making all in libee
> >>>>>>> make[3]: Entering directory `/home/yzhao2/src/libee/include/libee'
> >>>>>>> make[3]: Nothing to be done for `all'.
> >>>>>>> make[3]: Leaving directory `/home/yzhao2/src/libee/include/libee'
> >>>>>>> make[3]: Entering directory `/home/yzhao2/src/libee/include'
> >>>>>>> make[3]: Nothing to be done for `all-am'.
> >>>>>>> make[3]: Leaving directory `/home/yzhao2/src/libee/include'
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/include'
> >>>>>>> Making all in src
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee/src'
> >>>>>>> CCLD libee.la
> >>>>>>> CCLD libee-convert
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee/src'
> >>>>>>> make[2]: Entering directory `/home/yzhao2/src/libee'
> >>>>>>> make[2]: Leaving directory `/home/yzhao2/src/libee'
> >>>>>>> make[1]: Leaving directory `/home/yzhao2/src/libee'
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> reading src/Makefile generated:
> >>>>>>> am__DEPENDENCIES_1 =
> >>>>>>> libee_la_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
> >>>>>>> ...
> >>>>>>> libee_convert_OBJECTS = $(am_libee_convert_OBJECTS)
> >>>>>>> libee_convert_DEPENDENCIES = $(am__DEPENDENCIES_1) \
> >>>>>>> $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
> >>>>>>>
> >>>>>>> so libee_convert_DEPENDENCIES is empty, not sure why _DEPENDENCIES
> >>>>>>> are not
> >>>>>>> generated from its LDADD
> >>>>>>>
> >>>>>>> but add a
> >>>>>>> libee_convert_DEPENDENCIES= libee.la in src/Makefile.am fixed it.
> >>>>>>>
> >>>>>>> not all automake supports the EXTRA_...DEPDENDENCIES so didn't
> >>>>>>> change it.
> >>>>>>>
> >>>>>>> yao
> >>>>>>>
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>>
> >>>>>> Lognorm mailing list
> >>>>>>
> >>>>>> Lognorm at lists.adiscon.com
> >>>>>>
> >>>>>> http://lists.adiscon.net/mailman/listinfo/lognorm
> >>>>>>
> >>>>>
> >>> _______________________________________________
> >>> Lognorm mailing list
> >>> Lognorm at lists.adiscon.com
> >>> http://lists.adiscon.net/mailman/listinfo/lognorm
> >>>
> >>>
> >>> _______________________________________________
> >>> Lognorm mailing list
> >>> Lognorm at lists.adiscon.com
> >>> http://lists.adiscon.net/mailman/listinfo/lognorm
>
More information about the Lognorm
mailing list