mirror of
https://github.com/tihmstar/futurerestore.git
synced 2024-12-21 17:25:30 +00:00
using libgeneral as library instad of submodule
This commit is contained in:
parent
2988d63b97
commit
7298131780
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -4,6 +4,3 @@
|
||||||
[submodule "external/idevicerestore"]
|
[submodule "external/idevicerestore"]
|
||||||
path = external/idevicerestore
|
path = external/idevicerestore
|
||||||
url = https://github.com/tihmstar/idevicerestore.git
|
url = https://github.com/tihmstar/idevicerestore.git
|
||||||
[submodule "external/libgeneral"]
|
|
||||||
path = external/libgeneral
|
|
||||||
url = https://github.com/tihmstar/libgeneral
|
|
||||||
|
|
25
configure.ac
25
configure.ac
|
@ -43,12 +43,23 @@ AC_CONFIG_SUBDIRS(external/idevicerestore external/tsschecker)
|
||||||
AC_CONFIG_SRCDIR([futurerestore])
|
AC_CONFIG_SRCDIR([futurerestore])
|
||||||
|
|
||||||
|
|
||||||
PKG_CHECK_MODULES(libplist, libplist >= 1.12)
|
|
||||||
PKG_CHECK_MODULES(libzip, libzip >= 0.10)
|
LIBIPATCHER_REQUIRES_STR="libipatcher >= 57"
|
||||||
PKG_CHECK_MODULES(libimobiledevice, libimobiledevice-1.0 >= 1.2.1)
|
LIBPLIST_REQUIRES_STR="libplist >= 2.0.0"
|
||||||
PKG_CHECK_MODULES(libfragmentzip, libfragmentzip >= 1.0)
|
LIBZIP_REQUIRES_STR="libzip >= 0.10"
|
||||||
PKG_CHECK_MODULES(libirecovery, libirecovery >= 0.2.0)
|
LIBIMOBILEDEVICE_REQUIRES_STR="libimobiledevice-1.0 >= 1.2.1"
|
||||||
PKG_CHECK_MODULES(libimg4tool, libimg4tool >= 158)
|
LIBFRAGMENTZIP_REQUIRES_STR="libfragmentzip >= 47"
|
||||||
|
LIBIRECOVERY_REQUIRES_STR="libirecovery >= 0.2.0"
|
||||||
|
IMG4TOOL_REQUIRES_STR="libimg4tool >= 159"
|
||||||
|
LIBGENERAL_REQUIRES_STR="libgeneral >= 26"
|
||||||
|
|
||||||
|
PKG_CHECK_MODULES(libplist, libplist >= 2.0.0)
|
||||||
|
PKG_CHECK_MODULES(libzip, $LIBZIP_REQUIRES_STR)
|
||||||
|
PKG_CHECK_MODULES(libimobiledevice, $LIBIMOBILEDEVICE_REQUIRES_STR)
|
||||||
|
PKG_CHECK_MODULES(libfragmentzip, $LIBFRAGMENTZIP_REQUIRES_STR)
|
||||||
|
PKG_CHECK_MODULES(libirecovery, $LIBIRECOVERY_REQUIRES_STR)
|
||||||
|
PKG_CHECK_MODULES(libimg4tool, $IMG4TOOL_REQUIRES_STR)
|
||||||
|
PKG_CHECK_MODULES(libgeneral, $LIBGENERAL_REQUIRES_STR)
|
||||||
|
|
||||||
|
|
||||||
# Optional module libipatcher
|
# Optional module libipatcher
|
||||||
|
@ -65,7 +76,7 @@ if [test -z "$LIBIPATCHER_FLAGS"]; then
|
||||||
else
|
else
|
||||||
AC_MSG_CHECKING([for futurerestore libipatcher])
|
AC_MSG_CHECKING([for futurerestore libipatcher])
|
||||||
if test "$build_libipatcher" = "true"; then
|
if test "$build_libipatcher" = "true"; then
|
||||||
PKG_CHECK_MODULES(libipatcher, libipatcher >= 47)
|
PKG_CHECK_MODULES(libipatcher, $LIBIPATCHER_REQUIRES_STR)
|
||||||
AC_DEFINE(HAVE_LIBIPATCHER, 1, [Define if you have libipatcher])
|
AC_DEFINE(HAVE_LIBIPATCHER, 1, [Define if you have libipatcher])
|
||||||
do_libipatcher=yes
|
do_libipatcher=yes
|
||||||
else
|
else
|
||||||
|
|
1
external/libgeneral
vendored
1
external/libgeneral
vendored
|
@ -1 +0,0 @@
|
||||||
Subproject commit e423f64d9b535c9a963f2ed3ed0fbf300c1ec24c
|
|
|
@ -7,6 +7,8 @@
|
||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
8754A6AE236F104300C0D285 /* libgeneral.0.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 8754A6AD236F104200C0D285 /* libgeneral.0.dylib */; };
|
||||||
|
8754A6AF236F104300C0D285 /* libgeneral.0.dylib in Embed Libraries */ = {isa = PBXBuildFile; fileRef = 8754A6AD236F104200C0D285 /* libgeneral.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||||
8762F344236DF4D900F42FDB /* libimg4tool.0.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */; };
|
8762F344236DF4D900F42FDB /* libimg4tool.0.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */; };
|
||||||
8762F345236DF4D900F42FDB /* libimg4tool.0.dylib in Embed Libraries */ = {isa = PBXBuildFile; fileRef = 8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
8762F345236DF4D900F42FDB /* libimg4tool.0.dylib in Embed Libraries */ = {isa = PBXBuildFile; fileRef = 8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||||
878587471D89CFDC008689F0 /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 878587461D89CFDC008689F0 /* main.cpp */; };
|
878587471D89CFDC008689F0 /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 878587461D89CFDC008689F0 /* main.cpp */; };
|
||||||
|
@ -54,6 +56,7 @@
|
||||||
dstSubfolderSpec = 10;
|
dstSubfolderSpec = 10;
|
||||||
files = (
|
files = (
|
||||||
8762F345236DF4D900F42FDB /* libimg4tool.0.dylib in Embed Libraries */,
|
8762F345236DF4D900F42FDB /* libimg4tool.0.dylib in Embed Libraries */,
|
||||||
|
8754A6AF236F104300C0D285 /* libgeneral.0.dylib in Embed Libraries */,
|
||||||
);
|
);
|
||||||
name = "Embed Libraries";
|
name = "Embed Libraries";
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
@ -70,6 +73,7 @@
|
||||||
/* End PBXCopyFilesBuildPhase section */
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
|
8754A6AD236F104200C0D285 /* libgeneral.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libgeneral.0.dylib; path = ../../../../usr/local/lib/libgeneral.0.dylib; sourceTree = "<group>"; };
|
||||||
8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libimg4tool.0.dylib; path = ../../../../usr/local/lib/libimg4tool.0.dylib; sourceTree = "<group>"; };
|
8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libimg4tool.0.dylib; path = ../../../../usr/local/lib/libimg4tool.0.dylib; sourceTree = "<group>"; };
|
||||||
878587431D89CFDC008689F0 /* futurerestore */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = futurerestore; sourceTree = BUILT_PRODUCTS_DIR; };
|
878587431D89CFDC008689F0 /* futurerestore */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = futurerestore; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
878587461D89CFDC008689F0 /* main.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
|
878587461D89CFDC008689F0 /* main.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -156,6 +160,7 @@
|
||||||
8762F344236DF4D900F42FDB /* libimg4tool.0.dylib in Frameworks */,
|
8762F344236DF4D900F42FDB /* libimg4tool.0.dylib in Frameworks */,
|
||||||
87F574D01E151F44008D5C4D /* libcrypto.dylib in Frameworks */,
|
87F574D01E151F44008D5C4D /* libcrypto.dylib in Frameworks */,
|
||||||
87F574CB1E151E97008D5C4D /* libfragmentzip.0.dylib in Frameworks */,
|
87F574CB1E151E97008D5C4D /* libfragmentzip.0.dylib in Frameworks */,
|
||||||
|
8754A6AE236F104300C0D285 /* libgeneral.0.dylib in Frameworks */,
|
||||||
878587B71D89D637008689F0 /* libirecovery.2.dylib in Frameworks */,
|
878587B71D89D637008689F0 /* libirecovery.2.dylib in Frameworks */,
|
||||||
878587AF1D89D5A5008689F0 /* libcurl.tbd in Frameworks */,
|
878587AF1D89D5A5008689F0 /* libcurl.tbd in Frameworks */,
|
||||||
878587AB1D89D590008689F0 /* libimobiledevice.6.dylib in Frameworks */,
|
878587AB1D89D590008689F0 /* libimobiledevice.6.dylib in Frameworks */,
|
||||||
|
@ -283,6 +288,7 @@
|
||||||
87F574C21E151CDE008D5C4D /* Frameworks */ = {
|
87F574C21E151CDE008D5C4D /* Frameworks */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
8754A6AD236F104200C0D285 /* libgeneral.0.dylib */,
|
||||||
8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */,
|
8762F343236DF4D900F42FDB /* libimg4tool.0.dylib */,
|
||||||
878E1AC41F73EB3F00B1565B /* libzip.5.dylib */,
|
878E1AC41F73EB3F00B1565B /* libzip.5.dylib */,
|
||||||
8788A6801EE8426A00138E07 /* libipatcher.0.dylib */,
|
8788A6801EE8426A00138E07 /* libipatcher.0.dylib */,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
AM_CFLAGS = -I$(top_srcdir)/external/libgeneral/include -I$(top_srcdir)/external/tsschecker/external/jssy/jssy -I$(top_srcdir)/external/tsschecker/tsschecker -I$(top_srcdir)/external/idevicerestore/src $(libplist_CFLAGS) $(libzip_CFLAGS) $(libimobiledevice_CFLAGS) $(libfragmentzip_CFLAGS) $(libirecovery_CFLAGS) $(libimg4tool_CFLAGS)
|
AM_CFLAGS = -I$(top_srcdir)/external/libgeneral/include -I$(top_srcdir)/external/tsschecker/external/jssy/jssy -I$(top_srcdir)/external/tsschecker/tsschecker -I$(top_srcdir)/external/idevicerestore/src $(libplist_CFLAGS) $(libzip_CFLAGS) $(libimobiledevice_CFLAGS) $(libfragmentzip_CFLAGS) $(libirecovery_CFLAGS) $(libimg4tool_CFLAGS) $(libgeneral_CFLAGS)
|
||||||
AM_LDFLAGS = $(libplist_LIBS) $(libzip_LIBS) $(libimobiledevice_LIBS) $(libfragmentzip_LIBS) $(libirecovery_LIBS) $(libimg4tool_LIBS)
|
AM_LDFLAGS = $(libplist_LIBS) $(libzip_LIBS) $(libimobiledevice_LIBS) $(libfragmentzip_LIBS) $(libirecovery_LIBS) $(libimg4tool_LIBS) $(libgeneral_LIBS)
|
||||||
|
|
||||||
if HAVE_LIBIPATCHER
|
if HAVE_LIBIPATCHER
|
||||||
AM_LDFLAGS += $(libipatcher_LIBS)
|
AM_LDFLAGS += $(libipatcher_LIBS)
|
||||||
|
|
|
@ -463,7 +463,7 @@ void futurerestore::enterPwnRecovery(plist_t build_identity, string bootargs){
|
||||||
try {
|
try {
|
||||||
iBSSKeys = libipatcher::getFirmwareKey(_client->device->product_type, _client->build, "iBSS");
|
iBSSKeys = libipatcher::getFirmwareKey(_client->device->product_type, _client->build, "iBSS");
|
||||||
iBECKeys = libipatcher::getFirmwareKey(_client->device->product_type, _client->build, "iBEC");
|
iBECKeys = libipatcher::getFirmwareKey(_client->device->product_type, _client->build, "iBEC");
|
||||||
} catch (tihmstar::exception e) {
|
} catch (tihmstar::exception &e) {
|
||||||
reterror("getting keys failed with error: %d (%s). Are keys publicly available?",e.code(),e.what());
|
reterror("getting keys failed with error: %d (%s). Are keys publicly available?",e.code(),e.what());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -280,15 +280,14 @@ error:
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, const char * argv[]) {
|
int main(int argc, const char * argv[]) {
|
||||||
#ifdef DEBUG
|
//#ifdef DEBUG
|
||||||
return main_r(argc, argv);
|
// return main_r(argc, argv);
|
||||||
#else
|
//#else
|
||||||
try {
|
try {
|
||||||
return main_r(argc, argv);
|
return main_r(argc, argv);
|
||||||
} catch (tihmstar::exception &e) {
|
} catch (std::exception &e) {
|
||||||
printf("%s: failed with exception:\n",PACKAGE_NAME);
|
printf("%s: failed with exception (%s)\n",PACKAGE_NAME,e.what());
|
||||||
e.dump();
|
return -1;
|
||||||
return e.code();
|
|
||||||
}
|
}
|
||||||
#endif
|
//#endif
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue