#include"./drd64_defines.h"
#include"./drd64_error.h"
+typedef struct {
+ char str_remotepath[DRD64_MAX_PATH];
+ char str_localpath[DRD64_MAX_PATH];
+ char str_filename[DRD64_MAX_PATH];
+ char str_rpath[DRD64_MAX_PATH];
+ char str_runpath[DRD64_MAX_PATH];
+ int i_bid;
+} LibGoblin_ObjectFilePath;
+
#ifdef DRD64_HEADER_LIBGOBLIN_MAIN
#define LIBGOBLIN_FUNC
#else
#endif
-#ifdef DRD64_SRC_LIBGOBLIN_SYSTEM
- #define LIBGOBLIN_API_SYSTEM
+#ifdef DRD64_SRC_LIBGOBLIN_API
+ #define LIBGOBLIN_API
#else
- #define LIBGOBLIN_API_SYSTEM extern
+ #define LIBGOBLIN_API extern
#endif
-LIBGOBLIN_API_SYSTEM
+LIBGOBLIN_API
+ int LibGoblin_AnalyzeProgram( int i_pgid );
+LIBGOBLIN_API
+ int LibGoblin_GetUnresolv_ObjectFilePath( int i_pgid, LibGoblin_ObjectFilePath *p_objpath );
+LIBGOBLIN_API
+ int LibGoblin_SetPathAndLoad_ObjectFilePath( LibGoblin_ObjectFilePath *p_objpath );
+LIBGOBLIN_API
+ int LibGoblin_LoadProgram_Main(
+ int i_pgid, const char *pstr_remotefull, const char *pstr_localfull );
+LIBGOBLIN_API
+ int LibGoblin_AllocBinInfo( int i_pgid, const char *pstr_filename );
+LIBGOBLIN_API
+ int LibGoblin_FreeBinInfo( int i_binfoid );
+LIBGOBLIN_API
+ int LibGoblin_AllocProgInfo( void );
+LIBGOBLIN_API
+ int LibGoblin_FreeProgInfo( int i_pgid );
+LIBGOBLIN_API
int LibGoblin_Init( void );
-LIBGOBLIN_API_SYSTEM
+LIBGOBLIN_API
int LibGoblin_Term( void );
#ifdef DRD64_SRC_LIBGOBLIN_PROGINFO
#else
#define LIBGOBLIN_API_PROGINFO extern
#endif
-LIBGOBLIN_API_PROGINFO
- int LibGoblin_AllocProgInfo( void );
-LIBGOBLIN_API_PROGINFO
- int LibGoblin_FreeProgInfo( int i_pgid );
#ifdef DRD64_SRC_LIBGOBLIN_BINFO
#define LIBGOBLIN_API_BINFO
#define LIBGOBLIN_API_BINFO extern
#endif
LIBGOBLIN_API_BINFO
- int LibGoblin_AllocBinInfo( int i_pgid );
-LIBGOBLIN_API_BINFO
- int LibGoblin_FreeBinInfo( int i_binfoid );
+ const char *LibGoblin_GetRPath_fromBinInfo( int i_bid, char *pstr_rpath );
#ifdef DRD64_SRC_LIBGOBLIN_LOADPROG
#define LIBGOBLIN_API_LOADPROG
#define LIBGOBLIN_API_LOADPROG extern
#endif
LIBGOBLIN_API_LOADPROG
- int LibGoblin_LoadProgram( int i_pgid, const char *pstr_progpath );
+ int LibGoblin_LoadProgram_Main(
+ int i_pgid, const char *pstr_progpath, const char *pstr_realpath );
+
#endif /* DRD64_HEADER_LIBGOBLIN */