Hullo List,

In tracking down another issue, I've run across a number of object files that we appear to build but not use. Example:

g++ -o sal/unxlngx6/obj/bootstrap.o [...]

A few lines later in the build, we build this, with a few extra g++ arguments. This is the version that actually gets used elsewhere in the build:

g++ -o sal/unxlngx6/slo/bootstrap.o [...] \
 -fpic \
 -DSHAREDLIB \
 -D_DLL_

Question: what's the point of building the first one (if any)?

If it's not supposed to be built, I'll leave "fixing" the build system to some other interested party as I'm not particularly keen on diving in when I'm thick into another problem. For reference, based on my build.log and the attached (inefficient) shell script, I believe this list of 112 object files are all good _candidates_ for the "built but unused" category

Thanks,

Kevin
# This list of files suggests *candidates* of unnecessary compilation.  I
# don't know for sure that they aren't used after compilation, but I suspect
# so given my build.log and this rather innefficient shell/perl script combo.

$ cat get_files_of_interest.pl
#!/usr/bin/env perl

use strict;
use warnings;

while ( <STDIN> ) {  # store each input line into $_
>--if ( s/.* -o (\S+).*/$1/ ) { # if a substition made, then
>-->--# $_ was a compile line with "-o ...." in it.  i.e.
>-->--# we're looking for the object file lines

>-->--# Now, only print the line if the output of above was
>-->--# at least two directories deep.  i.e. if it at least
>-->--# has a form like dir/dir/file.so or dir/dir/file.o

>-->--# this will not match lines like "-o dir/file.o" or
>-->--# "-o file.o"
>-->--print if s|.*/(\w+/\w+/\w+\.s?o)|$1|;
>--}
}

$ for i in $(./get_files_of_interest.pl < build.log | sort -u); do
COUNT=$(\grep -c "$i" build.log)
[[ "1" == "$COUNT" ]] && find . -path "*/$i"
done | sort > unused_object_files.txt

Begin files:
========================================
./bean/unxlngx6/slo/officebean_version.o
./bridges/unxlngx6/slo/java_uno_version.o
./connectivity/unxlngx6/slo/hsqldb_version.o
./connectivity/unxlngx6/slo/mozab_dflt_version.o
./connectivity/unxlngx6/slo/mozabdrv_dflt_version.o
./desktop/unxlngx6/obj/copyright_ascii_ooo.o
./desktop/unxlngx6/obj/copyright_ascii_sun.o
./desktop/unxlngx6/slo/dp_activepackages.o
./desktop/unxlngx6/slo/dp_commandenvironments.o
./desktop/unxlngx6/slo/dp_configurationbackenddb.o
./desktop/unxlngx6/slo/dp_configuration.o
./desktop/unxlngx6/slo/dp_executablebackenddb.o
./desktop/unxlngx6/slo/dp_executable.o
./desktop/unxlngx6/slo/dp_extbackenddb.o
./desktop/unxlngx6/slo/dp_extensionmanager.o
./desktop/unxlngx6/slo/dp_informationprovider.o
./desktop/unxlngx6/slo/dp_managerfac.o
./desktop/unxlngx6/slo/dp_manager.o
./desktop/unxlngx6/slo/dp_package.o
./desktop/unxlngx6/slo/dp_properties.o
./javaunohelper/unxlngx6/slo/juh_version.o
./javaunohelper/unxlngx6/slo/juhx_version.o
./jurt/unxlngx6/slo/jpipe_version.o
./sal/unxlngx6/obj/alloc_arena.o
./sal/unxlngx6/obj/alloc_cache.o
./sal/unxlngx6/obj/alloc_fini.o
./sal/unxlngx6/obj/alloc_global.o
./sal/unxlngx6/obj/bootstrap.o
./sal/unxlngx6/obj/byteseq.o
./sal/unxlngx6/obj/cipher.o
./sal/unxlngx6/obj/cmdargs.o
./sal/unxlngx6/obj/conditn.o
./sal/unxlngx6/obj/context.o
./sal/unxlngx6/obj/convertbig5hkscs.o
./sal/unxlngx6/obj/converter.o
./sal/unxlngx6/obj/converteuctw.o
./sal/unxlngx6/obj/convertgb18030.o
./sal/unxlngx6/obj/convertiso2022cn.o
./sal/unxlngx6/obj/convertiso2022jp.o
./sal/unxlngx6/obj/convertiso2022kr.o
./sal/unxlngx6/obj/convertsinglebytetobmpunicode.o
./sal/unxlngx6/obj/crc.o
./sal/unxlngx6/obj/debugbase.o
./sal/unxlngx6/obj/diagnose.o
./sal/unxlngx6/obj/digest.o
./sal/unxlngx6/obj/file_error_transl.o
./sal/unxlngx6/obj/file_misc.o
./sal/unxlngx6/obj/file_path_helper.o
./sal/unxlngx6/obj/filepath.o
./sal/unxlngx6/obj/file_stat.o
./sal/unxlngx6/obj/file_url.o
./sal/unxlngx6/obj/file_volume.o
./sal/unxlngx6/obj/hash.o
./sal/unxlngx6/obj/interlck.o
./sal/unxlngx6/obj/loadmodulerelative.o
./sal/unxlngx6/obj/locale.o
./sal/unxlngx6/obj/logfile.o
./sal/unxlngx6/obj/math.o
./sal/unxlngx6/obj/memory.o
./sal/unxlngx6/obj/module.o
./sal/unxlngx6/obj/mutex.o
./sal/unxlngx6/obj/nlsupport.o
./sal/unxlngx6/obj/pipe.o
./sal/unxlngx6/obj/printtrace.o
./sal/unxlngx6/obj/process_impl.o
./sal/unxlngx6/obj/process.o
./sal/unxlngx6/obj/profile.o
./sal/unxlngx6/obj/random.o
./sal/unxlngx6/obj/readwrite_helper.o
./sal/unxlngx6/obj/rtl_process.o
./sal/unxlngx6/obj/salinit.o
./sal/unxlngx6/obj/security.o
./sal/unxlngx6/obj/semaphor.o
./sal/unxlngx6/obj/signal.o
./sal/unxlngx6/obj/socket.o
./sal/unxlngx6/obj/strbuf.o
./sal/unxlngx6/obj/strimp.o
./sal/unxlngx6/obj/string.o
./sal/unxlngx6/obj/system.o
./sal/unxlngx6/obj/tables.o
./sal/unxlngx6/obj/tcvtbyte.o
./sal/unxlngx6/obj/tcvtmb.o
./sal/unxlngx6/obj/tcvtutf7.o
./sal/unxlngx6/obj/tcvtutf8.o
./sal/unxlngx6/obj/tempfile.o
./sal/unxlngx6/obj/tenchelp.o
./sal/unxlngx6/obj/tencinfo.o
./sal/unxlngx6/obj/textcvt.o
./sal/unxlngx6/obj/textenc.o
./sal/unxlngx6/obj/thread.o
./sal/unxlngx6/obj/time.o
./sal/unxlngx6/obj/tres.o
./sal/unxlngx6/obj/unichars.o
./sal/unxlngx6/obj/unload.o
./sal/unxlngx6/obj/uri.o
./sal/unxlngx6/obj/ustrbuf.o
./sal/unxlngx6/obj/ustring.o
./sal/unxlngx6/obj/utility.o
./sal/unxlngx6/obj/util.o
./sal/unxlngx6/obj/uuid.o
./sal/unxlngx6/obj/uunxapi.o
./setup_native/unxlngx6/slo/ulfconv.o
./soltools/unxlngx6/obj/gen_info.o
./soltools/unxlngx6/obj/gi_list.o
./soltools/unxlngx6/obj/gi_parse.o
./soltools/unxlngx6/obj/simstr.o
./soltools/unxlngx6/obj/st_gilrw.o
./soltools/unxlngx6/slo/gen_info.o
./soltools/unxlngx6/slo/gi_list.o
./soltools/unxlngx6/slo/gi_parse.o
./soltools/unxlngx6/slo/simstr.o
./soltools/unxlngx6/slo/st_gilrw.o
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to