link_LevelDB.xcpjh


//////////////////// LevelDB //////////////////////
/*
Instructions for Windows

1)  Download this branch of LevelDB for Windows
        https://github.com/ren85/leveldb-windows  

    Copy source code into C:\developer\_root_\ThirdParty.Ceda\leveldb-windows-master

2)  Run LevelDB.sln and allow upgrade from VS2013 to VS2015

3)  Build configurations:       release|x64
                                release|Win32

4)  This creates folders 
        C:\developer\_root_\ThirdParty.Ceda\leveldb-windows-master\x64\Release
        C:\developer\_root_\ThirdParty.Ceda\leveldb-windows-master\x86\Release

Problem: Get linker errors
    error LNK2001: unresolved external symbol "public: __cdecl leveldb::Options::Options(void)" (??0Options@leveldb@@QEAA@XZ)
    error LNK2001: unresolved external symbol "public: static class leveldb::Status __cdecl leveldb::DB::Open(struct leveldb::Options const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class leveldb::DB * *)" (?Open@DB@leveldb@@SA?AVStatus@2@AEBUOptions@2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAPEAV12@@Z)
    error LNK2001: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl leveldb::Status::ToString(void)const " (?ToString@Status@leveldb@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
*/

@if (IsWindowsPlatform)
{    
    $LEVEL_DB = "C:/developer/_root_/ThirdParty.Ceda/leveldb-windows-master"

    +cpp
    {
        /I "$(LEVEL_DB)/include"
        /D "CEDA_USING_LEVEL_DB"
    }
    +link("Win32")
    {
        /LIBPATH:"$(LEVEL_DB)/x86/Release"
        "LevelDB32.lib"
    }
    +link("x64")
    {
        ///LIBPATH:"$(LEVEL_DB)/x64/Release"
        "$(LEVEL_DB)/x64/Release/LevelDB64.lib"
        //"$(LEVEL_DB)/x64/Release/LevelDB64.iobj"
    }
}