cpkg 0.2.0.0 → 0.2.0.1
raw patch · 5 files changed
+185/−28 lines, 5 files
Files
- CHANGELOG.md +4/−0
- cpkg.cabal +1/−1
- pkgs/patches/m4.patch +108/−0
- pkgs/pkg-set.dhall +71/−26
- src/Package/C/Build.hs +1/−1
CHANGELOG.md view
@@ -1,5 +1,9 @@ # cpkg +## 0.2.0.1++ * Pass `-p0` option to `patch`+ ## 0.2.0.0 * Support more MIPS architectures
cpkg.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.18 name: cpkg-version: 0.2.0.0+version: 0.2.0.1 license: BSD3 license-file: LICENSE copyright: Copyright: (c) 2018-2019 Vanessa McHale
+ pkgs/patches/m4.patch view
@@ -0,0 +1,108 @@+diff --color -u lib/fflush.c lib/fflush.c+--- lib/fflush.c 2016-12-31 07:54:41.000000000 -0600++++ lib/fflush.c 2019-05-24 15:43:00.800903010 -0500+@@ -33,7 +33,7 @@+ #undef fflush+ + +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ + /* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */+ static void+@@ -72,7 +72,7 @@+ + #endif+ +-#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)++#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)+ + # if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT+ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */+@@ -148,7 +148,7 @@+ if (stream == NULL || ! freading (stream))+ return fflush (stream);+ +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ + clear_ungetc_buffer_preserving_position (stream);+ +diff --color -u lib/fpending.c lib/fpending.c+--- lib/fpending.c 2016-12-31 07:54:41.000000000 -0600++++ lib/fpending.c 2019-05-24 15:43:00.800903010 -0500+@@ -32,7 +32,7 @@+ /* Most systems provide FILE as a struct and the necessary bitmask in+ <stdio.h>, because they need it for implementing getc() and putc() as+ fast macros. */+-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ return fp->_IO_write_ptr - fp->_IO_write_base;+ #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__+ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */+diff --color -u lib/fpurge.c lib/fpurge.c+--- lib/fpurge.c 2016-12-31 07:54:41.000000000 -0600++++ lib/fpurge.c 2019-05-24 15:43:00.800903010 -0500+@@ -62,7 +62,7 @@+ /* Most systems provide FILE as a struct and the necessary bitmask in+ <stdio.h>, because they need it for implementing getc() and putc() as+ fast macros. */+-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ fp->_IO_read_end = fp->_IO_read_ptr;+ fp->_IO_write_ptr = fp->_IO_write_base;+ /* Avoid memory leak when there is an active ungetc buffer. */+diff --color -u lib/freadahead.c lib/freadahead.c+--- lib/freadahead.c 2016-12-31 07:54:41.000000000 -0600++++ lib/freadahead.c 2019-05-24 15:43:00.800903010 -0500+@@ -25,7 +25,7 @@+ size_t+ freadahead (FILE *fp)+ {+-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ if (fp->_IO_write_ptr > fp->_IO_write_base)+ return 0;+ return (fp->_IO_read_end - fp->_IO_read_ptr)+diff --color -u lib/freading.c lib/freading.c+--- lib/freading.c 2016-12-31 07:54:41.000000000 -0600++++ lib/freading.c 2019-05-24 15:43:00.800903010 -0500+@@ -31,7 +31,7 @@+ /* Most systems provide FILE as a struct and the necessary bitmask in+ <stdio.h>, because they need it for implementing getc() and putc() as+ fast macros. */+-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ return ((fp->_flags & _IO_NO_WRITES) != 0+ || ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0+ && fp->_IO_read_base != NULL));+diff --color -u lib/fseeko.c lib/fseeko.c+--- lib/fseeko.c 2016-12-31 07:54:41.000000000 -0600++++ lib/fseeko.c 2019-05-24 15:43:00.800903010 -0500+@@ -47,7 +47,7 @@+ #endif+ + /* These tests are based on fpurge.c. */+-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ if (fp->_IO_read_end == fp->_IO_read_ptr+ && fp->_IO_write_ptr == fp->_IO_write_base+ && fp->_IO_save_base == NULL)+@@ -123,7 +123,7 @@+ return -1;+ }+ +-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */++#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */+ fp->_flags &= ~_IO_EOF_SEEN;+ fp->_offset = pos;+ #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__+Common subdirectories: lib/glthread and lib/glthread+diff --color -u lib/stdio-impl.h lib/stdio-impl.h+--- lib/stdio-impl.h 2016-12-31 07:54:42.000000000 -0600++++ lib/stdio-impl.h 2019-05-24 15:43:10.885006876 -0500+@@ -138,3 +138,4 @@+ # define _IOERR 0x10+ + #endif++#define _IO_IN_BACKUP 0x100
pkgs/pkg-set.dhall view
@@ -2,6 +2,9 @@ let concatMapSep = https://raw.githubusercontent.com/dhall-lang/dhall-lang/master/Prelude/Text/concatMapSep in +let concatMapText = https://raw.githubusercontent.com/dhall-lang/dhall-lang/master/Prelude/Text/concatMap+in+ let not = https://raw.githubusercontent.com/dhall-lang/dhall-lang/master/Prelude/Bool/not in @@ -618,12 +621,27 @@ } in +let diffutils =+ λ(v : List Natural) →+ prelude.simplePackage { name = "diffutils", version = v } ⫽+ { pkgUrl = "https://ftp.gnu.org/gnu/diffutils/diffutils-${prelude.showVersion v}.tar.xz"+ , installCommand = prelude.installWithBinaries [ "bin/diff" ]+ }+in++let patch =+ λ(v : List Natural) →+ prelude.makeGnuExe { name = "patch", version = v }+in+ let m4 = λ(v : List Natural) → prelude.makeGnuExe { name = "m4", version = v } ⫽- -- FIXME: this is in place until there's a mechanism to patch...- { buildCommand = prelude.doNothing- , installCommand = prelude.doNothing+ { configureCommand =+ λ(cfg : types.BuildVars) →+ [ prelude.patch (./patches/m4.patch as Text) ]+ # prelude.defaultConfigure cfg+ , pkgBuildDeps = [ prelude.unbounded "patch" ] } in @@ -1044,6 +1062,7 @@ λ(cfg : types.BuildVars) → [ prelude.patch patch ] # prelude.defaultConfigure cfg+ , pkgBuildDeps = [ prelude.unbounded "patch" ] } in @@ -1375,7 +1394,7 @@ [ prelude.createDir "build" , prelude.writeFile { file = "build/cross.txt", contents = prelude.mesonCfgFile cfg } , prelude.call { program = "meson"- , arguments = [ "--prefix=${cfg.installDir}", "..", "-Dselinux=false" ] # crossArgs+ , arguments = [ "--prefix=${cfg.installDir}", "..", "-Dselinux=disabled" ] # crossArgs , environment = Some [ prelude.mkPkgConfigVar cfg.linkDirs , { var = "PATH", value = prelude.mkPathVar cfg.binDirs ++ "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" } , { var = "LDFLAGS", value = (prelude.mkLDFlags cfg.linkDirs).value ++ " -lpcre" }@@ -1993,7 +2012,7 @@ , prelude.unbounded "glib" ] , installCommand =- prelude.ninjaInstallWithPkgConfig [{ src = "build/atspi-2.pc", dest = "lib/pkgconfig/atspi-2.pc" }]+ prelude.ninjaInstallWithPkgConfig [{ src = "build/meson-private/atspi-2.pc", dest = "lib/pkgconfig/atspi-2.pc" }] } in @@ -2062,14 +2081,14 @@ in let gtk3 =+ let mkLDFlagsGtk =+ λ(linkDirs : List Text) →+ concatMapSep " " Text (λ(dir : Text) → "-L${dir}") linkDirs+ in let gtkEnv = λ(cfg : types.BuildVars) →- prelude.defaultPath cfg # [ { var = "LDFLAGS", value = (prelude.mkLDFlags cfg.linkDirs).value ++ " -lpcre -lfribidi" }- , prelude.mkCFlags cfg+ prelude.defaultPath cfg # [ { var = "LDFLAGS", value = (mkLDFlagsGtk cfg.linkDirs) ++ " -lpcre -lfribidi" } , prelude.mkPkgConfigVar cfg.linkDirs- , prelude.libPath cfg- , prelude.mkLDRunPath cfg.linkDirs- , prelude.mkXdgDataDirs cfg.shareDirs , prelude.mkLDPreload cfg.preloadLibs ] in@@ -2205,7 +2224,7 @@ prelude.simplePackage { name = "libarchive", version = v } ⫽ { pkgUrl = "https://www.libarchive.org/downloads/libarchive-${prelude.showVersion v}.tar.gz" , pkgDeps = [ prelude.unbounded "xz"- , prelude.unbounded "bzip2"+ -- , prelude.unbounded "bzip2" , prelude.unbounded "zlib" ] }@@ -2633,7 +2652,7 @@ , prelude.lowerBound { name = "dri2proto", lower = [2,8] } , prelude.unbounded "libXrandr" ]- , configureCommand = prelude.configureWithFlags [ "--with-gallium-drivers=nouveau,swrast" ] -- disable radeon drivers so we don't need LLVM (7.0.1 won't work?)+ , configureCommand = prelude.configureWithFlags [ "--enable-autotools", "--with-gallium-drivers=nouveau,swrast" ] -- disable radeon drivers so we don't need LLVM (8.0.0 won't work?) } in @@ -2905,7 +2924,7 @@ let mpfr = λ(v : List Natural) → prelude.simplePackage { name = "mpfr", version = v } ⫽- { pkgUrl = "https://www.mpfr.org/mpfr-current/mpfr-${prelude.showVersion v}.tar.xz" }+ { pkgUrl = "https://ftp.gnu.org/gnu/mpfr/mpfr-${prelude.showVersion v}.tar.xz" } in let libsodium =@@ -3070,12 +3089,34 @@ } in +let mpc =+ λ(v : List Natural) →+ prelude.simplePackage { name = "mpc", version = v } ⫽+ { pkgUrl = "https://ftp.gnu.org/gnu/mpc/mpc-${prelude.showVersion v}.tar.gz"+ , pkgDeps = [ prelude.unbounded "mpfr" ]+ }+in++-- let gcc =+ -- λ(v : List Natural) →+ -- let versionString = prelude.showVersion v in+ -- prelude.simplePackage { name = "gcc", version = v } ⫽+ -- { pkgUrl = "http://mirror.linux-ia64.org/gnu/gcc/releases/gcc-${versionString}/gcc-${versionString}.tar.xz"+ -- , pkgDeps = [ prelude.unbounded "mpfr"+ -- , prelude.unbounded "mpc"+ -- ]+ -- , configureCommand = prelude.configureWithFlags [ "--disable-multilib" ]+ -- , pkgStream = False+ -- }+-- in++-- https://hub.darcs.net/raichoo/hikari -- https://versaweb.dl.sourceforge.net/project/schilytools/schily-2019-03-29.tar.bz2 [ autoconf [2,69] , automake [1,16,1]-, at-spi-atk { version = [2,30], patch = 0 }-, at-spi-core { version = [2,30], patch = 0 }-, atk { version = [2,30], patch = 0 }+, at-spi-atk { version = [2,33], patch = 1 }+, at-spi-core { version = [2,33], patch = 1 }+, atk { version = [2,33], patch = 1 } , babl { version = [0,1], patch = 60 } , binutils [2,31] , bison [3,3]@@ -3089,6 +3130,7 @@ , curl [7,63,0] , damageproto [1,2,1] , dbus [1,12,10]+, diffutils [3,7] , dri2proto [2,8] , elfutils [0,175] , emacs [26,1]@@ -3105,8 +3147,9 @@ , fribidi [1,0,5] , gawk [4,2,1] , gc [8,0,4]+-- , gcc [9,1,0] , gdb [8,2]-, gdk-pixbuf { version = [2,38], patch = 0 }+, gdk-pixbuf { version = [2,38], patch = 1 } , gegl { version = [0,4], patch = 12 } , gettext [0,19,8] , gexiv2 { version = [0,11], patch = 0 }@@ -3114,22 +3157,22 @@ , gperftools [2,7] , giflib [5,1,4] , git [2,19,2]-, glib { version = [2,58], patch = 3 } -- TODO: bump to 2.59.0 once gobject-introspection supports it+, glib { version = [2,60], patch = 3 } -- TODO: bump to 2.59.0 once gobject-introspection supports it , glproto [1,4,17] , glu [9,0,0] , json-glib { version = [1,4], patch = 4 } , glibc [2,28] , gmp [6,1,2]-, gobject-introspection { version = [1,59], patch = 3 }+, gobject-introspection { version = [1,60], patch = 1 } , gnome-doc-utils { version = [0,20], patch = 10 } , gnupg [2,2,15] , gnutls { version = [3,6], patch = 7 } , graphviz [2,40,1] , gsl [2,5] , gtk2 { version = [2,24], patch = 32 }-, gtk3 { version = [3,24], patch = 4 }+, gtk3 { version = [3,24], patch = 8 } , gzip [1,9]-, harfbuzz [2,4,0]+, harfbuzz [2,5,0] , htop [2,2,0] , imageMagick [7,0,8] , imlib2 [1,5,1]@@ -3175,7 +3218,7 @@ , libselinux [2,8] , libsepol [2,8] , libsodium [1,0,17]-, libsoup { version = [2,65], patch = 2 }+, libsoup { version = [2,67], patch = 1 } , libssh2 [1,8,0] , libtasn1 [4,13] , libtiff [4,0,10]@@ -3207,7 +3250,7 @@ , libXt [1,1,5] , libXtst [1,2,3] , libXxf86vm [1,1,4]-, llvm [7,0,1]+, llvm [8,0,0] , lmdb [0,9,23] , lua [5,3,5] , m17n [1,8,0]@@ -3215,9 +3258,10 @@ , mako [1,0,7] , markupSafe [1,0] , memcached [1,5,12]-, mesa [18,3,1]+, mesa [19,0,5] , meson [0,50,1]-, mpfr [4,0,2]+, mpc [1,0,3]+, mpfr [3,1,6] -- [4,0,2] , mosh [1,3,2] , motif [2,3,8] , musl [1,1,20]@@ -3232,9 +3276,10 @@ , nspr [4,20] , openssh [7,9] , openssl [1,1,1]-, p11kit [0,23,15]+, p11kit [0,23,16,1] , pango { version = [1,43], patch = 0 } , pari [2,11,1]+, patch [2,7] , pcre [8,42] , pcre2 [10,32] , perl5 [5,28,1]
src/Package/C/Build.hs view
@@ -63,7 +63,7 @@ liftIO $ copyFileWithMetadata absSrc absDest stepToProc dir' _ (Patch contents') = do liftIO $ TIO.writeFile (dir' </> "step.patch") contents'- waitProcess $ (proc "patch" ["-i", "step.patch"]) { cwd = Just dir' }+ waitProcess $ (proc "patch" ["-p0", "-i", "step.patch"]) { cwd = Just dir' } processSteps :: (Traversable t) => FilePath -- ^ Build directory