summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Freeman (saurik) <saurik@saurik.com>2015-06-26 04:47:18 -0700
committerJay Freeman (saurik) <saurik@saurik.com>2015-06-26 04:47:18 -0700
commita09f7a4894d2dde0ac8820993f3d51ba0fe36810 (patch)
treec6fc98e35c1fb6563a618604c10a1b09adee737f
parent62664aee74d60bfac5b6497715b6e6020702373e (diff)
Remove dependency on Substrate to have its macros.
-rw-r--r--Cydia/ProgressEvent.h2
-rw-r--r--CyteKit/WebView.mm2
-rw-r--r--CyteKit/dispatchEvent.mm4
-rw-r--r--MobileCydia.mm2
-rw-r--r--Sources.mm2
-rw-r--r--Substrate.hpp38
-rwxr-xr-xsysroot.sh7
7 files changed, 42 insertions, 15 deletions
diff --git a/Cydia/ProgressEvent.h b/Cydia/ProgressEvent.h
index 1b2bae0..8a49778 100644
--- a/Cydia/ProgressEvent.h
+++ b/Cydia/ProgressEvent.h
@@ -24,8 +24,6 @@
#include <Foundation/Foundation.h>
-#include <CydiaSubstrate/CydiaSubstrate.h>
-
#include <apt-pkg/acquire.h>
@interface CydiaProgressEvent : NSObject {
diff --git a/CyteKit/WebView.mm b/CyteKit/WebView.mm
index df37711..7338939 100644
--- a/CyteKit/WebView.mm
+++ b/CyteKit/WebView.mm
@@ -22,7 +22,7 @@
#include "CyteKit/dispatchEvent.h"
#include "CyteKit/WebView.h"
-#include <CydiaSubstrate/CydiaSubstrate.h>
+#include "Substrate.hpp"
#include "iPhonePrivate.h"
diff --git a/CyteKit/dispatchEvent.mm b/CyteKit/dispatchEvent.mm
index f3fa41e..a25bdf9 100644
--- a/CyteKit/dispatchEvent.mm
+++ b/CyteKit/dispatchEvent.mm
@@ -28,9 +28,7 @@
#include <WebKit/WebScriptObject.h>
#include <WebKit/WebView.h>
-#include <objc/runtime.h>
-
-#include <CydiaSubstrate/CydiaSubstrate.h>
+#include "Substrate.hpp"
@implementation UIWebDocumentView (CyteDispatchEvent)
diff --git a/MobileCydia.mm b/MobileCydia.mm
index 0c83f52..b95389a 100644
--- a/MobileCydia.mm
+++ b/MobileCydia.mm
@@ -109,7 +109,7 @@ extern "C" {
#include <Cytore.hpp>
#include "Sources.h"
-#include <CydiaSubstrate/CydiaSubstrate.h>
+#include "Substrate.hpp"
#include "Menes/Menes.h"
#include "CyteKit/IndirectDelegate.h"
diff --git a/Sources.mm b/Sources.mm
index 3290b2f..8ad74a1 100644
--- a/Sources.mm
+++ b/Sources.mm
@@ -20,7 +20,7 @@
/* }}} */
#include <Foundation/Foundation.h>
-#include <CydiaSubstrate/CydiaSubstrate.h>
+#include <Menes/ObjectHandle.h>
#include <CyteKit/UCPlatform.h>
#include <cstdio>
diff --git a/Substrate.hpp b/Substrate.hpp
new file mode 100644
index 0000000..9826b56
--- /dev/null
+++ b/Substrate.hpp
@@ -0,0 +1,38 @@
+/* Cydia - iPhone UIKit Front-End for Debian APT
+ * Copyright (C) 2008-2013 Jay Freeman (saurik)
+*/
+
+/* GNU General Public License, Version 3 {{{ */
+/*
+ * Cydia is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published
+ * by the Free Software Foundation, either version 3 of the License,
+ * or (at your option) any later version.
+ *
+ * Cydia is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Cydia. If not, see <http://www.gnu.org/licenses/>.
+**/
+/* }}} */
+
+#ifndef Substrate_HPP
+#define Substrate_HPP
+
+#include <objc/runtime.h>
+
+template <typename Type_>
+static inline Type_ &MSHookIvar(id self, const char *name) {
+ Ivar ivar(class_getInstanceVariable(object_getClass(self), name));
+ void *pointer(ivar == NULL ? NULL : reinterpret_cast<char *>(self) + ivar_getOffset(ivar));
+ return *reinterpret_cast<Type_ *>(pointer);
+}
+
+#define MSHook(type, name, args...) \
+ static type (*_ ## name)(args); \
+ static type $ ## name(args)
+
+#endif//Substrate_HPP
diff --git a/sysroot.sh b/sysroot.sh
index 2d129ab..55b65ca 100755
--- a/sysroot.sh
+++ b/sysroot.sh
@@ -67,7 +67,6 @@ urls[apr-lib]=http://apt.saurik.com/debs/apr-lib_1.3.3-2_iphoneos-arm.deb
urls[apt7]=http://apt.saurik.com/debs/apt7_0.7.25.3-7_iphoneos-arm.deb
urls[apt7-lib]=http://apt.saurik.com/debs/apt7-lib_0.7.25.3-12_iphoneos-arm.deb
urls[coreutils]=http://apt.saurik.com/debs/coreutils_7.4-11_iphoneos-arm.deb
-urls[mobilesubstrate]=http://apt.saurik.com/debs/mobilesubstrate_0.9.3367-1_iphoneos-arm.deb
urls[pcre]=http://apt.saurik.com/debs/pcre_7.9-3_iphoneos-arm.deb
if [[ 0 ]]; then
@@ -100,12 +99,6 @@ done
rm -f *.deb
-if substrate=$(readlink usr/include/substrate.h); then
- if [[ ${substrate} == /* ]]; then
- ln -sf "../..${substrate}" usr/include/substrate.h
- fi
-fi
-
mkdir -p usr/include
cd usr/include