Merge pull request #158 from rtburns-jpl/odr

Fix violations of ODR
LT1AB
Ryan Burns 2020-11-18 13:04:31 -08:00 committed by GitHub
commit f44a0edf1d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 93 additions and 40 deletions

View File

@ -31,3 +31,19 @@ list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES ${abs_libdir} isSystemDir)
if("${isSystemDir}" STREQUAL "-1")
list(APPEND CMAKE_INSTALL_RPATH ${abs_libdir})
endif()
option(ISCE2_STRICT_COMPILATION "Enable strict checks during compilation" ON)
if(ISCE2_STRICT_COMPILATION)
# Set -fno-common when supported to catch ODR violations
include(CheckCCompilerFlag)
check_c_compiler_flag(-fno-common C_FNO_COMMON)
if(C_FNO_COMMON)
add_compile_options($<$<COMPILE_LANGUAGE:C>:-fno-common>)
endif()
include(CheckCXXCompilerFlag)
check_cxx_compiler_flag(-fno-common CXX_FNO_COMMON)
if(CXX_FNO_COMMON)
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:-fno-common>)
endif()
endif()

View File

@ -7,6 +7,7 @@ target_include_directories(orbitHermite PUBLIC include)
InstallSameDir(
orbitHermite
__init__.py
Inertial.py
ODR.py
Orbit.py
OrbitExtender.py

View File

@ -67,7 +67,7 @@ Python_add_library(alos MODULE
src/ALOS_pre_process/data_ALOS.h
src/ALOS_pre_process/data_ALOSE.h
src/ALOS_pre_process/hermite_c.c
src/ALOS_pre_process/image_sio.h
src/ALOS_pre_process/image_sio.c
src/ALOS_pre_process/init_from_PRM.c
src/ALOS_pre_process/interpolate_ALOS_orbit.c
src/ALOS_pre_process/null_sio_struct.c

View File

@ -10,7 +10,10 @@ headerFiles = ['data_ALOS.h','data_ALOSE.h','image_sio.h','orbit_ALOS.h','sarlea
sourceFiles = ['ALOSE_orbits_utils.c','ALOS_ldr_orbit.c','ALOS_pre_process.c','calc_dop.c','hermite_c.c','init_from_PRM.c',
'interpolate_ALOS_orbit.c','null_sio_struct.c','parse_ALOS_commands.c','polyfit.c','read_ALOSE_data.c',
'read_ALOS_data.c','read_ALOS_sarleader.c','roi_utils.c','set_ALOS_defaults.c','siocomplex.c',
'swap_ALOS_data_info.c','utils.c','write_ALOS_prm.c','readOrbitPulse.f','readOrbitPulseState.f','readOrbitPulseSetState.f']
'swap_ALOS_data_info.c','utils.c','write_ALOS_prm.c',
'readOrbitPulse.f','readOrbitPulseState.f',
'readOrbitPulseSetState.f','image_sio.c',
]
lib = envSensorSrc1.Library(target = 'alos', source = sourceFiles)
envSensorSrc1.Install(install,lib)
envSensorSrc1.Alias('install',install)

View File

@ -0,0 +1,16 @@
#include "image_sio.h"
int verbose;
int debug;
int roi;
int swap;
int quad_pol;
int ALOS_format;
int force_slope;
int dopp;
int quiet_flag;
int SAR_mode;
double forced_slope;
double tbias;

View File

@ -146,19 +146,19 @@ radar_wavelength lambda
rng_spec_wgt rhww
*/
int verbose; /* controls minimal level of output */
int debug; /* more output */
int roi; /* more output */
int swap; /* whether to swap bytes */
int quad_pol; /* quad polarization data */
int ALOS_format; /* AUIG: ALOS_format = 0 */
/* ERSDAC: ALOS_format = 1 */
int force_slope; /* whether to set the slope */
int dopp; /* whether to calculate doppler */
int quiet_flag; /* reduce output */
int SAR_mode; /* 0 => high-res */
/* 1 => wide obs */
/* 2 => polarimetry */
/* from ALOS Product Format 3-2 */
double forced_slope; /* value to set chirp_slope to */
double tbias; /* time bias for bad orbit data */
extern int verbose; /* controls minimal level of output */
extern int debug; /* more output */
extern int roi; /* more output */
extern int swap; /* whether to swap bytes */
extern int quad_pol; /* quad polarization data */
extern int ALOS_format; /* AUIG: ALOS_format = 0 */
/* ERSDAC: ALOS_format = 1 */
extern int force_slope; /* whether to set the slope */
extern int dopp; /* whether to calculate doppler */
extern int quiet_flag; /* reduce output */
extern int SAR_mode; /* 0 => high-res */
/* 1 => wide obs */
/* 2 => polarimetry */
/* from ALOS Product Format 3-2 */
extern double forced_slope; /* value to set chirp_slope to */
extern double tbias; /* time bias for bad orbit data */

View File

@ -60,9 +60,9 @@ int reset_params(struct PRM *prm, long *, int *, int *);
int fill_shift_data(int, int, int, int, int, char *, char *, FILE *);
int handle_prf_change_ALOSE(struct PRM *, FILE *, long *, int);
struct sardata_record r1;
struct sardata_descriptor_ALOSE dfd;
struct sardata_info_ALOSE sdr;
static struct sardata_record r1;
static struct sardata_descriptor_ALOSE dfd;
static struct sardata_info_ALOSE sdr;
/*
differences in include file from ALOS AUIG

View File

@ -67,9 +67,9 @@ int reset_params(struct PRM *prm, long *, int *, int *);
int fill_shift_data(int, int, int, int, int, char *, char *, FILE *);
int handle_prf_change(struct PRM *, FILE *, long *, int);
struct sardata_record r1;
struct sardata_descriptor dfd;
struct sardata_info sdr;
static struct sardata_record r1;
static struct sardata_descriptor dfd;
static struct sardata_info sdr;
long read_ALOS_data (FILE *imagefile, FILE *outfile, struct PRM *prm, long *byte_offset) {

View File

@ -0,0 +1,16 @@
#include "image_sio.h"
int verbose;
int debug;
int roi;
int swap;
int quad_pol;
int ALOS_format;
int force_slope;
int dopp;
int quiet_flag;
int SAR_mode;
double forced_slope;
double tbias;

View File

@ -1,6 +1,7 @@
isce2_add_staticlib(alosLib
ALOS_lib/src/cfft1d.c
ALOS_lib/src/find_fft_length.c
ALOS_lib/src/image_sio.c
ALOS_lib/src/utils.c
ALOS_lib/src/ALOS_ldr_orbit.c
ALOS_lib/src/calc_dop.c

View File

@ -146,19 +146,19 @@ radar_wavelength lambda
rng_spec_wgt rhww
*/
int verbose; /* controls minimal level of output */
int debug; /* more output */
int roi; /* more output */
int swap; /* whether to swap bytes */
int quad_pol; /* quad polarization data */
int ALOS_format; /* AUIG: ALOS_format = 0 */
/* ERSDAC: ALOS_format = 1 */
int force_slope; /* whether to set the slope */
int dopp; /* whether to calculate doppler */
int quiet_flag; /* reduce output */
int SAR_mode; /* 0 => high-res */
/* 1 => wide obs */
/* 2 => polarimetry */
/* from ALOS Product Format 3-2 */
double forced_slope; /* value to set chirp_slope to */
double tbias; /* time bias for bad orbit data */
extern int verbose; /* controls minimal level of output */
extern int debug; /* more output */
extern int roi; /* more output */
extern int swap; /* whether to swap bytes */
extern int quad_pol; /* quad polarization data */
extern int ALOS_format; /* AUIG: ALOS_format = 0 */
/* ERSDAC: ALOS_format = 1 */
extern int force_slope; /* whether to set the slope */
extern int dopp; /* whether to calculate doppler */
extern int quiet_flag; /* reduce output */
extern int SAR_mode; /* 0 => high-res */
/* 1 => wide obs */
/* 2 => polarimetry */
/* from ALOS Product Format 3-2 */
extern double forced_slope; /* value to set chirp_slope to */
extern double tbias; /* time bias for bad orbit data */