Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add fpm support for fftapck with double precision #2

Merged
merged 1 commit into from
Jul 28, 2021

Conversation

zoziha
Copy link
Contributor

@zoziha zoziha commented Jul 27, 2021

  • Add fpm support
  • Move source code to src and test folder.
  • Move doc files to doc folder.
  • Rewrite Makefiles.

Notes

About brocolis/fftpack, it is from netlib/fftpack4.0 with single precision.
About certik/fftpack, it is from netlib/dfftpack1.0(fftpack4.0) with double precision.
The open source agreement of the above packages is public domain, it is more user-friendly.

About fftpack5.1 discussed in issue #1 , based on the open source license, I do not add fpm support for them now.
nacr/fftpack5.1 uses a unique FFTPack license for open source (see #1).
John/fftpack5.1 uses the LGPL license for open source (see #1).

Move source code to `src` and `test` folder.
Move doc files to `doc` folder.
Rewrite Makefiles.
Copy link
Contributor Author

@zoziha zoziha left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Next time I will try to add CI to this fftpack library, just like Minpack : CI.

You can build using provided `fpm.toml`:
```bash
fpm build --flag "-O2"
fpm test --flag "-O2" tstfft
Copy link
Contributor Author

@zoziha zoziha Jul 27, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because the fpm software uses the -fcheck=bounds flag option by default, this is not compatible with the source code of fftpack now.
For example in your repo here:
https://github.com/certik/fftpack/blob/030cbf4fd35c35ef19387b4835bde3ac73019b64/cosqb1.f#L3

They shall be:

DIMENSION       X(*)       ,W(*)       ,XH(*) 

I will fix all of them next time, see my done repo fortran-fans/fftpack4.0-public-domain:

https://github.com/fortran-fans/fftpack4.0-public-domain/blob/bc35769b8eeee86a1dda850cb4fef8cadde62e5f/src/cosqb1.f#L3

@certik
Copy link
Member

certik commented Jul 27, 2021

Thanks! Let me test this out to see if it works.

@certik
Copy link
Member

certik commented Jul 28, 2021

I tested it, and it builds!

@certik certik merged commit a8f7ae8 into fortran-lang:master Jul 28, 2021
@certik
Copy link
Member

certik commented Jul 28, 2021

I added you to the repository, so you will be able to merge PRs. Go ahead and submit the CI as you mentioned, I'll try to review quickly once you send it. Thank you!

@zoziha
Copy link
Contributor Author

zoziha commented Jul 28, 2021

Thanks! @certik
Okay, work will go on~

@zoziha zoziha deleted the add_fpm_support branch July 28, 2021 09:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants