Browse Source

More elegantly apply patches when needed

DarkMorford 5 years ago
parent
commit
ecfa1292bb
4 changed files with 12 additions and 11 deletions
  1. 4 0
      conandata.yml
  2. 2 5
      conanfile.py
  3. 3 3
      patches/framing.c.patch
  4. 3 3
      patches/ogg.def.patch

+ 4 - 0
conandata.yml

@@ -2,3 +2,7 @@ sources:
   1.3.4:
   1.3.4:
     url: "http://downloads.xiph.org/releases/ogg/libogg-1.3.4.tar.gz"
     url: "http://downloads.xiph.org/releases/ogg/libogg-1.3.4.tar.gz"
     sha256: "fe5670640bd49e828d64d2879c31cb4dde9758681bb664f9bdbf159a01b0c76e"
     sha256: "fe5670640bd49e828d64d2879c31cb4dde9758681bb664f9bdbf159a01b0c76e"
+patches:
+  1.3.4:
+    - patch_file: "patches/001-fix-size-mismatch.patch"
+    - patch_file: "patches/002-add-missing-exports.patch"

+ 2 - 5
conanfile.py

@@ -25,11 +25,8 @@ class LibOggConan(ConanFile):
 
 
     def source(self):
     def source(self):
         tools.get(**self.conan_data["sources"][self.version])
         tools.get(**self.conan_data["sources"][self.version])
-        self._patch()
-
-    def _patch(self):
-        tools.patch(base_path=self.subfolder, patch_file=os.path.join("patches", "framing.c.patch"), strip=1)
-        tools.patch(base_path=self.subfolder, patch_file=os.path.join("patches", "ogg.def.patch"), strip=1)
+        for patch in self.conan_data["patches"][self.version]:
+            tools.patch(base_path=self.subfolder, **patch)
 
 
     def configure(self):
     def configure(self):
         del self.settings.compiler.cppstd
         del self.settings.compiler.cppstd

+ 3 - 3
patches/framing.c.patch

@@ -1,6 +1,6 @@
-diff -Naru libogg-1.3.4.orig/src/framing.c libogg-1.3.4/src/framing.c
---- libogg-1.3.4.orig/src/framing.c	2019-08-12 11:56:41.000000000 -0700
-+++ libogg-1.3.4/src/framing.c	2019-12-08 15:03:21.609933200 -0800
+diff -Naur a/src/framing.c b/src/framing.c
+--- a/src/framing.c	2019-08-12 11:56:41.000000000 -0700
++++ b/src/framing.c	2019-12-09 20:18:17.011484000 -0800
 @@ -1564,7 +1564,7 @@
 @@ -1564,7 +1564,7 @@
              byteskipcount=byteskip;
              byteskipcount=byteskip;
            }
            }

+ 3 - 3
patches/ogg.def.patch

@@ -1,6 +1,6 @@
-diff -Naru libogg-1.3.4.orig/win32/ogg.def libogg-1.3.4/win32/ogg.def
---- libogg-1.3.4.orig/win32/ogg.def	2019-08-07 15:58:05.000000000 -0700
-+++ libogg-1.3.4/win32/ogg.def	2019-12-08 15:44:07.799847300 -0800
+diff -Naur a/win32/ogg.def b/win32/ogg.def
+--- a/win32/ogg.def	2019-08-07 15:58:05.000000000 -0700
++++ b/win32/ogg.def	2019-12-09 20:22:47.721967800 -0800
 @@ -6,6 +6,7 @@
 @@ -6,6 +6,7 @@
  EXPORTS
  EXPORTS
  ;
  ;