1 Most of the atomic_ops functionality is available under Win32 with
2 the Microsoft tools, but the build process currently is considerably more
3 primitive than on Linux/Unix platforms.
7 1) Go to the src directory in the distribution.
8 2) Make sure the Microsoft command-line tools (e.g. nmake) are available.
9 3) Run "nmake -f Makefile.msft". This should run some tests, which
10 may print warnings about the types of the "Interlocked" functions.
11 I haven't been able to make all versions of VC++ happy. If you know
12 how to, please send a patch.
13 4) To compile applications, you will need to retain or copy the following
14 pieces from the resulting src directory contents:
15 "atomic_ops.h" - Header file defining low-level primitives. This
17 "atomic_ops"- Subdirectory containing implementation header files.
18 "atomic_ops_stack.h" - Header file describing almost lock-free stack.
19 "atomic_ops_malloc.h" - Header file describing almost lock-free malloc.
20 "libatomic_ops_gpl.lib" - Library containing implementation of the
21 above two. The atomic_ops.h implementation
22 is entirely in the header files in Win32.
24 Most clients of atomic_ops.h will need to define AO_ASSUME_WINDOWS98 before
25 including it. Compare_and_swap is otherwise not available.
27 Note that the library is covered by the GNU General Public License, while
28 the top 2 of these pieces allow use in proprietary code.