<div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
target_link_libraries(ktoblzcheck PRIVATE stdc++ ${LIBS} </blockquote><div><br></div><div>What does 'PRIVATE' do here? The docs say " Libraries and targets following <code><span>PRIVATE</span></code>
are linked to, but are not made part of the link interface."</div><div>which I didn't fully understand.</div><div><br></div><div>Thanks.</div><div>Prasun<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 12 Aug 2020 at 13:26, Ralf Habacker <<a href="mailto:ralf.habacker@freenet.de" target="_blank">ralf.habacker@freenet.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Am 08.08.20 um 05:28 schrieb Prasun Kumar:<br>
> Hi mentors,<br>
> <br>
> The rest of the work from the second phase has been completed. The databases<br>
> for the additional countries have been incorporated in the library. <br>
> Please take a look<br>
> and suggest any necessary changes.<br>
> <br>
> Commits: <br>
> <a href="https://sourceforge.net/u/prasun/ktoblzcheck-gsoc2020/commit_browser" rel="noreferrer" target="_blank">https://sourceforge.net/u/prasun/ktoblzcheck-gsoc2020/commit_browser</a><br>
<br>
I saw that the executables ktoblzcheck and benchmark are also depending <br>
on sqlite library, where it should only be used by the library.<br>
<br>
In src/lib/CMakeLists.txt you can check this by using the following line<br>
<br>
add_library(ktoblzcheck ${MODE} ${ktoblzcheck_LIB_SRCS})<br>
target_link_libraries(ktoblzcheck PRIVATE stdc++ ${LIBS} <br>
${SQLite3_LIBRARIES})<br>
<br>
and remove any other usage of ${SQlite3_LIBRARIES}<br>
<br>
<br>
The remaining references in main() function of ktoblzcheck should be <br>
replaced by a method from class AccountNumberCheck.<br>
<br>
<br>
             sqlite3 *db;<br>
             char* errorMsg;<br>
             int retcode = sqlite3_open(bankdataFile.c_str(),&db);<br>
             if (retcode) {<br>
                 std::cerr << PACKAGE ": Warning: Specified bankdata file '"<br>
                           << bankdataFile<br>
                           << "' could not be opened. Trying default <br>
database.\n"<br>
                           << errorMsg<br>
                           << std::endl;<br>
<br>
This stuff is already implemented in AccountNumberCheck::readFile()<br>
<br>
<br>
In the function check_testkontos() I think the call to<br>
<br>
AccountNumberCheck checker(filename)<br>
<br>
already checks opening and reading a database file, which would reduce<br>
<br>
<br>
int check_testkontos(const std::string &filename)<br>
{<br>
     assert(filename.size() > 0);<br>
     try {<br>
         AccountNumberCheck checker(filename);<br>
     } catch (int i) {<br>
         exit 1;<br>
     }<br>
     return 0;<br>
}<br>
<br>
Regards<br>
Ralf<br>
</blockquote></div>