[haiku-commits] Re: r40858 - in haiku/trunk: headers/build/os/storage headers/os/storage src/build/libbe/storage src/build/libbe/storage/mime src/kits/storage ...

  • From: "Jonas Sundström" <jonas@xxxxxxxxxxx>
  • To: "haiku-commits@xxxxxxxxxxxxx" <haiku-commits@xxxxxxxxxxxxx>
  • Date: Tue, 08 Mar 2011 18:41:09 +0100

Ingo Weinhold <ingo_weinhold@xxxxxx> wrote:
> 
> On 2011-03-07 at 16:14:47 [+0100], jonas@xxxxxxxxxxx wrote:
> > Author: kirilla
> > Date: 2011-03-07 16:14:46 +0100 (Mon, 07 Mar 2011)
> > New Revision: 40858
> > Changeset: http://dev.haiku-os.org/changeset/40858
> > 
> > Modified:
> >    haiku/trunk/headers/build/os/storage/AppFileInfo.h
> >    haiku/trunk/headers/os/storage/AppFileInfo.h
> >    haiku/trunk/src/build/libbe/storage/AppFileInfo.cpp
> >    haiku/trunk/src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp
> >    haiku/trunk/src/kits/storage/AppFileInfo.cpp
> >    haiku/trunk/src/servers/registrar/mime/UpdateMimeInfoThread.cpp
> > Log:
> > Add app filename localization catalog entry support to BAppFileInfo, 
> > registrar and mimeset. Need help to understand why the build-version of 
> > UpdateMimeInfoThread.cpp does not compile with the added code, currently 
> > commented out.
> 
> What does the compiler say?

C++ generated/objects/haiku_host/x86/release/tools/mimeset.o  
C++ generated/objects/haiku_host/x86/release/tools/Mime.o  
C++ generated/objects/haiku_host/x86/release/tools/database_support.o  
C++ generated/objects/haiku_host/x86/release/tools/UpdateMimeInfoThread.o  
/Source/haiku/haiku/src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp:
 In method `status_t BPrivate::Storage::Mime::UpdateMimeInfoThread::
        DoMimeUpdate(const entry_ref *, bool *)': 

/Source/haiku/haiku/src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp:277:
 no matching function for call to `BAppFileInfo::GetCatalogEntry (char[720])' 

/Source/haiku/haiku/src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp:279:
 no matching function for call to `BAppFileInfo::SetCatalogEntry (char[720])' 

/Source/haiku/haiku/src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp:281:
 no matching function for call to `BAppFileInfo::SetCatalogEntry (NULL)' 
 
gcc -c "src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp" -O2 -Wall
 -Wno-trigraphs -Wno-ctor-dtor-privacy -Woverloaded-virtual -Wpointer-arith
 -Wcast-align -Wsign-compare -Wno-multichar
 -include headers/build/HaikuBuildCompatibility.h 
-D_ZETA_USING_DEPRECATED_API_=1
 -D_ZETA_TS_FIND_DIR_=1 -DARCH_x86 -D_NO_INLINE_ASM -DCOMPILE_FOR_R5 
 -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAIKU_HOST_PLATFORM_HAIKU
 -Ibuild/user_config_headers -Ibuild/config_headers -Isrc/tools
 -Igenerated/objects/common/tools 
-Igenerated/objects/haiku_host/x86/common/tools
 -Igenerated/objects/haiku/x86/common/tools -Isrc/bin -I- 
 -Iheaders/build/private/app -Iheaders/build/private/storage
 -Iheaders/build/host/haiku_host
 -o "generated/objects/haiku_host/x86/release/tools/UpdateMimeInfoThread.o" ; 
 
...failed C++ 
generated/objects/haiku_host/x86/release/tools/UpdateMimeInfoThread.o ... 
...skipped <build>mimeset for lack of <src!tools>UpdateMimeInfoThread.o... 

It's weird. The two versions of BAppFileInfo are essentially identical.
Both have the Set/GetCatalogEntry() functions.

headers/os/storage/AppFileInfo.h
src/kits/storage/AppFileInfo.cpp

headers/build/os/storage/AppFileInfo.h
src/build/libbe/storage/AppFileInfo.cpp

Registrar works:
src/servers/registrar/mime/UpdateMimeInfoThread.cpp

The build version is the problematic one:
src/build/libbe/storage/mime/UpdateMimeInfoThread.cpp

It does already make use of other BAppFileInfo methods, without error,
so one would think the header gets included from somewhere, but no matter
which of the two versions actually gets included it should have the functions
it thinks are missing.

One thing that looks curious to me is the lack of 
 -Iheaders/build/os/storage
(e.g. headers/build/os/storage/AppFileInfo.h)

/Jonas.


Other related posts: