summaryrefslogtreecommitdiff
path: root/GNUmakefile
diff options
context:
space:
mode:
authorrpj <rpj>2005-04-01 09:13:32 +0000
committerrpj <rpj>2005-04-01 09:13:32 +0000
commit4b8ca0cba45b88803f99b9d91d2a8c7ec7f9f46d (patch)
tree00c397498d8637061ae94bb9051e33245bb998ec /GNUmakefile
parentf63f8cd4f69317850dd5e8d6302acf3fbf849332 (diff)
''
Diffstat (limited to 'GNUmakefile')
-rw-r--r--GNUmakefile10
1 files changed, 10 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 9e6be70..00eeb8e 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -427,6 +427,7 @@ GCE_INLINED_STAMP = pthreadGCE$(DLL_VER).stamp
GC_DLL = pthreadGC$(DLL_VER).dll
GC_LIB = libpthreadGC$(DLL_VER).a
GC_INLINED_STAMP = pthreadGC$(DLL_VER).stamp
+GC_STATIC_STAMP = libpthreadGC$(DLL_VER).stamp
PTHREAD_DEF = pthread.def
@@ -436,6 +437,7 @@ help:
@ echo "make clean GC (to build the GNU C dll with C cleanup code)"
@ echo "make clean GCE-inlined (to build the GNU C inlined dll with C++ exception handling)"
@ echo "make clean GC-inlined (to build the GNU C inlined dll with C cleanup code)"
+ @ echo "make clean GC-static (to build the GNU C inlined static lib with C cleanup code)"
all:
@ $(MAKE) clean GCE
@@ -453,6 +455,9 @@ GC-inlined:
GCE-inlined:
$(MAKE) CC=g++ XOPT="-DPTW32_BUILD_INLINED" CLEANUP=-D__CLEANUP_CXX XC_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GCE_INLINED_STAMP)
+GC-static:
+ $(MAKE) CC=gcc XOPT="-DPTW32_BUILD_INLINED -DPTW32_STATIC_LIB" CLEANUP=-D__CLEANUP_C XC_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GC_STATIC_STAMP)
+
tests:
@ cd tests
@ $(MAKE) auto
@@ -493,6 +498,11 @@ $(GCE_INLINED_STAMP): $(DLL_INLINED_OBJS)
dlltool -k --dllname $(GCE_DLL) --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
echo touched > $(GCE_INLINED_STAMP)
+$(GC_STATIC_STAMP): $(DLL_INLINED_OBJS)
+ $(RM) $(GC_LIB)
+ $(AR) -rv $(GC_LIB) $(DLL_INLINED_OBJS)
+ echo touched > $(GC_STATIC_STAMP)
+
clean:
-$(RM) *~
-$(RM) *.i