Comments (3)
That looks like a test which was specific to Fedora 28.
AS_IF([test "$enablexdr" != no],
[
dnl Check whether the system/compiler has xdr.h in /usr/include and glibc.
AC_MSG_CHECKING([for built-in XDR support])
CONFIGURE_XDR
dnl Check for headers in /usr/include/tirpc. (Fedora 28 does this.)
AS_IF([test "x$enablexdr" = "xno"],
[
AC_MSG_CHECKING([for XDR support in /usr/include/tirpc])
old_CPPFLAGS="$CPPFLAGS"
old_LIBS="$LIBS"
CPPFLAGS="$CPPFLAGS -I/usr/include/tirpc"
LIBS="$LIBS -ltirpc"
CONFIGURE_XDR
dnl If that worked, append the required include paths and libraries as necessary.
AS_IF([test "x$enablexdr" = "xyes"],
[
libmesh_optional_INCLUDES="$libmesh_optional_INCLUDES -I/usr/include/tirpc"
libmesh_optional_LIBS="$libmesh_optional_LIBS -ltirpc"
])
dnl Reset flags after testing
CPPFLAGS="$old_CPPFLAGS"
LIBS="$old_LIBS"
])
])
I guess the thinking here was that the average user has no idea where the rpc and xdr headers on their system are, so we didn't make it a customizable option? I agree it would be worth adding as an expert-friendly configure flag.
from libmesh.
The original idea was that RPC and XDR headers were standardized in the 1980s so it would be reasonable to just assume they're in the compiler's search paths already. But they never made it into POSIX so that wasn't a reasonable assumption in the end.
The second idea was that, okay, some systems move them around, but at least there's a new pseudostandard place. But that only works for users who can easily get software installed, which means it's not reasonable for all HPC systems. I've been pointing out how to manually override compiler and linker flags a couple times lately as a workaround.
And the third idea was the least reasonable of the three: "I should fix this but I'm too busy with other things and too lazy when I'm not busy". Thanks for beating me to it!
from libmesh.
That looks like a test which was specific to Fedora 28.
While working on #3711 I realized Ubuntu 22 (and probably previous releases) is also using /usr/include/tirpc
now, so seems like there is at least some standardization around that.
from libmesh.
Related Issues (20)
- constrain_element_matrix changes the col_dofs vector size HOT 3
- Investigating the possibility of only having one solution vector in systems HOT 3
- Make Abaqus node/side ID maps available
- DM type 'libmesh' did not attach the DM to the matrix HOT 6
- Issues with latest libmesh devel -> master merge HOT 1
- Operator `()` of a petsc vector is not safe if used together with `set()` in a threaded loop.
- The 'mesh.read()' operation encounters errors when executed with 2048 processors HOT 1
- ExodusII IO has variable ID bug which can prevent coordinates from being read-in from a file HOT 4
- The release v1.7.2 doesn't have the tarballs attached HOT 1
- "No rule to make target..." installation error on Windows HOT 3
- Install FParser `fptypes.hh` header
- Libmesh out-of-date on spack HOT 3
- install error with vcpkg on linux HOT 5
- System destructor requires the mesh to still be around, through the dof map HOT 11
- Setting a variable to zero in a given iteration
- Issue with metaphysicl tests when running "make check" HOT 5
- Issue with libmetis.so.5 while make install HOT 3
- Implement static condensation
- make error src/base/libmesh_opt_la-libmesh.lo error 1 HOT 2
- Import from MSH-File: HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libmesh.