Commit Graph

101 Commits

Author SHA1 Message Date
Bryce Denney
6e1388f0d9 - add workaround for solaris that forces new operator to be linked with main 2002-10-17 00:09:54 +00:00
Bryce Denney
3d53781ba6 - for win32 dll, must export Widget class and array of Widget pointers 2002-10-16 22:33:32 +00:00
Bryce Denney
3f58f90cc9 - fix syntax errors related to missing quotes 2002-10-16 15:54:31 +00:00
Bryce Denney
f3a611de1f - also remove *.exp and *.def, which are generated on win32 2002-10-16 15:52:36 +00:00
Bryce Denney
6ce1a5f593 - minor cleanup of output to do_tests.out 2002-10-16 15:38:48 +00:00
Bryce Denney
0a608092d7 - add script that does everything and collects results in do_tests.out 2002-10-16 15:31:18 +00:00
Bryce Denney
791012c8da - add "-" to ignore failures. I want to build all directories, even
if some of them are failing.
2002-10-16 15:09:51 +00:00
Bryce Denney
f461ee0cf0 - add test11, which checks whether global constructors in a shared lib a
are called as the module is loaded.
2002-10-16 15:04:44 +00:00
Bryce Denney
7e5afc40da - add tests 8,9,10 2002-10-16 14:56:26 +00:00
Bryce Denney
0c3efe4236 - add test9 which implements a class entirely in a module 2002-10-16 14:55:10 +00:00
Bryce Denney
855e2007a0 - add test10 in which each module creates its own child class of
DeviceInterface, and the main code talks to the devices using
  virtual methods of Device Interface.
2002-10-16 14:45:32 +00:00
Bryce Denney
4cbcd6550b - add test8-execlass, which defines a C++ class in the executable, and
tests that the modules can access it
2002-10-16 13:28:17 +00:00
Bryce Denney
fa853f3b48 - add VARIES{} fields around pointers and filenames 2002-10-16 13:11:23 +00:00
Bryce Denney
7eb6b6549b - add expected output for test7 2002-10-16 13:10:31 +00:00
Bryce Denney
4417fb4865 - make it work with VPATH 2002-10-16 13:09:52 +00:00
Bryce Denney
69b0917ee7 - don't use diff -u, just plain diff so that it works with old diffs too 2002-10-16 13:05:44 +00:00
Bryce Denney
9f1f7f5687 - make test will run the testscript now that it exists 2002-10-16 13:05:17 +00:00
Bryce Denney
0982b46a7b - configure will generate testscript now, so that VPATH works 2002-10-16 12:54:06 +00:00
Bryce Denney
51c22124a3 - configure will generate testscript now, so that it can work with VPATH 2002-10-16 12:53:35 +00:00
Bryce Denney
36d13ab996 - I added a printf in module1 2002-10-16 12:32:31 +00:00
Bryce Denney
7398aa8678 - add VARIES{} around the filename of the module, since it's platform
specific
2002-10-16 12:29:06 +00:00
Bryce Denney
8a1917efcd - add VARIES{} around the module name that is loaded, since it's different
on win32
2002-10-16 12:27:42 +00:00
Bryce Denney
57cb560e53 - pull the ltdl link arg out of LIBS so that the libtool section and the
win32-dll section can specify it in their own different ways.
2002-10-16 12:26:48 +00:00
Bryce Denney
c0e6504d12 - add printf in the module. It seems that in my libtool builds on cygwin,
modules that call libc functions crash.  This exposes that bug.
2002-10-16 12:24:43 +00:00
Bryce Denney
9e111bc7fe - check in unpleasant hack to cause LTDL_SHLIB_EXT to say ".dll"
instead of ".dll.a".  The way I did this is NOT good because
  it affects libltdl/libtool too, but I only wanted to affect config.h.
  But I haven't found any other way...
2002-10-16 12:23:28 +00:00
Bryce Denney
14a35053a0 - include stdlib.h so that exit is defined. 2002-10-16 04:40:21 +00:00
Bryce Denney
06253913ec - first draft test script that runs "uselib" in every directory,
compares the exit code against the magic value of 77, and compares
  the stdout output against the expected output.
2002-10-16 04:12:15 +00:00
Bryce Denney
a93c64a683 - move makefile code that is common to all subdirs into common-make-defs.txt 2002-10-16 04:11:22 +00:00
Bryce Denney
3086ca7059 - test program output and the reference output goes through this filter before
they are compared.  It replaces VARIES{anything*@#$} with VARIES{xxx}
  so that host-dependent outputs that are marked as such will match up.
2002-10-16 04:11:00 +00:00
Bryce Denney
1ee55d9edb - move some makefile stuff that is common to all subdirs into
common-make-defs.txt
2002-10-16 04:09:24 +00:00
Bryce Denney
7fc1a8b2cf - check in expected output from each program 2002-10-16 04:08:24 +00:00
Bryce Denney
837d985b19 - call exit(77) for success. 77 was chosen arbitrarily; it is unlikely that a
malfunctional program could return this code by accident.
2002-10-16 04:07:58 +00:00
Bryce Denney
7f38378f97 - select between libtool and win32 specific makefile targets 2002-10-16 02:55:52 +00:00
Bryce Denney
d528a0f020 - add win32 DLL section to the makefile. Use entirely different
target names so that both sets of rules can coexist in the same file.
  The configure script selects which one to use.
- use patterns to build plugins.
- remove Makefile, which was specific to win32.
2002-10-16 02:55:16 +00:00
Bryce Denney
e972168d39 - clean up the libtool section of the makefile
- remove the unsuccessful experiment with libmain.la
- now the executable uses -export-dynamic and the modules use -module,
  as it should be
2002-10-16 02:36:45 +00:00
Bryce Denney
21df25a043 - add error when you try to compile this for nonwindows platform 2002-10-16 02:21:38 +00:00
Bryce Denney
8fcfa44ea0 - disable debug messages in the checked in version 2002-10-16 02:19:46 +00:00
Bryce Denney
be5316b66e - commit my notes from test6. Some day soon I will have to clean this
up and then send about 6 patches to the libtool developers.
2002-10-16 02:16:43 +00:00
Bryce Denney
f49ec8c71c Fix serveral ltdl bugs related to searching for libraries, and what
to do if they cannot be found.

- in try_dlopen, after find_handle() is called and returns 0 over
  and over, it was ignoring the return value of tryall_dlopen.  As
  a result, sometimes the dlopen would fail and return 1 or more
  errors but nobody would notice.  The handle would be returned as
  if the open had succeed, then any use of the handle would segfault
  because handle->loader was NULL.  I have solved this problem by
  capturing the return value in errors, and then checking if errors>0
  in the next if statement.
- fix faulty boolean logic in lt_dlopenext that caused it to only
  search for libraries ending with .la.  Now it says: if try_dlopen
  created a nonzero handle, return it.  Otherwise, if there were
  any errors OTHER THAN file-not-found, return the NULL handle.  If
  the only errors were file-not-found, continue to search.
- just before loading the module in tryall_dlopen, do one final
  call to access() to check for existence of the file.  Without
  this check, you sometimes get the "can't load module" error
  when in fact the problem is "file not found".
2002-10-16 02:08:02 +00:00
Bryce Denney
5d29f481bd - just add some comments 2002-10-16 01:54:46 +00:00
Bryce Denney
bb1a834cc5 - Sometimes lt_dlopen and lt_dlopenext return a valid handle when no
library was actually found.  Add asserts to look for occurrences of this
  "valid handle but NULL loader" problem.
2002-10-16 01:52:39 +00:00
Bryce Denney
9429cb8d62 - add a bunch of debug messages using a macro LTDEBUG_PRINTF(). 2002-10-16 01:45:46 +00:00
Bryce Denney
ebf553f014 - add notes about what works and what doesn't 2002-10-16 01:37:42 +00:00
Bryce Denney
82c91fd104 - let each Makefile.in decide where and when to include INCLTDL and LIBLTDL 2002-10-16 01:37:11 +00:00
Bryce Denney
3f57e5f278 - add reference to a variable, like in test7 2002-10-16 01:32:52 +00:00
Bryce Denney
19a62a4798 - temporarily check in this Makefile that works for cygwin/mingw. Then
I will go back to a unix system and hack Makefile.in and configure.in so
  that we get these exact make commands for cygwin only.
2002-10-16 01:32:27 +00:00
Bryce Denney
5b555711f2 - minor changes to make this work in win32: define LT_SCOPE to be extern
before including <ltdl.h>.  Otherwise it tries to export some symbols
  from main.cc, which then conflict with the real ltdl when it gets linked.
- on win32 I am not using libtool to build the libraries, so I need to
  use a different format string for module names.  On win32 use "%s.dll".
- call lt_dlopenext() instead of lt_dlopen() because it searches for
  filenames using various extensions including the libtool extension .la
  and also the system's native library name (.so or whatever).
2002-10-16 01:28:41 +00:00
Bryce Denney
42e89cc4c7 - fix major bug in LTDL that makes it only look in the first component of
a pathname list.
2002-10-15 20:56:27 +00:00
Bryce Denney
9f90c8d0fa - try to make VPATH work 2002-10-14 21:10:54 +00:00
Bryce Denney
16638b28c9 - mention test6,7 and add a good reference about win32 dlls 2002-10-14 21:08:14 +00:00