https://github.com/kwwette/swiglal

sort by:
Revision Author Date Message Commit Date
77e755f Revert non-recursive build commits - Revert "build_common.am: use test_{programs|scripts|helpers} variables for tests" This reverts commit 6f075a226574bc40e4f32816d120aea06e7e7a6c. - Revert "LALStochastic: use non-recursive Makefile" This reverts commit 2aa9746e0d8e6e5d4bc0aa83014c601006ae34ff. - Revert "LALMetaIO: use non-recursive Makefile" This reverts commit 8da5bf1e3f0ed1c0578f3c8878b9266062d82316. - Revert "Reorganisation of non-recursive Makefile fragments" This reverts commit dd6e620f51a552d92122d93d40434e75d59b8f7e. - Revert "LALXML: use non-recursive Makefile" This reverts commit c757c86711cf6124785e7c93b0419f2854ad148b. 16 June 2014, 10:17:56 UTC
040bc2d SWIG: fix reverse operators for LIGOTimeGPS - Reverse operators were not working because first operator argument was required to be a LIGOTimeGPS; this was because the specialised input typemaps for LIGOTimeGPS, which allow conversion from double, were defined *after* the definition of LIGOTimeGPS, and were therefore not applied to the SWIG wrapping code, including operators, defined in the %extend block. - Split lalswig_ligotimegps.i into two SWIG headers SWIGLIGOTimeGPS{Pre|Post}.i which are included before|after definition of LIGOTimeGPS in LALDatatypes.h. SWIGLIGOTimeGPSPre has typemaps, SWIGLIGOTimeGPSPost contains %extend block. - Test script check_lalswig.py now checks LIGOTimeGPS reverse operators work. - Operator functions can't have keyword arguments, so remove this feature in swiglal_python.i (for some reason it wasn't being applied before). - Refs #1295 24 April 2014, 14:05:43 UTC
5e8b1bb SWIG: allow destructor functions to return either void or int - fail if a destructor function returns a different type - ignore int return and clear XLAL error status before/after calling destructor, to clear any errors raised by function - refs #1275 04 April 2014, 00:24:37 UTC
932f618 Add -D__STDC_CONSTANT_MACROS and -D__STDC_LIMIT_MACROS to CXXFLAGS - these are C++-specific, so no need to add them to CPPFLAGS - and remove duplicate definitions in SWIG configuration 20 January 2014, 04:07:42 UTC
02bea7c LALXML: use non-recursive Makefile - refs #1058 16 January 2014, 18:36:19 UTC
5adea91 SWIG: add both source and build directories to both SWIG and C include paths 16 January 2014, 03:59:49 UTC
0a7b5b4 SWIG: require version >= 2.0.11 - Python: fixes #998 - Octave: fixes various bugs, including a serious memory leak 03 January 2014, 19:09:53 UTC
17132c8 SWIG: fix bugs in fixed-size array typemaps - 'temp' array variables must be defined at function scope, not inside blocks, so that they are guaranteed to exist for the function lifetime; otherwise $1 will probably point at non-allocated data - use 'noblock=1' to remove typemap blocks when needed, but keep dims, strides, and ecode within blocks to avoid "jump to label 'fail'" errors - use $argnum to create unique names for each 'temp' variable - add additional tests to Octave and Python test scripts in LAL 30 December 2013, 11:36:36 UTC
d19c78a SWIG: minor fixes to check_lalswig.py - use NumPy's ComplexWarning if available (since NumPy 1.5) - fix comments and progress messages 30 December 2013, 11:36:36 UTC
cc59870 SWIG: rename test symbols 28 December 2013, 11:28:25 UTC
9953ab8 SWIG: generate swig_config.h configuration header from config.h - prepends SWIGLAL_ to config.h constants, to avoid namespace conflicts with Octave/Python headers - now use SWIGLAL_HAVE_LIBGSL to test for GSL availability 27 December 2013, 10:17:10 UTC
82ea49e SWIG: use LAL's lalNoDebug instead of swig_debug - since debugging mode is determined only in LAL 26 December 2013, 04:17:47 UTC
a030dc7 Top-level build: use pkg-config to determine inter-library dependencies - and paths to uninstalled data files, and Octave and Python modules - use Automake AM_CFLAGS, etc. variables for compiler/linker flags, reserving CFLAGS, etc. for the user per GNU coding standards - new macro LALSUITE_CHECK_LIBRARY_FOR_SUPPORT for checking config headers - refs #1071 12 December 2013, 03:01:41 UTC
4b9d557 SWIG: use %constant to expose swig_debug and swig_version constants 18 November 2013, 00:45:58 UTC
73aae0d SWIG: safely handle functions whose return value may be the 1st argument - Don't disown objects, so segmentation faults should not occur - If both return/1st argument types and values are the same, return a reference to the SWIG object wrapping the 1st argument, so that memory is not cleared until both return/1st argument SWIG objects are freed. - Use swiglal_no_1starg to interact correctly with NEW_ARGUMENT typemaps. - Add tests for Octave and Python 18 November 2013, 00:09:46 UTC
91c3852 SWIG: various edits and fixes to test scripts - print message before beginning each test - fix bug in LALDetChar script: always test parent tracking 18 November 2013, 00:08:58 UTC
6c0a333 Revert "SWIG: surround all LAL header #includes with extern "C" protection" This reverts commit 977cc3365b49704bdbdc487d3fbce4343b0d1c06. 12 November 2013, 22:06:47 UTC
7e82278 SWIG: surround all LAL header #includes with extern "C" protection 12 November 2013, 21:18:53 UTC
ba59bbe SWIG: create link to interface in $(top_builddir)/include/lal directory - instead of creating $(top_builddir)/swig/lal directory, which then needs to be added to the include path 30 October 2013, 22:57:01 UTC
ec84c2a SWIG: use PACKAGE instead of PACKAGE_NAME - PACKAGE is always the lowercase package name 29 October 2013, 21:15:22 UTC
943a4e5 Add top-level ./build script, which builds LALSuite as individual packages - enable at top level with ./configure --with-build-script ... - separate Doxygen configuration from top-level build system 23 October 2013, 18:58:39 UTC
0232781 SWIG: recognise ...Free...() functions as destructors 10 October 2013, 17:06:32 UTC
ea30c63 SWIG: disallow duplicate destructor functions for a struct - which means some functions need to be excluded from SWIG interface 10 October 2013, 17:00:30 UTC
9101d58 SWIG: return to determining whether to ignore function 'int' returns at run time - Compile time method did not pick up functions which returned output scalars, e.g. double*. In general cannot safely determine at compile time how many arguments a SWIG-wrapped function will return, so must do it at run time. - Slightly less hacked implementation this time: assume function will not return 'int', then add it if there are no other return arguments. - Add checks that 'int' is still returned in structs. 06 July 2013, 13:22:27 UTC
5103212 generate_swiglal_iface.py: quote regular expressions as raw strings 05 June 2013, 21:38:53 UTC
01992ce generate_swiglal_iface.py: pass arguments on command line - instead of through environment 05 June 2013, 21:38:53 UTC
e34e139 SWIG: determine whether to ignore function return values at compile time - rather than at run time, which is rather cumbersome - uses the same logic, so should still generate the same wrappings 05 June 2013, 21:37:10 UTC
e087f22 SWIG: use debug level names in TESTS_ENVIRONMENT 03 June 2013, 14:21:29 UTC
0e45a1a SWIG: do not ignore return value if type matches that of first argument - instead just disown the first argument, to prevent two different SWIG wrapping objects from owning the same LAL memory 31 May 2013, 11:12:35 UTC
996eb94 SWIG: add typemaps for struct-LIGOTimeGPS input arguments - double is also accepted as input, consistent with ptr-LIGOTimeGPS inputs - add Octave and Python test cases 25 May 2013, 14:43:30 UTC
7ee7766 modify lalDebugLevel using an environment variable only 23 May 2013, 21:12:18 UTC
6eda0e8 SWIG: disable Octave LIGOTimeGPS tests which are broken for SWIG < 2.0.10 23 May 2013, 18:08:54 UTC
794460b SWIG: fortify vector/matrix conversion tests against uninitialized memory - can lead to random overflow errors when performing numeric conversions - seems to be especially a problem in non-debug builds ... 16 May 2013, 21:34:47 UTC
56ee0c1 SWIG: do not perform memory allocation checks in non-debug build - not applicable since memory tracking is not available 16 May 2013, 21:34:47 UTC
0367a01 SWIG: make views return empty arrays if C array has no elements - if C array is empty, product of dimensions will be zero, and both Octave and Python will create empty arrays of the correct type - dynamic array macros now just check for non-zero strides - add Octave and Python test cases for zero-size arrays - refs #880 16 May 2013, 09:36:18 UTC
00e7441 Fix SWIG Python run-python Makefile target 16 May 2013, 08:13:35 UTC
cf9d3fb SWIG: automatically determine dependencies between SWIG modules - by parsing $LIBS and looking for LAL library names - LALSUITE_SWIG_DEPENDS is no longer needed - interfaces only import direct dependencies, using SWIGIMPORTED prevents recursive imports 11 May 2013, 16:15:33 UTC
9579ebc SWIG: change test scripts debug level to LALMEMDBG - less noisy than LALMEMTRACE 03 May 2013, 13:52:43 UTC
e5c9b91 Set proper debugging level for SWIG tests 01 May 2013, 13:22:55 UTC
c47ef37 SWIG: add proper support for arrays of pointers - elements of arrays of pointers need to be correctly dereferenced inside swiglal_from/as_SWIGTYPE, as determined by bool 'isptr' - typemap 'swiglal_dynarr_isptr' selects appropriate value of 'isptr' - 'isptr' propagated through Octave array wrappings by storing it inside array view class - 'isptr' propagated through Python array wrappings by using different Numpy array descriptors for arrays of pointers vs data blocks - add test suite section to test that it works 15 April 2013, 17:34:03 UTC
325da5d SWIG: accept an underscore after Destroy|Close in destructor name 15 April 2013, 17:33:57 UTC
0408bd9 SWIG: add LIGOTimeGPS.ns() method returning a LIGOTimeGPS in nanoseconds - and adjust test suite to use it 15 April 2013, 17:31:15 UTC
7024cf4 SWIG: improve usage of XLALStrToGPS() in LIGOTimeGPS constructor - check 'end' pointer has reached end of string - raise XLAL error on failure - add test suite cases 15 April 2013, 17:31:12 UTC
2515faa SWIG: fix bugs in LAL Octave/Python test suites - raising exceptions inside try blocks *doesn't* raise an exception! - get rid of references to ancient getel/setel accessor methods - discovered that NumPy does *not* complain on downcasts from complex to integer/real values! 15 April 2013, 17:31:08 UTC
7934de3 SWIG: fix bug in Octave array dimension checking - logic to determine consistency of Octave vs C array dimensions was incorrect - add check for correct behaviour to test suite for both Octave and Python 10 April 2013, 15:11:08 UTC
dd84c6a SWIG: add typemap to accept real numbers as convertible to LIGOTimeGPSs - with test suite checks 20 March 2013, 21:06:32 UTC
7d7c456 Erase SWIG dependency files when header list changes 10 March 2013, 16:26:42 UTC
5705f1a generate_swiglal_iface.py: handle functions returning multi-pointers 28 February 2013, 21:48:01 UTC
1d015f1 SWIG: remove need to create header links - move common/testing SWIG interface files into LAL file hierarchy - still need to create a lal/ link for the generated interface file 28 February 2013, 21:48:01 UTC
cef1ef4 SWIG: fix some bugs in %apply OUTPUT typemaps - add typemaps for C99 fixed-size integer types - remove incorrect typemaps for INT2*/UINT2* 21 February 2013, 16:23:57 UTC
11d2d53 fix typo introduced in 127dd3b4 10 February 2013, 22:46:51 UTC
2f78c35 add -no-window-system to octave test 10 February 2013, 21:24:09 UTC
a47f3c7 Fix regeneration of SWIG dependency files 07 February 2013, 23:30:02 UTC
187730e SWIG: check for availability of GSL before including GSL code 17 January 2013, 03:10:40 UTC
03a312e SWIG: recognize functions with 'Close' in name as destructor functions 22 December 2012, 02:10:33 UTC
7fb69e6 SWIG: minimise wrapping module library dependencies - link only against wrapped library .la: including against dependent libraries can mess up -L path order - don't link against Octave/Python libraries: doesn't seem to be needed, since they're dynamically-loaded modules 12 November 2012, 20:08:06 UTC
5521ed7 SWIG: avoid using libtool versioned libraries - unnecessary for wrapping libraries, and causes problems when library versions change - if versioning is required, use a fixed version of 0:0:0 12 November 2012, 20:08:06 UTC
3a4af00 Revert "SWIG: erase dependency files when performing "make clean"" This reverts commit 030b16f37a93200ad39579c680524ec3fa1fbcfb. 02 November 2012, 12:58:41 UTC
3bac080 SWIG: erase dependency files when performing "make clean" 01 November 2012, 14:45:25 UTC
6a68472 SWIG: replace SWIGVERSION with SWIG_VERSION - only the latter is defined both by SWIG and in generated sources 23 October 2012, 13:41:21 UTC
bfcdcf6 Revert "SWIG: rename gsl_vector... and gsl_matrix... to GSL_vector... and GSL_matrix..." This reverts commit 875cdd81c1677c07dfedc2d180b430614efd0207. 22 October 2012, 16:39:41 UTC
f996d6f SWIG: rename gsl_vector... and gsl_matrix... to GSL_vector... and GSL_matrix... - to be consistent with GSL_rng, and future GSL wrappings 22 October 2012, 13:39:58 UTC
a830b0b SWIG: do not try to free const CHAR* return arguments 22 October 2012, 13:39:58 UTC
708bacc SWIG: print LAL debugging errors by default 22 October 2012, 13:39:58 UTC
92ebfd7 Fixed type descriptor selection for SWIG dynamic arrays 18 October 2012, 20:15:55 UTC
4f4962f Fixes to SWIG input-output typemaps for structs - use SWIG_POINTER_DISOWN when converting input argument, so SWIG does not try to destroy the argument when it gets reassigned in the scripting language. e.g. [a,b,c] = function(a,b,c) in Octave - add missing ** to public macro 16 October 2012, 13:08:49 UTC
d006ddb Perform all SWIG tests in non-debug build 29 September 2012, 12:15:14 UTC
61b903a Fix to SWIG build system 23 September 2012, 09:20:30 UTC
45fd641 Remove newfree typemap when ignoring return values 23 September 2012, 09:20:30 UTC
381cc06 Fix typo 18 September 2012, 02:09:17 UTC
4a7de72 move swig bindings into package subdirs This fixes a looming namespace pollution problem, allowing things other than the swig bindings to inhabit the package-specific namespace. 14 September 2012, 19:19:37 UTC
51f0907 SWIG: new macro for creating callback function pointers 13 August 2012, 15:50:03 UTC
a7ba782 SWIG: minor documentation edits 13 August 2012, 15:49:22 UTC
a21361f SWIG: rename macro 13 August 2012, 15:49:17 UTC
a339f04 SWIG: remove LIGOTimeGPS in-place binary operator implementations - Both Octave and Python will fall back to using the ordinary binary operators to implement these, so letting them do so ensures that e.g. reference counting semantics are correct for each language 13 August 2012, 14:09:04 UTC
16a3533 SWIG: macro for adding destructor for non-LAL struct 10 August 2012, 13:53:53 UTC
155ef5e SWIG: only ignore 'int' return for multi-output argument functions 10 August 2012, 11:43:35 UTC
84bb4d0 swiglal_common.i: move macros to later section 10 August 2012, 11:43:35 UTC
2b9c7c3 swiglal_common.i: minor edits to %swiglal_process_function() 10 August 2012, 11:43:34 UTC
b4055d9 generate_swiglal_iface.py: improved code which ignores function returns 10 August 2012, 11:43:34 UTC
0804815 generate_swiglal_iface.py: store symbols in different dictionaries 10 August 2012, 11:43:34 UTC
9c3771f SWIG: minor build system fixes - try to make dependency file rebuilding foolproof... - use dashes in phony target names 10 August 2012, 11:43:34 UTC
af43817 Fix bugs in 64-vs-32-bit #if 01 August 2012, 14:35:07 UTC
20a9080 SWIG: always include SWIG build system and source files in distribution 30 July 2012, 16:13:23 UTC
0d732f0 SWIG: generate architecture-independent wrapping code - remove need to use SWIGWORDSIZE64 macro 29 July 2012, 19:26:43 UTC
d67f629 SWIG: Typemap for supplying new empty struct arguments to functions 27 July 2012, 15:33:12 UTC
b0e6e17 generate_swiglal_iface.py: allow single-argument functions to be matched 27 July 2012, 12:39:28 UTC
e3e359e SWIG: typemaps and macros for input/output and output-only fixed arrays 24 July 2012, 16:35:48 UTC
9a1f767 SWIG: re-order typemaps for fixed arrays 24 July 2012, 16:35:48 UTC
b071994 SWIG: minor fixup to build dependencies 24 July 2012, 16:35:48 UTC
5ad580f SWIG: supply empty 'utc' struct to XLALGPSToUTC() 20 July 2012, 07:32:32 UTC
408b532 SWIG: Typemap for supplying empty struct arguments to functions 20 July 2012, 07:32:32 UTC
c606ada SWIG: improved segfault-on-exit prevention hack for Octave - The less said about this ... 20 July 2012, 07:32:32 UTC
f729bbb SWIG: fix another Python reference counting bug - PyArray_GETITEM() actually returns a new reference - who knew?? 18 July 2012, 18:32:25 UTC
de81f68 SWIG: fix handling of interface dependency files - Prevent interface from being regenerated when trying to perform a 'make clean' 16 July 2012, 20:49:58 UTC
524bb83 SWIG: ignore return values of functions whose return type matches their first argument - A number of functions in LALSuite return the value of their first argument, after some modifications have been made. In the SWIG wrappings this generates two SWIG-wrapping objects which wrap the same C struct, which leads to segfaults. The SWIG wrappings now return VOID_Object for these functions by default, unless the return value is specifically requested. - Implementation: generate_swiglal_iface.py looks for functions whose return type matches their first argument, and if so supplied the return type to the macro %swiglal_process_function(), which applies the SWIGLAL_RETURN_VOID typemap. Ignoring return values of type 'int' (i.e. XLAL error codes) is now also handled in the same way, so the SWIGLAL_XLAL_ERROR_CODE typemap is removed. - Also: RETURN_XLAL_ERROR_CODE() now handles multiple function arguments. 14 July 2012, 22:39:49 UTC
f2defd6 SWIG: prevent libtool from building static libraries for wrapping modules 14 July 2012, 22:39:49 UTC
4ddd94e SWIG: fixup to build system CLEANFILES targets - make $(swig_iface_headers) a clean instead of a distclean target - no need to clean .deps files as .deps/ directory already removed by distclean 14 July 2012, 22:39:49 UTC
432ca64 Workaround for SWIG Octave bug (using _exit instead of _Exit) 12 July 2012, 16:23:40 UTC
2c8d330 Extra input checking for Octave/Python swiglal_{store,release}_parent() - In particular, parent should now never be a null object. 12 July 2012, 13:44:57 UTC
back to top