@@ -56,123 +56,107 @@ AC_DEFUN([MCA_opal_event_external_POST_CONFIG],[
56
56
AC_DEFUN([MCA_opal_event_external_CONFIG],[
57
57
AC_CONFIG_FILES([opal/mca/event/external/Makefile])
58
58
59
- OPAL_VAR_SCOPE_PUSH([opal_event_external_CPPFLAGS_save opal_event_external_CFLAGS_save opal_event_external_LDFLAGS_save opal_event_external_LIBS_save])
60
-
61
- AC_ARG_WITH([libevent],
62
- [AC_HELP_STRING([--with-libevent= DIR],
63
- [Search for libevent headers and libraries in DIR. Should only be used if an external copy of libevent is being used.])])
64
-
65
- # Bozo check
66
- AS_IF([test " $with_libevent " = " no" ],
67
- [AC_MSG_WARN([It is not possible to configure Open MPI --without-libevent])
68
- AC_MSG_ERROR([Cannot continue])])
69
-
70
- AC_ARG_WITH([libevent-libdir],
71
- [AC_HELP_STRING([--with-libevent-libdir= DIR],
72
- [Search for libevent libraries in DIR. Should only be used if an external copy of libevent is being used.])])
73
-
74
- # Make sure the user didn't specify --with-libevent=internal and
75
- # --with-libevent-libdir=whatever (because you can only specify
76
- # --with-libevent-libdir when external libevent is being used).
77
- AS_IF([test " $with_libevent " = " internal" && test -n " $with_libevent_libdir " ],
78
- [AC_MSG_WARN([Both --with-libevent= internal and --with-libevent-libdir= DIR])
79
- AC_MSG_WARN([were specified, which does not make sense.])
80
- AC_MSG_ERROR([Cannot continue])])
81
-
82
- # Do we want this external component? (slightly redundant logic,
83
- # but hopefully slightly more clear...)
84
- opal_event_external_want=no
85
- AS_IF([test " $with_libevent " = " external" ], [opal_event_external_want= yes])
86
- AS_IF([test -n " $with_libevent_libdir " ], [opal_event_external_want= yes])
87
- AS_IF([test -n " $with_libevent " && test " $with_libevent " != " no" && test " $with_libevent " != " internal" ], [opal_event_external_want= yes])
88
-
89
- # If we want external support, try it
90
- AS_IF([test " $opal_event_external_want " = " yes" ],
91
- [ # Error out if the specified dir does not exist
92
- OPAL_CHECK_WITHDIR([libevent-libdir], [$with_libevent_libdir ],
93
- [libevent.* ])
94
-
95
- AC_MSG_CHECKING([for external libevent in])
96
- AS_IF([test " $with_libevent " != " external" && test " $with_libevent " != " yes" ],
97
- [opal_event_dir= $with_libevent
98
- AC_MSG_RESULT([$opal_event_dir ])
99
- OPAL_CHECK_WITHDIR([libevent], [$opal_event_dir ],
100
- [include/event.h])
101
- AS_IF([test -z " $with_libevent_libdir " || test " $with_libevent_libdir " = " yes" ],
102
- [AC_MSG_CHECKING([for $with_libevent /lib64])
103
- AS_IF([test -d " $with_libevent /lib64" ],
104
- [opal_event_libdir_found= yes
105
- AC_MSG_RESULT([found])],
106
- [opal_event_libdir_found= no
107
- AC_MSG_RESULT([not found])])
108
- AS_IF([test " $opal_event_libdir_found " = " yes" ],
109
- [opal_event_libdir= " $with_libevent /lib64" ],
110
- [AC_MSG_CHECKING([for $with_libevent /lib])
111
- AS_IF([test -d " $with_libevent /lib" ],
112
- [AC_MSG_RESULT([found])
113
- opal_event_libdir= " $with_libevent /lib" ],
114
- [AC_MSG_RESULT([not found])
115
- AC_MSG_WARN([Library directories were not found:])
116
- AC_MSG_WARN([ $with_libevent /lib64])
117
- AC_MSG_WARN([ $with_libevent /lib])
118
- AC_MSG_WARN([Please use --with-libevent-libdir to identify it.])
119
- AC_MSG_ERROR([Cannot continue])])])])],
120
- [AC_MSG_RESULT([(default search paths)])])
121
- AS_IF([test ! -z " $with_libevent_libdir " && test " $with_libevent_libdir " != " yes" ],
122
- [opal_event_libdir= " $with_libevent_libdir " ])
123
-
124
- opal_event_external_CPPFLAGS_save= $CPPFLAGS
125
- opal_event_external_CFLAGS_save= $CFLAGS
126
- opal_event_external_LDFLAGS_save= $LDFLAGS
127
- opal_event_external_LIBS_save= $LIBS
128
-
129
- OPAL_CHECK_PACKAGE([opal_event_external],
130
- [event.h],
131
- [event],
132
- [event_config_new],
133
- [-levent_pthreads],
134
- [$opal_event_dir ],
135
- [$opal_event_libdir ],
136
- [opal_event_external_support= yes],
137
- [opal_event_external_support= no])
138
-
139
- # Ensure that this libevent has the symbol
140
- # "evthread_set_lock_callbacks", which will only exist if
141
- # libevent was configured with thread support.
142
- LIBS= " $opal_event_external_LDFLAGS $LIBS "
143
- AC_CHECK_LIB([event], [evthread_set_lock_callbacks],
144
- [],
145
- [AC_MSG_WARN([External libevent does not have thread support])
146
- AC_MSG_WARN([Open MPI requires libevent to be compiled with])
147
- AC_MSG_WARN([thread support enabled])
148
- AC_MSG_ERROR([Cannot continue])])
149
-
150
- AC_CHECK_LIB([event_pthreads], [evthread_use_pthreads],
151
- [],
152
- [AC_MSG_WARN([External libevent does not have thread support])
153
- AC_MSG_WARN([Open MPI requires libevent to be compiled with])
154
- AC_MSG_WARN([thread support enabled])
155
- AC_MSG_ERROR([Cannot continue])])
156
-
157
- CPPFLAGS= $opal_event_external_CPPFLAGS_save
158
- CFLAGS= $opal_event_external_CFLAGS_save
159
- LDFLAGS= $opal_event_external_LDFLAGS_save
160
- LIBS= $opal_event_external_LIBS_save
161
-
162
- AC_SUBST(opal_event_external_CPPFLAGS)
163
- AC_SUBST(opal_event_external_LDFLAGS)
164
- AC_SUBST(opal_event_external_LIBS)
165
-
166
- # These flags need to get passed to the wrapper compilers
167
- # (this is unnecessary for the internal/embedded event)
168
- event_external_WRAPPER_EXTRA_CPPFLAGS= $opal_event_external_CPPFLAGS
169
-
170
- # Finally, add some flags to the wrapper compiler if we're
171
- # building with developer headers so that our headers can
172
- # be found.
173
- event_external_WRAPPER_EXTRA_LDFLAGS= $opal_event_external_LDFLAGS
174
- event_external_WRAPPER_EXTRA_LIBS= $opal_event_external_LIBS
175
- ])
59
+ OPAL_VAR_SCOPE_PUSH([opal_event_external_CPPFLAGS_save opal_event_external_CFLAGS_save opal_event_external_LDFLAGS_save opal_event_external_LIBS_save opal_event_dir])
60
+
61
+ # Make some processing below easier ($with_libevent==yes and
62
+ # $with_libevent==no has already been filtered out).
63
+ AS_IF([test " $with_libevent " = " external" ],
64
+ [with_libevent= ])
65
+
66
+ # Once we get to this point, $with_libevent is either: blank, a
67
+ # directory location, or "internal".
68
+
69
+ # Check the value of $with_libevent_libdir. This macro safely
70
+ # handles "yes", "no", blank, and directory name values.
71
+ OPAL_CHECK_WITHDIR([libevent-libdir], [$with_libevent_libdir ],
72
+ [libevent.* ])
73
+
74
+ # Did the user want us to check for libevent in a specific location?
75
+ AC_MSG_CHECKING([for external libevent in])
76
+ AS_IF([test " $with_libevent " != " external" && \
77
+ test " $with_libevent " != " internal" && \
78
+ test " $with_libevent " != " yes" && \
79
+ test " $with_libevent " != " no" ],
80
+ [opal_event_dir= $with_libevent
81
+ AC_MSG_RESULT([$opal_event_dir ])
82
+ OPAL_CHECK_WITHDIR([libevent], [$opal_event_dir ],
83
+ [include/event.h])
84
+ AS_IF([test -z " $with_libevent_libdir " || test " $with_libevent_libdir " = " yes" ],
85
+ [AC_MSG_CHECKING([for $with_libevent /lib64])
86
+ AS_IF([test -d " $with_libevent /lib64" ],
87
+ [opal_event_libdir_found= yes
88
+ AC_MSG_RESULT([found])],
89
+ [opal_event_libdir_found= no
90
+ AC_MSG_RESULT([not found])])
91
+ AS_IF([test " $opal_event_libdir_found " = " yes" ],
92
+ [opal_event_libdir= " $with_libevent /lib64" ],
93
+ [AC_MSG_CHECKING([for $with_libevent /lib])
94
+ AS_IF([test -d " $with_libevent /lib" ],
95
+ [AC_MSG_RESULT([found])
96
+ opal_event_libdir= " $with_libevent /lib" ],
97
+ [AC_MSG_RESULT([not found])
98
+ AC_MSG_WARN([Library directories were not found:])
99
+ AC_MSG_WARN([ $with_libevent /lib64])
100
+ AC_MSG_WARN([ $with_libevent /lib])
101
+ AC_MSG_WARN([Please use --with-libevent-libdir to identify it.])
102
+ AC_MSG_ERROR([Cannot continue])])])])],
103
+ [AC_MSG_RESULT([(default search paths)])])
104
+ AS_IF([test ! -z " $with_libevent_libdir " && test " $with_libevent_libdir " != " yes" ],
105
+ [opal_event_libdir= " $with_libevent_libdir " ])
106
+
107
+ opal_event_external_CPPFLAGS_save= $CPPFLAGS
108
+ opal_event_external_CFLAGS_save= $CFLAGS
109
+ opal_event_external_LDFLAGS_save= $LDFLAGS
110
+ opal_event_external_LIBS_save= $LIBS
111
+
112
+ OPAL_CHECK_PACKAGE([opal_event_external],
113
+ [event.h],
114
+ [event],
115
+ [event_config_new],
116
+ [-levent_pthreads],
117
+ [$opal_event_dir ],
118
+ [$opal_event_libdir ],
119
+ [opal_event_external_support= yes],
120
+ [opal_event_external_support= no])
121
+
122
+ # Ensure that this libevent has the symbol
123
+ # "evthread_set_lock_callbacks", which will only exist if
124
+ # libevent was configured with thread support.
125
+ LIBS= " $opal_event_external_LDFLAGS $LIBS "
126
+ AC_CHECK_LIB([event], [evthread_set_lock_callbacks],
127
+ [],
128
+ [AC_MSG_WARN([External libevent does not have thread support])
129
+ AC_MSG_WARN([Open MPI requires libevent to be compiled with])
130
+ AC_MSG_WARN([thread support enabled])
131
+ AC_MSG_ERROR([Cannot continue])])
132
+
133
+ AC_CHECK_LIB([event_pthreads], [evthread_use_pthreads],
134
+ [],
135
+ [AC_MSG_WARN([External libevent does not have thread support])
136
+ AC_MSG_WARN([Open MPI requires libevent to be compiled with])
137
+ AC_MSG_WARN([thread support enabled])
138
+ AC_MSG_ERROR([Cannot continue])])
139
+
140
+ CPPFLAGS= $opal_event_external_CPPFLAGS_save
141
+ CFLAGS= $opal_event_external_CFLAGS_save
142
+ LDFLAGS= $opal_event_external_LDFLAGS_save
143
+ LIBS= $opal_event_external_LIBS_save
144
+
145
+ AC_SUBST(opal_event_external_CPPFLAGS)
146
+ AC_SUBST(opal_event_external_LDFLAGS)
147
+ AC_SUBST(opal_event_external_LIBS)
148
+
149
+ # These flags need to get passed to the wrapper compilers
150
+ # (this is unnecessary for the internal/embedded event)
151
+ event_external_WRAPPER_EXTRA_CPPFLAGS= $opal_event_external_CPPFLAGS
152
+
153
+ # Finally, add some flags to the wrapper compiler if we're
154
+ # building with developer headers so that our headers can
155
+ # be found.
156
+ event_external_WRAPPER_EXTRA_LDFLAGS= $opal_event_external_LDFLAGS
157
+ event_external_WRAPPER_EXTRA_LIBS= $opal_event_external_LIBS
158
+
159
+ # #################################################################
176
160
177
161
# Done!
178
162
AS_IF([test " $opal_event_external_support " = " yes" ],
0 commit comments