2 # ***** BEGIN LICENSE BLOCK *****
3 # Version: MPL 1.1/GPL 2.0/LGPL 2.1
5 # The contents of this file are subject to the Mozilla Public License Version
6 # 1.1 (the "License"); you may not use this file except in compliance with
7 # the License. You may obtain a copy of the License at
8 # http://www.mozilla.org/MPL/
10 # Software distributed under the License is distributed on an "AS IS" basis,
11 # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 # for the specific language governing rights and limitations under the
15 # The Original Code is mozilla.org code.
17 # The Initial Developer of the Original Code is
18 # Netscape Communications Corporation.
19 # Portions created by the Initial Developer are Copyright (C) 1998
20 # the Initial Developer. All Rights Reserved.
24 # Alternatively, the contents of this file may be used under the terms of
25 # either of the GNU General Public License Version 2 or later (the "GPL"),
26 # or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
27 # in which case the provisions of the GPL or the LGPL are applicable instead
28 # of those above. If you wish to allow use of your version of this file only
29 # under the terms of either the GPL or the LGPL, and not to allow others to
30 # use your version of this file under the terms of the MPL, indicate your
31 # decision by deleting the provisions above and replace them with the notice
32 # and other provisions required by the GPL or the LGPL. If you do not delete
33 # the provisions above, a recipient may use your version of this file under
34 # the terms of any one of the MPL, the GPL or the LGPL.
36 # ***** END LICENSE BLOCK *****
39 topsrcdir
= @top_srcdir@
43 include $(DEPTH
)/config
/autoconf.mk
46 XPIDL_MODULE
= xpcom_io
47 LIBRARY_NAME
= xpcomio_s
49 MOZILLA_INTERNAL_API
= 1
53 # work around bug 408258
55 ifneq ($(OS_ARCH
), Darwin
)
56 MODULE_OPTIMIZE_FLAGS
= -Os
-fno-strict-aliasing
$(MOZ_OPTIMIZE_SIZE_TWEAK
)
60 ifeq ($(MOZ_WIDGET_TOOLKIT
),cocoa
)
61 REQUIRES
+= macmorefiles
65 nsAppFileLocationProvider.
cpp \
67 nsDirectoryService.
cpp \
69 nsInputStreamTee.
cpp \
70 nsLinebreakConverter.
cpp \
71 nsLocalFileCommon.
cpp \
72 nsMultiplexInputStream.
cpp \
75 nsScriptableInputStream.
cpp \
76 nsSegmentedBuffer.
cpp \
77 SpecialSystemDirectory.
cpp \
80 nsUnicharInputStream.
cpp \
81 nsNativeCharsetUtils.
cpp \
84 ifndef MOZ_NO_FAST_LOAD
87 nsFastLoadService.
cpp \
91 ifeq ($(MOZ_WIDGET_TOOLKIT
),os2
)
92 CPPSRCS
+= nsLocalFileOS2.
cpp
94 ifeq ($(MOZ_WIDGET_TOOLKIT
),cocoa
)
95 CMMSRCS
= nsLocalFileOSX.mm
97 ifeq ($(MOZ_WIDGET_TOOLKIT
),windows
)
98 CPPSRCS
+= nsLocalFileWin.
cpp
100 CPPSRCS
+= nsLocalFileUnix.
cpp
106 nsAppDirectoryServiceDefs.h \
107 nsDirectoryService.h \
109 nsFastLoadService.h \
110 nsLinebreakConverter.h \
112 nsMultiplexInputStream.h \
113 nsScriptableInputStream.h \
117 nsNativeCharsetUtils.h \
120 ifeq ($(MOZ_WIDGET_TOOLKIT
),os2
)
121 EXPORTS
+= nsLocalFileOS2.h
123 ifeq ($(MOZ_WIDGET_TOOLKIT
),cocoa
)
124 EXPORTS
+= nsLocalFileOSX.h
126 ifeq ($(MOZ_WIDGET_TOOLKIT
),windows
)
127 EXPORTS
+= nsLocalFileWin.h
129 EXPORTS
+= nsLocalFileUnix.h
135 nsIBinaryInputStream.idl \
136 nsIBinaryOutputStream.idl \
137 nsIDirectoryEnumerator.idl \
138 nsIFastLoadFileControl.idl \
139 nsIFastLoadService.idl \
140 nsIInputStreamTee.idl \
141 nsILocalFileWin.idl \
142 nsILineInputStream.idl \
143 nsIUnicharLineInputStream.idl \
144 nsISimpleUnicharStreamFactory.idl \
145 nsIMultiplexInputStream.idl \
146 nsIObjectInputStream.idl \
147 nsIObjectOutputStream.idl \
149 nsISeekableStream.idl \
150 nsIStorageStream.idl \
151 nsIStringStream.idl \
152 nsIStreamBufferAccess.idl \
153 nsIAsyncInputStream.idl \
154 nsIAsyncOutputStream.idl \
155 nsIUnicharInputStream.idl \
156 nsIUnicharOutputStream.idl \
157 nsIConverterInputStream.idl \
158 nsIConverterOutputStream.idl \
161 ifeq ($(MOZ_WIDGET_TOOLKIT
),os2
)
162 XPIDLSRCS
+= nsILocalFileOS2.idl
164 ifeq ($(MOZ_WIDGET_TOOLKIT
),cocoa
)
165 XPIDLSRCS
+= nsILocalFileMac.idl
170 nsIDirectoryService.idl \
174 nsIOutputStream.idl \
175 nsIScriptableInputStream.idl \
179 nsDirectoryServiceDefs.h \
180 nsDirectoryServiceUtils.h \
183 EXPORTS
:= $(addprefix $(srcdir)/, $(EXPORTS
))
185 # we don't want the shared lib, but we want to force the creation of a static lib.
191 include $(topsrcdir
)/config
/rules.mk
193 DEFINES
+= -D_IMPL_NS_COM
195 LOCAL_INCLUDES
= -I..