Added Compiler Wrapper script for Preprocessing using fypp#729
Added Compiler Wrapper script for Preprocessing using fypp#729arteevraina wants to merge 9 commits intofortran-lang:mainfrom
Conversation
|
Hi @awvwgk , Can you review this new script that I created using python ? |
|
This logic can compile the example packages checked in with |
|
@awvwgk Removed the unused output_dir from script. I think this PR is ready for review. |
|
There seems to be an issue with the macro scope. The macros set in the manifest are not visible when compiling tests: |
|
Good news is we can already compile and run all examples if |
Sure will check this. |
One more question regarding this. I am asking this because I am getting a module as duplicate when trying to build the source directory. cc @awvwgk |
Just two submodule and a file rename. diff --git a/src/common.fypp b/include/common.fypp
similarity index 100%
rename from src/common.fypp
rename to include/common.fypp
diff --git a/src/f08estop.f90 b/src/f08estop.f90
index 81c77f4..3fb0440 100644
--- a/src/f08estop.f90
+++ b/src/f08estop.f90
@@ -1,4 +1,4 @@
-submodule (stdlib_error) estop
+submodule (stdlib_error) f08estop
implicit none
diff --git a/src/f18estop.f90 b/src/f18estop.f90
index 59fd0c9..241665a 100644
--- a/src/f18estop.f90
+++ b/src/f18estop.f90
@@ -1,4 +1,4 @@
-submodule (stdlib_error) estop
+submodule (stdlib_error) f18estop
implicit none
@@ -26,4 +26,4 @@ else
endif
end procedure
-end submodule estop
+end submodule f18estop |
|
Hi @awvwgk , I have fixed the macros not being available while running tests error. Working on a fix for this as well in stdlib. |
More updates, So, I was able to compile all the tests except these two files :
I am currently trying to fix these and then we will be able to compile all the tests. cc: @awvwgk |
|
I think fpm already has the ability to compiler .c files, but |
|
The issue for cc @LKedward |
|
Yes, working on a separate branch dedicated to the cpp support is wise. You
can later merge it with your current branch.
Le ven. 26 août 2022 à 12:27, Arteev Raina ***@***.***> a
écrit :
… @jvdp1 <https://github.com/jvdp1> @awvwgk <https://github.com/awvwgk>
@LKedward <https://github.com/LKedward>
Should I work on separate branch for cpp support in fpm or should I handle
that in this branch only ?
—
Reply to this email directly, view it on GitHub
<#729 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AD5RO7HTPOHHIR6ZPA7U7DDV3CLXXANCNFSM56P3EZIQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
I know as we are parsing the |
This has been answered in the other PR, right? |
Yes, It has been resolved. |
188a61b to
bd53a84
Compare
|
The patch in PR #743 (@LKedward ) will fix the linking issue for us. But, there are two files in stdlib called cc : @awvwgk |
I believe that |
bd53a84 to
a49a97a
Compare
Hi @jvdp1, Sorry for the late response on this. I think if we look on the command that is currently failing, we have two
|
|
@awvwgk @arteevraina What should be done in this PR to merge it? |
|
Hi @jvdp1,
I will try to look again in the information shared in the PRs and try to resolve them one by one. |
|
@arteevraina @awvwgk @fortran-lang/fpm The issues mentioned in this thread seem to have been solved. At least I can compile this branch of What should be done to finalize this branch? This wrapper script would be a better alternative than this proposition and partially solve this issue and this issue cc: @jalvesz |
|
This is extremely interesting indeed!! it would make the whole process quite smooth! One question, I see that there is a fypp-gfortran.py script. Is this meant to be compiler dependent? Can't the pre-processing and the compiler choice for compiling be decoupled? Or is this meant to be used by the preprocessor option in the toml file as explained here https://fpm.fortran-lang.org/spec/manifest.html?highlight=fypp# such that it should be transparent for the user? |
IMO This was aimed to be a temporary solution before the full integration into |
.fyppfiles and storing them inside thebuilddirectory.