Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
csst-pipeline
msc
sextractor
Commits
f579530e
Unverified
Commit
f579530e
authored
Feb 25, 2023
by
Emmanuel Bertin
Committed by
GitHub
Feb 25, 2023
Browse files
Merge pull request #43 from astromatic/develop
Develop
parents
37680dba
572b27d7
Changes
12
Hide whitespace changes
Inline
Side-by-side
INSTALL
View file @
f579530e
...
@@ -4,7 +4,7 @@ Installing the software
...
@@ -4,7 +4,7 @@ Installing the software
Hardware requirements
Hardware requirements
=====================
=====================
PSFEx
runs in (ANSI) text-mode from a shell. A window system is
SExtractor
runs in (ANSI) text-mode from a shell. A window system is
not necessary for basic operation.
not necessary for basic operation.
When it comes to memory usage, the amount required by SExtractor depends
When it comes to memory usage, the amount required by SExtractor depends
...
@@ -75,18 +75,19 @@ locations:
...
@@ -75,18 +75,19 @@ locations:
$ ./configure
$ ./configure
Compared to "gcc" and the librairies above, the combination of the
Compared to "gcc" and the librairies above, the combination of the
Intel compiler ("icc") and the MKL (Math Kernel Library) libraries
Intel compiler ("icc" or "icx") and the MKL (Math Kernel Library)
can give the SExtractor executable a significant boost in performance,
libraries can give the SExtractor executable a significant boost in
thanks to better vectorized code, and reduced memory usage. If "icc"
performance, thanks to better vectorized code, and reduced memory
and the MKL (Math Kernel Library) are installed on your system [4],
usage. If "icc" (or "icx") and the MKL (Math Kernel Library) are
you can take advantage of those using instead
installed on your system [4], you can take advantage of those using
instead
$ ./configure --enable-mkl
$ ./configure --enable-mkl
Additionally, if the SExtractor binary is to be run on a different
Additionally, if the SExtractor binary is to be run on a different
machine that does not have "icc" and the MKL
(Math Kernel Library)
machine that does not have "icc"
(or "icx")
and the MKL
installed
installed
(e.g., a cluster computing node), you must configure a
(e.g., a cluster computing node), you must configure a
partially
partially
statically linked executable using
statically linked executable using
$ ./configure --enable-mkl --enable-auto-flags --enable-best-link
$ ./configure --enable-mkl --enable-auto-flags --enable-best-link
...
@@ -118,6 +119,5 @@ path).
...
@@ -118,6 +119,5 @@ path).
options "--enable-threads --enable-float".
options "--enable-threads --enable-float".
[4] The Linux versions of the Intel compiler and MKL (Math
[4] The Linux versions of the Intel compiler and MKL (Math
Kernel Library) are available for free to academic researchers,
Kernel Library) are now available for free on Intel's website.
students, educators and open source contributors.
configure.ac
View file @
f579530e
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
#
#
# This file part of: SExtractor
# This file part of: SExtractor
#
#
# Copyright: (C) 2002-202
0
IAP/CNRS/SorbonneU
# Copyright: (C) 2002-202
2
IAP/CNRS/SorbonneU
#
#
# License: GNU General Public License
# License: GNU General Public License
#
#
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
# You should have received a copy of the GNU General Public License
# You should have received a copy of the GNU General Public License
# along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
# along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
#
#
# Last modified:
23
/09/202
0
# Last modified:
16
/09/202
2
#
#
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
@@ -31,8 +31,8 @@ define([AC_CACHE_LOAD],)
...
@@ -31,8 +31,8 @@ define([AC_CACHE_LOAD],)
define([AC_CACHE_SAVE],)
define([AC_CACHE_SAVE],)
# This is your standard AstrOmatic source code...
# This is your standard AstrOmatic source code...
AC_INIT(SExtractor
,
2.27.0,
[astromatic@astromatic.
net
],
AC_INIT(
[
SExtractor
],[
2.27.0
]
,[astromatic@astromatic.
iap.fr
],
sextractor,
[http://astromatic.net/software/sextractor])
[
sextractor
]
,[http://astromatic.net/software/sextractor])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_AUX_DIR(autoconf)
AC_CONFIG_AUX_DIR(autoconf)
AC_CONFIG_SRCDIR(src/makeit.c)
AC_CONFIG_SRCDIR(src/makeit.c)
...
@@ -80,24 +80,38 @@ AC_ARG_ENABLE(auto-flags,
...
@@ -80,24 +80,38 @@ AC_ARG_ENABLE(auto-flags,
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([no]))
AC_MSG_RESULT([no]))
# Provide special option for the Linux Intel C compiler
# Provide special option for the Linux Intel C
"classic"
compiler
AC_MSG_CHECKING([whether the INTEL compiler is enabled])
AC_MSG_CHECKING([whether the
classic
INTEL compiler is enabled])
AC_ARG_ENABLE(icc,
AC_ARG_ENABLE(icc,
[AS_HELP_STRING([--enable-icc],
[AS_HELP_STRING([--enable-icc],
[Use the Intel compiler (default = no)])],
[Use the Intel compiler (default = no)])],
CC="icc"
CC="icc"
enable_iccx="yes"
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([no]))
# Provide special option for the Linux Intel OneAPI C compiler
AC_MSG_CHECKING([whether the INTEL compiler is enabled])
AC_ARG_ENABLE(icx,
[AS_HELP_STRING([--enable-icx],
[Use the Intel compiler (default = no)])],
CC="icx"
enable_iccx="yes"
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([no]))
AC_MSG_RESULT([no]))
# Provide special options for INTEL MKL
# Provide special options for INTEL MKL
# We force the use of icc
# We use icc if available, if not Intel OneAPI's icx
# (we don't use AC_PROG_CC as it does not play nice
# in a conditional block)
AC_MSG_CHECKING([whether INTEL's MKL is enabled])
AC_MSG_CHECKING([whether INTEL's MKL is enabled])
AC_ARG_ENABLE(mkl,
AC_ARG_ENABLE(mkl,
[AS_HELP_STRING([--enable-mkl],
[AS_HELP_STRING([--enable-mkl],
[Use INTEL's MKL for solvers and FFTs (default = no)])],
[Use INTEL's MKL for solvers and FFTs (default = no)])],
enable_icc="yes"
AC_MSG_RESULT([yes])
CC="icc"
CC=""
AC_MSG_RESULT([yes]),
[AC_CHECK_PROGS(CC, [icc icx cc])]
enable_iccx="yes",
AC_MSG_RESULT([no]))
AC_MSG_RESULT([no]))
# Checks for programs.
# Checks for programs.
...
@@ -116,11 +130,10 @@ AC_PROG_INSTALL
...
@@ -116,11 +130,10 @@ AC_PROG_INSTALL
AC_CHECK_LIB(m, sin)
AC_CHECK_LIB(m, sin)
# Checks for header files.
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([fcntl.h limits.h malloc.h stdlib.h string.h sys/mman.h \
AC_CHECK_HEADERS([fcntl.h limits.h malloc.h stdlib.h string.h sys/mman.h \
sys/types.h unistd.h])
sys/types.h unistd.h])
# Checks for INTEL math header files.
# Checks for INTEL math header files.
if test "$enable_icc" = "yes"; then
if test "$enable_icc
x
" = "yes"; then
AC_CHECK_HEADERS(mathimf.h)
AC_CHECK_HEADERS(mathimf.h)
fi
fi
...
@@ -136,7 +149,6 @@ AC_TYPE_UID_T
...
@@ -136,7 +149,6 @@ AC_TYPE_UID_T
# Checks for library functions.
# Checks for library functions.
AC_FUNC_ERROR_AT_LINE
AC_FUNC_ERROR_AT_LINE
AC_FUNC_MMAP
AC_FUNC_MMAP
AC_TYPE_SIGNAL
AC_FUNC_STAT
AC_FUNC_STAT
AC_FUNC_STRFTIME
AC_FUNC_STRFTIME
AC_CHECK_FUNCS([atexit getenv gettimeofday isinf isnan logf memcpy memmove \
AC_CHECK_FUNCS([atexit getenv gettimeofday isinf isnan logf memcpy memmove \
...
@@ -241,7 +253,7 @@ use_pthreads="no"
...
@@ -241,7 +253,7 @@ use_pthreads="no"
AC_MSG_CHECKING([for profiler mode])
AC_MSG_CHECKING([for profiler mode])
AC_ARG_ENABLE(profiling,
AC_ARG_ENABLE(profiling,
[AS_HELP_STRING([--enable-profiling],
[AS_HELP_STRING([--enable-profiling],
[Enable special mode for profiling (default = no)])]
[Enable special mode for profiling (default = no)])]
,
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([no]))
AC_MSG_RESULT([no]))
...
@@ -275,10 +287,7 @@ if test "$enable_model_fitting" != "no"; then
...
@@ -275,10 +287,7 @@ if test "$enable_model_fitting" != "no"; then
if test "$enable_mkl" = "yes"; then
if test "$enable_mkl" = "yes"; then
convlibs="${srcdir}/wcs/libwcs_c.a,${srcdir}/levmar/liblevmar.a"
convlibs="${srcdir}/wcs/libwcs_c.a,${srcdir}/levmar/liblevmar.a"
ACX_MKL($with_mkl_dir,,$enable_best_link,$convlibs)
ACX_MKL($with_mkl_dir,,$enable_best_link,$convlibs)
if test "$MKL_WARN" == ""; then
if test "$MKL_WARN" != ""; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
AC_MSG_WARN([$MKL_WARN])
AC_MSG_WARN([$MKL_WARN])
fi
fi
AM_CFLAGS="$AM_CFLAGS $MKL_CFLAGS "
AM_CFLAGS="$AM_CFLAGS $MKL_CFLAGS "
...
@@ -338,7 +347,7 @@ AM_CONDITIONAL(USE_MODEL, [test "$enable_model_fitting" != "no"])
...
@@ -338,7 +347,7 @@ AM_CONDITIONAL(USE_MODEL, [test "$enable_model_fitting" != "no"])
# Compile with profiling option
# Compile with profiling option
if test "$enable_profiling" = "yes"; then
if test "$enable_profiling" = "yes"; then
if test "$enable_icc" = "yes"; then
if test "$enable_icc
x
" = "yes"; then
AM_CFLAGS="$AM_CFLAGS -pq"
AM_CFLAGS="$AM_CFLAGS -pq"
else
else
AM_CFLAGS="$AM_CFLAGS -pg"
AM_CFLAGS="$AM_CFLAGS -pg"
...
@@ -348,9 +357,9 @@ fi
...
@@ -348,9 +357,9 @@ fi
# "Best" linking option
# "Best" linking option
if test "$enable_best_link" = "yes"; then
if test "$enable_best_link" = "yes"; then
if test "$enable_icc" = "yes"; then
if test "$enable_icc
x
" = "yes"; then
AM_LDFLAGS="-static-intel -qopenmp-link
static -shared-libgcc \
AM_LDFLAGS="-static-intel -qopenmp-link
=
static -shared-libgcc \
-static-libtool-libs
-no-intel-extensions
-avoid-version $AM_LDFLAGS"
-static-libtool-libs -avoid-version $AM_LDFLAGS"
else
else
AM_LDFLAGS="-shared-libgcc -static-libtool-libs -avoid-version $AM_LDFLAGS"
AM_LDFLAGS="-shared-libgcc -static-libtool-libs -avoid-version $AM_LDFLAGS"
fi
fi
...
...
debian/rules
View file @
f579530e
...
@@ -15,7 +15,7 @@ ifeq ($(USE_BEST),1)
...
@@ -15,7 +15,7 @@ ifeq ($(USE_BEST),1)
dh_auto_configure -- --host=$(DEB_HOST_GNU_TYPE) \
dh_auto_configure -- --host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/usr --mandir=\$${prefix}/share/man \
--prefix=/usr --mandir=\$${prefix}/share/man \
--enable-ic
c
--enable-mkl \
--enable-ic
x
--enable-mkl \
--enable-auto-flags --enable-best-link \
--enable-auto-flags --enable-best-link \
--with-release=$(PACKAGE_RELEASE)
--with-release=$(PACKAGE_RELEASE)
else
else
...
...
doc/src/conf.py
View file @
f579530e
...
@@ -81,7 +81,7 @@ language = None
...
@@ -81,7 +81,7 @@ language = None
# There are two options for replacing |today|: either, you set today to some
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
# non-false value, then it is used:
#
#
today
=
'
Tue
Sep
0
6 2022'
today
=
'
Fri
Sep
1
6 2022'
#
#
# Else, today_fmt is used as the format for a strftime call.
# Else, today_fmt is used as the format for a strftime call.
#
#
...
...
m4/acx_mkl.m4
View file @
f579530e
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
dnl This file part of: AstrOmatic software
dnl This file part of: AstrOmatic software
dnl
dnl
dnl Copyright: (C) 2003-20
16
IAP/CNRS/
UPMC
dnl Copyright: (C) 2003-20
22
IAP/CNRS/
SorbonneU
dnl
dnl
dnl License: GNU General Public License
dnl License: GNU General Public License
dnl
dnl
...
@@ -23,7 +23,7 @@ dnl You should have received a copy of the GNU General Public License
...
@@ -23,7 +23,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with AstrOmatic software.
dnl along with AstrOmatic software.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl
dnl
dnl Last modified: 1
6
/0
3
/20
16
dnl Last modified: 1
5
/0
9
/20
22
dnl
dnl
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
...
@@ -73,11 +73,11 @@ dnl Set architecture flags
...
@@ -73,11 +73,11 @@ dnl Set architecture flags
dnl ----------------------
dnl ----------------------
dnl check if INTEL compiler is present
dnl check if INTEL compiler is present
icc
-V 2>&1 | grep -i "Intel" > /dev/null 2>&1 && flagicc=yes
$CC
-V 2>&1 | grep -i "Intel" > /dev/null 2>&1 && flagicc=yes
dnl check if INTEL compiler uses x86_64 architecture
dnl check if INTEL compiler uses x86_64 architecture
icc
-V 2>&1 | grep -i "Intel(R) 64" > /dev/null 2>&1 && flag64=yes
$CC
-V 2>&1 | grep -i "Intel(R) 64" > /dev/null 2>&1 && flag64=yes
dnl check if the platform is OSX
dnl check if the platform is OSX
icc
-dumpmachine 2>&1 | grep -i "darwin" > /dev/null 2>&1 && flagosx=yes
$CC
-dumpmachine 2>&1 | grep -i "darwin" > /dev/null 2>&1 && flagosx=yes
dnl ----------------------
dnl ----------------------
dnl Exit if INTEL compiler is not found
dnl Exit if INTEL compiler is not found
...
...
m4/acx_prog_cc_optim.m4
View file @
f579530e
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
dnl This file part of: AstrOmatic software
dnl This file part of: AstrOmatic software
dnl
dnl
dnl Copyright: (C) 2002-20
13
Emmanuel Bertin -- IAP/CNRS/
UPMC
dnl Copyright: (C) 2002-20
22
Emmanuel Bertin -- IAP/CNRS/
SorbonneU
dnl (C) 2002 Ville Lauriki (original version)
dnl (C) 2002 Ville Lauriki (original version)
dnl
dnl
dnl Licenses: GPL (this version)
dnl Licenses: GPL (this version)
...
@@ -25,7 +25,7 @@ dnl You should have received a copy of the GNU General Public License
...
@@ -25,7 +25,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with AstrOmatic software.
dnl along with AstrOmatic software.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl
dnl
dnl Last modified:
13
/0
3
/20
13
dnl Last modified:
07
/0
9
/20
22
dnl
dnl
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
...
@@ -60,14 +60,14 @@ EOF
...
@@ -60,14 +60,14 @@ EOF
if $CC -V 2>&1 | grep -i "Intel(R) 64" > /dev/null 2>&1 &&
if $CC -V 2>&1 | grep -i "Intel(R) 64" > /dev/null 2>&1 &&
$CC -c -O conftest.c > /dev/null 2>&1 &&
$CC -c -O conftest.c > /dev/null 2>&1 &&
test -f conftest.o; then
test -f conftest.o; then
prog_cc_optim_cv_flags="-O3 -axSSSE3,SSE4.1,SSE4.2,AVX,CORE-AVX2,CORE-AVX-I
-no-prec-div -unroll
"
prog_cc_optim_cv_flags="-O3 -axSSSE3,SSE4.1,SSE4.2,AVX,CORE-AVX2,CORE-AVX-I"
prog_ld_optim_cv_flags=""
prog_ld_optim_cv_flags=""
dnl INTEL C 32bits compiler
dnl INTEL C 32bits compiler
elif $CC -V 2>&1 | grep -i "Intel(R)" > /dev/null 2>&1 &&
elif $CC -V 2>&1 | grep -i "Intel(R)" > /dev/null 2>&1 &&
$CC -c -O conftest.c > /dev/null 2>&1 &&
$CC -c -O conftest.c > /dev/null 2>&1 &&
test -f conftest.o; then
test -f conftest.o; then
prog_cc_optim_cv_flags="-O3 -axSSE2,SSE3,SSE4.1,SSE4.2,AVX,CORE-AVX2,CORE-AVX-I
-no-prec-div -unroll
"
prog_cc_optim_cv_flags="-O3 -axSSE2,SSE3,SSE4.1,SSE4.2,AVX,CORE-AVX2,CORE-AVX-I"
prog_ld_optim_cv_flags=""
prog_ld_optim_cv_flags=""
dnl GCC
dnl GCC
...
...
m4/acx_pthread.m4
View file @
f579530e
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
@@ -7,7 +7,7 @@ dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
dnl This file part of: AstrOmatic software
dnl This file part of: AstrOmatic software
dnl
dnl
dnl Copyright: (C) 2002-20
10
Emmanuel Bertin -- IAP/CNRS/
UPMC
dnl Copyright: (C) 2002-20
22
Emmanuel Bertin -- IAP/CNRS/
SorbonneU
dnl (C) 2001 Steven G. Johnson (original version)
dnl (C) 2001 Steven G. Johnson (original version)
dnl
dnl
dnl Licenses: GPL (this version)
dnl Licenses: GPL (this version)
...
@@ -25,7 +25,7 @@ dnl You should have received a copy of the GNU General Public License
...
@@ -25,7 +25,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with AstrOmatic software.
dnl along with AstrOmatic software.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl If not, see <http://www.gnu.org/licenses/>.
dnl
dnl
dnl Last modified:
09/10
/20
10
dnl Last modified:
15/09
/20
22
dnl
dnl
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dnl
dnl
...
@@ -88,7 +88,7 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
...
@@ -88,7 +88,7 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
save_LIBS="$LIBS"
save_LIBS="$LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
AC_
TRY_
LINK_
FUNC(
pthread_join, acx_pthread_ok=yes)
AC_LINK_
IFELSE([AC_LANG_CALL([],
pthread_join
)]
, acx_pthread_ok=yes)
AC_MSG_RESULT($acx_pthread_ok)
AC_MSG_RESULT($acx_pthread_ok)
if test x"$acx_pthread_ok" = xno; then
if test x"$acx_pthread_ok" = xno; then
PTHREAD_LIBS=""
PTHREAD_LIBS=""
...
@@ -170,10 +170,10 @@ for flag in $acx_pthread_flags; do
...
@@ -170,10 +170,10 @@ for flag in $acx_pthread_flags; do
# pthread_cleanup_push because it is one of the few pthread
# pthread_cleanup_push because it is one of the few pthread
# functions on Solaris that doesn't have a non-functional libc stub.
# functions on Solaris that doesn't have a non-functional libc stub.
# We try pthread_create on general principles.
# We try pthread_create on general principles.
AC_
TRY_
LINK([#include <pthread.h>],
AC_LINK
_IFELSE([AC_LANG_CALL
([#include <pthread.h>],
[pthread_t th; pthread_join(th, 0);
[pthread_t th; pthread_join(th, 0);
pthread_attr_init(0); pthread_cleanup_push(0, 0);
pthread_attr_init(0); pthread_cleanup_push(0, 0);
pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
pthread_create(0,0,0,0); pthread_cleanup_pop(0);
])
],
[acx_pthread_ok=yes])
[acx_pthread_ok=yes])
LIBS="$save_LIBS"
LIBS="$save_LIBS"
...
@@ -199,12 +199,12 @@ if test "x$acx_pthread_ok" = xyes; then
...
@@ -199,12 +199,12 @@ if test "x$acx_pthread_ok" = xyes; then
# Detect AIX lossage: threads are created detached by default
# Detect AIX lossage: threads are created detached by default
# and the JOINABLE attribute has a nonstandard name (UNDETACHED).
# and the JOINABLE attribute has a nonstandard name (UNDETACHED).
AC_MSG_CHECKING([for joinable pthread attribute])
AC_MSG_CHECKING([for joinable pthread attribute])
AC_
TRY_
LINK([#include <pthread.h>],
AC_LINK
_IFELSE([AC_LANG_CALL
([#include <pthread.h>],
[int attr=PTHREAD_CREATE_JOINABLE;],
[int attr=PTHREAD_CREATE_JOINABLE;]
)]
,
ok=PTHREAD_CREATE_JOINABLE, ok=unknown)
ok=PTHREAD_CREATE_JOINABLE, ok=unknown)
if test x"$ok" = xunknown; then
if test x"$ok" = xunknown; then
AC_
TRY_
LINK([#include <pthread.h>],
AC_LINK
_IFELSE([AC_LANG_CALL
([#include <pthread.h>],
[int attr=PTHREAD_CREATE_UNDETACHED;],
[int attr=PTHREAD_CREATE_UNDETACHED;]
)]
,
ok=PTHREAD_CREATE_UNDETACHED, ok=unknown)
ok=PTHREAD_CREATE_UNDETACHED, ok=unknown)
fi
fi
if test x"$ok" != xPTHREAD_CREATE_JOINABLE; then
if test x"$ok" != xPTHREAD_CREATE_JOINABLE; then
...
...
sextractor.spec.in
View file @
f579530e
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
#
#
# This file part of: SExtractor
# This file part of: SExtractor
#
#
# Copyright: (C) 2002-202
0
IAP/CNRS/SorbonneU
# Copyright: (C) 2002-202
2
IAP/CNRS/SorbonneU
#
#
# License: GNU General Public License
# License: GNU General Public License
#
#
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
# You should have received a copy of the GNU General Public License
# You should have received a copy of the GNU General Public License
# along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
# along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
#
#
# Last modified:
02
/0
1
/202
0
# Last modified:
15
/0
9
/202
2
#
#
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
...
@@ -44,6 +44,7 @@ BuildRoot: %{_tmppath}/%{name}-buildroot
...
@@ -44,6 +44,7 @@ BuildRoot: %{_tmppath}/%{name}-buildroot
BuildRequires: pkgconfig
BuildRequires: pkgconfig
BuildRequires: fftw-devel >= 3.1
BuildRequires: fftw-devel >= 3.1
BuildRequires: atlas-devel >= 3.6.0
BuildRequires: atlas-devel >= 3.6.0
BuildRequires: cfitsio-devel >= 3.30
%description
%description
Extract catalogs of sources from astronomical images
Extract catalogs of sources from astronomical images
...
...
src/define.h
View file @
f579530e
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
*
*
* This file part of: SExtractor
* This file part of: SExtractor
*
*
* Copyright: (C) 1993-20
15
Emmanuel Bertin -- IAP/CNRS/
UPMC
* Copyright: (C) 1993-20
22
Emmanuel Bertin -- IAP/CNRS/
SorbonneU
*
*
* License: GNU General Public License
* License: GNU General Public License
*
*
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
* You should have received a copy of the GNU General Public License
* You should have received a copy of the GNU General Public License
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
*
*
* Last modified:
11
/0
3
/20
15
* Last modified:
07
/0
9
/20
22
*
*
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
...
@@ -167,7 +167,7 @@
...
@@ -167,7 +167,7 @@
#define QCALLOC(ptr, typ, nel) \
#define QCALLOC(ptr, typ, nel) \
{if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
{if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
{ \
{ \
sprintf(gstr, #ptr " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptr " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
...
@@ -177,7 +177,7 @@
...
@@ -177,7 +177,7 @@
#define QMALLOC(ptr, typ, nel) \
#define QMALLOC(ptr, typ, nel) \
{if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
{if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
{ \
{ \
sprintf(gstr, #ptr " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptr " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
...
@@ -187,7 +187,7 @@
...
@@ -187,7 +187,7 @@
#define QMALLOC16(ptr, typ, nel) \
#define QMALLOC16(ptr, typ, nel) \
{if (posix_memalign((void **)&ptr, 16, (size_t)(nel)*sizeof(typ))) \
{if (posix_memalign((void **)&ptr, 16, (size_t)(nel)*sizeof(typ))) \
{ \
{ \
sprintf(gstr, #ptr " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptr " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
...
@@ -197,7 +197,7 @@
...
@@ -197,7 +197,7 @@
#define QREALLOC(ptr, typ, nel) \
#define QREALLOC(ptr, typ, nel) \
{if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ))))\
{if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ))))\
{ \
{ \
sprintf(gstr, #ptr " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptr " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
...
@@ -208,7 +208,7 @@
...
@@ -208,7 +208,7 @@
{if (ptrin) \
{if (ptrin) \
{if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
{if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
{ \
{ \
sprintf(gstr, #ptrout " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptrout " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE,"Could not allocate memory for ",gstr);\
error(EXIT_FAILURE,"Could not allocate memory for ",gstr);\
...
...
src/fft.h
View file @
f579530e
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
*
*
* This file part of: SExtractor
* This file part of: SExtractor
*
*
* Copyright: (C) 2007-20
17
IAP/CNRS/
UPMC
* Copyright: (C) 2007-20
22
IAP/CNRS/
SorbonneU
*
*
* License: GNU General Public License
* License: GNU General Public License
*
*
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
* You should have received a copy of the GNU General Public License
* You should have received a copy of the GNU General Public License
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
*
*
* Last modified:
19
/0
6
/20
17
* Last modified:
07
/0
9
/20
22
*
*
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
...
@@ -40,7 +40,7 @@
...
@@ -40,7 +40,7 @@
#define QFFTWF_MALLOC(ptr, typ, nel) \
#define QFFTWF_MALLOC(ptr, typ, nel) \
{if (!(ptr = (typ *)fftwf_malloc((size_t)(nel)*sizeof(typ)))) \
{if (!(ptr = (typ *)fftwf_malloc((size_t)(nel)*sizeof(typ)))) \
{ \
{ \
sprintf(gstr, #ptr " (" #nel "=%
ll
d elements) " \
sprintf(gstr, #ptr " (" #nel "=%
z
d elements) " \
"at line %d in module " __FILE__ " !", \
"at line %d in module " __FILE__ " !", \
(size_t)(nel)*sizeof(typ), __LINE__); \
(size_t)(nel)*sizeof(typ), __LINE__); \
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
error(EXIT_FAILURE, "Could not allocate memory for ", gstr);\
...
...
src/header.c
View file @
f579530e
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
* You should have received a copy of the GNU General Public License
* You should have received a copy of the GNU General Public License
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
* along with SExtractor. If not, see <http://www.gnu.org/licenses/>.
*
*
* Last modified:
12/07
/20
1
2
* Last modified:
07/09
/20
2
2
*
*
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
...
@@ -49,7 +49,7 @@ INPUT Name of the ASCII file,
...
@@ -49,7 +49,7 @@ INPUT Name of the ASCII file,
OUTPUT RETURN_OK if the file was found, RETURN_ERROR otherwise.
OUTPUT RETURN_OK if the file was found, RETURN_ERROR otherwise.
NOTES -.
NOTES -.
AUTHOR E. Bertin (IAP)
AUTHOR E. Bertin (IAP)
VERSION
12/07
/20
1
2
VERSION
07/09
/20
2
2
***/
***/
int
read_aschead
(
char
*
filename
,
int
frameno
,
tabstruct
*
tab
)
int
read_aschead
(
char
*
filename
,
int
frameno
,
tabstruct
*
tab
)
{
{
...
@@ -63,7 +63,7 @@ int read_aschead(char *filename, int frameno, tabstruct *tab)
...
@@ -63,7 +63,7 @@ int read_aschead(char *filename, int frameno, tabstruct *tab)
{
{
/*- Skip previous ENDs in multi-FITS extension headers */
/*- Skip previous ENDs in multi-FITS extension headers */
for
(
i
=
frameno
-
1
;
i
--
;)
for
(
i
=
frameno
-
1
;
i
--
;)
while
(
fgets
(
str
,
MAXCHAR
,
file
)
while
(
fgets
(
str
,
88
,
file
)
&&
strncmp
(
str
,
"END "
,
4
)
&&
strncmp
(
str
,
"END "
,
4
)
&&
strncmp
(
str
,
"END
\n
"
,
4
));
&&
strncmp
(
str
,
"END
\n
"
,
4
));
memset
(
str
,
' '
,
80
);
memset
(
str
,
' '
,
80
);
...
...
src/makeit.c
View file @
f579530e
...
@@ -43,7 +43,9 @@
...
@@ -43,7 +43,9 @@
#include
"assoc.h"
#include
"assoc.h"
#include
"back.h"
#include
"back.h"
#include
"check.h"
#include
"check.h"
#ifdef USE_MODEL
#include
"fft.h"
#include
"fft.h"
#endif
#include
"field.h"
#include
"field.h"
#include
"filter.h"
#include
"filter.h"
#include
"growth.h"
#include
"growth.h"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment