#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation.  Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s): 
#

DEPTH		= ../..
topsrcdir	= @top_srcdir@
srcdir		= @srcdir@
VPATH		= @srcdir@

include $(DEPTH)/config/autoconf.mk

MODULE		= xpcom
ifeq ($(OS_ARCH),WINNT)
XPIDL_MODULE	= xpcom_thread
else
XPIDL_MODULE	= xpcom_threads
endif
LIBRARY_NAME	= xpcomthreads_s
REQUIRES	= string \
		  $(NULL)


CSRCS		= \
		plevent.c \
		$(NULL)

CPPSRCS		= \
		nsAutoLock.cpp \
		nsEventQueue.cpp \
		nsEventQueueService.cpp \
		nsThread.cpp \
		nsTimerImpl.cpp \
		nsProcessCommon.cpp \
		TimerThread.cpp \
		$(NULL)

EXPORTS		= \
		nsAutoLock.h \
		plevent.h \
		nsProcess.h \
		nsITimer.h \
		nsITimerCallback.h \
		$(NULL)

XPIDLSRCS	= \
		nsIThread.idl \
		nsIThreadPool.idl \
		nsIRunnable.idl \
		nsIEventQueue.idl \
		nsIEventQueueService.idl \
		nsIProcess.idl \
		$(NULL)

EXPORTS		:= $(addprefix $(srcdir)/, $(EXPORTS))

LOCAL_INCLUDES	= -I$(srcdir)/../components

# we don't want the shared lib, but we want to force the creation of a static lib.
FORCE_STATIC_LIB = 1

# Force use of PIC
FORCE_USE_PIC	= 1

include $(topsrcdir)/config/rules.mk

DEFINES		+= -D_IMPL_NS_COM -D_IMPL_NS_BASE
ifeq ($(OS_ARCH), WINNT)
DEFINES		+= -DWIN32_LEAN_AND_MEAN
endif

