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

Remove redundant TriBITS includes in CMakeLists.txt files #489

Closed
bartlettroscoe opened this issue Jul 11, 2016 · 5 comments
Closed

Remove redundant TriBITS includes in CMakeLists.txt files #489

bartlettroscoe opened this issue Jul 11, 2016 · 5 comments
Assignees
Labels
Framework tasks Framework tasks (used internally by Framework team)

Comments

@bartlettroscoe
Copy link
Member

bartlettroscoe commented Jul 11, 2016

Next Action Status:

Changes accepted for SEACAS github repo. Changes for native Trilinos packages pushed. Next: Wait for STK to make changes in native repo and Kokkos to accept PR ...

CC: @trilinos/framework

Description

A long time ago, TriBITS added all the includes needed to process project, repository, and package files to the TriBITS.cmake file. This avoids the need to include the same files over and over again in user *.cmake and CMakeLists.txt files. This removes clutter and speeds up configures.

There is a single script in TriBITS that automatically does this upgrade:

TriBITS/refactoring/remove_std_tribits_includes_r.sh

@bartlettroscoe bartlettroscoe added the Framework tasks Framework tasks (used internally by Framework team) label Jul 11, 2016
@bartlettroscoe
Copy link
Member Author

Looks like most of the redundant includes are in SEACAS and STK. I will issue tickets in their native issue tracker systems to run the update script. Actually, for SEACAS I can just do a PR on the independent SEACAS git repo. I will take care of the other packages that I can change.

bartlettroscoe added a commit to bartlettroscoe/seacas that referenced this issue Jul 11, 2016
A long time ago, TriBITS added all of the necessary includes in TriBITS.cmake
to avoid needing to have the project, repostory, and packages *.cmake and
CMakeLists.txt files from needing to include many of the TriBITS *.cmake
module files (see TriBITSPub/TriBITS#18).

This commit was created by running the script:

  TriBITS/refactoring/remove_std_tribits_includes_r.sh

Also, see trilinos/Trilinos#489.
@bartlettroscoe
Copy link
Member Author

Greg already merged my PR to remove the redundant includes from the SEACAS repo (see sandialabs/seacas#52).

Remaining packages that have includes that should be removed include:

  • DOMI: @wfspotz
  • Intrepid2: @trilinos/intrepid2
  • Kokkos: @crtrott
  • MueLu: @trilinos/muelu
  • Phalanx: @trilinos/phalanx
  • PIKE: @rppawlo
  • ROL: @trilinos/rol
  • ShyLU: @trilinos/shylu
  • STK: @trilinos/stk
  • Stokhos: @trilinos/stokhos
  • Xpetra: @trilinos/xpetra

I will apply the refactoring script to all of the packages, command and push for all of the packages except for STK and Kokkos. This just a heads up for the packages other thank STK and Kokkos.

For STK, I will file a Trac ticket for STK against the native issue tracking system for STK.

For Kokkos, I will issue a PR against their github repo.

bartlettroscoe added a commit to bartlettroscoe/kokkos that referenced this issue Jul 11, 2016
This speeds up configures and these are not needed.  See
trilinos/Trilinos#489.
@bartlettroscoe bartlettroscoe added the stage: in progress Work on the issue has started label Jul 11, 2016
@bartlettroscoe bartlettroscoe self-assigned this Jul 11, 2016
@bartlettroscoe
Copy link
Member Author

For STK, I created the native STK Trac issue #15252 for this.

For Kokkos, I created kokkos/kokkos#358.

Now for the rest of the packages.

bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This got added by the script that was removing redundant TriBITS includes (see
Trilinose #489).
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
These newlines got added by the script that removes redundant TriBITS includes
(see #489).
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
These newlines got added by the script that removes redundant TriBITS includes
(see #489).
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
These newlines got added by the script that removes redundant TriBITS includes
(see #489).
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
These newlines got added by the script that removes redundant TriBITS includes
(see #489).
bartlettroscoe added a commit that referenced this issue Jul 12, 2016
This removes clutter and speeds up configures.  See #489.

Build/Test Cases Summary
Enabled Packages: Belos, Domi, Intrepid2, MueLu, Phalanx, Pike, PikeBlackBox, PikeImplicit, ROL, Sacado, ShyLUBDDC, Stokhos, Xpetra
Disabled Packages: PyTrilinos,Pliris,Claps,TriKota
Enabled all Forward Packages
0) MPI_DEBUG => Test case MPI_DEBUG was not run! => Does not affect push readiness! (-1.00 min)
1) SERIAL_RELEASE => Test case SERIAL_RELEASE was not run! => Does not affect push readiness! (-1.00 min)
2) MPI_RELEASE_DEBUG_SHARED_ST => passed: passed=1823,notpassed=0 (372.70 min)
Other local commits for this build/test group: dab529c, 70511c3, 8f491b6, 006799f, 255616c, daf5ef3, f4d67f7, b6dd0b3, 4eacf05, 42bf667, 487c157
@bartlettroscoe
Copy link
Member Author

All that is left to do is:

gsjaardema pushed a commit to sandialabs/seacas that referenced this issue Jul 21, 2016
A long time ago, TriBITS added all of the necessary includes in TriBITS.cmake
to avoid needing to have the project, repostory, and packages *.cmake and
CMakeLists.txt files from needing to include many of the TriBITS *.cmake
module files (see TriBITSPub/TriBITS#18).

This commit was created by running the script:

  TriBITS/refactoring/remove_std_tribits_includes_r.sh

Also, see trilinos/Trilinos#489.
@bartlettroscoe
Copy link
Member Author

The PR kokkos/kokkos#358 was accepted and the Kokkos snapshot:

$ git log --name-status -1 -SINCLUDE -- packages/kokkos/

commit 23a068986de5d41168a9db918b8fbfc37705ab92
Author: crtrott <[email protected]>
Date:   Fri Sep 2 13:52:12 2016 -0600

    Snapshot of kokkos from commit e41193250907211302bdb94aa55044489c8145d0
    
    From repository at [email protected]:kokkos/kokkos
    
    At commit:
    commit e41193250907211302bdb94aa55044489c8145d0
    Merge: 9afaa87 555f1a3
    Author: crtrott <[email protected]>
    Date:   Fri Sep 2 13:33:42 2016 -0600
    
        Merge remote-tracking branch 'origin/develop'

M       packages/kokkos/example/sort_array/CMakeLists.txt

brought this into Trilinos.

Also, the STK developers ran the TriBITS refactoring script and the following commit was recently synced to Trilinos:

commit b85d6f8ecc8958004b6ca9f16faadd12a6a75836
Author: Kendall Hugh Pierson <[email protected]>
Date:   Mon Aug 1 14:38:02 2016 -0600

    stk: Run tribits refactoring script on CMakeLists
    
     This commit only touches CMakeLists files for building
     stk within trilinos.
    
    (From STK/SEACAS)

M       packages/stk/CMakeLists.txt
M       packages/stk/stk_classic/CMakeLists.txt
M       packages/stk/stk_classic/stk_algsup/stk_algsup/CMakeLists.txt
M       packages/stk/stk_classic/stk_algsup/unit_tests/CMakeLists.txt
M       packages/stk/stk_classic/stk_expreval/stk_expreval/CMakeLists.txt
...

This story is complete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Framework tasks Framework tasks (used internally by Framework team)
Projects
None yet
Development

No branches or pull requests

1 participant