Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -175,3 +175,35 @@ node_modules
# Debug files #
##############
*.core

# Build-time symlinks to bundled libraries #
############################################
Foundation/src/adler32.c
Foundation/src/compress.c
Foundation/src/crc32.c
Foundation/src/crc32.h
Foundation/src/deflate.c
Foundation/src/deflate.h
Foundation/src/gzguts.h
Foundation/src/infback.c
Foundation/src/inffast.c
Foundation/src/inffast.h
Foundation/src/inffixed.h
Foundation/src/inflate.c
Foundation/src/inflate.h
Foundation/src/inftrees.c
Foundation/src/inftrees.h
Foundation/src/pcre2.h
Foundation/src/pcre2_*.c
Foundation/src/pcre2_*.h
Foundation/src/trees.c
Foundation/src/trees.h
Foundation/src/utf8proc.c
Foundation/src/utf8proc.h
Foundation/src/utf8proc_data.c
Foundation/src/zconf.h
Foundation/src/zlib.h
Foundation/src/zutil.c
Foundation/src/zutil.h
Foundation/pdjson.c
Foundation/pdjson.h
1 change: 1 addition & 0 deletions ActiveRecord/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(ActiveRecord-testrunner ${TEST_SRCS})
set_target_properties(ActiveRecord-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME ActiveRecord
Expand Down
1 change: 1 addition & 0 deletions CppParser/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(CppParser-testrunner ${TEST_SRCS})
set_target_properties(CppParser-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME CppParser
Expand Down
1 change: 1 addition & 0 deletions Crypto/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(Crypto-testrunner ${TEST_SRCS})
set_target_properties(Crypto-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME Crypto
Expand Down
1 change: 1 addition & 0 deletions Data/MySQL/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(DataMySQL-testrunner ${TEST_SRCS})
set_target_properties(DataMySQL-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME DataMySQL
Expand Down
1 change: 1 addition & 0 deletions Data/ODBC/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(DataODBC-testrunner ${TEST_SRCS})
set_target_properties(DataODBC-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME DataODBC
Expand Down
1 change: 1 addition & 0 deletions Data/PostgreSQL/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(DataPostgreSQL-testrunner ${TEST_SRCS})
set_target_properties(DataPostgreSQL-testrunner PROPERTIES DEBUG_POSTFIX "d")
add_test(
NAME DataPostgreSQL
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
Expand Down
1 change: 1 addition & 0 deletions Data/SQLite/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(DataSQLite-testrunner ${TEST_SRCS})
set_target_properties(DataSQLite-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME DataSQLite
Expand Down
1 change: 1 addition & 0 deletions Data/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(Data-testrunner ${TEST_SRCS})
set_target_properties(Data-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME Data
Expand Down
1 change: 1 addition & 0 deletions Encodings/testsuite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ POCO_SOURCES_AUTO_PLAT(TEST_SRCS OFF
)

add_executable(Encodings-testrunner ${TEST_SRCS})
set_target_properties(Encodings-testrunner PROPERTIES DEBUG_POSTFIX "d")
if(ANDROID)
add_test(
NAME Encodings
Expand Down
4 changes: 2 additions & 2 deletions Foundation/include/Poco/NObserver.h
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,8 @@ class NObserver: public AbstractObserver
NObserver(C& object, Handler method, Matcher matcher = nullptr, SyncHandler syncMethod = nullptr):
_pObject(&object),
_handler(method),
_matcher(matcher),
_syncHandler(syncMethod)
_syncHandler(syncMethod),
_matcher(matcher)
{
}

Expand Down
15 changes: 15 additions & 0 deletions Foundation/include/Poco/SharedLibrary.h
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@


#include "Poco/Foundation.h"
#include <vector>
#include <string>


#if defined(hpux) || defined(_hpux)
Expand Down Expand Up @@ -130,6 +132,19 @@ class Foundation_API SharedLibrary: private SharedLibraryImpl
/// SetDllDirectory(). On all other platforms, does not
/// do anything and returns false.

static std::vector<std::string> findMissingDependencies(const std::string& path);
/// Parses the shared library at the given path and returns
/// a list of dependent libraries that cannot be found.
/// If the library itself whose dependencies are checked is not found,
/// it returns the library itself.
///
/// Useful for diagnosing why a library fails to load.
/// On Windows, parses the PE import table. On Linux, parses the
/// ELF dynamic section. On macOS, parses the Mach-O load commands.
///
/// Returns an empty vector if the file cannot be parsed or
/// on unsupported platforms.

private:
SharedLibrary(const SharedLibrary&);
SharedLibrary& operator = (const SharedLibrary&);
Expand Down
3 changes: 3 additions & 0 deletions Foundation/include/Poco/SharedLibrary_HPUX.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
#include "Poco/Foundation.h"
#include "Poco/Mutex.h"
#include <dl.h>
#include <vector>
#include <string>


namespace Poco {
Expand All @@ -38,6 +40,7 @@ class Foundation_API SharedLibraryImpl
const std::string& getPathImpl() const;
static std::string suffixImpl();
static bool setSearchPathImpl(const std::string& path);
static std::vector<std::string> findMissingDependenciesImpl(const std::string& path);

private:
std::string _path;
Expand Down
3 changes: 3 additions & 0 deletions Foundation/include/Poco/SharedLibrary_UNIX.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@

#include "Poco/Foundation.h"
#include "Poco/Mutex.h"
#include <vector>
#include <string>


namespace Poco {
Expand All @@ -43,6 +45,7 @@ class Foundation_API SharedLibraryImpl
const std::string& getPathImpl() const;
static std::string suffixImpl();
static bool setSearchPathImpl(const std::string& path);
static std::vector<std::string> findMissingDependenciesImpl(const std::string& path);

private:
std::string _path;
Expand Down
3 changes: 3 additions & 0 deletions Foundation/include/Poco/SharedLibrary_VX.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
#include "Poco/Foundation.h"
#include "Poco/Mutex.h"
#include <moduleLib.h>
#include <vector>
#include <string>


namespace Poco {
Expand All @@ -38,6 +40,7 @@ class Foundation_API SharedLibraryImpl
const std::string& getPathImpl() const;
static std::string suffixImpl();
static bool setSearchPathImpl(const std::string& path);
static std::vector<std::string> findMissingDependenciesImpl(const std::string& path);

private:
std::string _path;
Expand Down
3 changes: 3 additions & 0 deletions Foundation/include/Poco/SharedLibrary_WIN32U.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@

#include "Poco/Foundation.h"
#include "Poco/Mutex.h"
#include <vector>
#include <string>


namespace Poco {
Expand All @@ -37,6 +39,7 @@ class Foundation_API SharedLibraryImpl
const std::string& getPathImpl() const;
static std::string suffixImpl();
static bool setSearchPathImpl(const std::string& path);
static std::vector<std::string> findMissingDependenciesImpl(const std::string& path);

private:
std::string _path;
Expand Down
6 changes: 6 additions & 0 deletions Foundation/src/SharedLibrary.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -110,4 +110,10 @@ bool SharedLibrary::setSearchPath(const std::string& path)
}


std::vector<std::string> SharedLibrary::findMissingDependencies(const std::string& path)
{
return findMissingDependenciesImpl(path);
}


} // namespace Poco
7 changes: 7 additions & 0 deletions Foundation/src/SharedLibrary_HPUX.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,11 @@ bool SharedLibraryImpl::setSearchPathImpl(const std::string&)
}


std::vector<std::string> SharedLibraryImpl::findMissingDependenciesImpl(const std::string&)
{
// not implemented
return std::vector<std::string>();
}


} // namespace Poco
Loading
Loading