Skip to content

Commit

Permalink
Apply selected changes from version 2.11
Browse files Browse the repository at this point in the history
  • Loading branch information
rocso committed Dec 22, 2016
1 parent 69fc8ea commit 1b259b4
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 11 deletions.
6 changes: 3 additions & 3 deletions GNUmakefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -237,9 +237,9 @@ all-tests:
cd tests && $(MAKE) clean GC-static $(TEST_ENV) && $(MAKE) clean GCX-static $(TEST_ENV)
$(MAKE) realclean GCE-static
cd tests && $(MAKE) clean GCE-static $(TEST_ENV)
@ $(GREP) FAILED *.log || $(GREP) Passed *.log | $(COUNT_UNIQ)
$(MAKE) clean
@ $(RM) *.log
$(MAKE) realclean
@ $(GREP) Passed *.log | $(COUNT_UNIQ)
@ $(GREP) FAILED *.log

all-tests-cflags:
$(MAKE) all-tests __PTW32_FLAGS="-Wall -Wextra"
Expand Down
22 changes: 15 additions & 7 deletions README
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
PTHREADS-WIN32
==============
PTHREADS-WIN32 (A.K.A. PTHREADS4W)
==================================

Pthreads-win32 is free software, distributed under the GNU Lesser
General Public License (LGPL). See the file 'COPYING.LIB' for terms
Expand All @@ -26,7 +26,7 @@ routines.

Prerequisites
-------------
MSVC or GNU C (MinGW32 or MinGW64 MSys development kit)
MSVC or GNU C (MinGW or MinGW64 with AutoConf Tools)
To build from source.

QueueUserAPCEx by Panagiotis E. Hadjidoukas
Expand Down Expand Up @@ -242,7 +242,7 @@ Other name changes
All snapshots prior to and including snapshot 2000-08-13
used "_pthread_" as the prefix to library internal
functions, and "_PTHREAD_" to many library internal
macros. These have now been changed to "__ptw32_" and "PTW32_"
macros. These have now been changed to "__ptw32_" and "__PTW32_"
respectively so as to not conflict with the ANSI standard's
reservation of identifiers beginning with "_" and "__" for
use by compiler implementations only.
Expand Down Expand Up @@ -417,16 +417,24 @@ Building with MinGW
NOTE: All building and testing is done using makefiles. We use the native
make system for each toolchain, which is 'make' in this case.

We have found that Mingw32 builds of the GCE library variants fail when run
on 64 bit systems. The GC variants are fine.
We have found that Mingw builds of the GCE library variants can fail when
run on 64 bit systems, believed to be due to the DWARF2 exception handling
being a 32 bit mechanism. The GC variants are fine. MinGW64 offers
SJLJ or SEH exception handling so choose one of those.

From the source directory:

run 'autoheader' to rewrite the config.h file
run 'autoconf' to rewrite the GNUmakefiles (library and tests)
run './configure' to create config.h and GNUmakefile.
run 'make' without arguments to list possible targets.

$ make
E.g.

$ autoheader
$ autoconf
$ ./configure
$ make realclean all-tests

With MinGW64 multilib installed the following variables can be defined
either on the make command line or in the shell environment:
Expand Down
2 changes: 1 addition & 1 deletion tests/GNUmakefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ all-bench: $(HDR) $(LIB) $(DLL) $(QAPC) $(XXLIBS) $(BENCHRESULTS)
@ $(ECHO) "ALL BENCH TESTS COMPLETED. Check the logfile: $(LOGFILE)"
@ $(ECHO) "FAILURES: $$( $(GREP) FAILED $(LOGFILE) | $(WC) -l ) "
@ - ! $(GREP) FAILED $(LOGFILE)
@ $(MV) $(LOGFILE) $(TEST)-$(LOGFILE)
@ $(MV) $(LOGFILE) ../$(TEST)-$(LOGFILE)

cancel9.exe: XLIBS = -lws2_32

Expand Down

0 comments on commit 1b259b4

Please sign in to comment.