Skip to content

Commit

Permalink
Release 0.7.0.0 (#206)
Browse files Browse the repository at this point in the history
* use Cabal-Version: 3.0, and bump up to 0.7.0.0
* correct LICENSE: BSD-2-Clause
* update nixpkgs
* made changelog stub
* add contents to ChangeLog. based on the PR history.
* update tested-with
* fix BSD3
  • Loading branch information
wavewave committed Dec 17, 2022
1 parent 6ce14ca commit e926340
Show file tree
Hide file tree
Showing 14 changed files with 158 additions and 31 deletions.
2 changes: 1 addition & 1 deletion build-tools/fficxx-build-tools.cabal
@@ -1,4 +1,4 @@
cabal-version: 2.4
cabal-version: 3.0
name: fficxx-build-tools
version: 0.1.0.0

Expand Down
6 changes: 3 additions & 3 deletions fficxx-multipkg-test/fficxx-multipkg-test.cabal
@@ -1,14 +1,14 @@
Cabal-Version: 3.0
Name: fficxx-multipkg-test
Version: 0.6
Version: 0.0
Synopsis: test for fficxx
Description: test for fficxx (with stdcxx)
License: BSD3
License: BSD-2-Clause
License-file: LICENSE
Author: Ian-Woo Kim
Maintainer: Ian-Woo Kim <ianwookim@gmail.com>
Build-Type: Simple
Category: FFI Tools
Cabal-Version: >= 1.8

Source-repository head
type: git
Expand Down
4 changes: 2 additions & 2 deletions fficxx-multipkg-test/tmpl-dup-inst/tmpl-dup-inst.cabal
@@ -1,14 +1,14 @@
Cabal-Version: 3.0
Name: tmpl-dup-inst
Version: 0.0
Synopsis: test for fficxx template instatiation duplication
Description: test for fficxx template instatiation duplication
License: BSD3
License: BSD-2-Clause
License-file: LICENSE
Author: Ian-Woo Kim
Maintainer: Ian-Woo Kim <ianwookim@gmail.com>
Build-Type: Simple
Category: FFI Tools
Cabal-Version: >= 1.8

Source-repository head
type: git
Expand Down
62 changes: 62 additions & 0 deletions fficxx-runtime/ChangeLog.md
@@ -0,0 +1,62 @@
# Changelog for fficxx-runtime

## 0.7.0.0

- Show generated module dependency graph (#203)
- Fix incorrect hs-boot (#199)
- Simplify Nix script and support for multiple GHC versions in build (#196)
- aarch64-darwin support (#195)
- Implicit imports cleanup (#193)
- Upgrade to NixOS 21.11. (#192)
- CI action for ormolu formatting (#190)
- github action CI with nix build targets (#189)
- format all Haskell files by ormolu 0.0.3 (#180)


## 0.6

- no more impure <nixpkgs> (#178)
- Duplicated template instances are safe (#176)
- Update for haskell-src-exts >= 1.22 (#174)
- change to_const/to_nonconst to from_X_to_Y (#172)
- std::map<k,v>::iterator is now supported. (#168)
- accessor for member variables of C++ template (#167)
- Support nested types inside template class (#163)
- Automatic dependency import in template class module (#162)
- cabal package generation and testing using hspec (#159)
- fficxx-test: stdcxx tests are rewritten as hspec tests (#158)
- multi-parameter template for function arguments and template member functions (#156)
- C++ multi-parameter template interfaced via fficxx! (#154)
- one class or template class per one haskell module! (#151)
- Inline C++ code generation for template member function (#149)
- Inline C++ code generation for std::function (#148)
- CDefinition. Unified newline treatment in Macro definition (#143)
- More ASTification with CMacroApp (#141)
- Declaration generation uses intermediate pseudo-AST representation (#140)
- Further towards intermediate reps for C++ code generation (#139)
- Further removing #include and using namespace (#138)
- Start C intermediate rep (#137)
- Convert (Types,String) to Arg (#134)
- no more stub.cc (#132)

## 0.5.1

## 0.5.0.1

## 0.5

## 0.4.1

## 0.4

## 0.3.1

## 0.3

## 0.2.1

## 0.2

## 0.1.0

## 0.1
2 changes: 1 addition & 1 deletion fficxx-runtime/LICENSE
@@ -1,7 +1,7 @@
The following license covers this documentation, and the source code, except
where otherwise indicated.

Copyright 2011-2019, Ian-Woo Kim. All rights reserved.
Copyright 2011-2022, Ian-Woo Kim. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
10 changes: 6 additions & 4 deletions fficxx-runtime/fficxx-runtime.cabal
@@ -1,16 +1,18 @@
Cabal-Version: 3.0
Name: fficxx-runtime
Version: 0.6.999
Version: 0.7.0.0
Synopsis: Runtime for fficxx-generated library
Description: Runtime for fficxx-generated library.
fficxx is an automatic haskell Foreign Function Interface (FFI) generator to C++.
License: BSD3
License: BSD-2-Clause
License-file: LICENSE
Author: Ian-Woo Kim
Maintainer: Ian-Woo Kim <ianwookim@gmail.com>
Build-Type: Simple
Tested-With: GHC == 9.0.2 || == 9.2.4 || == 9.4.2
Category: FFI Tools
Cabal-Version: >= 1.10
Data-files:
Extra-Source-Files:
ChangeLog.md

Source-repository head
type: git
Expand Down
6 changes: 3 additions & 3 deletions fficxx-test/fficxx-test.cabal
@@ -1,14 +1,14 @@
Cabal-Version: 3.0
Name: fficxx-test
Version: 0.6
Version: 0.7.0.0
Synopsis: test for fficxx
Description: test for fficxx (with stdcxx)
License: BSD3
License: BSD-2-Clause
License-file: LICENSE
Author: Ian-Woo Kim
Maintainer: Ian-Woo Kim <ianwookim@gmail.com>
Build-Type: Simple
Category: FFI Tools
Cabal-Version: >= 1.8

Source-repository head
type: git
Expand Down
62 changes: 62 additions & 0 deletions fficxx/ChangeLog.md
@@ -0,0 +1,62 @@
# Changelog for fficxx

## 0.7.0.0

- Show generated module dependency graph (#203)
- Fix incorrect hs-boot (#199)
- Simplify Nix script and support for multiple GHC versions in build (#196)
- aarch64-darwin support (#195)
- Implicit imports cleanup (#193)
- Upgrade to NixOS 21.11. (#192)
- CI action for ormolu formatting (#190)
- github action CI with nix build targets (#189)
- format all Haskell files by ormolu 0.0.3 (#180)


## 0.6

- no more impure <nixpkgs> (#178)
- Duplicated template instances are safe (#176)
- Update for haskell-src-exts >= 1.22 (#174)
- change to_const/to_nonconst to from_X_to_Y (#172)
- std::map<k,v>::iterator is now supported. (#168)
- accessor for member variables of C++ template (#167)
- Support nested types inside template class (#163)
- Automatic dependency import in template class module (#162)
- cabal package generation and testing using hspec (#159)
- fficxx-test: stdcxx tests are rewritten as hspec tests (#158)
- multi-parameter template for function arguments and template member functions (#156)
- C++ multi-parameter template interfaced via fficxx! (#154)
- one class or template class per one haskell module! (#151)
- Inline C++ code generation for template member function (#149)
- Inline C++ code generation for std::function (#148)
- CDefinition. Unified newline treatment in Macro definition (#143)
- More ASTification with CMacroApp (#141)
- Declaration generation uses intermediate pseudo-AST representation (#140)
- Further towards intermediate reps for C++ code generation (#139)
- Further removing #include and using namespace (#138)
- Start C intermediate rep (#137)
- Convert (Types,String) to Arg (#134)
- no more stub.cc (#132)

## 0.5.1

## 0.5.0.1

## 0.5

## 0.4.1

## 0.4

## 0.3.1

## 0.3

## 0.2.1

## 0.2

## 0.1.0

## 0.1
2 changes: 1 addition & 1 deletion fficxx/LICENSE
@@ -1,7 +1,7 @@
The following license covers this documentation, and the source code, except
where otherwise indicated.

Copyright 2011-2019, Ian-Woo Kim. All rights reserved.
Copyright 2011-2022, Ian-Woo Kim. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
9 changes: 6 additions & 3 deletions fficxx/fficxx.cabal
@@ -1,14 +1,17 @@
Cabal-Version: 3.0
Name: fficxx
Version: 0.6.999
Version: 0.7.0.0
Synopsis: Automatic C++ binding generation
Description: fficxx is an automatic haskell Foreign Function Interface (FFI) generator to C++.
License: BSD3
License: BSD-2-Clause
License-file: LICENSE
Author: Ian-Woo Kim
Maintainer: Ian-Woo Kim <ianwookim@gmail.com>
Build-Type: Simple
Tested-With: GHC == 9.0.2 || == 9.2.4 || == 9.4.2
Category: FFI Tools
Cabal-Version: >= 1.10
Extra-Source-Files:
ChangeLog.md

Source-repository head
type: git
Expand Down
8 changes: 4 additions & 4 deletions fficxx/src/FFICXX/Generate/Code/Cabal.hs
Expand Up @@ -130,16 +130,16 @@ genOtherModules _cmods = [""]
genPkgDeps :: [CabalName] -> [String]
genPkgDeps cs =
[ "base > 4 && < 5",
"fficxx >= 0.5",
"fficxx-runtime >= 0.5",
"fficxx >= 0.7",
"fficxx-runtime >= 0.7",
"template-haskell"
]
++ map unCabalName cs

-- |
cabalTemplate :: Text
cabalTemplate =
"Cabal-version: 2.2\n\
"Cabal-version: 3.0\n\
\Name: $pkgname\n\
\Version: $version\n\
\Synopsis: $synopsis\n\
Expand All @@ -150,7 +150,7 @@ cabalTemplate =
\Author: $author\n\
\Maintainer: $maintainer\n\
\Category: $category\n\
\Tested-with: GHC >= 7.6\n\
\Tested-with: GHC == 9.0.2 || == 9.2.4 || == 9.4.2 \n\
\$buildtype\n\
\Extra-source-files:\n\
\$extraFiles\n\
Expand Down
8 changes: 4 additions & 4 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 1 addition & 3 deletions flake.nix
@@ -1,9 +1,7 @@
{
description = "fficxx";
inputs = {
# nixpkgs/master on 2022-10-21
nixpkgs.url =
"github:NixOS/nixpkgs/71c5816834f93840dd301ec384c9d7947e97c27d";
nixpkgs.url = "github:NixOS/nixpkgs/master";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
Expand Down
4 changes: 2 additions & 2 deletions stdcxx-gen/Gen.hs
Expand Up @@ -57,13 +57,13 @@ cabal :: Cabal
cabal =
Cabal
{ cabal_pkgname = CabalName "stdcxx",
cabal_version = "0.6.999",
cabal_version = "0.7.0.0",
cabal_cheaderprefix = "STD",
cabal_moduleprefix = "STD",
cabal_additional_c_incs = [],
cabal_additional_c_srcs = [],
cabal_additional_pkgdeps = [],
cabal_license = Just "BSD-3-Clause",
cabal_license = Just "BSD-2-Clause",
cabal_licensefile = Just "LICENSE",
cabal_extraincludedirs = [],
cabal_extralibdirs = [],
Expand Down

0 comments on commit e926340

Please sign in to comment.