diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2021-11-07 09:16:15 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2021-11-07 09:20:15 +0300 |
commit | 74f3108c0c70515a6bd4d5cbba2de29340254c01 (patch) | |
tree | 18ac17140c2622787f915be82bc42ed59baf9d85 /src | |
parent | a821036cc7208fbd83cf8c05d080506581ca2471 (diff) | |
download | libatomic_ops-74f3108c0c70515a6bd4d5cbba2de29340254c01.tar.gz |
Build libatomic_ops.lib by Makefile.msft (MS VC)
This unifies the build artifacts between the supported build systems.
Note that the clients relying on Makefile.msft should now link with
libatomic_ops.lib in addition to libatomic_ops_gpl.lib.
* README.md (Platform Specific Notes): Updade documentation about
Makefile.msft which also builds libatomic_ops.lib now.
* README_win32.txt: Likewise.
* README_win32.txt: Refine documentation (separate the package build
from client code compilation).
* src/Makefile.msft (LIB_GPL_OBJS): New variable.
* src/Makefile.msft (LIB_OBJS): Move atomic_ops_malloc.obj and
atomic_ops_stack.obj to LIB_GPL_OBJS.
* src/Makefile.msft (all-disable-gpl, libatomic_ops.lib): New goal
(builds only non-GPL code).
* src/Makefile.msft (all): Depend on all-disable-gpl.
* src/Makefile.msft (libatomic_ops_gpl.lib): Depend and use
LIB_GPL_OBJS instead of LIB_OBJS.
* src/Makefile.msft (test_malloc, test_stack): Also depend and link
with libatomic_ops.lib.
* src/Makefile.msft (clean): Delete libatomic_ops*.lib.
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.msft | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/src/Makefile.msft b/src/Makefile.msft index 0dc810d..8567b06 100644 --- a/src/Makefile.msft +++ b/src/Makefile.msft @@ -14,9 +14,12 @@ CFLAGS_EXTRA= CFLAGS=-O2 -W4 $(CFLAGS_EXTRA) -LIB_OBJS=atomic_ops.obj atomic_ops_malloc.obj atomic_ops_stack.obj +LIB_OBJS=atomic_ops.obj +LIB_GPL_OBJS=atomic_ops_malloc.obj atomic_ops_stack.obj -all: libatomic_ops_gpl.lib +all-disable-gpl: libatomic_ops.lib + +all: all-disable-gpl libatomic_ops_gpl.lib atomic_ops.obj: cl $(CFLAGS) -c atomic_ops.c @@ -27,8 +30,11 @@ atomic_ops_stack.obj: atomic_ops_malloc.obj: cl $(CFLAGS) /wd4127 -c atomic_ops_malloc.c -libatomic_ops_gpl.lib: $(LIB_OBJS) - lib /out:libatomic_ops_gpl.lib $(LIB_OBJS) +libatomic_ops.lib: $(LIB_OBJS) + lib /out:libatomic_ops.lib $(LIB_OBJS) + +libatomic_ops_gpl.lib: $(LIB_GPL_OBJS) + lib /out:libatomic_ops_gpl.lib $(LIB_GPL_OBJS) ..\tests\test_atomic: ..\tests\test_atomic.c ..\tests\test_atomic_include.h cl $(CFLAGS) -I. ..\tests\test_atomic.c \ @@ -40,13 +46,15 @@ libatomic_ops_gpl.lib: $(LIB_OBJS) /Fo..\tests\test_atomic_generalized \ /Fe..\tests\test_atomic_generalized -..\tests\test_malloc: ..\tests\test_malloc.c libatomic_ops_gpl.lib +..\tests\test_malloc: ..\tests\test_malloc.c libatomic_ops.lib \ + libatomic_ops_gpl.lib cl $(CFLAGS) -I. ..\tests\test_malloc.c /Fo..\tests\test_malloc \ - /Fe..\tests\test_malloc libatomic_ops_gpl.lib + /Fe..\tests\test_malloc libatomic_ops.lib libatomic_ops_gpl.lib -..\tests\test_stack: ..\tests\test_stack.c libatomic_ops_gpl.lib - cl $(CFLAGS) -I. ..\tests\test_stack.c \ - /Fo..\tests\test_stack /Fe..\tests\test_stack libatomic_ops_gpl.lib +..\tests\test_stack: ..\tests\test_stack.c libatomic_ops.lib \ + libatomic_ops_gpl.lib + cl $(CFLAGS) -I. ..\tests\test_stack.c /Fo..\tests\test_stack \ + /Fe..\tests\test_stack libatomic_ops.lib libatomic_ops_gpl.lib check-deps: check-noautogen-deps ..\tests\test_atomic \ ..\tests\test_atomic_generalized @@ -63,4 +71,4 @@ check-noautogen: check-noautogen-deps ..\tests\test_stack clean: - del *.obj libatomic_ops_gpl.lib ..\tests\*.obj ..\tests\*.exe + del *.obj libatomic_ops*.lib ..\tests\*.obj ..\tests\*.exe |