File: README_win32.txt

package info (click to toggle)
moarvm 2018.12%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 18,196 kB
  • sloc: ansic: 223,172; perl: 7,638; sh: 4,452; makefile: 1,089; python: 568; asm: 8
file content (29 lines) | stat: -rw-r--r-- 1,556 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Most of the atomic_ops functionality is available under Win32 with
the Microsoft tools, but the build process currently is considerably more
primitive than on Linux/Unix platforms.

To build:

1) Go to the src directory in the distribution.
2) Make sure the Microsoft command-line tools (e.g. nmake) are available.
3) Run "nmake -f Makefile.msft".  This should run some tests, which
may print warnings about the types of the "Interlocked" functions.
I haven't been able to make all versions of VC++ happy.  If you know
how to, please send a patch.
4) To compile applications, you will need to retain or copy the following
pieces from the resulting src directory contents:
        "atomic_ops.h" - Header file defining low-level primitives.  This
                         includes files from:
        "atomic_ops"- Subdirectory containing implementation header files.
        "atomic_ops_stack.h" - Header file describing almost lock-free stack.
        "atomic_ops_malloc.h" - Header file describing almost lock-free malloc.
        "libatomic_ops_gpl.lib" - Library containing implementation of the
                        above two (plus AO_pause() defined in atomic_ops.c).
                        The atomic_ops.h implementation is entirely in the
                        header files in Win32.

If the client defines AO_ASSUME_VISTA (before include atomic_ops.h), it should
make double_compare_and_swap_full available.

Note that the library is covered by the GNU General Public License, while
the top 2 of these pieces allow use in proprietary code.