Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
611d3b3f80 | ||
|
9dacf65269 | ||
|
1153cadbce | ||
|
13ad6ec1e2 | ||
|
e3a644cc4d | ||
|
8ec949583d | ||
|
30e84a0f23 | ||
|
2196bb8e85 | ||
|
e18343453a | ||
|
f65f0753f1 | ||
|
859f2fcc90 | ||
|
2ba3053f2b | ||
|
58efc17d6c |
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
/lukko-0.1.1.2.tar.gz
|
/lukko-0.1.1.2.tar.gz
|
||||||
|
/lukko-0.1.1.3.tar.gz
|
||||||
|
29
changelog
Normal file
29
changelog
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.3-5
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jun 17 2022 Jens Petersen <petersen@redhat.com> - 0.1.1.3-4
|
||||||
|
- rebuild
|
||||||
|
|
||||||
|
* Thu Mar 10 2022 Jens Petersen <petersen@redhat.com> - 0.1.1.3-3
|
||||||
|
- rebuild
|
||||||
|
|
||||||
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.3-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Aug 5 2021 Jens Petersen <petersen@redhat.com> - 0.1.1.3-1
|
||||||
|
- update to 0.1.1.3
|
||||||
|
|
||||||
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.2-5
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.2-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.2-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jul 17 2020 Jens Petersen <petersen@redhat.com> - 0.1.1.2-2
|
||||||
|
- refresh to cabal-rpm-2.0.6
|
||||||
|
|
||||||
|
* Mon Jun 22 2020 Jens Petersen <petersen@redhat.com> - 0.1.1.2-1
|
||||||
|
- spec file generated by cabal-rpm-2.0.6
|
@ -1,4 +1,4 @@
|
|||||||
# generated by cabal-rpm-2.0.6
|
# generated by cabal-rpm-2.1.0
|
||||||
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/
|
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/
|
||||||
|
|
||||||
%global pkg_name lukko
|
%global pkg_name lukko
|
||||||
@ -7,20 +7,24 @@
|
|||||||
# testsuite missing deps: tasty-expected-failure
|
# testsuite missing deps: tasty-expected-failure
|
||||||
|
|
||||||
Name: ghc-%{pkg_name}
|
Name: ghc-%{pkg_name}
|
||||||
Version: 0.1.1.2
|
Version: 0.1.1.3
|
||||||
Release: 3%{?dist}
|
Release: %autorelease
|
||||||
Summary: File locking
|
Summary: File locking
|
||||||
|
|
||||||
License: GPLv2+ and BSD
|
License: GPL-2.0-or-later AND BSD-3-Clause
|
||||||
Url: https://hackage.haskell.org/package/%{pkg_name}
|
Url: https://hackage.haskell.org/package/%{pkg_name}
|
||||||
# Begin cabal-rpm sources:
|
# Begin cabal-rpm sources:
|
||||||
Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
|
Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
|
||||||
|
Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal
|
||||||
# End cabal-rpm sources
|
# End cabal-rpm sources
|
||||||
|
|
||||||
# Begin cabal-rpm deps:
|
# Begin cabal-rpm deps:
|
||||||
BuildRequires: ghc-Cabal-devel
|
BuildRequires: ghc-Cabal-devel
|
||||||
BuildRequires: ghc-rpm-macros
|
BuildRequires: ghc-rpm-macros
|
||||||
|
BuildRequires: ghc-base-devel
|
||||||
|
%if %{with ghc_prof}
|
||||||
BuildRequires: ghc-base-prof
|
BuildRequires: ghc-base-prof
|
||||||
|
%endif
|
||||||
# End cabal-rpm deps
|
# End cabal-rpm deps
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -77,6 +81,7 @@ This package provides the Haskell %{pkg_name} library development files.
|
|||||||
%package doc
|
%package doc
|
||||||
Summary: Haskell %{pkg_name} library documentation
|
Summary: Haskell %{pkg_name} library documentation
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
Requires: ghc-filesystem
|
||||||
|
|
||||||
%description doc
|
%description doc
|
||||||
This package provides the Haskell %{pkg_name} library documentation.
|
This package provides the Haskell %{pkg_name} library documentation.
|
||||||
@ -97,7 +102,7 @@ This package provides the Haskell %{pkg_name} profiling library.
|
|||||||
%prep
|
%prep
|
||||||
# Begin cabal-rpm setup:
|
# Begin cabal-rpm setup:
|
||||||
%setup -q -n %{pkgver}
|
%setup -q -n %{pkgver}
|
||||||
chmod a-x CHANGELOG.md
|
cp -bp %{SOURCE1} %{pkg_name}.cabal
|
||||||
# End cabal-rpm setup
|
# End cabal-rpm setup
|
||||||
|
|
||||||
|
|
||||||
@ -139,11 +144,4 @@ chmod a-x CHANGELOG.md
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.1.2-3
|
%autochangelog
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 17 2020 Jens Petersen <petersen@redhat.com> - 0.1.1.2-2
|
|
||||||
- refresh to cabal-rpm-2.0.6
|
|
||||||
|
|
||||||
* Mon Jun 22 2020 Jens Petersen <petersen@redhat.com> - 0.1.1.2-1
|
|
||||||
- spec file generated by cabal-rpm-2.0.6
|
|
||||||
|
168
lukko-0.1.1.3.cabal
Normal file
168
lukko-0.1.1.3.cabal
Normal file
@ -0,0 +1,168 @@
|
|||||||
|
cabal-version: 2.2
|
||||||
|
name: lukko
|
||||||
|
version: 0.1.1.3
|
||||||
|
x-revision: 3
|
||||||
|
synopsis: File locking
|
||||||
|
category: System, Concurrency
|
||||||
|
description:
|
||||||
|
This package provides access to platform dependent file locking APIs:
|
||||||
|
.
|
||||||
|
* <https://www.gnu.org/software/libc/manual/html_node/Open-File-Description-Locks.html Open file descriptor locking> on Linux ("Lukko.OFD")
|
||||||
|
* BSD-style @flock(2)@ locks on UNIX platforms ("Lukko.FLock")
|
||||||
|
* Windows locking via <https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-lockfilee LockFileEx> ("Lukko.Windows")
|
||||||
|
* No-op locking, which throws exceptions ("Lukko.NoOp")
|
||||||
|
* "Lukko" module exports the best option for the target platform with uniform API.
|
||||||
|
.
|
||||||
|
There are alternative file locking packages:
|
||||||
|
.
|
||||||
|
* "GHC.IO.Handle.Lock" in @base >= 4.10@ is good enough for most use cases.
|
||||||
|
However, uses only 'Handle's so these locks cannot be used for intra-process locking.
|
||||||
|
(You should use e.g. 'MVar' in addition).
|
||||||
|
.
|
||||||
|
* <https://hackage.haskell.org/package/filelock filelock> doesn't support OFD locking.
|
||||||
|
.
|
||||||
|
/Lukko/ means lock in Finnish.
|
||||||
|
.
|
||||||
|
Submodules "Lukko.OFD", "Lukko.Windows" etc are available based on following conditions.
|
||||||
|
.
|
||||||
|
@
|
||||||
|
if os(windows)
|
||||||
|
\ cpp-options: -DHAS_WINDOWS_LOCK
|
||||||
|
.
|
||||||
|
elif (os(linux) && flag(ofd-locking))
|
||||||
|
\ cpp-options: -DHAS_OFD_LOCKING
|
||||||
|
\ cpp-options: -DHAS_FLOCK
|
||||||
|
.
|
||||||
|
elif !(os(solaris) || os(aix))
|
||||||
|
\ cpp-options: -DHAS_FLOCK
|
||||||
|
@
|
||||||
|
.
|
||||||
|
"Lukko.FLock" is available on not (Windows or Solaris or AIX).
|
||||||
|
"Lukko.NoOp" is always available.
|
||||||
|
|
||||||
|
maintainer: Oleg Grenrus <oleg.grenrus@iki.fi>
|
||||||
|
license: GPL-2.0-or-later AND BSD-3-Clause
|
||||||
|
license-files:
|
||||||
|
LICENSE
|
||||||
|
LICENSE.GPLv2
|
||||||
|
LICENSE.GPLv3
|
||||||
|
|
||||||
|
build-type: Simple
|
||||||
|
extra-source-files: CHANGELOG.md
|
||||||
|
tested-with:
|
||||||
|
GHC ==7.6.3
|
||||||
|
|| ==7.8.4
|
||||||
|
|| ==7.10.3
|
||||||
|
|| ==8.0.2
|
||||||
|
|| ==8.2.2
|
||||||
|
|| ==8.4.4
|
||||||
|
|| ==8.6.5
|
||||||
|
|| ==8.8.4
|
||||||
|
|| ==8.10.7
|
||||||
|
|| ==9.0.2
|
||||||
|
|| ==9.2.4
|
||||||
|
|| ==9.4.1
|
||||||
|
|
||||||
|
source-repository head
|
||||||
|
type: git
|
||||||
|
location: https://github.com/haskellari/lukko/
|
||||||
|
|
||||||
|
flag ofd-locking
|
||||||
|
default: True
|
||||||
|
manual: True
|
||||||
|
description:
|
||||||
|
Enable open file descriptor locking. Available on Linux (kernel 3.15, released Jun 8, 2014).
|
||||||
|
|
||||||
|
library
|
||||||
|
default-language: Haskell2010
|
||||||
|
hs-source-dirs: src
|
||||||
|
build-depends: base >=4.5 && <4.18
|
||||||
|
build-tool-depends: hsc2hs:hsc2hs >=0.67 && <0.69
|
||||||
|
|
||||||
|
-- Main library module
|
||||||
|
exposed-modules:
|
||||||
|
Lukko
|
||||||
|
Lukko.NoOp
|
||||||
|
|
||||||
|
if os(windows)
|
||||||
|
hs-source-dirs: src-windows
|
||||||
|
cpp-options: -DUSE_WINDOWS_LOCK
|
||||||
|
exposed-modules: Lukko.Windows
|
||||||
|
c-sources: cbits/windows.c
|
||||||
|
|
||||||
|
elif (os(linux) && flag(ofd-locking))
|
||||||
|
hs-source-dirs: src-ofd
|
||||||
|
hs-source-dirs: src-flock
|
||||||
|
hs-source-dirs: src-unix
|
||||||
|
cpp-options: -DUSE_OFD_LOCKING
|
||||||
|
exposed-modules: Lukko.OFD
|
||||||
|
|
||||||
|
elif !(os(solaris) || os(aix))
|
||||||
|
hs-source-dirs: src-flock
|
||||||
|
hs-source-dirs: src-unix
|
||||||
|
cpp-options: -DUSE_FLOCK
|
||||||
|
|
||||||
|
else
|
||||||
|
hs-source-dirs: src-unix
|
||||||
|
cpp-options: -DUSE_NOOP
|
||||||
|
|
||||||
|
-- Cabal check is silly
|
||||||
|
if (!os(windows) && !(os(solaris) || os(aix)))
|
||||||
|
exposed-modules: Lukko.FLock
|
||||||
|
|
||||||
|
other-modules:
|
||||||
|
Lukko.Internal.FD
|
||||||
|
Lukko.Internal.FillBytes
|
||||||
|
Lukko.Internal.HandleToFD
|
||||||
|
Lukko.Internal.Types
|
||||||
|
|
||||||
|
test-suite test-thread
|
||||||
|
default-language: Haskell2010
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
hs-source-dirs: test
|
||||||
|
main-is: Tests.hs
|
||||||
|
ghc-options: -threaded
|
||||||
|
build-depends:
|
||||||
|
, async ^>=2.2.2
|
||||||
|
, base
|
||||||
|
, filepath ^>=1.3.0.0 || ^>=1.4.0.0
|
||||||
|
, lukko
|
||||||
|
, singleton-bool ^>=0.1.5
|
||||||
|
, tasty ^>=1.4.0.1
|
||||||
|
, tasty-expected-failure ^>=0.11.1.2 || ^>=0.12.2
|
||||||
|
, tasty-hunit ^>=0.10.0.2
|
||||||
|
, temporary ^>=1.3
|
||||||
|
|
||||||
|
if !impl(ghc >=7.8)
|
||||||
|
build-depends: tagged ^>=0.8.5
|
||||||
|
|
||||||
|
if os(windows)
|
||||||
|
cpp-options: -DHAS_WINDOWS_LOCK
|
||||||
|
|
||||||
|
elif (os(linux) && flag(ofd-locking))
|
||||||
|
cpp-options: -DHAS_OFD_LOCKING
|
||||||
|
cpp-options: -DHAS_FLOCK
|
||||||
|
|
||||||
|
elif !(os(solaris) || os(aix))
|
||||||
|
cpp-options: -DHAS_FLOCK
|
||||||
|
|
||||||
|
test-suite test-process
|
||||||
|
default-language: Haskell2010
|
||||||
|
type: exitcode-stdio-1.0
|
||||||
|
hs-source-dirs: test
|
||||||
|
main-is: TestProcess.hs
|
||||||
|
ghc-options: -threaded
|
||||||
|
build-depends:
|
||||||
|
, base
|
||||||
|
, bytestring >=0.9.2.1 && <0.12
|
||||||
|
, lukko
|
||||||
|
|
||||||
|
if os(windows)
|
||||||
|
cpp-options: -DHAS_WINDOWS_LOCK
|
||||||
|
|
||||||
|
elif (os(linux) && flag(ofd-locking))
|
||||||
|
cpp-options: -DHAS_OFD_LOCKING
|
||||||
|
cpp-options: -DHAS_FLOCK
|
||||||
|
|
||||||
|
elif !(os(solaris) || os(aix))
|
||||||
|
cpp-options: -DHAS_FLOCK
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (lukko-0.1.1.2.tar.gz) = fe3a6687b741491ebaeace29c8d4d01307fad43f0e649c087fef24ec227eb231541fa1500e1685c814eb2a1ea472546033e837ce84fa64df79f00b19f8abebb6
|
SHA512 (lukko-0.1.1.3.tar.gz) = 8bed8b88a101883f642bb9d9d41512436f5c80db5ea1ad0cddb069c6d09257d21b56a60e0f70b57453e91126065fbfdeeb721064763e64de1975dcb51b1a484a
|
||||||
|
Loading…
Reference in New Issue
Block a user