Skip to content

[macOS] configure does not define SHLIB_OPENMP_CFLAGS, so OpenMP is not used #10

@barracuda156

Description

@barracuda156

@helske Turned out, OpenMP detection does not work, at least in 1.4.3:

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by Rlibeemd configure 1.4.2, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure 

## --------- ##
## Platform. ##
## --------- ##

hostname = 10.6.shared
uname -m = x86_64
uname -r = 10.8.0
uname -s = Darwin
uname -v = Darwin Kernel Version 10.8.0: Tue Jun  7 16:32:41 PDT 2011; root:xnu-1504.15.3~1/RELEASE_X86_64

/usr/bin/uname -p = i386
/bin/uname -X     = unknown

/bin/arch              = unknown
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = Mach kernel version:
	 Darwin Kernel Version 10.8.0: Tue Jun  7 16:32:41 PDT 2011; root:xnu-1504.15.3~1/RELEASE_X86_64
Kernel configured for up to 8 processors.
8 processors are physically available.
8 processors are logically available.
Processor type: i486 (Intel 80486)
Processors active: 0 1 2 3 4 5 6 7
Primary memory available: 8.00 gigabytes
Default processor set: 153 tasks, 392 threads, 8 processors
Load average: 3.40, Mach factor: 4.68
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /opt/local/bin
PATH: /opt/local/sbin
PATH: /bin
PATH: /sbin
PATH: /usr/bin
PATH: /usr/sbin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:1685: checking for gsl-config
configure:1703: found /opt/local/bin/gsl-config
configure:1715: result: /opt/local/bin/gsl-config
configure:1889: creating ./config.status

## ---------------------- ##
## Running config.status. ##
## ---------------------- ##

This file was extended by Rlibeemd config.status 1.4.2, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  CONFIG_FILES    = 
  CONFIG_HEADERS  = 
  CONFIG_LINKS    = 
  CONFIG_COMMANDS = 
  $ ./config.status 

on 10.6.shared

config.status:716: creating src/Makevars

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_path_GSL_CONFIG=/opt/local/bin/gsl-config

## ----------------- ##
## Output variables. ##
## ----------------- ##

DEFS='-DPACKAGE_NAME=\"Rlibeemd\" -DPACKAGE_TARNAME=\"rlibeemd\" -DPACKAGE_VERSION=\"1.4.2\" -DPACKAGE_STRING=\"Rlibeemd\ 1.4.2\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\"'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
GSL_CFLAGS='-I/opt/local/include'
GSL_CONFIG='/opt/local/bin/gsl-config'
GSL_LIBS='-L/opt/local/lib -lgsl -lgslcblas'
LIBOBJS=''
LIBS=''
LTLIBOBJS=''
PACKAGE_BUGREPORT=''
PACKAGE_NAME='Rlibeemd'
PACKAGE_STRING='Rlibeemd 1.4.2'
PACKAGE_TARNAME='rlibeemd'
PACKAGE_URL=''
PACKAGE_VERSION='1.4.2'
PATH_SEPARATOR=':'
SHELL='/bin/sh'
bindir='${exec_prefix}/bin'
build_alias=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='${prefix}'
host_alias=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/usr/local'
program_transform_name='s,x,x,'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "Rlibeemd"
#define PACKAGE_TARNAME "rlibeemd"
#define PACKAGE_VERSION "1.4.2"
#define PACKAGE_STRING "Rlibeemd 1.4.2"
#define PACKAGE_BUGREPORT ""
#define PACKAGE_URL ""

configure: exit 0

Build is fine, but OpenMP is not used, despite being, obviously, supported by GCC.

Makevars are written like:

GSL_CFLAGS = -I/opt/local/include
GSL_LIBS = -L/opt/local/lib -lgsl -lgslcblas
PKG_LIBS=$(GSL_LIBS) $(SHLIB_OPENMP_CFLAGS)
PKG_CFLAGS=$(GSL_CFLAGS) $(SHLIB_OPENMP_CFLAGS)

And then SHLIB_OPENMP_CFLAGS are undefined. Should be -fopenmp there instead for it to work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions