( cchUTF16 ), // total source string length, in WCHAR's,
+ // including end-of-string \0
+ pszUTF8, // destination buffer
+ cbUTF8, // destination buffer size, in bytes
+ NULL, NULL // unused
+ );
+
+ if ( result == 0 )
+ {
+ return "";
+ }
+
+ pszUTF8[cchUTF8] = 0;
+
+ return pszUTF8;
+}
+
+void Log(void *obj, int level, char *str)
+{
+ CMyHttpModule *mod = (CMyHttpModule *)obj;
+ WORD logcat = EVENTLOG_INFORMATION_TYPE;
+
+ level &= APLOG_LEVELMASK;
+
+ if(level <= APLOG_ERR)
+ logcat = EVENTLOG_ERROR_TYPE;
+
+ if(level == APLOG_WARNING || strstr(str, "Warning.") != NULL)
+ logcat = EVENTLOG_WARNING_TYPE;
+
+ mod->WriteEventViewerLog(str, logcat);
+}
+
+#define NOTE_IIS "iis-tx-context"
+
+void StoreIISContext(request_rec *r, REQUEST_STORED_CONTEXT *rsc)
+{
+ apr_table_setn(r->notes, NOTE_IIS, (const char *)rsc);
+}
+
+REQUEST_STORED_CONTEXT *RetrieveIISContext(request_rec *r)
+{
+ REQUEST_STORED_CONTEXT *msr = NULL;
+ request_rec *rx = NULL;
+
+ /* Look in the current request first. */
+ msr = (REQUEST_STORED_CONTEXT *)apr_table_get(r->notes, NOTE_IIS);
+ if (msr != NULL) {
+ //msr->r = r;
+ return msr;
+ }
+
+ /* If this is a subrequest then look in the main request. */
+ if (r->main != NULL) {
+ msr = (REQUEST_STORED_CONTEXT *)apr_table_get(r->main->notes, NOTE_IIS);
+ if (msr != NULL) {
+ //msr->r = r;
+ return msr;
+ }
+ }
+
+ /* If the request was redirected then look in the previous requests. */
+ rx = r->prev;
+ while(rx != NULL) {
+ msr = (REQUEST_STORED_CONTEXT *)apr_table_get(rx->notes, NOTE_IIS);
+ if (msr != NULL) {
+ //msr->r = r;
+ return msr;
+ }
+ rx = rx->prev;
+ }
+
+ return NULL;
+}
+
+HRESULT CMyHttpModule::ReadFileChunk(HTTP_DATA_CHUNK *chunk, char *buf)
+{
+ OVERLAPPED ovl;
+ DWORD dwDataStartOffset;
+ DWORD bytesTotal = 0;
+ BYTE * pIoBuffer = NULL;
+ HANDLE hIoEvent = INVALID_HANDLE_VALUE;
+ HRESULT hr = S_OK;
+
+ pIoBuffer = (BYTE *)VirtualAlloc(NULL,
+ 1,
+ MEM_COMMIT | MEM_RESERVE,
+ PAGE_READWRITE);
+ if (pIoBuffer == NULL)
+ {
+ hr = HRESULT_FROM_WIN32(GetLastError());
+ goto Done;
+ }
+
+ hIoEvent = CreateEvent(NULL, // security attr
+ FALSE, // manual reset
+ FALSE, // initial state
+ NULL); // name
+ if (hIoEvent == NULL)
+ {
+ hr = HRESULT_FROM_WIN32(GetLastError());
+ goto Done;
+ }
+
+ while(bytesTotal < chunk->FromFileHandle.ByteRange.Length.QuadPart)
+ {
+ DWORD bytesRead = 0;
+ int was_eof = 0;
+ ULONGLONG offset = chunk->FromFileHandle.ByteRange.StartingOffset.QuadPart + bytesTotal;
+
+ ZeroMemory(&ovl, sizeof ovl);
+ ovl.hEvent = hIoEvent;
+ ovl.Offset = (DWORD)offset;
+ dwDataStartOffset = ovl.Offset & (m_dwPageSize - 1);
+ ovl.Offset &= ~(m_dwPageSize - 1);
+ ovl.OffsetHigh = offset >> 32;
+
+ if (!ReadFile(chunk->FromFileHandle.FileHandle,
+ pIoBuffer,
+ m_dwPageSize,
+ &bytesRead,
+ &ovl))
+ {
+ DWORD dwErr = GetLastError();
+
+ switch (dwErr)
+ {
+ case ERROR_IO_PENDING:
+ //
+ // GetOverlappedResult can return without waiting for the
+ // event thus leaving it signalled and causing problems
+ // with future use of that event handle, so just wait ourselves
+ //
+ WaitForSingleObject(ovl.hEvent, INFINITE); // == WAIT_OBJECT_0);
+
+ if (!GetOverlappedResult(
+ chunk->FromFileHandle.FileHandle,
+ &ovl,
+ &bytesRead,
+ TRUE))
+ {
+ dwErr = GetLastError();
+ switch(dwErr)
+ {
+ case ERROR_HANDLE_EOF:
+ was_eof = 1;
+ break;
+
+ default:
+ hr = HRESULT_FROM_WIN32(dwErr);
+ goto Done;
+ }
+ }
+
+ break;
+
+ case ERROR_HANDLE_EOF:
+ was_eof = 1;
+ break;
+
+ default:
+ hr = HRESULT_FROM_WIN32(dwErr);
+ goto Done;
+ }
+ }
+
+ bytesRead -= dwDataStartOffset;
+
+ if (bytesRead > chunk->FromFileHandle.ByteRange.Length.QuadPart)
+ {
+ bytesRead = (DWORD)chunk->FromFileHandle.ByteRange.Length.QuadPart;
+ }
+
+ memcpy(buf, pIoBuffer, bytesRead);
+
+ buf += bytesRead;
+ bytesTotal += bytesRead;
+
+ if(was_eof != 0)
+ chunk->FromFileHandle.ByteRange.Length.QuadPart = bytesTotal;
+ }
+
+Done:
+ if(NULL != pIoBuffer)
+ {
+ VirtualFree(pIoBuffer, 0, MEM_RELEASE);
+ }
+
+ if(INVALID_HANDLE_VALUE != hIoEvent)
+ {
+ CloseHandle(hIoEvent);
+ }
+
+ return hr;
+}
+
+REQUEST_NOTIFICATION_STATUS
+CMyHttpModule::OnSendResponse(
+ IN IHttpContext * pHttpContext,
+ IN ISendResponseProvider * pResponseProvider
+)
+{
+ REQUEST_STORED_CONTEXT *rsc = NULL;
+
+ rsc = (REQUEST_STORED_CONTEXT *)pHttpContext->GetModuleContextContainer()->GetModuleContext(g_pModuleContext);
+
+ if(rsc == NULL || rsc->m_pRequestRec == NULL || rsc->m_pResponseBuffer != NULL)
+ {
+ goto Exit;
+ }
+
+ HRESULT hr = S_OK;
+ IHttpResponse *pHttpResponse = NULL;
+ HTTP_RESPONSE *pRawHttpResponse = NULL;
+ HTTP_BYTE_RANGE *pFileByteRange = NULL;
+ HTTP_DATA_CHUNK *pSourceDataChunk = NULL;
+ LARGE_INTEGER lFileSize;
+ REQUEST_NOTIFICATION_STATUS ret = RQ_NOTIFICATION_CONTINUE;
+ ULONG ulTotalLength = 0;
+ DWORD c, bytesRead;
+ request_rec *r = rsc->m_pRequestRec;
+
+ pHttpResponse = pHttpContext->GetResponse();
+ pRawHttpResponse = pHttpResponse->GetRawHttpResponse();
+
+ // here we must add handling of chunked response
+ // apparently IIS 7 calls this handler once per chunk
+ // see: http://stackoverflow.com/questions/4385249/how-to-buffer-and-process-chunked-data-before-sending-headers-in-iis7-native-mod
+
+ if(pRawHttpResponse->EntityChunkCount == 0)
+ goto Exit;
+
+ // here we must transfer response headers
+ //
+ USHORT ctcch = 0;
+ char *ct = (char *)pHttpResponse->GetHeader(HttpHeaderContentType, &ctcch);
+ char *ctz = ZeroTerminate(ct, ctcch, r->pool);
+
+ // assume HTML if content type not set
+ // without this output filter would not buffer response and processing would hang
+ // this needs further investigation (it did not repro on debug build)
+ //
+ if(ctz[0] == 0)
+ ctz = "text/html";
+
+ r->content_type = ctz;
+
+#define _TRANSHEADER(id,str) if(pRawHttpResponse->Headers.KnownHeaders[id].pRawValue != NULL) \
+ {\
+ apr_table_setn(r->headers_out, str, \
+ ZeroTerminate(pRawHttpResponse->Headers.KnownHeaders[id].pRawValue, pRawHttpResponse->Headers.KnownHeaders[id].RawValueLength, r->pool)); \
+ }
+
+ _TRANSHEADER(HttpHeaderCacheControl, "Cache-Control");
+ _TRANSHEADER(HttpHeaderConnection, "Connection");
+ _TRANSHEADER(HttpHeaderDate, "Date");
+ _TRANSHEADER(HttpHeaderKeepAlive, "Keep-Alive");
+ _TRANSHEADER(HttpHeaderPragma, "Pragma");
+ _TRANSHEADER(HttpHeaderTrailer, "Trailer");
+ _TRANSHEADER(HttpHeaderTransferEncoding, "Transfer-Encoding");
+ _TRANSHEADER(HttpHeaderUpgrade, "Upgrade");
+ _TRANSHEADER(HttpHeaderVia, "Via");
+ _TRANSHEADER(HttpHeaderWarning, "Warning");
+ _TRANSHEADER(HttpHeaderAllow, "Allow");
+ _TRANSHEADER(HttpHeaderContentLength, "Content-Length");
+ _TRANSHEADER(HttpHeaderContentType, "Content-Type");
+ _TRANSHEADER(HttpHeaderContentEncoding, "Content-Encoding");
+ _TRANSHEADER(HttpHeaderContentLanguage, "Content-Language");
+ _TRANSHEADER(HttpHeaderContentLocation, "Content-Location");
+ _TRANSHEADER(HttpHeaderContentMd5, "Content-Md5");
+ _TRANSHEADER(HttpHeaderContentRange, "Content-Range");
+ _TRANSHEADER(HttpHeaderExpires, "Expires");
+ _TRANSHEADER(HttpHeaderLastModified, "Last-Modified");
+ _TRANSHEADER(HttpHeaderAcceptRanges, "Accept-Ranges");
+ _TRANSHEADER(HttpHeaderAge, "Age");
+ _TRANSHEADER(HttpHeaderEtag, "Etag");
+ _TRANSHEADER(HttpHeaderLocation, "Location");
+ _TRANSHEADER(HttpHeaderProxyAuthenticate, "Proxy-Authenticate");
+ _TRANSHEADER(HttpHeaderRetryAfter, "Retry-After");
+ _TRANSHEADER(HttpHeaderServer, "Server");
+ _TRANSHEADER(HttpHeaderSetCookie, "Set-Cookie");
+ _TRANSHEADER(HttpHeaderVary, "Vary");
+ _TRANSHEADER(HttpHeaderWwwAuthenticate, "Www-Authenticate");
+
+#undef _TRANSHEADER
+
+ for(int i = 0; i < pRawHttpResponse->Headers.UnknownHeaderCount; i++)
+ {
+ apr_table_setn(r->headers_out,
+ ZeroTerminate(pRawHttpResponse->Headers.pUnknownHeaders[i].pName, pRawHttpResponse->Headers.pUnknownHeaders[i].NameLength, r->pool),
+ ZeroTerminate(pRawHttpResponse->Headers.pUnknownHeaders[i].pRawValue, pRawHttpResponse->Headers.pUnknownHeaders[i].RawValueLength, r->pool));
+ }
+
+ r->content_encoding = apr_table_get(r->headers_out, "Content-Encoding");
+ //r->content_type = apr_table_get(r->headers_out, "Content-Type"); -- already set above
+
+ const char *lng = apr_table_get(r->headers_out, "Content-Languages");
+
+ if(lng != NULL)
+ {
+ r->content_languages = apr_array_make(r->pool, 1, sizeof(const char *));
+
+ *(const char **)apr_array_push(r->content_languages) = lng;
+ }
+
+ // Disable kernel caching for this response
+ // Probably we don't have to do it for ModSecurity
+
+ //pHttpContext->GetResponse()->DisableKernelCache(
+ // IISCacheEvents::HTTPSYS_CACHEABLE::HANDLER_HTTPSYS_UNFRIENDLY);
+
+ for(c = 0; c < pRawHttpResponse->EntityChunkCount; c++ )
+ {
+ pSourceDataChunk = &pRawHttpResponse->pEntityChunks[ c ];
+
+ switch( pSourceDataChunk->DataChunkType )
+ {
+ case HttpDataChunkFromMemory:
+ ulTotalLength += pSourceDataChunk->FromMemory.BufferLength;
+ break;
+ case HttpDataChunkFromFileHandle:
+ pFileByteRange = &pSourceDataChunk->FromFileHandle.ByteRange;
+ //
+ // File chunks may contain by ranges with unspecified length
+ // (HTTP_BYTE_RANGE_TO_EOF). In order to send parts of such a chunk,
+ // its necessary to know when the chunk is finished, and
+ // we need to move to the next chunk.
+ //
+ if ( pFileByteRange->Length.QuadPart == HTTP_BYTE_RANGE_TO_EOF)
+ {
+ if ( GetFileType( pSourceDataChunk->FromFileHandle.FileHandle ) ==
+ FILE_TYPE_DISK )
+ {
+ if ( !GetFileSizeEx( pSourceDataChunk->FromFileHandle.FileHandle,
+ &lFileSize ) )
+ {
+ DWORD dwError = GetLastError();
+ hr = HRESULT_FROM_WIN32(dwError);
+ goto Finished;
+ }
+
+ // put the resolved file length in the chunk, replacing
+ // HTTP_BYTE_RANGE_TO_EOF
+ pFileByteRange->Length.QuadPart =
+ lFileSize.QuadPart - pFileByteRange->StartingOffset.QuadPart;
+ }
+ else
+ {
+ hr = HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
+ goto Finished;
+ }
+ }
+
+ ulTotalLength += pFileByteRange->Length.QuadPart;
+ break;
+ default:
+ // TBD: consider implementing HttpDataChunkFromFragmentCache,
+ // and HttpDataChunkFromFragmentCacheEx
+ hr = HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
+ goto Finished;
+ }
+ }
+
+ rsc->m_pResponseBuffer = (char *)apr_palloc(rsc->m_pRequestRec->pool, ulTotalLength);
+
+ ulTotalLength = 0;
+
+ for(c = 0; c < pRawHttpResponse->EntityChunkCount; c++ )
+ {
+ pSourceDataChunk = &pRawHttpResponse->pEntityChunks[ c ];
+
+ switch( pSourceDataChunk->DataChunkType )
+ {
+ case HttpDataChunkFromMemory:
+ memcpy(rsc->m_pResponseBuffer + ulTotalLength, pSourceDataChunk->FromMemory.pBuffer, pSourceDataChunk->FromMemory.BufferLength);
+ ulTotalLength += pSourceDataChunk->FromMemory.BufferLength;
+ break;
+ case HttpDataChunkFromFileHandle:
+ pFileByteRange = &pSourceDataChunk->FromFileHandle.ByteRange;
+
+ if(ReadFileChunk(pSourceDataChunk, rsc->m_pResponseBuffer + ulTotalLength) != S_OK)
+ {
+ DWORD dwErr = GetLastError();
+
+ hr = HRESULT_FROM_WIN32(dwErr);
+ }
+
+ ulTotalLength += pFileByteRange->Length.QuadPart;
+ break;
+ default:
+ // TBD: consider implementing HttpDataChunkFromFragmentCache,
+ // and HttpDataChunkFromFragmentCacheEx
+ hr = HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED);
+ goto Finished;
+ }
+ }
+
+ rsc->m_pResponseLength = ulTotalLength;
+
+ //
+ // If there's no content-length set, we need to set it to avoid chunked transfer mode
+ // We can only do it if there is it's the only response to be sent.
+ //
+
+ DWORD dwFlags = pResponseProvider->GetFlags();
+
+ if (pResponseProvider->GetHeadersBeingSent() &&
+ (dwFlags & HTTP_SEND_RESPONSE_FLAG_MORE_DATA) == 0 &&
+ pHttpContext->GetResponse()->GetHeader(HttpHeaderContentLength) == NULL)
+ {
+ CHAR szLength[21]; //Max length for a 64 bit int is 20
+
+ ZeroMemory(szLength, sizeof(szLength));
+
+ hr = StringCchPrintfA(
+ szLength,
+ sizeof(szLength) / sizeof(CHAR) - 1, "%d",
+ ulTotalLength);
+
+ if(FAILED(hr))
+ {
+ goto Finished;
+ }
+
+ hr = pHttpContext->GetResponse()->SetHeader(
+ HttpHeaderContentLength,
+ szLength,
+ (USHORT)strlen(szLength),
+ TRUE);
+
+ if(FAILED(hr))
+ {
+ goto Finished;
+ }
+ }
+
+Finished:
+
+ int status = modsecProcessResponse(rsc->m_pRequestRec);
+
+ // the logic here is temporary, needs clarification
+ //
+ if(status != 0 && status != -1)
+ {
+ pHttpContext->GetResponse()->Clear();
+ pHttpContext->GetResponse()->SetStatus(status, "ModSecurity Action");
+ pHttpContext->SetRequestHandled();
+
+ rsc->FinishRequest();
+
+ return RQ_NOTIFICATION_FINISH_REQUEST;
+ }
+Exit:
+ // temporary hack, in reality OnSendRequest theoretically could possibly come before OnEndRequest
+ //
+ if(rsc != NULL)
+ rsc->FinishRequest();
+
+ return RQ_NOTIFICATION_CONTINUE;
+}
+
+REQUEST_NOTIFICATION_STATUS
+CMyHttpModule::OnPostEndRequest(
+ IN IHttpContext * pHttpContext,
+ IN IHttpEventProvider * pProvider
+)
+{
+ REQUEST_STORED_CONTEXT *rsc = NULL;
+
+ rsc = (REQUEST_STORED_CONTEXT *)pHttpContext->GetModuleContextContainer()->GetModuleContext(g_pModuleContext);
+
+ // only finish request if OnSendResponse have been called already
+ //
+ if(rsc != NULL && rsc->m_pResponseBuffer != NULL)
+ {
+ rsc->FinishRequest();
+ }
+
+ return RQ_NOTIFICATION_CONTINUE;
+}
+
+REQUEST_NOTIFICATION_STATUS
+CMyHttpModule::OnBeginRequest(
+ IN IHttpContext * pHttpContext,
+ IN IHttpEventProvider * pProvider
+)
+{
+ HRESULT hr = S_OK;
+ IHttpRequest* pRequest = NULL;
+ MODSECURITY_STORED_CONTEXT* pConfig = NULL;
+
+ UNREFERENCED_PARAMETER ( pProvider );
+
+ if ( pHttpContext == NULL )
+ {
+ hr = E_UNEXPECTED;
+ goto Finished;
+ }
+
+ pRequest = pHttpContext->GetRequest();
+
+ if ( pRequest == NULL )
+ {
+ hr = E_UNEXPECTED;
+ goto Finished;
+ }
+
+ hr = MODSECURITY_STORED_CONTEXT::GetConfig(pHttpContext, &pConfig );
+
+ if ( FAILED( hr ) )
+ {
+ //hr = E_UNEXPECTED;
+ hr = S_OK;
+ goto Finished;
+ }
+
+ // If module is disabled, dont go any further
+ //
+ if( pConfig->GetIsEnabled() == false )
+ {
+ goto Finished;
+ }
+
+ // every 3 seconds we check for changes in config file
+ //
+ DWORD ctime = GetTickCount();
+
+ if(pConfig->m_Config == NULL || (ctime - pConfig->m_dwLastCheck) > 3000)
+ {
+ char *path;
+ USHORT pathlen;
+
+ hr = pConfig->GlobalWideCharToMultiByte(pConfig->GetPath(), wcslen(pConfig->GetPath()), &path, &pathlen);
+
+ if ( FAILED( hr ) )
+ {
+ hr = E_UNEXPECTED;
+ goto Finished;
+ }
+
+ WIN32_FILE_ATTRIBUTE_DATA fdata;
+ BOOL ret;
+
+ ret = GetFileAttributesEx(path, GetFileExInfoStandard, &fdata);
+
+ pConfig->m_dwLastCheck = ctime;
+
+ if(ret == 0 || pConfig->m_LastChange.dwLowDateTime != fdata.ftLastWriteTime.dwLowDateTime ||
+ pConfig->m_LastChange.dwHighDateTime != fdata.ftLastWriteTime.dwHighDateTime)
+ {
+ pConfig->m_LastChange.dwLowDateTime = fdata.ftLastWriteTime.dwLowDateTime;
+ pConfig->m_LastChange.dwHighDateTime = fdata.ftLastWriteTime.dwHighDateTime;
+
+ pConfig->m_Config = modsecGetDefaultConfig();
+
+ if(path[0] != 0)
+ {
+ const char * err = modsecProcessConfig((directory_config *)pConfig->m_Config, path);
+
+ if(err != NULL)
+ {
+ WriteEventViewerLog(err, EVENTLOG_ERROR_TYPE);
+ }
+ }
+
+ delete path;
+ }
+ }
+
+ conn_rec *c;
+ request_rec *r;
+
+ c = modsecNewConnection();
+
+ modsecProcessConnection(c);
+
+ r = modsecNewRequest(c, (directory_config *)pConfig->m_Config);
+
+ REQUEST_STORED_CONTEXT *rsc = new REQUEST_STORED_CONTEXT();
+
+ rsc->m_pConnRec = c;
+ rsc->m_pRequestRec = r;
+ rsc->m_pHttpContext = pHttpContext;
+ rsc->m_pProvider = pProvider;
+
+ pHttpContext->GetModuleContextContainer()->SetModuleContext(rsc, g_pModuleContext);
+
+ StoreIISContext(r, rsc);
+
+ HTTP_REQUEST *req = pRequest->GetRawHttpRequest();
+
+ r->hostname = ConvertUTF16ToUTF8(req->CookedUrl.pHost, req->CookedUrl.HostLength, r->pool);
+ r->path_info = ConvertUTF16ToUTF8(req->CookedUrl.pAbsPath, req->CookedUrl.AbsPathLength, r->pool);
+
+ if(r->hostname == NULL)
+ {
+ if(req->Headers.KnownHeaders[HttpHeaderHost].pRawValue != NULL)
+ r->hostname = ZeroTerminate(req->Headers.KnownHeaders[HttpHeaderHost].pRawValue,
+ req->Headers.KnownHeaders[HttpHeaderHost].RawValueLength, r->pool);
+ }
+
+ int port = 0;
+ char *port_str = NULL;
+
+ if(r->hostname != NULL)
+ {
+ int k = 0;
+ char *ptr = (char *)r->hostname;
+
+ while(*ptr != 0 && *ptr != ':')
+ ptr++;
+
+ if(*ptr == ':')
+ {
+ *ptr = 0;
+ port_str = ptr + 1;
+ port = atoi(port_str);
+ }
+ }
+
+ if(req->CookedUrl.pQueryString != NULL)
+ r->args = ConvertUTF16ToUTF8(req->CookedUrl.pQueryString + 1, req->CookedUrl.QueryStringLength - 1, r->pool);
+
+#define _TRANSHEADER(id,str) if(req->Headers.KnownHeaders[id].pRawValue != NULL) \
+ {\
+ apr_table_setn(r->headers_in, str, \
+ ZeroTerminate(req->Headers.KnownHeaders[id].pRawValue, req->Headers.KnownHeaders[id].RawValueLength, r->pool)); \
+ }
+
+ _TRANSHEADER(HttpHeaderCacheControl, "Cache-Control");
+ _TRANSHEADER(HttpHeaderConnection, "Connection");
+ _TRANSHEADER(HttpHeaderDate, "Date");
+ _TRANSHEADER(HttpHeaderKeepAlive, "Keep-Alive");
+ _TRANSHEADER(HttpHeaderPragma, "Pragma");
+ _TRANSHEADER(HttpHeaderTrailer, "Trailer");
+ _TRANSHEADER(HttpHeaderTransferEncoding, "Transfer-Encoding");
+ _TRANSHEADER(HttpHeaderUpgrade, "Upgrade");
+ _TRANSHEADER(HttpHeaderVia, "Via");
+ _TRANSHEADER(HttpHeaderWarning, "Warning");
+ _TRANSHEADER(HttpHeaderAllow, "Allow");
+ _TRANSHEADER(HttpHeaderContentLength, "Content-Length");
+ _TRANSHEADER(HttpHeaderContentType, "Content-Type");
+ _TRANSHEADER(HttpHeaderContentEncoding, "Content-Encoding");
+ _TRANSHEADER(HttpHeaderContentLanguage, "Content-Language");
+ _TRANSHEADER(HttpHeaderContentLocation, "Content-Location");
+ _TRANSHEADER(HttpHeaderContentMd5, "Content-Md5");
+ _TRANSHEADER(HttpHeaderContentRange, "Content-Range");
+ _TRANSHEADER(HttpHeaderExpires, "Expires");
+ _TRANSHEADER(HttpHeaderLastModified, "Last-Modified");
+ _TRANSHEADER(HttpHeaderAccept, "Accept");
+ _TRANSHEADER(HttpHeaderAcceptCharset, "Accept-Charset");
+ _TRANSHEADER(HttpHeaderAcceptEncoding, "Accept-Encoding");
+ _TRANSHEADER(HttpHeaderAcceptLanguage, "Accept-Language");
+ _TRANSHEADER(HttpHeaderAuthorization, "Authorization");
+ _TRANSHEADER(HttpHeaderCookie, "Cookie");
+ _TRANSHEADER(HttpHeaderExpect, "Expect");
+ _TRANSHEADER(HttpHeaderFrom, "From");
+ _TRANSHEADER(HttpHeaderHost, "Host");
+ _TRANSHEADER(HttpHeaderIfMatch, "If-Match");
+ _TRANSHEADER(HttpHeaderIfModifiedSince, "If-Modified-Since");
+ _TRANSHEADER(HttpHeaderIfNoneMatch, "If-None-Match");
+ _TRANSHEADER(HttpHeaderIfRange, "If-Range");
+ _TRANSHEADER(HttpHeaderIfUnmodifiedSince, "If-Unmodified-Since");
+ _TRANSHEADER(HttpHeaderMaxForwards, "Max-Forwards");
+ _TRANSHEADER(HttpHeaderProxyAuthorization, "Proxy-Authorization");
+ _TRANSHEADER(HttpHeaderReferer, "Referer");
+ _TRANSHEADER(HttpHeaderRange, "Range");
+ _TRANSHEADER(HttpHeaderTe, "TE");
+ _TRANSHEADER(HttpHeaderTranslate, "Translate");
+ _TRANSHEADER(HttpHeaderUserAgent, "User-Agent");
+
+#undef _TRANSHEADER
+
+ for(int i = 0; i < req->Headers.UnknownHeaderCount; i++)
+ {
+ apr_table_setn(r->headers_in,
+ ZeroTerminate(req->Headers.pUnknownHeaders[i].pName, req->Headers.pUnknownHeaders[i].NameLength, r->pool),
+ ZeroTerminate(req->Headers.pUnknownHeaders[i].pRawValue, req->Headers.pUnknownHeaders[i].RawValueLength, r->pool));
+ }
+
+ r->content_encoding = apr_table_get(r->headers_in, "Content-Encoding");
+ r->content_type = apr_table_get(r->headers_in, "Content-Type");
+
+ const char *lng = apr_table_get(r->headers_in, "Content-Languages");
+
+ if(lng != NULL)
+ {
+ r->content_languages = apr_array_make(r->pool, 1, sizeof(const char *));
+
+ *(const char **)apr_array_push(r->content_languages) = lng;
+ }
+
+ switch(req->Verb)
+ {
+ case HttpVerbUnparsed:
+ case HttpVerbUnknown:
+ case HttpVerbInvalid:
+ case HttpVerbTRACK: // used by Microsoft Cluster Server for a non-logged trace
+ case HttpVerbSEARCH:
+ default:
+ r->method = "INVALID";
+ r->method_number = M_INVALID;
+ break;
+ case HttpVerbOPTIONS:
+ r->method = "OPTIONS";
+ r->method_number = M_OPTIONS;
+ break;
+ case HttpVerbGET:
+ case HttpVerbHEAD:
+ r->method = "GET";
+ r->method_number = M_GET;
+ break;
+ case HttpVerbPOST:
+ r->method = "POST";
+ r->method_number = M_POST;
+ break;
+ case HttpVerbPUT:
+ r->method = "PUT";
+ r->method_number = M_PUT;
+ break;
+ case HttpVerbDELETE:
+ r->method = "DELETE";
+ r->method_number = M_DELETE;
+ break;
+ case HttpVerbTRACE:
+ r->method = "TRACE";
+ r->method_number = M_TRACE;
+ break;
+ case HttpVerbCONNECT:
+ r->method = "CONNECT";
+ r->method_number = M_CONNECT;
+ break;
+ case HttpVerbMOVE:
+ r->method = "MOVE";
+ r->method_number = M_MOVE;
+ break;
+ case HttpVerbCOPY:
+ r->method = "COPY";
+ r->method_number = M_COPY;
+ break;
+ case HttpVerbPROPFIND:
+ r->method = "PROPFIND";
+ r->method_number = M_PROPFIND;
+ break;
+ case HttpVerbPROPPATCH:
+ r->method = "PROPPATCH";
+ r->method_number = M_PROPPATCH;
+ break;
+ case HttpVerbMKCOL:
+ r->method = "MKCOL";
+ r->method_number = M_MKCOL;
+ break;
+ case HttpVerbLOCK:
+ r->method = "LOCK";
+ r->method_number = M_LOCK;
+ break;
+ case HttpVerbUNLOCK:
+ r->method = "UNLOCK";
+ r->method_number = M_UNLOCK;
+ break;
+ }
+
+ if(HTTP_EQUAL_VERSION(req->Version, 0, 9))
+ r->protocol = "HTTP/0.9";
+ else if(HTTP_EQUAL_VERSION(req->Version, 1, 0))
+ r->protocol = "HTTP/1.0";
+ else
+ r->protocol = "HTTP/1.1";
+
+ r->request_time = apr_time_now();
+
+ r->parsed_uri.scheme = "http";
+ r->parsed_uri.path = r->path_info;
+ r->parsed_uri.hostname = (char *)r->hostname;
+ r->parsed_uri.is_initialized = 1;
+ r->parsed_uri.port = port;
+ r->parsed_uri.port_str = port_str;
+ r->parsed_uri.query = r->args;
+ r->parsed_uri.dns_looked_up = 0;
+ r->parsed_uri.dns_resolved = 0;
+ r->parsed_uri.password = NULL;
+ r->parsed_uri.user = NULL;
+ r->parsed_uri.fragment = NULL;
+
+ r->unparsed_uri = ZeroTerminate(req->pRawUrl, req->RawUrlLength, r->pool);
+ r->uri = r->unparsed_uri;
+
+ r->the_request = (char *)apr_palloc(r->pool, strlen(r->method) + 1 + req->RawUrlLength + 1 + strlen(r->protocol) + 1);
+
+ strcpy(r->the_request, r->method);
+ strcat(r->the_request, " ");
+ strcat(r->the_request, r->uri);
+ strcat(r->the_request, " ");
+ strcat(r->the_request, r->protocol);
+
+ HTTP_REQUEST_ID httpRequestID;
+ char *pszValue = (char *)apr_palloc(r->pool, 24);
+
+ httpRequestID = pRequest->GetRawHttpRequest()->RequestId;
+
+ _ui64toa(httpRequestID, pszValue, 10);
+
+ apr_table_setn(r->subprocess_env, "UNIQUE_ID", pszValue);
+
+ int status = modsecProcessRequest(r);
+
+ if(status != DECLINED)
+ {
+ pHttpContext->GetResponse()->SetStatus(status, "ModSecurity Action");
+ pHttpContext->SetRequestHandled();
+
+ return RQ_NOTIFICATION_FINISH_REQUEST;
+ }
+
+Finished:
+
+ if ( FAILED( hr ) )
+ {
+ return RQ_NOTIFICATION_FINISH_REQUEST;
+ }
+ return RQ_NOTIFICATION_CONTINUE;
+}
+
+apr_status_t ReadBodyCallback(request_rec *r, char *buf, unsigned int length, unsigned int *readcnt, int *is_eos)
+{
+ REQUEST_STORED_CONTEXT *rsc = RetrieveIISContext(r);
+
+ *readcnt = 0;
+
+ if(rsc == NULL)
+ {
+ *is_eos = 1;
+ return APR_SUCCESS;
+ }
+
+ IHttpContext *pHttpContext = rsc->m_pHttpContext;
+ IHttpRequest *pRequest = pHttpContext->GetRequest();
+
+ if(pRequest->GetRemainingEntityBytes() == 0)
+ {
+ *is_eos = 1;
+ return APR_SUCCESS;
+ }
+
+ HRESULT hr = pRequest->ReadEntityBody(buf, length, false, (DWORD *)readcnt, NULL);
+
+ if (FAILED(hr))
+ {
+ // End of data is okay.
+ if (ERROR_HANDLE_EOF != (hr & 0x0000FFFF))
+ {
+ // Set the error status.
+ rsc->m_pProvider->SetErrorStatus( hr );
+ }
+
+ *is_eos = 1;
+ }
+
+ return APR_SUCCESS;
+}
+
+apr_status_t WriteBodyCallback(request_rec *r, char *buf, unsigned int length)
+{
+ REQUEST_STORED_CONTEXT *rsc = RetrieveIISContext(r);
+
+ if(rsc == NULL || rsc->m_pRequestRec == NULL)
+ return APR_SUCCESS;
+
+ IHttpContext *pHttpContext = rsc->m_pHttpContext;
+ IHttpRequest *pHttpRequest = pHttpContext->GetRequest();
+
+ CHAR szLength[21]; //Max length for a 64 bit int is 20
+
+ ZeroMemory(szLength, sizeof(szLength));
+
+ HRESULT hr = StringCchPrintfA(
+ szLength,
+ sizeof(szLength) / sizeof(CHAR) - 1, "%d",
+ length);
+
+ if(FAILED(hr))
+ {
+ // not possible
+ }
+
+ hr = pHttpRequest->SetHeader(
+ HttpHeaderContentLength,
+ szLength,
+ (USHORT)strlen(szLength),
+ TRUE);
+
+ if(FAILED(hr))
+ {
+ // possible, but there's nothing we can do
+ }
+
+ // since we clean the APR pool at the end of OnSendRequest, we must get IIS-managed memory chunk
+ //
+ void *reqbuf = pHttpContext->AllocateRequestMemory(length);
+
+ memcpy(reqbuf, buf, length);
+
+ pHttpRequest->InsertEntityBody(reqbuf, length);
+
+ return APR_SUCCESS;
+}
+
+apr_status_t ReadResponseCallback(request_rec *r, char *buf, unsigned int length, unsigned int *readcnt, int *is_eos)
+{
+ REQUEST_STORED_CONTEXT *rsc = RetrieveIISContext(r);
+
+ *readcnt = 0;
+
+ if(rsc == NULL || rsc->m_pResponseBuffer == NULL)
+ {
+ *is_eos = 1;
+ return APR_SUCCESS;
+ }
+
+ unsigned int size = length;
+
+ if(size > rsc->m_pResponseLength - rsc->m_pResponsePosition)
+ size = rsc->m_pResponseLength - rsc->m_pResponsePosition;
+
+ memcpy(buf, rsc->m_pResponseBuffer + rsc->m_pResponsePosition, size);
+
+ *readcnt = size;
+ rsc->m_pResponsePosition += size;
+
+ if(rsc->m_pResponsePosition >= rsc->m_pResponseLength)
+ *is_eos = 1;
+
+ return APR_SUCCESS;
+}
+
+apr_status_t WriteResponseCallback(request_rec *r, char *buf, unsigned int length)
+{
+ REQUEST_STORED_CONTEXT *rsc = RetrieveIISContext(r);
+
+ if(rsc == NULL || rsc->m_pRequestRec == NULL || rsc->m_pResponseBuffer == NULL)
+ return APR_SUCCESS;
+
+ IHttpContext *pHttpContext = rsc->m_pHttpContext;
+ IHttpResponse *pHttpResponse = pHttpContext->GetResponse();
+ HTTP_RESPONSE *pRawHttpResponse = pHttpResponse->GetRawHttpResponse();
+ HTTP_DATA_CHUNK *pDataChunk = (HTTP_DATA_CHUNK *)apr_palloc(rsc->m_pRequestRec->pool, sizeof(HTTP_DATA_CHUNK));
+
+ pRawHttpResponse->EntityChunkCount = 0;
+
+ // since we clean the APR pool at the end of OnSendRequest, we must get IIS-managed memory chunk
+ //
+ void *reqbuf = pHttpContext->AllocateRequestMemory(length);
+
+ memcpy(reqbuf, buf, length);
+
+ pDataChunk->DataChunkType = HttpDataChunkFromMemory;
+ pDataChunk->FromMemory.pBuffer = reqbuf;
+ pDataChunk->FromMemory.BufferLength = length;
+
+ CHAR szLength[21]; //Max length for a 64 bit int is 20
+
+ ZeroMemory(szLength, sizeof(szLength));
+
+ HRESULT hr = StringCchPrintfA(
+ szLength,
+ sizeof(szLength) / sizeof(CHAR) - 1, "%d",
+ length);
+
+ if(FAILED(hr))
+ {
+ // not possible
+ }
+
+ hr = pHttpResponse->SetHeader(
+ HttpHeaderContentLength,
+ szLength,
+ (USHORT)strlen(szLength),
+ TRUE);
+
+ if(FAILED(hr))
+ {
+ // possible, but there's nothing we can do
+ }
+
+ pHttpResponse->WriteEntityChunkByReference(pDataChunk);
+
+ return APR_SUCCESS;
+}
+
+
+CMyHttpModule::CMyHttpModule()
+{
+ // Open a handle to the Event Viewer.
+ m_hEventLog = RegisterEventSource( NULL, "ModSecurity" );
+
+ SYSTEM_INFO sysInfo;
+
+ GetSystemInfo(&sysInfo);
+ m_dwPageSize = sysInfo.dwPageSize;
+
+ modsecSetLogHook(this, Log);
+
+ modsecSetReadBody(ReadBodyCallback);
+ modsecSetReadResponse(ReadResponseCallback);
+ modsecSetWriteBody(WriteBodyCallback);
+ modsecSetWriteResponse(WriteResponseCallback);
+
+ server_rec *s = modsecInit();
+ char *compname = (char *)malloc(128);
+ DWORD size = 128;
+
+ GetComputerName(compname, &size);
+
+ s->server_hostname = compname;
+
+ modsecStartConfig();
+
+ modsecFinalizeConfig();
+
+ modsecInitProcess();
+}
+
+CMyHttpModule::~CMyHttpModule()
+{
+ // ModSecurity registers APR pool cleanups, which interfere with APR pool tear down process
+ // this causes crashes and since we are exiting the process here, so this is a temporary solution
+ //
+ //modsecTerminate();
+
+ //WriteEventViewerLog("Module deleted.");
+
+ // Test whether the handle for the Event Viewer is open.
+ if (NULL != m_hEventLog)
+ {
+ // Close the handle to the Event Viewer.
+ DeregisterEventSource( m_hEventLog );
+ m_hEventLog = NULL;
+ }
+}
+
+void CMyHttpModule::Dispose()
+{
+}
+
+BOOL CMyHttpModule::WriteEventViewerLog(LPCSTR szNotification, WORD category)
+{
+ // Test whether the handle for the Event Viewer is open.
+ if (NULL != m_hEventLog)
+ {
+ // Write any strings to the Event Viewer and return.
+ return ReportEvent(
+ m_hEventLog,
+ category, 0, 0,
+ NULL, 1, 0, &szNotification, NULL );
+ }
+ return FALSE;
+}
diff --git a/iis/mymodule.def b/iis/mymodule.def
new file mode 100644
index 00000000..cb37d10b
--- /dev/null
+++ b/iis/mymodule.def
@@ -0,0 +1,4 @@
+LIBRARY "ModSecurityIIS"
+
+EXPORTS
+ RegisterModule
diff --git a/iis/mymodule.h b/iis/mymodule.h
new file mode 100644
index 00000000..04fbf982
--- /dev/null
+++ b/iis/mymodule.h
@@ -0,0 +1,42 @@
+#ifndef __MY_MODULE_H__
+#define __MY_MODULE_H__
+
+// The module implementation.
+// This class is responsible for implementing the
+// module functionality for each of the server events
+// that it registers for.
+class CMyHttpModule : public CHttpModule
+{
+public:
+ HANDLE m_hEventLog;
+ DWORD m_dwPageSize;
+
+ REQUEST_NOTIFICATION_STATUS
+ OnBeginRequest(
+ IN IHttpContext * pHttpContext,
+ IN IHttpEventProvider * pProvider
+ );
+
+ REQUEST_NOTIFICATION_STATUS
+ OnSendResponse(
+ IN IHttpContext * pHttpContext,
+ IN ISendResponseProvider * pProvider
+ );
+
+ REQUEST_NOTIFICATION_STATUS
+ OnPostEndRequest(
+ IN IHttpContext * pHttpContext,
+ IN IHttpEventProvider * pProvider
+ );
+
+ HRESULT ReadFileChunk(HTTP_DATA_CHUNK *chunk, char *buf);
+
+ CMyHttpModule();
+ ~CMyHttpModule();
+
+ void Dispose();
+
+ BOOL WriteEventViewerLog(LPCSTR szNotification, WORD category = EVENTLOG_INFORMATION_TYPE);
+};
+
+#endif
diff --git a/iis/mymodulefactory.h b/iis/mymodulefactory.h
new file mode 100644
index 00000000..ee868467
--- /dev/null
+++ b/iis/mymodulefactory.h
@@ -0,0 +1,65 @@
+#ifndef __MODULE_FACTORY_H__
+#define __MODULE_FACTORY_H__
+
+// Factory class for CMyHttpModule.
+// This class is responsible for creating instances
+// of CMyHttpModule for each request.
+class CMyHttpModuleFactory : public IHttpModuleFactory
+{
+ CMyHttpModule * m_pModule;
+
+public:
+ CMyHttpModuleFactory()
+ {
+ m_pModule = NULL;
+ }
+
+ virtual
+ HRESULT
+ GetHttpModule(
+ OUT CHttpModule **ppModule,
+ IN IModuleAllocator *
+ )
+ {
+ HRESULT hr = S_OK;
+
+ if ( ppModule == NULL )
+ {
+ hr = HRESULT_FROM_WIN32( ERROR_INVALID_PARAMETER );
+ goto Finished;
+ }
+
+ if(m_pModule == NULL)
+ {
+ m_pModule = new CMyHttpModule();
+
+ if ( m_pModule == NULL )
+ {
+ hr = HRESULT_FROM_WIN32( ERROR_NOT_ENOUGH_MEMORY );
+ goto Finished;
+ }
+ }
+
+ *ppModule = m_pModule;
+
+ Finished:
+
+ return hr;
+ }
+
+ virtual
+ void
+ Terminate()
+ {
+ if ( m_pModule != NULL )
+ {
+ //m_pModule->WriteEventViewerLog("Module terminated.");
+ delete m_pModule;
+ m_pModule = NULL;
+ }
+
+ delete this;
+ }
+};
+
+#endif
diff --git a/iis/readme.htm b/iis/readme.htm
new file mode 100644
index 00000000..02cb92f8
--- /dev/null
+++ b/iis/readme.htm
@@ -0,0 +1,320 @@
+
+
+
+ Creating a Native Module for IIS7
+
+
+
+ Creating a Native Module for IIS7
+
+ To extend the server, IIS7 provides a new (C++) native core server API, which replaces
+ ISAPI filter and extension API from previous IIS releases. The new API features
+ object-oriented development with an intuitive object model, provides more control
+ over request processing, and uses simpler design patterns to help you write robust
+ code. Please visit Developing a Native Module for IIS7 for more information about this sample.
+
+ NOTE: The IIS7 native (C++) server API is declared in the Platform
+ SDK httpserv.h header file. You must obtain this SDK
+ and register it with Visual Studio in order to compile this module.
+
+ A native module is a Windows DLL that contains an the following:
+
+ - RegisterModule exported function. This function is responsible
+ for creating a module factory, and registering the module for one or more server
+ events.
+
+
+ This function is implemented in main.cpp.
+
+
+ - Implementation of the module class inheriting from the CHttpModule
+ base class. This class is provides the main functionality of your module.
+
+
+
+ This class is declared in mymodule.h, with method implementations
+ in mymodule.cpp.
+
+
+ - Implementation of the module factory class implementing the IHttpModuleFactory
+ interface. The class is responsible for creating instances of your module.
+
+
+ This class is declared and implemented in mymodulefactory.h.
+
+ 0. Prerequisites
+
+ In order to compile
+ the module, you will need to install the Windows Platform SDK that contains the
+ required IIS header files.
+
+
+ After installing the SDK, you will need to register
+ the SDK with Visual Studio 2005. You
+ can do this via Start > Programs > Microsoft
+ Windows SDK > Visual Studio Registration > Register Windows SDK Directories
+ with Visual Studio.
+
+ 1. Implement RegisterModule entrypoint
+
+ A native module must export the RegisterModule function. This function will
+ be invoked by the server when the module DLL is loaded, so that your DLL can register
+ for the required server events, and provide a mechanism for the server to create
+ instances of your module class.
+
+ __stdcall
+
+ HRESULT RegisterModule( DWORD dwServerVersion, IHttpModuleRegistrationInfo
+ * pModuleInfo, IHttpServer * pHttpServer );
+
+
+ This function is implemented for you in the main.cpp source file.
+
+
+
+ It does the following:
+
+ - Create module factory. This is an instance
+ of your CMyModuleFactory class that implements
+ the IHttpModuleFactory inteface:
+
+
+ // step 2: create module factory
+ pFactory = new CMyHttpModuleFactory();
+
+ - Register module factory for desired server events. This registers
+ the module factory for one or more server events that occur during request processing.
+ The server will use the factory to create an instance of your module class for each
+ request, and call the appropriate event handler method on your module instance for
+ each of the requested events:
+
+
+
+ // step 3: register for server events
+
+ // TODO: register for more server events here
+
+ hr = pModuleInfo->SetRequestNotifications( pFactory,
+ /* module factory */
+
+
+ RQ_ACQUIRE_REQUEST_STATE,
+ /* server event mask */
+
+ 0
+ /* server post event mask */ );
+
+
+ The server event mask is a bit mask of one or more request processing event names
+ declared in
+
+ httpserv.h:
+
+ //
+
+ // Request deterministic notifications
+
+ //
+
+
+ // request is beginning
+
+ #define RQ_BEGIN_REQUEST 0x00000001
+
+ // request is being authenticated
+
+ #define RQ_AUTHENTICATE_REQUEST 0x00000002
+
+ // request is being authorized
+
+ #define RQ_AUTHORIZE_REQUEST 0x00000004
+
+ // satisfy request from cache
+
+ #define RQ_RESOLVE_REQUEST_CACHE 0x00000008
+
+ // map handler for request
+
+ #define RQ_MAP_REQUEST_HANDLER 0x00000010
+
+ // acquire request state
+
+ #define RQ_ACQUIRE_REQUEST_STATE 0x00000020
+
+ // pre-execute handler
+
+ #define RQ_PRE_EXECUTE_REQUEST_HANDLER 0x00000040
+
+ // execute handler
+
+ #define RQ_EXECUTE_REQUEST_HANDLER 0x00000080
+
+ // release request state
+
+ #define RQ_RELEASE_REQUEST_STATE 0x00000100
+
+ // update cache
+
+ #define RQ_UPDATE_REQUEST_CACHE 0x00000200
+
+ // log request
+
+ #define RQ_LOG_REQUEST 0x00000400
+
+ // end request
+
+ #define RQ_END_REQUEST 0x00000800
+
+
+ //
+
+ // Request non-deterministic notifications
+
+ //
+
+
+ // custom notification
+
+ #define RQ_CUSTOM_NOTIFICATION 0x10000000
+
+ // send response
+
+ #define RQ_SEND_RESPONSE 0x20000000
+
+ // read entity
+
+ #define RQ_READ_ENTITY 0x40000000
+
+ // map a url to a physical path
+
+ #define RQ_MAP_PATH 0x80000000
+
+
+ The post event mask is a bit mask of the same events, allowing to subscribe
+ to the post events for each of the specified events.
+
+
+
+
+
+
+
+ 2. Implement module factory class
+
+ The server requires a module factory class in order to obtain instances of your
+ module. The factory class must implement the IHttpModuleFactory interface
+ declared in the httpserv.h Windows SDK header file.
+
+ This factory is implemented for you in the mymodulefactory.h header
+ file.
+
+ The GetHttpModule method of the factory class is called at the beginning of
+ each request in order to obtain an instance of your module. The typical implementation
+ simply returns a new instance of your module class:
+
+ class CMyHttpModuleFactory : public IHttpModuleFactory
+
+ {
+
+ public:
+
+ virtual HRESULT GetHttpModule( OUT CHttpModule **ppModule, IN IModuleAllocator
+ * )
+
+ {
+ ...
+ pModule = new CMyHttpModule();
+ ...
+ *ppModule = pModule;
+ ...
+ }
+
+ virtual void Terminate() { }
+ }
+
+ The Terminate method of the factory class is called during the
+ shutdown of the worker process, before your module DLL is unloaded. It typically
+ releases any resources you may have initialized inside the RegisterModule
+ function.
+
+ 3. Implement module class
+
+ The module class inherits from the CHttpModule base class, which
+ defines an event handler method for each of the server events discussed earlier.
+ When the server executes each event during the processing of a request, it will
+ invoke the associated event handler method on each of the module instances that
+ have registered for that event.
+
+ This class is declared in the mymodule.h header file, and its event
+ handler methods are implemented in the mymodule.cpp source file.
+
+ In order to provide processing for each server event, the module class MUST override
+ the corresponding method. The signature of each event handler method is the
+ following:
+
+ REQUEST_NOTIFICATION_STATUS
+ On<EVENT NAME>(
+ IN IHttpContext * pHttpContext,
+ IN OUT IHttpEventProvider * pProvider
+ );
+
+
+
+
+ Where <EVENT NAME> is one of the server events we listed earlier. For
+ example, the module in this project initially overrides only the OnAcquireRequestState method since we register only for the RQ_ACQUIRE_REQUEST_STATE event:
+
+ class CMyHttpModule : public
+ CHttpModule
+
+ {
+
+ public:
+
+
+ // Implementation of the AcquireRequestState
+ event handler method.
+
+ REQUEST_NOTIFICATION_STATUS OnAcquireRequestState( IN IHttpContext
+ * pHttpContext, IN OUT IHttpEventProvider * pProvider );
+
+
+ // TODO: override additional event handler
+ methods below.
+
+ };
+
+ The implementation of this method provides the module functionality desired for
+ processing the request in the appropriate pipeline stage. This project provides
+ a dummy implementation in the mymodule.cpp source file.
+
+ 4. Deploy the module to the server
+
+ After you have compiled your module, you need to deploy it on the server.
+ You can do that by compiling the module, and then copying IIS7NativeModule.dll
+ (and the IIS7NativeModule.pdb debugging symbols file if desired)
+ to any location on the machine running IIS7.
+
+ You can install your module on the server by running the following command from an Elevated command line prompt:
+
+ %systemroot%\system32\inetsrv\APPCMD.EXE install module /name:MyModule /image:<FULL
+ PATH TO DLL>
+
+ Where <FULL_PATH_TO_DLL> is the full path to the module DLL
+ file.
+
+ You can also install your module using the IIS7 Administration Tool. After installation,
+ your module will be loaded and enabled in all application pools on the server.
+ To learn ore about installing modules, and selecting modules to execute on your
+ server and for specific applications, please visit www.iis.net.
+
+ Congratulations!
+
+ You have succesfully built and deployed your own IIS7 module. To learn more
+ about building IIS7 modules, and to download sample modules, be sure to visit www.iis.net.
+
+
\ No newline at end of file
diff --git a/iis/winbuild/CMakeLists.txt b/iis/winbuild/CMakeLists.txt
new file mode 100644
index 00000000..bfb037f5
--- /dev/null
+++ b/iis/winbuild/CMakeLists.txt
@@ -0,0 +1,863 @@
+# cURL/libcurl CMake script
+# by Tetetest and Sukender (Benoit Neil)
+
+# TODO:
+# The output .so file lacks the soname number which we currently have within the lib/Makefile.am file
+# Add full (4 or 5 libs) SSL support
+# Add INSTALL target (EXTRA_DIST variables in Makefile.am may be moved to Makefile.inc so that CMake/CPack is aware of what's to include).
+# Add CTests(?)
+# Check on all possible platforms
+# Test with as many configurations possible (With or without any option)
+# Create scripts that help keeping the CMake build system up to date (to reduce maintenance). According to Tetetest:
+# - lists of headers that 'configure' checks for;
+# - curl-specific tests (the ones that are in m4/curl-*.m4 files);
+# - (most obvious thing:) curl version numbers.
+# Add documentation subproject
+#
+# To check:
+# (From Daniel Stenberg) The cmake build selected to run gcc with -fPIC on my box while the plain configure script did not.
+# (From Daniel Stenberg) The gcc command line use neither -g nor any -O options. As a developer, I also treasure our configure scripts's --enable-debug option that sets a long range of "picky" compiler options.
+cmake_minimum_required(VERSION 2.6.2 FATAL_ERROR)
+set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}")
+include(Utilities)
+
+project( CURL C )
+
+file (READ ${CURL_SOURCE_DIR}/include/curl/curlver.h CURL_VERSION_H_CONTENTS)
+string (REGEX MATCH "LIBCURL_VERSION_MAJOR[ \t]+([0-9]+)"
+ LIBCURL_VERSION_MJ ${CURL_VERSION_H_CONTENTS})
+string (REGEX MATCH "([0-9]+)"
+ LIBCURL_VERSION_MJ ${LIBCURL_VERSION_MJ})
+string (REGEX MATCH
+ "LIBCURL_VERSION_MINOR[ \t]+([0-9]+)"
+ LIBCURL_VERSION_MI ${CURL_VERSION_H_CONTENTS})
+string (REGEX MATCH "([0-9]+)" LIBCURL_VERSION_MI ${LIBCURL_VERSION_MI})
+string (REGEX MATCH
+ "LIBCURL_VERSION_PATCH[ \t]+([0-9]+)"
+ LIBCURL_VERSION_PT ${CURL_VERSION_H_CONTENTS})
+string (REGEX MATCH "([0-9]+)" LIBCURL_VERSION_PT ${LIBCURL_VERSION_PT})
+set (CURL_MAJOR_VERSION ${LIBCURL_VERSION_MJ})
+set (CURL_MINOR_VERSION ${LIBCURL_VERSION_MI})
+set (CURL_PATCH_VERSION ${LIBCURL_VERSION_PT})
+
+include_regular_expression("^.*$") # Sukender: Is it necessary?
+
+# Setup package meta-data
+# SET(PACKAGE "curl")
+set(CURL_VERSION ${CURL_MAJOR_VERSION}.${CURL_MINOR_VERSION}.${CURL_PATCH_VERSION})
+message(STATUS "curl version=[${CURL_VERSION}]")
+# SET(PACKAGE_TARNAME "curl")
+# SET(PACKAGE_NAME "curl")
+# SET(PACKAGE_VERSION "-")
+# SET(PACKAGE_STRING "curl-")
+# SET(PACKAGE_BUGREPORT "a suitable curl mailing list => http://curl.haxx.se/mail/")
+set(OPERATING_SYSTEM "${CMAKE_SYSTEM_NAME}")
+set(OS "\"${CMAKE_SYSTEM_NAME}\"")
+
+include_directories(${PROJECT_BINARY_DIR}/include/curl)
+include_directories( ${CURL_SOURCE_DIR}/include )
+
+if(WIN32)
+ set(NATIVE_WINDOWS ON)
+endif()
+
+option(BUILD_CURL_EXE "Set to ON to build cURL executable." ON)
+option(BUILD_CURL_TESTS "Set to ON to build cURL tests." ON)
+option(CURL_STATICLIB "Set to ON to build libcurl with static linking." OFF)
+option(CURL_USE_ARES "Set to ON to enable c-ares support" OFF)
+# initialize CURL_LIBS
+set(CURL_LIBS "")
+
+if(CURL_USE_ARES)
+ set(USE_ARES ${CURL_USE_ARES})
+ find_package(CARES REQUIRED)
+ list(APPEND CURL_LIBS ${CARES_LIBRARY} )
+ set(CURL_LIBS ${CURL_LIBS} ${CARES_LIBRARY})
+endif()
+
+option(BUILD_DASHBOARD_REPORTS "Set to ON to activate reporting of cURL builds here http://www.cdash.org/CDashPublic/index.php?project=CURL" OFF)
+if(BUILD_DASHBOARD_REPORTS)
+ #INCLUDE(Dart)
+ include(CTest)
+endif(BUILD_DASHBOARD_REPORTS)
+
+if(MSVC)
+ option(BUILD_RELEASE_DEBUG_DIRS "Set OFF to build each configuration to a separate directory" OFF)
+ mark_as_advanced(BUILD_RELEASE_DEBUG_DIRS)
+endif()
+
+option(CURL_HIDDEN_SYMBOLS "Set to ON to hide libcurl internal symbols (=hide all symbols that aren't officially external)." ON)
+mark_as_advanced(CURL_HIDDEN_SYMBOLS)
+
+# IF(WIN32)
+# OPTION(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON)
+# MARK_AS_ADVANCED(CURL_WINDOWS_SSPI)
+# ENDIF()
+
+option(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF)
+mark_as_advanced(HTTP_ONLY)
+option(CURL_DISABLE_FTP "disables FTP" OFF)
+mark_as_advanced(CURL_DISABLE_FTP)
+option(CURL_DISABLE_LDAP "disables LDAP" OFF)
+mark_as_advanced(CURL_DISABLE_LDAP)
+option(CURL_DISABLE_TELNET "disables Telnet" OFF)
+mark_as_advanced(CURL_DISABLE_TELNET)
+option(CURL_DISABLE_DICT "disables DICT" OFF)
+mark_as_advanced(CURL_DISABLE_DICT)
+option(CURL_DISABLE_FILE "disables FILE" OFF)
+mark_as_advanced(CURL_DISABLE_FILE)
+option(CURL_DISABLE_TFTP "disables TFTP" OFF)
+mark_as_advanced(CURL_DISABLE_TFTP)
+option(CURL_DISABLE_HTTP "disables HTTP" OFF)
+mark_as_advanced(CURL_DISABLE_HTTP)
+
+option(CURL_DISABLE_LDAPS "to disable LDAPS" OFF)
+mark_as_advanced(CURL_DISABLE_LDAPS)
+if(WIN32)
+ set(CURL_DEFAULT_DISABLE_LDAP OFF)
+ # some windows compilers do not have wldap32
+ if( NOT HAVE_WLDAP32)
+ set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
+ message(STATUS "wldap32 not found CURL_DISABLE_LDAP set ON")
+ option(CURL_LDAP_WIN "Use Windows LDAP implementation" OFF)
+ else()
+ option(CURL_LDAP_WIN "Use Windows LDAP implementation" ON)
+ endif()
+ mark_as_advanced(CURL_LDAP_WIN)
+endif()
+
+if(HTTP_ONLY)
+ set(CURL_DISABLE_FTP ON)
+ set(CURL_DISABLE_LDAP ON)
+ set(CURL_DISABLE_TELNET ON)
+ set(CURL_DISABLE_DICT ON)
+ set(CURL_DISABLE_FILE ON)
+ set(CURL_DISABLE_TFTP ON)
+endif()
+
+option(CURL_DISABLE_COOKIES "to disable cookies support" OFF)
+mark_as_advanced(CURL_DISABLE_COOKIES)
+
+option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF)
+mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH)
+option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF)
+mark_as_advanced(CURL_DISABLE_VERBOSE_STRINGS)
+option(DISABLED_THREADSAFE "Set to explicitly specify we don't want to use thread-safe functions" OFF)
+mark_as_advanced(DISABLED_THREADSAFE)
+option(ENABLE_IPV6 "Define if you want to enable IPv6 support" OFF)
+mark_as_advanced(ENABLE_IPV6)
+
+if(WIN32)
+ list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES wsock32.lib ws2_32.lib) # bufferoverflowu.lib
+ if(CURL_DISABLE_LDAP)
+ # Remove wldap32.lib from space-separated list
+ string(REPLACE " " ";" _LIST ${CMAKE_C_STANDARD_LIBRARIES})
+ list(REMOVE_ITEM _LIST "wldap32.lib")
+ to_list_spaces(_LIST CMAKE_C_STANDARD_LIBRARIES)
+ else()
+ # Append wldap32.lib
+ list_spaces_append_once(CMAKE_C_STANDARD_LIBRARIES wldap32.lib)
+ endif()
+ set(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}" CACHE STRING "" FORCE)
+endif()
+
+
+# We need ansi c-flags, especially on HP
+set(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}")
+set(CMAKE_REQUIRED_FLAGS ${CMAKE_ANSI_CFLAGS})
+
+# Disable warnings on Borland to avoid changing 3rd party code.
+if(BORLAND)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w-")
+endif(BORLAND)
+
+# If we are on AIX, do the _ALL_SOURCE magic
+if(${CMAKE_SYSTEM_NAME} MATCHES AIX)
+ set(_ALL_SOURCE 1)
+endif(${CMAKE_SYSTEM_NAME} MATCHES AIX)
+
+# Include all the necessary files for macros
+include (CheckFunctionExists)
+include (CheckIncludeFile)
+include (CheckIncludeFiles)
+include (CheckLibraryExists)
+include (CheckSymbolExists)
+include (CheckTypeSize)
+
+# On windows preload settings
+if(WIN32)
+ include(${CMAKE_CURRENT_SOURCE_DIR}/CMake/Platforms/WindowsCache.cmake)
+endif(WIN32)
+
+# This macro checks if the symbol exists in the library and if it
+# does, it prepends library to the list.
+macro(CHECK_LIBRARY_EXISTS_CONCAT LIBRARY SYMBOL VARIABLE)
+ check_library_exists("${LIBRARY};${CURL_LIBS}" ${SYMBOL} "${CMAKE_LIBRARY_PATH}"
+ ${VARIABLE})
+ if(${VARIABLE})
+ set(CURL_LIBS ${LIBRARY} ${CURL_LIBS})
+ endif(${VARIABLE})
+endmacro(CHECK_LIBRARY_EXISTS_CONCAT)
+
+# Check for all needed libraries
+check_library_exists_concat("dl" dlopen HAVE_LIBDL)
+check_library_exists_concat("socket" connect HAVE_LIBSOCKET)
+check_library_exists("c" gethostbyname "" NOT_NEED_LIBNSL)
+
+# Yellowtab Zeta needs different libraries than BeOS 5.
+if(BEOS)
+ set(NOT_NEED_LIBNSL 1)
+ check_library_exists_concat("bind" gethostbyname HAVE_LIBBIND)
+ check_library_exists_concat("bnetapi" closesocket HAVE_LIBBNETAPI)
+endif(BEOS)
+
+if(NOT NOT_NEED_LIBNSL)
+ check_library_exists_concat("nsl" gethostbyname HAVE_LIBNSL)
+endif(NOT NOT_NEED_LIBNSL)
+
+check_library_exists_concat("ws2_32" getch HAVE_LIBWS2_32)
+check_library_exists_concat("winmm" getch HAVE_LIBWINMM)
+check_library_exists("wldap32" cldap_open "" HAVE_WLDAP32)
+
+# IF(NOT CURL_SPECIAL_LIBZ)
+# CHECK_LIBRARY_EXISTS_CONCAT("z" inflateEnd HAVE_LIBZ)
+# ENDIF(NOT CURL_SPECIAL_LIBZ)
+
+# Check for idn
+check_library_exists_concat("idn" idna_to_ascii_lz HAVE_LIBIDN)
+
+# Check for LDAP
+check_library_exists_concat("ldap" ldap_init HAVE_LIBLDAP)
+# if(NOT HAVE_LIBLDAP)
+# SET(CURL_DISABLE_LDAP ON)
+# endif(NOT HAVE_LIBLDAP)
+
+# Check for symbol dlopen (same as HAVE_LIBDL)
+check_library_exists("${CURL_LIBS}" dlopen "" HAVE_DLOPEN)
+
+# For other tests to use the same libraries
+set(CMAKE_REQUIRED_LIBRARIES ${CURL_LIBS})
+
+option(CURL_ZLIB "Set to ON to enable building cURL with zlib support." ON)
+set(HAVE_LIBZ OFF)
+set(HAVE_ZLIB_H OFF)
+set(HAVE_ZLIB OFF)
+if(CURL_ZLIB) # AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE
+ find_package(ZLIB QUIET)
+ if(ZLIB_FOUND)
+ set(HAVE_ZLIB_H ON)
+ set(HAVE_ZLIB ON)
+ set(HAVE_LIBZ ON)
+ endif()
+endif()
+
+option(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ON)
+mark_as_advanced(CMAKE_USE_OPENSSL)
+if(CMAKE_USE_OPENSSL)
+ if(WIN32)
+ find_package(OpenSSL)
+ if(OPENSSL_FOUND)
+ set(USE_SSLEAY TRUE)
+ set(USE_OPENSSL TRUE)
+ list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES} )
+ else()
+ set(CMAKE_USE_OPENSSL FALSE)
+ message(STATUS "OpenSSL NOT Found, disabling CMAKE_USE_OPENSSL")
+ endif()
+ else(WIN32)
+ check_library_exists_concat("crypto" CRYPTO_lock HAVE_LIBCRYPTO)
+ check_library_exists_concat("ssl" SSL_connect HAVE_LIBSSL)
+ endif(WIN32)
+endif(CMAKE_USE_OPENSSL)
+
+# If we have features.h, then do the _BSD_SOURCE magic
+check_include_file("features.h" HAVE_FEATURES_H)
+
+# Check if header file exists and add it to the list.
+macro(CHECK_INCLUDE_FILE_CONCAT FILE VARIABLE)
+ check_include_files("${CURL_INCLUDES};${FILE}" ${VARIABLE})
+ if(${VARIABLE})
+ set(CURL_INCLUDES ${CURL_INCLUDES} ${FILE})
+ set(CURL_TEST_DEFINES "${CURL_TEST_DEFINES} -D${VARIABLE}")
+ endif(${VARIABLE})
+endmacro(CHECK_INCLUDE_FILE_CONCAT)
+
+
+# Check for header files
+if(NOT UNIX)
+ check_include_file_concat("ws2tcpip.h" HAVE_WS2TCPIP_H)
+ check_include_file_concat("winsock2.h" HAVE_WINSOCK2_H)
+endif(NOT UNIX)
+check_include_file_concat("stdio.h" HAVE_STDIO_H)
+if(NOT UNIX)
+ check_include_file_concat("windows.h" HAVE_WINDOWS_H)
+ check_include_file_concat("winsock.h" HAVE_WINSOCK_H)
+endif(NOT UNIX)
+
+check_include_file_concat("inttypes.h" HAVE_INTTYPES_H)
+check_include_file_concat("sys/filio.h" HAVE_SYS_FILIO_H)
+check_include_file_concat("sys/ioctl.h" HAVE_SYS_IOCTL_H)
+check_include_file_concat("sys/param.h" HAVE_SYS_PARAM_H)
+check_include_file_concat("sys/poll.h" HAVE_SYS_POLL_H)
+check_include_file_concat("sys/resource.h" HAVE_SYS_RESOURCE_H)
+check_include_file_concat("sys/select.h" HAVE_SYS_SELECT_H)
+check_include_file_concat("sys/socket.h" HAVE_SYS_SOCKET_H)
+check_include_file_concat("sys/sockio.h" HAVE_SYS_SOCKIO_H)
+check_include_file_concat("sys/stat.h" HAVE_SYS_STAT_H)
+check_include_file_concat("sys/time.h" HAVE_SYS_TIME_H)
+check_include_file_concat("sys/types.h" HAVE_SYS_TYPES_H)
+check_include_file_concat("sys/uio.h" HAVE_SYS_UIO_H)
+check_include_file_concat("sys/un.h" HAVE_SYS_UN_H)
+check_include_file_concat("sys/utime.h" HAVE_SYS_UTIME_H)
+check_include_file_concat("alloca.h" HAVE_ALLOCA_H)
+check_include_file_concat("arpa/inet.h" HAVE_ARPA_INET_H)
+check_include_file_concat("arpa/tftp.h" HAVE_ARPA_TFTP_H)
+check_include_file_concat("assert.h" HAVE_ASSERT_H)
+check_include_file_concat("crypto.h" HAVE_CRYPTO_H)
+check_include_file_concat("des.h" HAVE_DES_H)
+check_include_file_concat("err.h" HAVE_ERR_H)
+check_include_file_concat("errno.h" HAVE_ERRNO_H)
+check_include_file_concat("fcntl.h" HAVE_FCNTL_H)
+check_include_file_concat("gssapi/gssapi.h" HAVE_GSSAPI_GSSAPI_H)
+check_include_file_concat("gssapi/gssapi_generic.h" HAVE_GSSAPI_GSSAPI_GENERIC_H)
+check_include_file_concat("gssapi/gssapi_krb5.h" HAVE_GSSAPI_GSSAPI_KRB5_H)
+check_include_file_concat("idn-free.h" HAVE_IDN_FREE_H)
+check_include_file_concat("ifaddrs.h" HAVE_IFADDRS_H)
+check_include_file_concat("io.h" HAVE_IO_H)
+check_include_file_concat("krb.h" HAVE_KRB_H)
+check_include_file_concat("libgen.h" HAVE_LIBGEN_H)
+check_include_file_concat("libssh2.h" HAVE_LIBSSH2_H)
+check_include_file_concat("limits.h" HAVE_LIMITS_H)
+check_include_file_concat("locale.h" HAVE_LOCALE_H)
+check_include_file_concat("net/if.h" HAVE_NET_IF_H)
+check_include_file_concat("netdb.h" HAVE_NETDB_H)
+check_include_file_concat("netinet/in.h" HAVE_NETINET_IN_H)
+check_include_file_concat("netinet/tcp.h" HAVE_NETINET_TCP_H)
+check_include_file_concat("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
+check_include_file_concat("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
+check_include_file_concat("openssl/err.h" HAVE_OPENSSL_ERR_H)
+check_include_file_concat("openssl/pem.h" HAVE_OPENSSL_PEM_H)
+check_include_file_concat("openssl/pkcs12.h" HAVE_OPENSSL_PKCS12_H)
+check_include_file_concat("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
+check_include_file_concat("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
+check_include_file_concat("openssl/x509.h" HAVE_OPENSSL_X509_H)
+check_include_file_concat("pem.h" HAVE_PEM_H)
+check_include_file_concat("poll.h" HAVE_POLL_H)
+check_include_file_concat("pwd.h" HAVE_PWD_H)
+check_include_file_concat("rsa.h" HAVE_RSA_H)
+check_include_file_concat("setjmp.h" HAVE_SETJMP_H)
+check_include_file_concat("sgtty.h" HAVE_SGTTY_H)
+check_include_file_concat("signal.h" HAVE_SIGNAL_H)
+check_include_file_concat("ssl.h" HAVE_SSL_H)
+check_include_file_concat("stdbool.h" HAVE_STDBOOL_H)
+check_include_file_concat("stdint.h" HAVE_STDINT_H)
+check_include_file_concat("stdio.h" HAVE_STDIO_H)
+check_include_file_concat("stdlib.h" HAVE_STDLIB_H)
+check_include_file_concat("string.h" HAVE_STRING_H)
+check_include_file_concat("strings.h" HAVE_STRINGS_H)
+check_include_file_concat("stropts.h" HAVE_STROPTS_H)
+check_include_file_concat("termio.h" HAVE_TERMIO_H)
+check_include_file_concat("termios.h" HAVE_TERMIOS_H)
+check_include_file_concat("time.h" HAVE_TIME_H)
+check_include_file_concat("tld.h" HAVE_TLD_H)
+check_include_file_concat("unistd.h" HAVE_UNISTD_H)
+check_include_file_concat("utime.h" HAVE_UTIME_H)
+check_include_file_concat("x509.h" HAVE_X509_H)
+
+check_include_file_concat("process.h" HAVE_PROCESS_H)
+check_include_file_concat("stddef.h" HAVE_STDDEF_H)
+check_include_file_concat("dlfcn.h" HAVE_DLFCN_H)
+check_include_file_concat("malloc.h" HAVE_MALLOC_H)
+check_include_file_concat("memory.h" HAVE_MEMORY_H)
+check_include_file_concat("ldap.h" HAVE_LDAP_H)
+check_include_file_concat("netinet/if_ether.h" HAVE_NETINET_IF_ETHER_H)
+check_include_file_concat("stdint.h" HAVE_STDINT_H)
+check_include_file_concat("sockio.h" HAVE_SOCKIO_H)
+check_include_file_concat("sys/utsname.h" HAVE_SYS_UTSNAME_H)
+check_include_file_concat("idna.h" HAVE_IDNA_H)
+
+if(CMAKE_USE_OPENSSL)
+ check_include_file_concat("openssl/rand.h" HAVE_OPENSSL_RAND_H)
+endif(CMAKE_USE_OPENSSL)
+
+if(NOT HAVE_LDAP_H)
+ message(STATUS "LDAP_H not found CURL_DISABLE_LDAP set ON")
+ set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
+endif()
+
+
+check_type_size(size_t SIZEOF_SIZE_T)
+check_type_size(ssize_t SIZEOF_SSIZE_T)
+check_type_size("long long" SIZEOF_LONG_LONG)
+check_type_size("long" SIZEOF_LONG)
+check_type_size("short" SIZEOF_SHORT)
+check_type_size("int" SIZEOF_INT)
+check_type_size("__int64" SIZEOF___INT64)
+check_type_size("long double" SIZEOF_LONG_DOUBLE)
+check_type_size("time_t" SIZEOF_TIME_T)
+if(NOT HAVE_SIZEOF_SSIZE_T)
+ if(SIZEOF_LONG EQUAL SIZEOF_SIZE_T)
+ set(ssize_t long)
+ endif(SIZEOF_LONG EQUAL SIZEOF_SIZE_T)
+ if(NOT ssize_t AND SIZEOF___INT64 EQUAL SIZEOF_SIZE_T)
+ set(ssize_t __int64)
+ endif(NOT ssize_t AND SIZEOF___INT64 EQUAL SIZEOF_SIZE_T)
+endif(NOT HAVE_SIZEOF_SSIZE_T)
+
+# Different sizeofs, etc.
+
+# define CURL_SIZEOF_LONG 4
+# define CURL_TYPEOF_CURL_OFF_T long long
+# define CURL_FORMAT_CURL_OFF_T "lld"
+# define CURL_FORMAT_CURL_OFF_TU "llu"
+# define CURL_FORMAT_OFF_T "%lld"
+# define CURL_SIZEOF_CURL_OFF_T 8
+# define CURL_SUFFIX_CURL_OFF_T LL
+# define CURL_SUFFIX_CURL_OFF_TU ULL
+
+set(CURL_SIZEOF_LONG ${SIZEOF_LONG})
+
+if(SIZEOF_LONG EQUAL 8)
+ set(CURL_TYPEOF_CURL_OFF_T long)
+ set(CURL_SIZEOF_CURL_OFF_T 8)
+ set(CURL_FORMAT_CURL_OFF_T "ld")
+ set(CURL_FORMAT_CURL_OFF_TU "lu")
+ set(CURL_FORMAT_OFF_T "%ld")
+ set(CURL_SUFFIX_CURL_OFF_T L)
+ set(CURL_SUFFIX_CURL_OFF_TU LU)
+endif(SIZEOF_LONG EQUAL 8)
+
+if(SIZEOF_LONG_LONG EQUAL 8)
+ set(CURL_TYPEOF_CURL_OFF_T "long long")
+ set(CURL_SIZEOF_CURL_OFF_T 8)
+ set(CURL_FORMAT_CURL_OFF_T "lld")
+ set(CURL_FORMAT_CURL_OFF_TU "llu")
+ set(CURL_FORMAT_OFF_T "%lld")
+ set(CURL_SUFFIX_CURL_OFF_T LL)
+ set(CURL_SUFFIX_CURL_OFF_TU LLU)
+endif(SIZEOF_LONG_LONG EQUAL 8)
+
+if(NOT CURL_TYPEOF_CURL_OFF_T)
+ set(CURL_TYPEOF_CURL_OFF_T ${ssize_t})
+ set(CURL_SIZEOF_CURL_OFF_T ${SIZEOF_SSIZE_T})
+ # TODO: need adjustment here.
+ set(CURL_FORMAT_CURL_OFF_T "ld")
+ set(CURL_FORMAT_CURL_OFF_TU "lu")
+ set(CURL_FORMAT_OFF_T "%ld")
+ set(CURL_SUFFIX_CURL_OFF_T L)
+ set(CURL_SUFFIX_CURL_OFF_TU LU)
+endif(NOT CURL_TYPEOF_CURL_OFF_T)
+
+if(HAVE_SIZEOF_LONG_LONG)
+ set(HAVE_LONGLONG 1)
+ set(HAVE_LL 1)
+endif(HAVE_SIZEOF_LONG_LONG)
+
+find_file(RANDOM_FILE urandom /dev)
+mark_as_advanced(RANDOM_FILE)
+
+# Check for some functions that are used
+check_symbol_exists(basename "${CURL_INCLUDES}" HAVE_BASENAME)
+check_symbol_exists(socket "${CURL_INCLUDES}" HAVE_SOCKET)
+check_symbol_exists(poll "${CURL_INCLUDES}" HAVE_POLL)
+check_symbol_exists(select "${CURL_INCLUDES}" HAVE_SELECT)
+check_symbol_exists(strdup "${CURL_INCLUDES}" HAVE_STRDUP)
+check_symbol_exists(strstr "${CURL_INCLUDES}" HAVE_STRSTR)
+check_symbol_exists(strtok_r "${CURL_INCLUDES}" HAVE_STRTOK_R)
+check_symbol_exists(strftime "${CURL_INCLUDES}" HAVE_STRFTIME)
+check_symbol_exists(uname "${CURL_INCLUDES}" HAVE_UNAME)
+check_symbol_exists(strcasecmp "${CURL_INCLUDES}" HAVE_STRCASECMP)
+check_symbol_exists(stricmp "${CURL_INCLUDES}" HAVE_STRICMP)
+check_symbol_exists(strcmpi "${CURL_INCLUDES}" HAVE_STRCMPI)
+check_symbol_exists(strncmpi "${CURL_INCLUDES}" HAVE_STRNCMPI)
+check_symbol_exists(alarm "${CURL_INCLUDES}" HAVE_ALARM)
+if(NOT HAVE_STRNCMPI)
+ set(HAVE_STRCMPI)
+endif(NOT HAVE_STRNCMPI)
+check_symbol_exists(gethostbyaddr "${CURL_INCLUDES}" HAVE_GETHOSTBYADDR)
+check_symbol_exists(gethostbyaddr_r "${CURL_INCLUDES}" HAVE_GETHOSTBYADDR_R)
+check_symbol_exists(gettimeofday "${CURL_INCLUDES}" HAVE_GETTIMEOFDAY)
+check_symbol_exists(inet_addr "${CURL_INCLUDES}" HAVE_INET_ADDR)
+check_symbol_exists(inet_ntoa "${CURL_INCLUDES}" HAVE_INET_NTOA)
+check_symbol_exists(inet_ntoa_r "${CURL_INCLUDES}" HAVE_INET_NTOA_R)
+check_symbol_exists(tcsetattr "${CURL_INCLUDES}" HAVE_TCSETATTR)
+check_symbol_exists(tcgetattr "${CURL_INCLUDES}" HAVE_TCGETATTR)
+check_symbol_exists(perror "${CURL_INCLUDES}" HAVE_PERROR)
+check_symbol_exists(closesocket "${CURL_INCLUDES}" HAVE_CLOSESOCKET)
+check_symbol_exists(setvbuf "${CURL_INCLUDES}" HAVE_SETVBUF)
+check_symbol_exists(sigsetjmp "${CURL_INCLUDES}" HAVE_SIGSETJMP)
+check_symbol_exists(getpass_r "${CURL_INCLUDES}" HAVE_GETPASS_R)
+check_symbol_exists(strlcat "${CURL_INCLUDES}" HAVE_STRLCAT)
+check_symbol_exists(getpwuid "${CURL_INCLUDES}" HAVE_GETPWUID)
+check_symbol_exists(geteuid "${CURL_INCLUDES}" HAVE_GETEUID)
+check_symbol_exists(utime "${CURL_INCLUDES}" HAVE_UTIME)
+if(CMAKE_USE_OPENSSL)
+ check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS)
+ check_symbol_exists(RAND_screen "${CURL_INCLUDES}" HAVE_RAND_SCREEN)
+ check_symbol_exists(RAND_egd "${CURL_INCLUDES}" HAVE_RAND_EGD)
+ check_symbol_exists(CRYPTO_cleanup_all_ex_data "${CURL_INCLUDES}"
+ HAVE_CRYPTO_CLEANUP_ALL_EX_DATA)
+ if(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
+ set(USE_OPENSSL 1)
+ set(USE_SSLEAY 1)
+ endif(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
+endif(CMAKE_USE_OPENSSL)
+check_symbol_exists(gmtime_r "${CURL_INCLUDES}" HAVE_GMTIME_R)
+check_symbol_exists(localtime_r "${CURL_INCLUDES}" HAVE_LOCALTIME_R)
+
+check_symbol_exists(gethostbyname "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME)
+check_symbol_exists(gethostbyname_r "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME_R)
+
+check_symbol_exists(signal "${CURL_INCLUDES}" HAVE_SIGNAL_FUNC)
+check_symbol_exists(SIGALRM "${CURL_INCLUDES}" HAVE_SIGNAL_MACRO)
+if(HAVE_SIGNAL_FUNC AND HAVE_SIGNAL_MACRO)
+ set(HAVE_SIGNAL 1)
+endif(HAVE_SIGNAL_FUNC AND HAVE_SIGNAL_MACRO)
+check_symbol_exists(uname "${CURL_INCLUDES}" HAVE_UNAME)
+check_symbol_exists(strtoll "${CURL_INCLUDES}" HAVE_STRTOLL)
+check_symbol_exists(_strtoi64 "${CURL_INCLUDES}" HAVE__STRTOI64)
+check_symbol_exists(strerror_r "${CURL_INCLUDES}" HAVE_STRERROR_R)
+check_symbol_exists(siginterrupt "${CURL_INCLUDES}" HAVE_SIGINTERRUPT)
+check_symbol_exists(perror "${CURL_INCLUDES}" HAVE_PERROR)
+check_symbol_exists(fork "${CURL_INCLUDES}" HAVE_FORK)
+check_symbol_exists(freeaddrinfo "${CURL_INCLUDES}" HAVE_FREEADDRINFO)
+check_symbol_exists(freeifaddrs "${CURL_INCLUDES}" HAVE_FREEIFADDRS)
+check_symbol_exists(pipe "${CURL_INCLUDES}" HAVE_PIPE)
+check_symbol_exists(ftruncate "${CURL_INCLUDES}" HAVE_FTRUNCATE)
+check_symbol_exists(getprotobyname "${CURL_INCLUDES}" HAVE_GETPROTOBYNAME)
+check_symbol_exists(getrlimit "${CURL_INCLUDES}" HAVE_GETRLIMIT)
+check_symbol_exists(idn_free "${CURL_INCLUDES}" HAVE_IDN_FREE)
+check_symbol_exists(idna_strerror "${CURL_INCLUDES}" HAVE_IDNA_STRERROR)
+check_symbol_exists(tld_strerror "${CURL_INCLUDES}" HAVE_TLD_STRERROR)
+check_symbol_exists(setlocale "${CURL_INCLUDES}" HAVE_SETLOCALE)
+check_symbol_exists(setrlimit "${CURL_INCLUDES}" HAVE_SETRLIMIT)
+check_symbol_exists(fcntl "${CURL_INCLUDES}" HAVE_FCNTL)
+check_symbol_exists(ioctl "${CURL_INCLUDES}" HAVE_IOCTL)
+check_symbol_exists(setsockopt "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
+
+# symbol exists in win32, but function does not.
+check_function_exists(inet_pton HAVE_INET_PTON)
+
+# sigaction and sigsetjmp are special. Use special mechanism for
+# detecting those, but only if previous attempt failed.
+if(HAVE_SIGNAL_H)
+ check_symbol_exists(sigaction "signal.h" HAVE_SIGACTION)
+endif(HAVE_SIGNAL_H)
+
+if(NOT HAVE_SIGSETJMP)
+ if(HAVE_SETJMP_H)
+ check_symbol_exists(sigsetjmp "setjmp.h" HAVE_MACRO_SIGSETJMP)
+ if(HAVE_MACRO_SIGSETJMP)
+ set(HAVE_SIGSETJMP 1)
+ endif(HAVE_MACRO_SIGSETJMP)
+ endif(HAVE_SETJMP_H)
+endif(NOT HAVE_SIGSETJMP)
+
+# If there is no stricmp(), do not allow LDAP to parse URLs
+if(NOT HAVE_STRICMP)
+ set(HAVE_LDAP_URL_PARSE 1)
+endif(NOT HAVE_STRICMP)
+
+# For other curl specific tests, use this macro.
+macro(CURL_INTERNAL_TEST CURL_TEST)
+ if("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
+ set(MACRO_CHECK_FUNCTION_DEFINITIONS
+ "-D${CURL_TEST} ${CURL_TEST_DEFINES} ${CMAKE_REQUIRED_FLAGS}")
+ if(CMAKE_REQUIRED_LIBRARIES)
+ set(CURL_TEST_ADD_LIBRARIES
+ "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
+ endif(CMAKE_REQUIRED_LIBRARIES)
+
+ message(STATUS "Performing Curl Test ${CURL_TEST}")
+ try_compile(${CURL_TEST}
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/CMake/CurlTests.c
+ CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
+ "${CURL_TEST_ADD_LIBRARIES}"
+ OUTPUT_VARIABLE OUTPUT)
+ if(${CURL_TEST})
+ set(${CURL_TEST} 1 CACHE INTERNAL "Curl test ${FUNCTION}")
+ message(STATUS "Performing Curl Test ${CURL_TEST} - Success")
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
+ "Performing Curl Test ${CURL_TEST} passed with the following output:\n"
+ "${OUTPUT}\n")
+ else(${CURL_TEST})
+ message(STATUS "Performing Curl Test ${CURL_TEST} - Failed")
+ set(${CURL_TEST} "" CACHE INTERNAL "Curl test ${FUNCTION}")
+ file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
+ "Performing Curl Test ${CURL_TEST} failed with the following output:\n"
+ "${OUTPUT}\n")
+ endif(${CURL_TEST})
+ endif("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
+endmacro(CURL_INTERNAL_TEST)
+
+macro(CURL_INTERNAL_TEST_RUN CURL_TEST)
+ if("${CURL_TEST}_COMPILE" MATCHES "^${CURL_TEST}_COMPILE$")
+ set(MACRO_CHECK_FUNCTION_DEFINITIONS
+ "-D${CURL_TEST} ${CMAKE_REQUIRED_FLAGS}")
+ if(CMAKE_REQUIRED_LIBRARIES)
+ set(CURL_TEST_ADD_LIBRARIES
+ "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
+ endif(CMAKE_REQUIRED_LIBRARIES)
+
+ message(STATUS "Performing Curl Test ${CURL_TEST}")
+ try_run(${CURL_TEST} ${CURL_TEST}_COMPILE
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/CMake/CurlTests.c
+ CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
+ "${CURL_TEST_ADD_LIBRARIES}"
+ OUTPUT_VARIABLE OUTPUT)
+ if(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
+ set(${CURL_TEST} 1 CACHE INTERNAL "Curl test ${FUNCTION}")
+ message(STATUS "Performing Curl Test ${CURL_TEST} - Success")
+ else(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
+ message(STATUS "Performing Curl Test ${CURL_TEST} - Failed")
+ set(${CURL_TEST} "" CACHE INTERNAL "Curl test ${FUNCTION}")
+ file(APPEND "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
+ "Performing Curl Test ${CURL_TEST} failed with the following output:\n"
+ "${OUTPUT}")
+ if(${CURL_TEST}_COMPILE)
+ file(APPEND
+ "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
+ "There was a problem running this test\n")
+ endif(${CURL_TEST}_COMPILE)
+ file(APPEND "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log"
+ "\n\n")
+ endif(${CURL_TEST}_COMPILE AND NOT ${CURL_TEST})
+ endif("${CURL_TEST}_COMPILE" MATCHES "^${CURL_TEST}_COMPILE$")
+endmacro(CURL_INTERNAL_TEST_RUN)
+
+# Do curl specific tests
+foreach(CURL_TEST
+ HAVE_FCNTL_O_NONBLOCK
+ HAVE_IOCTLSOCKET
+ HAVE_IOCTLSOCKET_CAMEL
+ HAVE_IOCTLSOCKET_CAMEL_FIONBIO
+ HAVE_IOCTLSOCKET_FIONBIO
+ HAVE_IOCTL_FIONBIO
+ HAVE_IOCTL_SIOCGIFADDR
+ HAVE_SETSOCKOPT_SO_NONBLOCK
+ HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
+ TIME_WITH_SYS_TIME
+ HAVE_O_NONBLOCK
+ HAVE_GETHOSTBYADDR_R_5
+ HAVE_GETHOSTBYADDR_R_7
+ HAVE_GETHOSTBYADDR_R_8
+ HAVE_GETHOSTBYADDR_R_5_REENTRANT
+ HAVE_GETHOSTBYADDR_R_7_REENTRANT
+ HAVE_GETHOSTBYADDR_R_8_REENTRANT
+ HAVE_GETHOSTBYNAME_R_3
+ HAVE_GETHOSTBYNAME_R_5
+ HAVE_GETHOSTBYNAME_R_6
+ HAVE_GETHOSTBYNAME_R_3_REENTRANT
+ HAVE_GETHOSTBYNAME_R_5_REENTRANT
+ HAVE_GETHOSTBYNAME_R_6_REENTRANT
+ HAVE_SOCKLEN_T
+ HAVE_IN_ADDR_T
+ HAVE_BOOL_T
+ STDC_HEADERS
+ RETSIGTYPE_TEST
+ HAVE_INET_NTOA_R_DECL
+ HAVE_INET_NTOA_R_DECL_REENTRANT
+ HAVE_GETADDRINFO
+ HAVE_FILE_OFFSET_BITS
+ )
+ curl_internal_test(${CURL_TEST})
+endforeach(CURL_TEST)
+if(HAVE_FILE_OFFSET_BITS)
+ set(_FILE_OFFSET_BITS 64)
+endif(HAVE_FILE_OFFSET_BITS)
+foreach(CURL_TEST
+ HAVE_GLIBC_STRERROR_R
+ HAVE_POSIX_STRERROR_R
+ )
+ curl_internal_test_run(${CURL_TEST})
+endforeach(CURL_TEST)
+
+# Check for reentrant
+foreach(CURL_TEST
+ HAVE_GETHOSTBYADDR_R_5
+ HAVE_GETHOSTBYADDR_R_7
+ HAVE_GETHOSTBYADDR_R_8
+ HAVE_GETHOSTBYNAME_R_3
+ HAVE_GETHOSTBYNAME_R_5
+ HAVE_GETHOSTBYNAME_R_6
+ HAVE_INET_NTOA_R_DECL_REENTRANT)
+ if(NOT ${CURL_TEST})
+ if(${CURL_TEST}_REENTRANT)
+ set(NEED_REENTRANT 1)
+ endif(${CURL_TEST}_REENTRANT)
+ endif(NOT ${CURL_TEST})
+endforeach(CURL_TEST)
+
+if(NEED_REENTRANT)
+ foreach(CURL_TEST
+ HAVE_GETHOSTBYADDR_R_5
+ HAVE_GETHOSTBYADDR_R_7
+ HAVE_GETHOSTBYADDR_R_8
+ HAVE_GETHOSTBYNAME_R_3
+ HAVE_GETHOSTBYNAME_R_5
+ HAVE_GETHOSTBYNAME_R_6)
+ set(${CURL_TEST} 0)
+ if(${CURL_TEST}_REENTRANT)
+ set(${CURL_TEST} 1)
+ endif(${CURL_TEST}_REENTRANT)
+ endforeach(CURL_TEST)
+endif(NEED_REENTRANT)
+
+if(HAVE_INET_NTOA_R_DECL_REENTRANT)
+ set(HAVE_INET_NTOA_R_DECL 1)
+ set(NEED_REENTRANT 1)
+endif(HAVE_INET_NTOA_R_DECL_REENTRANT)
+
+# Some other minor tests
+
+if(NOT HAVE_IN_ADDR_T)
+ set(in_addr_t "unsigned long")
+endif(NOT HAVE_IN_ADDR_T)
+
+# Fix libz / zlib.h
+
+if(NOT CURL_SPECIAL_LIBZ)
+ if(NOT HAVE_LIBZ)
+ set(HAVE_ZLIB_H 0)
+ endif(NOT HAVE_LIBZ)
+
+ if(NOT HAVE_ZLIB_H)
+ set(HAVE_LIBZ 0)
+ endif(NOT HAVE_ZLIB_H)
+endif(NOT CURL_SPECIAL_LIBZ)
+
+if(_FILE_OFFSET_BITS)
+ set(_FILE_OFFSET_BITS 64)
+endif(_FILE_OFFSET_BITS)
+set(CMAKE_REQUIRED_FLAGS "-D_FILE_OFFSET_BITS=64")
+set(CMAKE_EXTRA_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/curl/curl.h")
+check_type_size("curl_off_t" SIZEOF_CURL_OFF_T)
+set(CMAKE_EXTRA_INCLUDE_FILES)
+set(CMAKE_REQUIRED_FLAGS)
+
+
+# Check for nonblocking
+set(HAVE_DISABLED_NONBLOCKING 1)
+if(HAVE_FIONBIO OR
+ HAVE_IOCTLSOCKET OR
+ HAVE_IOCTLSOCKET_CASE OR
+ HAVE_O_NONBLOCK)
+ set(HAVE_DISABLED_NONBLOCKING)
+endif(HAVE_FIONBIO OR
+ HAVE_IOCTLSOCKET OR
+ HAVE_IOCTLSOCKET_CASE OR
+ HAVE_O_NONBLOCK)
+
+if(RETSIGTYPE_TEST)
+ set(RETSIGTYPE void)
+else(RETSIGTYPE_TEST)
+ set(RETSIGTYPE int)
+endif(RETSIGTYPE_TEST)
+
+if(CMAKE_COMPILER_IS_GNUCC AND APPLE)
+ include(CheckCCompilerFlag)
+ check_c_compiler_flag(-Wno-long-double HAVE_C_FLAG_Wno_long_double)
+ if(HAVE_C_FLAG_Wno_long_double)
+ # The Mac version of GCC warns about use of long double. Disable it.
+ get_source_file_property(MPRINTF_COMPILE_FLAGS mprintf.c COMPILE_FLAGS)
+ if(MPRINTF_COMPILE_FLAGS)
+ set(MPRINTF_COMPILE_FLAGS "${MPRINTF_COMPILE_FLAGS} -Wno-long-double")
+ else(MPRINTF_COMPILE_FLAGS)
+ set(MPRINTF_COMPILE_FLAGS "-Wno-long-double")
+ endif(MPRINTF_COMPILE_FLAGS)
+ set_source_files_properties(mprintf.c PROPERTIES
+ COMPILE_FLAGS ${MPRINTF_COMPILE_FLAGS})
+ endif(HAVE_C_FLAG_Wno_long_double)
+endif(CMAKE_COMPILER_IS_GNUCC AND APPLE)
+
+if(HAVE_SOCKLEN_T)
+ set(CURL_TYPEOF_CURL_SOCKLEN_T "socklen_t")
+ if(WIN32)
+ set(CMAKE_EXTRA_INCLUDE_FILES "winsock2.h;ws2tcpip.h")
+ elseif(HAVE_SYS_SOCKET_H)
+ set(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
+ endif()
+ check_type_size("socklen_t" CURL_SIZEOF_CURL_SOCKLEN_T)
+ set(CMAKE_EXTRA_INCLUDE_FILES)
+ if(NOT HAVE_CURL_SIZEOF_CURL_SOCKLEN_T)
+ message(FATAL_ERROR
+ "Check for sizeof socklen_t failed, see CMakeFiles/CMakerror.log")
+ endif()
+else()
+ set(CURL_TYPEOF_CURL_SOCKLEN_T int)
+ set(CURL_SIZEOF_CURL_SOCKLEN_T ${SIZEOF_INT})
+endif()
+
+include(CMake/OtherTests.cmake)
+
+add_definitions(-DHAVE_CONFIG_H)
+
+# For windows, do not allow the compiler to use default target (Vista).
+if(WIN32)
+ add_definitions(-D_WIN32_WINNT=0x0501)
+endif(WIN32)
+
+if(MSVC)
+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
+endif(MSVC)
+
+# Sets up the dependencies (zlib, OpenSSL, etc.) of a cURL subproject according to options.
+# TODO This is far to be complete!
+function(SETUP_CURL_DEPENDENCIES TARGET_NAME)
+ if(CURL_ZLIB AND ZLIB_FOUND)
+ include_directories(${ZLIB_INCLUDE_DIR})
+ endif()
+ if(CURL_ZLIB AND ZLIB_FOUND)
+ target_link_libraries(${TARGET_NAME} ${ZLIB_LIBRARIES})
+ #ADD_DEFINITIONS( -DHAVE_ZLIB_H -DHAVE_ZLIB -DHAVE_LIBZ )
+ endif()
+
+ if(CMAKE_USE_OPENSSL AND OPENSSL_FOUND)
+ include_directories(${OPENSSL_INCLUDE_DIR})
+ endif()
+ if(CMAKE_USE_OPENSSL AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE)
+ target_link_libraries(${TARGET_NAME} ${OPENSSL_LIBRARIES})
+ #ADD_DEFINITIONS( -DUSE_SSLEAY )
+ endif()
+endfunction()
+
+# Ugly (but functional) way to include "Makefile.inc" by transforming it (= regenerate it).
+function(TRANSFORM_MAKEFILE_INC INPUT_FILE OUTPUT_FILE)
+ file(READ ${INPUT_FILE} MAKEFILE_INC_TEXT)
+ string(REPLACE "$(top_srcdir)" "\${CURL_SOURCE_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
+ string(REPLACE "$(top_builddir)" "\${CURL_BINARY_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
+
+ string(REGEX REPLACE "\\\\\n" "§!§" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
+ string(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*)" "SET(\\1 \\2)" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
+ string(REPLACE "§!§" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
+
+ string(REGEX REPLACE "\\$\\(([a-zA-Z_][a-zA-Z0-9_]*)\\)" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace $() with ${}
+ string(REGEX REPLACE "@([a-zA-Z_][a-zA-Z0-9_]*)@" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace @@ with ${}, even if that may not be read by CMake scripts.
+ file(WRITE ${OUTPUT_FILE} ${MAKEFILE_INC_TEXT})
+
+endfunction()
+
+add_subdirectory(lib)
+if(BUILD_CURL_EXE)
+ add_subdirectory(src)
+endif()
+if(BUILD_CURL_TESTS)
+ add_subdirectory(tests)
+endif()
+
+# This needs to be run very last so other parts of the scripts can take advantage of this.
+if(NOT CURL_CONFIG_HAS_BEEN_RUN_BEFORE)
+ set(CURL_CONFIG_HAS_BEEN_RUN_BEFORE 1 CACHE INTERNAL "Flag to track whether this is the first time running CMake or if CMake has been configured before")
+endif()
+
+# Installation.
+# First, install generated curlbuild.h
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/include/curl/curlbuild.h"
+ DESTINATION include/curl )
+# Next, install other headers excluding curlbuild.h
+install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/curl"
+ DESTINATION include
+ FILES_MATCHING PATTERN "*.h"
+ PATTERN "curlbuild.h" EXCLUDE)
diff --git a/iis/winbuild/Makefile.win b/iis/winbuild/Makefile.win
new file mode 100644
index 00000000..73a5462a
--- /dev/null
+++ b/iis/winbuild/Makefile.win
@@ -0,0 +1,57 @@
+###########################################################################
+### You Will need to modify the following variables for your system
+###########################################################################
+###########################################################################
+
+# Path to Apache httpd installation
+BASE = C:\Apache22
+
+# Paths to required libraries
+PCRE = C:\work\pcre-8.30
+CURL = C:\work\curl-7.24.0
+
+# Linking libraries
+LIBS = $(BASE)\lib\libapr-1.lib \
+ $(BASE)\lib\libaprutil-1.lib \
+ $(PCRE)\pcre.lib \
+ $(CURL)\libcurl_imp.lib \
+ wsock32.lib
+
+###########################################################################
+###########################################################################
+
+CC = cL
+
+MT = mt
+
+DEFS = /nologo /O2 /W3 -DWIN32 -DWINNT -Dinline=APR_INLINE -D_CONSOLE
+
+EXE = mlogc.exe
+
+INCLUDES = -I. -I..\apache2 \
+ -I$(PCRE)\include -I$(PCRE) \
+ -I$(CURL)\include -I$(CURL) \
+ -I$(BASE)\include
+
+CFLAGS= -MT $(INCLUDES) $(DEFS)
+
+LDFLAGS =
+
+OBJS = mlogc.obj
+
+all: $(EXE)
+
+.c.obj:
+ $(CC) $(CFLAGS) -c $< -Fo$@
+
+.cpp.obj:
+ $(CC) $(CFLAGS) -c $< -Fo$@
+
+$(EXE): $(OBJS)
+ $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(LIBS) /link /NODEFAULTLIB:MSVCRT.lib /subsystem:console
+
+install: $(EXE)
+ copy $(EXE) $(BASE)\bin
+
+clean:
+ del $(OBJS) $(EXE) *.dll *.lib *.pdb *.idb *.ilk *.exp *.res *.rc *.bin *.manifest
diff --git a/iis/winbuild/VCVarsQueryRegistry.bat b/iis/winbuild/VCVarsQueryRegistry.bat
new file mode 100644
index 00000000..c925743b
--- /dev/null
+++ b/iis/winbuild/VCVarsQueryRegistry.bat
@@ -0,0 +1,224 @@
+@call :GetWindowsSdkDir
+@call :GetVSInstallDir
+@call :GetVCInstallDir
+@call :GetFSharpInstallDir
+@if "%1"=="32bit" (
+ @call :GetFrameworkDir32
+ @call :GetFrameworkVer32
+)
+@if "%2"=="64bit" (
+ @call :GetFrameworkDir64
+ @call :GetFrameworkVer64
+)
+@SET Framework35Version=v3.5
+
+@goto end
+
+@REM -----------------------------------------------------------------------
+:GetWindowsSdkDir
+@set WindowsSdkDir=
+@call :GetWindowsSdkDirHelper HKLM > nul 2>&1
+@if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1
+@if errorlevel 1 set WindowsSdkDir=%VCINSTALLDIR%\PlatformSDK\
+@exit /B 0
+
+:GetWindowsSdkDirHelper
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A" /v "InstallationFolder"') DO (
+ @if "%%i"=="InstallationFolder" (
+ @SET "WindowsSdkDir=%%k"
+ )
+)
+@if "%WindowsSdkDir%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetVSInstallDir
+@set VSINSTALLDIR=
+@call :GetVSInstallDirHelper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSInstallDirHelper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetVSInstallDirHelper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSInstallDirHelper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetVSInstallDirHelper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VSINSTALLDIR=%%k"
+ )
+)
+@if "%VSINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+:GetVSInstallDirHelper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VSINSTALLDIR=%%k"
+ )
+)
+@if "%VSINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetVCInstallDir
+@set VCINSTALLDIR=
+@call :GetVCInstallDirHelper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVCInstallDirHelper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetVCInstallDirHelper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVCInstallDirHelper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetVCInstallDirHelper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VC7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VCINSTALLDIR=%%k"
+ )
+)
+@if "%VCINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+:GetVCInstallDirHelper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VC7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VCINSTALLDIR=%%k"
+ )
+)
+@if "%VCINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetFSharpInstallDir
+@set FSHARPINSTALLDIR=
+@call :GetFSharpInstallDirHelper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFSharpInstallDirHelper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetFSharpInstallDirHelper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFSharpInstallDirHelper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetFSharpInstallDirHelper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\10.0\Setup\F#" /v "ProductDir"') DO (
+ @if "%%i"=="ProductDir" (
+ @SET "FSHARPINSTALLDIR=%%k"
+ )
+)
+@if "%FSHARPINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+:GetFSharpInstallDirHelper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Setup\F#" /v "ProductDir"') DO (
+ @if "%%i"=="ProductDir" (
+ @SET "FSHARPINSTALLDIR=%%k"
+ )
+)
+@if "%FSHARPINSTALLDIR%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetFrameworkDir32
+@set FrameworkDir32=
+@call :GetFrameworkDir32Helper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir32Helper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir32Helper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir32Helper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetFrameworkDir32Helper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkDir32"') DO (
+ @if "%%i"=="FrameworkDir32" (
+ @SET "FrameworkDIR32=%%k"
+ )
+)
+@if "%FrameworkDir32%"=="" exit /B 1
+@exit /B 0
+
+:GetFrameworkDir32Helper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkDir32"') DO (
+ @if "%%i"=="FrameworkDir32" (
+ @SET "FrameworkDIR32=%%k"
+ )
+)
+@if "%FrameworkDIR32%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetFrameworkDir64
+@set FrameworkDir64=
+@call :GetFrameworkDir64Helper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir64Helper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir64Helper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkDir64Helper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetFrameworkDir64Helper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkDir64"') DO (
+ @if "%%i"=="FrameworkDir64" (
+ @SET "FrameworkDIR64=%%k"
+ )
+)
+@if "%FrameworkDIR64%"=="" exit /B 1
+@exit /B 0
+
+:GetFrameworkDir64Helper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkDir64"') DO (
+ @if "%%i"=="FrameworkDir64" (
+ @SET "FrameworkDIR64=%%k"
+ )
+)
+@if "%FrameworkDIR64%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetFrameworkVer32
+@set FrameworkVer32=
+@call :GetFrameworkVer32Helper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer32Helper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer32Helper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer32Helper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetFrameworkVer32Helper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkVer32"') DO (
+ @if "%%i"=="FrameworkVer32" (
+ @SET "FrameworkVersion32=%%k"
+ )
+)
+@if "%FrameworkVersion32%"=="" exit /B 1
+@exit /B 0
+
+:GetFrameworkVer32Helper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkVer32"') DO (
+ @if "%%i"=="FrameworkVer32" (
+ @SET "FrameworkVersion32=%%k"
+ )
+)
+@if "%FrameworkVersion32%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:GetFrameworkVer64
+@set FrameworkVer64=
+@call :GetFrameworkVer64Helper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer64Helper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer64Helper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetFrameworkVer64Helper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetFrameworkVer64Helper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkVer64"') DO (
+ @if "%%i"=="FrameworkVer64" (
+ @SET "FrameworkVersion64=%%k"
+ )
+)
+@if "%FrameworkVersion64%"=="" exit /B 1
+@exit /B 0
+
+:GetFrameworkVer64Helper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VC7" /v "FrameworkVer64"') DO (
+ @if "%%i"=="FrameworkVer64" (
+ @SET "FrameworkVersion64=%%k"
+ )
+)
+@if "%FrameworkVersion64%"=="" exit /B 1
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:end
diff --git a/iis/winbuild/apr.mak b/iis/winbuild/apr.mak
new file mode 100644
index 00000000..e8de5690
--- /dev/null
+++ b/iis/winbuild/apr.mak
@@ -0,0 +1,1779 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on apr.dsp
+!IF "$(CFG)" == ""
+CFG=apr - Win32 Release
+!MESSAGE No configuration specified. Defaulting to apr - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "apr - Win32 Release" && "$(CFG)" != "apr - Win32 Debug" && "$(CFG)" != "apr - Win32 Release9x" && "$(CFG)" != "apr - Win32 Debug9x" && "$(CFG)" != "apr - x64 Release" && "$(CFG)" != "apr - x64 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "apr.mak" CFG="apr - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "apr - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "apr - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE "apr - Win32 Release9x" (based on "Win32 (x86) Static Library")
+!MESSAGE "apr - Win32 Debug9x" (based on "Win32 (x86) Static Library")
+!MESSAGE "apr - x64 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "apr - x64 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "apr - Win32 Release"
+
+OUTDIR=.\LibR
+INTDIR=.\LibR
+# Begin Custom Macros
+OutDir=.\LibR
+# End Custom Macros
+
+ALL : "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "WINNT" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "apr - Win32 Debug"
+
+OUTDIR=.\LibD
+INTDIR=.\LibD
+# Begin Custom Macros
+OutDir=.\LibD
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "WINNT" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "apr - Win32 Release9x"
+
+OUTDIR=.\9x\LibR
+INTDIR=.\9x\LibR
+# Begin Custom Macros
+OutDir=.\9x\LibR
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "apr - Win32 Debug9x"
+
+OUTDIR=.\9x\LibD
+INTDIR=.\9x\LibD
+# Begin Custom Macros
+OutDir=.\9x\LibD
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "apr - x64 Release"
+
+OUTDIR=.\x64\LibR
+INTDIR=.\x64\LibR
+# Begin Custom Macros
+OutDir=.\x64\LibR
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "WINNT" /D "_WINDOWS" /D "WIN64" /D "_WIN64" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "apr - x64 Debug"
+
+OUTDIR=.\x64\LibD
+INTDIR=.\x64\LibD
+# Begin Custom Macros
+OutDir=.\x64\LibD
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\apr-1.lib"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr-1.idb"
+ -@erase "$(INTDIR)\apr-1.pdb"
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\apr-1.lib"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_STATIC" /D "WIN32" /D "WINNT" /D "_WINDOWS" /D "WIN64" /D "_WIN64" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\apr-1" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\apr.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\apr-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj"
+
+"$(OUTDIR)\apr-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("apr.dep")
+!INCLUDE "apr.dep"
+!ELSE
+!MESSAGE Warning: cannot find "apr.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "apr - Win32 Release" || "$(CFG)" == "apr - Win32 Debug" || "$(CFG)" == "apr - Win32 Release9x" || "$(CFG)" == "apr - Win32 Debug9x" || "$(CFG)" == "apr - x64 Release" || "$(CFG)" == "apr - x64 Debug"
+SOURCE=.\atomic\win32\apr_atomic.c
+
+"$(INTDIR)\apr_atomic.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dso\win32\dso.c
+
+"$(INTDIR)\dso.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\buffer.c
+
+"$(INTDIR)\buffer.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\copy.c
+
+"$(INTDIR)\copy.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\dir.c
+
+"$(INTDIR)\dir.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\fileacc.c
+
+"$(INTDIR)\fileacc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filedup.c
+
+"$(INTDIR)\filedup.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filepath.c
+
+"$(INTDIR)\filepath.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\filepath_util.c
+
+"$(INTDIR)\filepath_util.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filestat.c
+
+"$(INTDIR)\filestat.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filesys.c
+
+"$(INTDIR)\filesys.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\flock.c
+
+"$(INTDIR)\flock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\fullrw.c
+
+"$(INTDIR)\fullrw.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\mktemp.c
+
+"$(INTDIR)\mktemp.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\open.c
+
+"$(INTDIR)\open.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\pipe.c
+
+"$(INTDIR)\pipe.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\readwrite.c
+
+"$(INTDIR)\readwrite.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\seek.c
+
+"$(INTDIR)\seek.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\tempdir.c
+
+"$(INTDIR)\tempdir.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\proc_mutex.c
+
+"$(INTDIR)\proc_mutex.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_cond.c
+
+"$(INTDIR)\thread_cond.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_mutex.c
+
+"$(INTDIR)\thread_mutex.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_rwlock.c
+
+"$(INTDIR)\thread_rwlock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\memory\unix\apr_pools.c
+
+"$(INTDIR)\apr_pools.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\apr_app.c
+SOURCE=.\misc\win32\charset.c
+
+"$(INTDIR)\charset.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\env.c
+
+"$(INTDIR)\env.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\errorcodes.c
+
+"$(INTDIR)\errorcodes.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\getopt.c
+
+"$(INTDIR)\getopt.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\internal.c
+
+"$(INTDIR)\internal.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\misc.c
+
+"$(INTDIR)\misc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\otherchild.c
+
+"$(INTDIR)\otherchild.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\rand.c
+
+"$(INTDIR)\rand.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\start.c
+
+"$(INTDIR)\start.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\utf8.c
+
+"$(INTDIR)\utf8.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\version.c
+
+"$(INTDIR)\version.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\mmap\unix\common.c
+
+"$(INTDIR)\common.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\mmap\win32\mmap.c
+
+"$(INTDIR)\mmap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\inet_ntop.c
+
+"$(INTDIR)\inet_ntop.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\inet_pton.c
+
+"$(INTDIR)\inet_pton.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\multicast.c
+
+"$(INTDIR)\multicast.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sendrecv.c
+
+"$(INTDIR)\sendrecv.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\sockaddr.c
+
+"$(INTDIR)\sockaddr.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\socket_util.c
+
+"$(INTDIR)\socket_util.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sockets.c
+
+"$(INTDIR)\sockets.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sockopt.c
+
+"$(INTDIR)\sockopt.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\passwd\apr_getpass.c
+
+"$(INTDIR)\apr_getpass.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\poll.c
+
+"$(INTDIR)\poll.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\pollcb.c
+
+"$(INTDIR)\pollcb.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\pollset.c
+
+"$(INTDIR)\pollset.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\select.c
+
+"$(INTDIR)\select.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\apr_random.c
+
+"$(INTDIR)\apr_random.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\sha2.c
+
+"$(INTDIR)\sha2.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\sha2_glue.c
+
+"$(INTDIR)\sha2_glue.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\shmem\win32\shm.c
+
+"$(INTDIR)\shm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_cpystrn.c
+
+"$(INTDIR)\apr_cpystrn.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_fnmatch.c
+
+"$(INTDIR)\apr_fnmatch.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_snprintf.c
+
+"$(INTDIR)\apr_snprintf.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strings.c
+
+"$(INTDIR)\apr_strings.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strnatcmp.c
+
+"$(INTDIR)\apr_strnatcmp.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strtok.c
+
+"$(INTDIR)\apr_strtok.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\tables\apr_hash.c
+
+"$(INTDIR)\apr_hash.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\tables\apr_tables.c
+
+"$(INTDIR)\apr_tables.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\proc.c
+
+"$(INTDIR)\proc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\signals.c
+
+"$(INTDIR)\signals.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\thread.c
+
+"$(INTDIR)\thread.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\threadpriv.c
+
+"$(INTDIR)\threadpriv.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\time\win32\time.c
+
+"$(INTDIR)\time.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\time\win32\timestr.c
+
+"$(INTDIR)\timestr.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\user\win32\groupinfo.c
+
+"$(INTDIR)\groupinfo.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\user\win32\userinfo.c
+
+"$(INTDIR)\userinfo.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\include\apr.hw
+
+!IF "$(CFG)" == "apr - Win32 Release"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "apr - Win32 Debug"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "apr - Win32 Release9x"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "apr - Win32 Debug9x"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "apr - x64 Release"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "apr - x64 Debug"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/aprutil.mak b/iis/winbuild/aprutil.mak
new file mode 100644
index 00000000..e14c0725
--- /dev/null
+++ b/iis/winbuild/aprutil.mak
@@ -0,0 +1,1472 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on aprutil.dsp
+!IF "$(CFG)" == ""
+CFG=aprutil - Win32 Release
+!MESSAGE No configuration specified. Defaulting to aprutil - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "aprutil - Win32 Release" && "$(CFG)" != "aprutil - Win32 Debug" && "$(CFG)" != "aprutil - x64 Release" && "$(CFG)" != "aprutil - x64 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "aprutil.mak" CFG="aprutil - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "aprutil - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "aprutil - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE "aprutil - x64 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "aprutil - x64 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+OUTDIR=.\LibR
+INTDIR=.\LibR
+# Begin Custom Macros
+OutDir=.\LibR
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : "$(OUTDIR)\aprutil-1.lib"
+
+!ELSE
+
+ALL : "xml - Win32 Release" "apriconv - Win32 Release" "$(OUTDIR)\aprutil-1.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"apriconv - Win32 ReleaseCLEAN" "xml - Win32 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbd_freetds.obj"
+ -@erase "$(INTDIR)\apr_dbd_mysql.obj"
+ -@erase "$(INTDIR)\apr_dbd_odbc.obj"
+ -@erase "$(INTDIR)\apr_dbd_oracle.obj"
+ -@erase "$(INTDIR)\apr_dbd_pgsql.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite2.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite3.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_berkeleydb.obj"
+ -@erase "$(INTDIR)\apr_dbm_gdbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_init.obj"
+ -@erase "$(INTDIR)\apr_ldap_option.obj"
+ -@erase "$(INTDIR)\apr_ldap_rebind.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\aprutil-1.idb"
+ -@erase "$(INTDIR)\aprutil-1.pdb"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\aprutil-1.lib"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "APR_DECLARE_STATIC" /D "APU_DECLARE_STATIC" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /D "HAVE_SQL_H" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\aprutil-1" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\aprutil.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\aprutil-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbd_freetds.obj" \
+ "$(INTDIR)\apr_dbd_mysql.obj" \
+ "$(INTDIR)\apr_dbd_odbc.obj" \
+ "$(INTDIR)\apr_dbd_oracle.obj" \
+ "$(INTDIR)\apr_dbd_pgsql.obj" \
+ "$(INTDIR)\apr_dbd_sqlite2.obj" \
+ "$(INTDIR)\apr_dbd_sqlite3.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_berkeleydb.obj" \
+ "$(INTDIR)\apr_dbm_gdbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_init.obj" \
+ "$(INTDIR)\apr_ldap_option.obj" \
+ "$(INTDIR)\apr_ldap_rebind.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "..\apr-iconv\LibR\apriconv-1.lib" \
+ ".\xml\expat\lib\LibR\xml.lib"
+
+"$(OUTDIR)\aprutil-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+OUTDIR=.\LibD
+INTDIR=.\LibD
+# Begin Custom Macros
+OutDir=.\LibD
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ELSE
+
+ALL : "xml - Win32 Debug" "apriconv - Win32 Debug" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"apriconv - Win32 DebugCLEAN" "xml - Win32 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbd_freetds.obj"
+ -@erase "$(INTDIR)\apr_dbd_mysql.obj"
+ -@erase "$(INTDIR)\apr_dbd_odbc.obj"
+ -@erase "$(INTDIR)\apr_dbd_oracle.obj"
+ -@erase "$(INTDIR)\apr_dbd_pgsql.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite2.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite3.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_berkeleydb.obj"
+ -@erase "$(INTDIR)\apr_dbm_gdbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_init.obj"
+ -@erase "$(INTDIR)\apr_ldap_option.obj"
+ -@erase "$(INTDIR)\apr_ldap_rebind.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\aprutil-1.idb"
+ -@erase "$(INTDIR)\aprutil-1.pdb"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\aprutil-1.lib"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "_DEBUG" /D "APR_DECLARE_STATIC" /D "APU_DECLARE_STATIC" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /D "HAVE_SQL_H" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\aprutil-1" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\aprutil.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\aprutil-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbd_freetds.obj" \
+ "$(INTDIR)\apr_dbd_mysql.obj" \
+ "$(INTDIR)\apr_dbd_odbc.obj" \
+ "$(INTDIR)\apr_dbd_oracle.obj" \
+ "$(INTDIR)\apr_dbd_pgsql.obj" \
+ "$(INTDIR)\apr_dbd_sqlite2.obj" \
+ "$(INTDIR)\apr_dbd_sqlite3.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_berkeleydb.obj" \
+ "$(INTDIR)\apr_dbm_gdbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_init.obj" \
+ "$(INTDIR)\apr_ldap_option.obj" \
+ "$(INTDIR)\apr_ldap_rebind.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "..\apr-iconv\LibD\apriconv-1.lib" \
+ ".\xml\expat\lib\LibD\xml.lib"
+
+"$(OUTDIR)\aprutil-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+OUTDIR=.\x64\LibR
+INTDIR=.\x64\LibR
+# Begin Custom Macros
+OutDir=.\x64\LibR
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ELSE
+
+ALL : "xml - x64 Release" "apriconv - x64 Release" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"apriconv - x64 ReleaseCLEAN" "xml - x64 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbd_freetds.obj"
+ -@erase "$(INTDIR)\apr_dbd_mysql.obj"
+ -@erase "$(INTDIR)\apr_dbd_odbc.obj"
+ -@erase "$(INTDIR)\apr_dbd_oracle.obj"
+ -@erase "$(INTDIR)\apr_dbd_pgsql.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite2.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite3.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_berkeleydb.obj"
+ -@erase "$(INTDIR)\apr_dbm_gdbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_init.obj"
+ -@erase "$(INTDIR)\apr_ldap_option.obj"
+ -@erase "$(INTDIR)\apr_ldap_rebind.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\aprutil-1.idb"
+ -@erase "$(INTDIR)\aprutil-1.pdb"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\aprutil-1.lib"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "APR_DECLARE_STATIC" /D "APU_DECLARE_STATIC" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /D "HAVE_SQL_H" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\aprutil-1" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\aprutil.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\aprutil-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbd_freetds.obj" \
+ "$(INTDIR)\apr_dbd_mysql.obj" \
+ "$(INTDIR)\apr_dbd_odbc.obj" \
+ "$(INTDIR)\apr_dbd_oracle.obj" \
+ "$(INTDIR)\apr_dbd_pgsql.obj" \
+ "$(INTDIR)\apr_dbd_sqlite2.obj" \
+ "$(INTDIR)\apr_dbd_sqlite3.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_berkeleydb.obj" \
+ "$(INTDIR)\apr_dbm_gdbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_init.obj" \
+ "$(INTDIR)\apr_ldap_option.obj" \
+ "$(INTDIR)\apr_ldap_rebind.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "..\apr-iconv\x64\LibR\apriconv-1.lib" \
+ ".\xml\expat\lib\x64\LibR\xml.lib"
+
+"$(OUTDIR)\aprutil-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+OUTDIR=.\x64\LibD
+INTDIR=.\x64\LibD
+# Begin Custom Macros
+OutDir=.\x64\LibD
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ELSE
+
+ALL : "xml - x64 Debug" "apriconv - x64 Debug" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\aprutil-1.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"apriconv - x64 DebugCLEAN" "xml - x64 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbd_freetds.obj"
+ -@erase "$(INTDIR)\apr_dbd_mysql.obj"
+ -@erase "$(INTDIR)\apr_dbd_odbc.obj"
+ -@erase "$(INTDIR)\apr_dbd_oracle.obj"
+ -@erase "$(INTDIR)\apr_dbd_pgsql.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite2.obj"
+ -@erase "$(INTDIR)\apr_dbd_sqlite3.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_berkeleydb.obj"
+ -@erase "$(INTDIR)\apr_dbm_gdbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_init.obj"
+ -@erase "$(INTDIR)\apr_ldap_option.obj"
+ -@erase "$(INTDIR)\apr_ldap_rebind.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\aprutil-1.idb"
+ -@erase "$(INTDIR)\aprutil-1.pdb"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\aprutil-1.lib"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "_DEBUG" /D "APR_DECLARE_STATIC" /D "APU_DECLARE_STATIC" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /D "HAVE_SQL_H" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(OUTDIR)\aprutil-1" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\aprutil.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\aprutil-1.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbd_freetds.obj" \
+ "$(INTDIR)\apr_dbd_mysql.obj" \
+ "$(INTDIR)\apr_dbd_odbc.obj" \
+ "$(INTDIR)\apr_dbd_oracle.obj" \
+ "$(INTDIR)\apr_dbd_pgsql.obj" \
+ "$(INTDIR)\apr_dbd_sqlite2.obj" \
+ "$(INTDIR)\apr_dbd_sqlite3.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_berkeleydb.obj" \
+ "$(INTDIR)\apr_dbm_gdbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_init.obj" \
+ "$(INTDIR)\apr_ldap_option.obj" \
+ "$(INTDIR)\apr_ldap_rebind.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "..\apr-iconv\x64\LibD\apriconv-1.lib" \
+ ".\xml\expat\lib\x64\LibD\xml.lib"
+
+"$(OUTDIR)\aprutil-1.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("aprutil.dep")
+!INCLUDE "aprutil.dep"
+!ELSE
+!MESSAGE Warning: cannot find "aprutil.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "aprutil - Win32 Release" || "$(CFG)" == "aprutil - Win32 Debug" || "$(CFG)" == "aprutil - x64 Release" || "$(CFG)" == "aprutil - x64 Debug"
+SOURCE=.\buckets\apr_brigade.c
+
+"$(INTDIR)\apr_brigade.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets.c
+
+"$(INTDIR)\apr_buckets.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_alloc.c
+
+"$(INTDIR)\apr_buckets_alloc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_eos.c
+
+"$(INTDIR)\apr_buckets_eos.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_file.c
+
+"$(INTDIR)\apr_buckets_file.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_flush.c
+
+"$(INTDIR)\apr_buckets_flush.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_heap.c
+
+"$(INTDIR)\apr_buckets_heap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_mmap.c
+
+"$(INTDIR)\apr_buckets_mmap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_pipe.c
+
+"$(INTDIR)\apr_buckets_pipe.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_pool.c
+
+"$(INTDIR)\apr_buckets_pool.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_refcount.c
+
+"$(INTDIR)\apr_buckets_refcount.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_simple.c
+
+"$(INTDIR)\apr_buckets_simple.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_socket.c
+
+"$(INTDIR)\apr_buckets_socket.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_crypto.c
+
+"$(INTDIR)\apr_crypto.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_md4.c
+
+"$(INTDIR)\apr_md4.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_md5.c
+
+"$(INTDIR)\apr_md5.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_sha1.c
+
+"$(INTDIR)\apr_sha1.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\getuuid.c
+
+"$(INTDIR)\getuuid.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\uuid.c
+
+"$(INTDIR)\uuid.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd.c
+
+"$(INTDIR)\apr_dbd.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_freetds.c
+
+"$(INTDIR)\apr_dbd_freetds.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_mysql.c
+
+"$(INTDIR)\apr_dbd_mysql.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_odbc.c
+
+"$(INTDIR)\apr_dbd_odbc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_oracle.c
+
+"$(INTDIR)\apr_dbd_oracle.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_pgsql.c
+
+"$(INTDIR)\apr_dbd_pgsql.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_sqlite2.c
+
+"$(INTDIR)\apr_dbd_sqlite2.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_sqlite3.c
+
+"$(INTDIR)\apr_dbd_sqlite3.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\apr_dbm.c
+
+"$(INTDIR)\apr_dbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\apr_dbm_berkeleydb.c
+
+"$(INTDIR)\apr_dbm_berkeleydb.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu_want.h" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\apr_dbm_gdbm.c
+
+"$(INTDIR)\apr_dbm_gdbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\apr_dbm_sdbm.c
+
+"$(INTDIR)\apr_dbm_sdbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\encoding\apr_base64.c
+
+"$(INTDIR)\apr_base64.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\hooks\apr_hooks.c
+
+"$(INTDIR)\apr_hooks.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_init.c
+
+"$(INTDIR)\apr_ldap_init.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_option.c
+
+"$(INTDIR)\apr_ldap_option.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_rebind.c
+
+"$(INTDIR)\apr_ldap_rebind.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_stub.c
+
+"$(INTDIR)\apr_ldap_stub.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_url.c
+
+"$(INTDIR)\apr_ldap_url.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\memcache\apr_memcache.c
+
+"$(INTDIR)\apr_memcache.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_date.c
+
+"$(INTDIR)\apr_date.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_queue.c
+
+"$(INTDIR)\apr_queue.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_reslist.c
+
+"$(INTDIR)\apr_reslist.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_rmm.c
+
+"$(INTDIR)\apr_rmm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_thread_pool.c
+
+"$(INTDIR)\apr_thread_pool.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apu_dso.c
+
+"$(INTDIR)\apu_dso.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apu_version.c
+
+"$(INTDIR)\apu_version.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm.c
+
+"$(INTDIR)\sdbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_hash.c
+
+"$(INTDIR)\sdbm_hash.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_lock.c
+
+"$(INTDIR)\sdbm_lock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_pair.c
+
+"$(INTDIR)\sdbm_pair.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strmatch\apr_strmatch.c
+
+"$(INTDIR)\apr_strmatch.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\uri\apr_uri.c
+
+"$(INTDIR)\apr_uri.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\xlate\xlate.c
+
+"$(INTDIR)\xlate.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\xml\apr_xml.c
+
+"$(INTDIR)\apr_xml.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\include\apr_ldap.hw
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\apu.hw
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\private\apu_config.hw
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\private\apu_select_dbm.hw
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\apu_want.hw
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ENDIF
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+"apriconv - Win32 Release" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - Win32 Release"
+ cd "..\apr-util"
+
+"apriconv - Win32 ReleaseCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - Win32 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+"apriconv - Win32 Debug" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - Win32 Debug"
+ cd "..\apr-util"
+
+"apriconv - Win32 DebugCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+"apriconv - x64 Release" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - x64 Release"
+ cd "..\apr-util"
+
+"apriconv - x64 ReleaseCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - x64 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+"apriconv - x64 Debug" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - x64 Debug"
+ cd "..\apr-util"
+
+"apriconv - x64 DebugCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\apriconv.mak" CFG="apriconv - x64 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ENDIF
+
+!IF "$(CFG)" == "aprutil - Win32 Release"
+
+"xml - Win32 Release" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Release"
+ cd "..\..\.."
+
+"xml - Win32 ReleaseCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Release" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "aprutil - Win32 Debug"
+
+"xml - Win32 Debug" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Debug"
+ cd "..\..\.."
+
+"xml - Win32 DebugCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Release"
+
+"xml - x64 Release" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Release"
+ cd "..\..\.."
+
+"xml - x64 ReleaseCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Release" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "aprutil - x64 Debug"
+
+"xml - x64 Debug" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Debug"
+ cd "..\..\.."
+
+"xml - x64 DebugCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Debug" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/build.bat b/iis/winbuild/build.bat
new file mode 100644
index 00000000..1f4abff1
--- /dev/null
+++ b/iis/winbuild/build.bat
@@ -0,0 +1,115 @@
+c:
+set WORK=c:\work
+set HTTPD=httpd-2.2.22
+set APACHE=c:\Apache22
+set PCRE=pcre-8.30
+set ZLIB=zlib-1.2.7
+set LIBXML2=libxml2-2.7.7
+set LUA=lua-5.1.5
+set CURL=curl-7.24.0
+
+cd %WORK%
+rmdir /s /q %APACHE%
+rmdir /s /q %HTTPD%
+7z.exe x %HTTPD%-win32-src.zip
+fart.exe -r -i -C %WORK%\%HTTPD%\*.mak \x2Fmachine:x86 " "
+fart.exe -r -i -C %WORK%\%HTTPD%\*.mk.win \x2Fmachine:x86 " "
+copy /y %WORK%\libhttpd.mak %WORK%\%HTTPD%
+copy /y %WORK%\mod_ssl.mak %WORK%\%HTTPD%\modules\ssl
+copy /y %WORK%\apr.mak %WORK%\%HTTPD%\srclib\apr
+copy /y %WORK%\libapr.mak %WORK%\%HTTPD%\srclib\apr
+copy /y %WORK%\aprutil.mak %WORK%\%HTTPD%\srclib\apr-util
+copy /y %WORK%\libaprutil.mak %WORK%\%HTTPD%\srclib\apr-util
+copy /y %WORK%\dftables.mak %WORK%\%HTTPD%\srclib\pcre
+copy /y %WORK%\pcre.mak %WORK%\%HTTPD%\srclib\pcre
+cd %HTTPD%
+nmake -f Makefile.win installr
+SET HTTPD_BUILD=%WORK%\%HTTPD%
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+rmdir /s /q %PCRE%
+7z.exe x %PCRE%.zip
+cd %PCRE%
+CMAKE -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=True
+NMAKE
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+rmdir /s /q %ZLIB%
+7z.exe x %ZLIB%.zip
+cd %ZLIB%
+nmake -f win32\Makefile.msc
+SET INCLUDE=%INCLUDE%;%WORK%\%ZLIB%
+SET LIB=%LIB%;%WORK%\%ZLIB%
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+rmdir /s /q %LIBXML2%
+7z.exe x %LIBXML2%.zip
+fart.exe -r -i -C %WORK%\%LIBXML2%\win32\*.* \x2Fopt:nowin98 " "
+cd %LIBXML2%\win32
+CSCRIPT configure.js iconv=no vcmanifest=yes zlib=yes
+NMAKE -f Makefile.msvc
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+rmdir /s /q %LUA%
+7z.exe x %LUA%.zip
+CD %LUA%\src
+CL /Ox /arch:SSE2 /GF /GL /Gy /FD /EHsc /MD /Zi /TC /wd4005 /D "_MBCS" /D "LUA_CORE" /D "LUA_BUILD_AS_DLL" /D "_CRT_SECURE_NO_WARNINGS" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_WIN32" /D "_WINDLL" /c *.c
+DEL lua.obj luac.obj
+LINK /DLL /LTCG /DEBUG /OUT:lua5.1.dll *.obj
+IF EXIST lua5.1.dll.manifest MT -manifest lua5.1.dll.manifest -outputresource:lua5.1.dll;2
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+rmdir /s /q %CURL%
+7z.exe x %CURL%.zip
+copy /y CMakeLists.txt %CURL%
+CD %CURL%
+CMAKE -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=True -DCURL_ZLIB=True
+%WORK%\fart.exe -r -C %WORK%\%CURL%\include\curl\curlbuild.h LLU ULL
+NMAKE
+IF NOT DEFINED FULLBUILD pause
+
+cd %WORK%
+CD mod_security\apache2
+del *.obj *.dll *.lib
+NMAKE -f Makefile.win APACHE=C:\Apache22 PCRE=%WORK%\%PCRE% LIBXML2=%WORK%\%LIBXML2% LUA=%WORK%\%LUA%\src VERSION=VERSION_IIS
+cd ..\mlogc
+copy /y %WORK%\Makefile.win .
+nmake -f Makefile.win clean
+nmake -f Makefile.win
+cd ..\iis
+nmake -f Makefile.win clean
+NMAKE -f Makefile.win APACHE=C:\Apache22 PCRE=%WORK%\%PCRE% LIBXML2=%WORK%\%LIBXML2% LUA=%WORK%\%LUA%\src VERSION=VERSION_IIS
+
+cd %WORK%
+
+copy /y %APACHE%\bin\libapr-1.dll %DROP%
+copy /y %APACHE%\bin\libapr-1.pdb %DROP%
+copy /y %APACHE%\lib\libapr-1.lib %DROP%
+copy /y %APACHE%\bin\libapriconv-1.dll %DROP%
+copy /y %APACHE%\bin\libapriconv-1.pdb %DROP%
+copy /y %APACHE%\lib\libapriconv-1.lib %DROP%
+copy /y %APACHE%\bin\libaprutil-1.dll %DROP%
+copy /y %APACHE%\bin\libaprutil-1.pdb %DROP%
+copy /y %APACHE%\lib\libaprutil-1.lib %DROP%
+copy /y %WORK%\%LIBXML2%\win32\bin.msvc\libxml2.dll %DROP%
+copy /y %WORK%\%LIBXML2%\win32\bin.msvc\libxml2.lib %DROP%
+copy /y %WORK%\%LUA%\src\lua5.1.dll %DROP%
+copy /y %WORK%\%LUA%\src\lua5.1.pdb %DROP%
+copy /y %WORK%\%LUA%\src\lua5.1.lib %DROP%
+copy /y %WORK%\%PCRE%\pcre.dll %DROP%
+copy /y %WORK%\%PCRE%\pcre.pdb %DROP%
+copy /y %WORK%\%PCRE%\pcre.lib %DROP%
+copy /y %WORK%\%ZLIB%\zlib1.dll %DROP%
+copy /y %WORK%\%ZLIB%\zlib1.pdb %DROP%
+copy /y %WORK%\%ZLIB%\zdll.lib %DROP%
+copy /y %WORK%\%CURL%\libcurl.dll %DROP%
+copy /y %WORK%\%CURL%\libcurl.pdb %DROP%
+copy /y %WORK%\%CURL%\libcurl_imp.lib %DROP%
+copy /y %WORK%\mod_security\mlogc\mlogc.exe %DROP%
+copy /y %WORK%\mod_security\iis\modsecurityiis.dll %DROP%
+copy /y %WORK%\mod_security\iis\modsecurityiis.pdb %DROP%
diff --git a/iis/winbuild/build32.bat b/iis/winbuild/build32.bat
new file mode 100644
index 00000000..e89f33e5
--- /dev/null
+++ b/iis/winbuild/build32.bat
@@ -0,0 +1,4 @@
+mkdir %DROP%
+call vsvars32.bat
+call init.bat
+call build.bat
diff --git a/iis/winbuild/build64.bat b/iis/winbuild/build64.bat
new file mode 100644
index 00000000..7c50f5ae
--- /dev/null
+++ b/iis/winbuild/build64.bat
@@ -0,0 +1,5 @@
+mkdir %DROP%
+call vcvars64.bat
+call init.bat
+SET CL=/D "WIN64" /D "_WIN64"
+call build.bat
diff --git a/iis/winbuild/buildall.bat b/iis/winbuild/buildall.bat
new file mode 100644
index 00000000..48ee316e
--- /dev/null
+++ b/iis/winbuild/buildall.bat
@@ -0,0 +1,5 @@
+set FULLBUILD=1
+set DROP=c:\drop\amd64
+cmd.exe /c build64.bat
+set DROP=c:\drop\x86
+cmd.exe /c build32.bat
diff --git a/iis/winbuild/dftables.mak b/iis/winbuild/dftables.mak
new file mode 100644
index 00000000..94428aa0
--- /dev/null
+++ b/iis/winbuild/dftables.mak
@@ -0,0 +1,238 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on dftables.dsp
+!IF "$(CFG)" == ""
+CFG=dftables - Win32 Debug
+!MESSAGE No configuration specified. Defaulting to dftables - Win32 Debug.
+!ENDIF
+
+!IF "$(CFG)" != "dftables - Win32 Release" && "$(CFG)" != "dftables - Win32 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "dftables.mak" CFG="dftables - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "dftables - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "dftables - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "dftables - Win32 Release"
+
+OUTDIR=.
+INTDIR=.\Release
+# Begin Custom Macros
+OutDir=.
+# End Custom Macros
+
+ALL : "$(OUTDIR)\dftables.exe"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\dftables.idb"
+ -@erase "$(INTDIR)\dftables.obj"
+ -@erase "$(OUTDIR)\dftables.exe"
+
+"$(INTDIR)" :
+ if not exist "$(INTDIR)/$(NULL)" mkdir "$(INTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /O2 /D "_WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "_CRT_SECURE_NO_DEPRECATE" /D "_CRT_NONSTDC_NO_DEPRECATE" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\dftables" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\dftables.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\Release\dftables.pdb" /out:"$(OUTDIR)\dftables.exe" /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\dftables.obj"
+
+"$(OUTDIR)\dftables.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "dftables - Win32 Debug"
+
+OUTDIR=.
+INTDIR=.\Debug
+# Begin Custom Macros
+OutDir=.
+# End Custom Macros
+
+ALL : ".\pcre.h" ".\config.h" "$(OUTDIR)\dftables.exe"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\dftables.idb"
+ -@erase "$(INTDIR)\dftables.obj"
+ -@erase "$(OUTDIR)\Debug\dftables.pdb"
+ -@erase "$(OUTDIR)\dftables.exe"
+ -@erase ".\config.h"
+ -@erase ".\pcre.h"
+
+"$(INTDIR)" :
+ if not exist "$(INTDIR)/$(NULL)" mkdir "$(INTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /D "_WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /D "_CRT_SECURE_NO_DEPRECATE" /D "_CRT_NONSTDC_NO_DEPRECATE" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\dftables" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\dftables.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\Debug\dftables.pdb" /debug /out:"$(OUTDIR)\dftables.exe"
+LINK32_OBJS= \
+ "$(INTDIR)\dftables.obj"
+
+"$(OUTDIR)\dftables.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("dftables.dep")
+!INCLUDE "dftables.dep"
+!ELSE
+!MESSAGE Warning: cannot find "dftables.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "dftables - Win32 Release" || "$(CFG)" == "dftables - Win32 Debug"
+SOURCE=.\dftables.c
+
+"$(INTDIR)\dftables.obj" : $(SOURCE) "$(INTDIR)" ".\config.h" ".\pcre.h"
+
+
+SOURCE=.\config.hw
+
+!IF "$(CFG)" == "dftables - Win32 Release"
+
+InputPath=.\config.hw
+
+".\config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "dftables - Win32 Debug"
+
+InputPath=.\config.hw
+
+".\config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\config.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\maketables.c
+SOURCE=.\pcre.hw
+
+!IF "$(CFG)" == "dftables - Win32 Release"
+
+InputPath=.\pcre.hw
+
+".\pcre.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\pcre.h
+<<
+
+
+!ELSEIF "$(CFG)" == "dftables - Win32 Debug"
+
+InputPath=.\pcre.hw
+
+".\pcre.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\pcre.h
+<<
+
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/fart.exe b/iis/winbuild/fart.exe
new file mode 100644
index 00000000..075563cd
Binary files /dev/null and b/iis/winbuild/fart.exe differ
diff --git a/iis/winbuild/howto.txt b/iis/winbuild/howto.txt
new file mode 100644
index 00000000..50bbcce1
--- /dev/null
+++ b/iis/winbuild/howto.txt
@@ -0,0 +1,44 @@
+WARNING!
+
+Building ModSecurityIIS on Windows is a relatively complicated process. Understanding it requires advanced knowledge of Windows and Unix environments.
+Using the same versions of libraries as listed below is strongly recommended.
+
+--------------------------------------
+Tested on:
+
+Windows 7 x64
+Vistual Studio 2010 Ultimate SP1
+IIS enabled/installed
+
+cmake 2.8.7
+curl 7.24.0
+apache 2.2.22
+libxml2 2.7.7
+lua 5.1.5
+pcre 8.30
+zlib 1.2.7
+7-Zip
+--------------------------------------
+
+1. Create working directory c:\work and drop directory c:\drop
+2. Sync SVN ModSecurity branch to c:\work\mod_security
+3. Copy files from c:\work\mod_security\iis\winbuild to c:\work
+4. Download and install cmake (unpack to c:\work\cmake-2.8.7-win32-x86)
+5. Download and install 7-Zip
+6. Adjust paths in c:\work\init.bat accordingly if needed
+7. Download curl, apache, libxml2, lua, pcre and zlib, place them in zip files in c:\work
+
+curl-7.24.0.zip
+httpd-2.2.22-win32-src.zip
+libxml2-2.7.7.zip
+lua-5.1.5.zip
+pcre-8.30.zip
+zlib-1.2.7.zip
+
+Modify c:\work\build.bat accordingly (if other versions were used)
+
+8. Open cmd.exe window, go to c:\work and run buildall.bat
+9. When done, the binaries should appear under c:\drop\x86 (32-bit) and c:\drop\amd64 (64-bit)
+10. Open the VS ModSecurity IIS installer project
+11. Copy new binaries to the installer's x86 and amd64 directories
+12. Build installer from within VS
diff --git a/iis/winbuild/init.bat b/iis/winbuild/init.bat
new file mode 100644
index 00000000..d6810f9f
--- /dev/null
+++ b/iis/winbuild/init.bat
@@ -0,0 +1 @@
+set PATH=%PATH%;c:\work\cmake-2.8.7-win32-x86\bin;"c:\program files\7-zip"
diff --git a/iis/winbuild/libapr.mak b/iis/winbuild/libapr.mak
new file mode 100644
index 00000000..90871c7b
--- /dev/null
+++ b/iis/winbuild/libapr.mak
@@ -0,0 +1,1917 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on libapr.dsp
+!IF "$(CFG)" == ""
+CFG=libapr - Win32 Release
+!MESSAGE No configuration specified. Defaulting to libapr - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "libapr - Win32 Release" && "$(CFG)" != "libapr - Win32 Debug" && "$(CFG)" != "libapr - Win32 Release9x" && "$(CFG)" != "libapr - Win32 Debug9x" && "$(CFG)" != "libapr - x64 Release" && "$(CFG)" != "libapr - x64 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "libapr.mak" CFG="libapr - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "libapr - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libapr - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libapr - Win32 Release9x" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libapr - Win32 Debug9x" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libapr - x64 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libapr - x64 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "libapr - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+ALL : "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "WINNT" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "NDEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib" /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Release\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\Release\libapr-1.dll.manifest mt.exe -manifest .\Release\libapr-1.dll.manifest -outputresource:.\Release\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "WINNT" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "_DEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib"
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Debug\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\Debug\libapr-1.dll.manifest mt.exe -manifest .\Debug\libapr-1.dll.manifest -outputresource:.\Debug\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Release9x"
+
+OUTDIR=.\9x\Release
+INTDIR=.\9x\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\9x\Release
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "NDEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib" /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\9x\Release\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\9x\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\9x\Release\libapr-1.dll.manifest mt.exe -manifest .\9x\Release\libapr-1.dll.manifest -outputresource:.\9x\Release\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Debug9x"
+
+OUTDIR=.\9x\Debug
+INTDIR=.\9x\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\9x\Debug
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "_DEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib"
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\9x\Debug\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\9x\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\9x\Debug\libapr-1.dll.manifest mt.exe -manifest .\9x\Debug\libapr-1.dll.manifest -outputresource:.\9x\Debug\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libapr - x64 Release"
+
+OUTDIR=.\x64\Release
+INTDIR=.\x64\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\x64\Release
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "NDEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "WINNT" /D "_WINDOWS" /D "WIN64" /D "_WIN64" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "NDEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib" /MACHINE:X64 /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\x64\Release\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\x64\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\x64\Release\libapr-1.dll.manifest mt.exe -manifest .\x64\Release\libapr-1.dll.manifest -outputresource:.\x64\Release\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libapr - x64 Debug"
+
+OUTDIR=.\x64\Debug
+INTDIR=.\x64\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\x64\Debug
+# End Custom Macros
+
+ALL : ".\include\apr.h" "$(OUTDIR)\libapr-1.dll" "$(DS_POSTBUILD_DEP)"
+
+
+CLEAN :
+ -@erase "$(INTDIR)\apr_atomic.obj"
+ -@erase "$(INTDIR)\apr_cpystrn.obj"
+ -@erase "$(INTDIR)\apr_fnmatch.obj"
+ -@erase "$(INTDIR)\apr_getpass.obj"
+ -@erase "$(INTDIR)\apr_hash.obj"
+ -@erase "$(INTDIR)\apr_pools.obj"
+ -@erase "$(INTDIR)\apr_random.obj"
+ -@erase "$(INTDIR)\apr_snprintf.obj"
+ -@erase "$(INTDIR)\apr_strings.obj"
+ -@erase "$(INTDIR)\apr_strnatcmp.obj"
+ -@erase "$(INTDIR)\apr_strtok.obj"
+ -@erase "$(INTDIR)\apr_tables.obj"
+ -@erase "$(INTDIR)\buffer.obj"
+ -@erase "$(INTDIR)\charset.obj"
+ -@erase "$(INTDIR)\common.obj"
+ -@erase "$(INTDIR)\copy.obj"
+ -@erase "$(INTDIR)\dir.obj"
+ -@erase "$(INTDIR)\dso.obj"
+ -@erase "$(INTDIR)\env.obj"
+ -@erase "$(INTDIR)\errorcodes.obj"
+ -@erase "$(INTDIR)\fileacc.obj"
+ -@erase "$(INTDIR)\filedup.obj"
+ -@erase "$(INTDIR)\filepath.obj"
+ -@erase "$(INTDIR)\filepath_util.obj"
+ -@erase "$(INTDIR)\filestat.obj"
+ -@erase "$(INTDIR)\filesys.obj"
+ -@erase "$(INTDIR)\flock.obj"
+ -@erase "$(INTDIR)\fullrw.obj"
+ -@erase "$(INTDIR)\getopt.obj"
+ -@erase "$(INTDIR)\groupinfo.obj"
+ -@erase "$(INTDIR)\inet_ntop.obj"
+ -@erase "$(INTDIR)\inet_pton.obj"
+ -@erase "$(INTDIR)\internal.obj"
+ -@erase "$(INTDIR)\libapr.res"
+ -@erase "$(INTDIR)\libapr_src.idb"
+ -@erase "$(INTDIR)\libapr_src.pdb"
+ -@erase "$(INTDIR)\misc.obj"
+ -@erase "$(INTDIR)\mktemp.obj"
+ -@erase "$(INTDIR)\mmap.obj"
+ -@erase "$(INTDIR)\multicast.obj"
+ -@erase "$(INTDIR)\open.obj"
+ -@erase "$(INTDIR)\otherchild.obj"
+ -@erase "$(INTDIR)\pipe.obj"
+ -@erase "$(INTDIR)\poll.obj"
+ -@erase "$(INTDIR)\pollcb.obj"
+ -@erase "$(INTDIR)\pollset.obj"
+ -@erase "$(INTDIR)\proc.obj"
+ -@erase "$(INTDIR)\proc_mutex.obj"
+ -@erase "$(INTDIR)\rand.obj"
+ -@erase "$(INTDIR)\readwrite.obj"
+ -@erase "$(INTDIR)\seek.obj"
+ -@erase "$(INTDIR)\select.obj"
+ -@erase "$(INTDIR)\sendrecv.obj"
+ -@erase "$(INTDIR)\sha2.obj"
+ -@erase "$(INTDIR)\sha2_glue.obj"
+ -@erase "$(INTDIR)\shm.obj"
+ -@erase "$(INTDIR)\signals.obj"
+ -@erase "$(INTDIR)\sockaddr.obj"
+ -@erase "$(INTDIR)\socket_util.obj"
+ -@erase "$(INTDIR)\sockets.obj"
+ -@erase "$(INTDIR)\sockopt.obj"
+ -@erase "$(INTDIR)\start.obj"
+ -@erase "$(INTDIR)\tempdir.obj"
+ -@erase "$(INTDIR)\thread.obj"
+ -@erase "$(INTDIR)\thread_cond.obj"
+ -@erase "$(INTDIR)\thread_mutex.obj"
+ -@erase "$(INTDIR)\thread_rwlock.obj"
+ -@erase "$(INTDIR)\threadpriv.obj"
+ -@erase "$(INTDIR)\time.obj"
+ -@erase "$(INTDIR)\timestr.obj"
+ -@erase "$(INTDIR)\userinfo.obj"
+ -@erase "$(INTDIR)\utf8.obj"
+ -@erase "$(INTDIR)\version.obj"
+ -@erase "$(OUTDIR)\libapr-1.dll"
+ -@erase "$(OUTDIR)\libapr-1.exp"
+ -@erase "$(OUTDIR)\libapr-1.lib"
+ -@erase "$(OUTDIR)\libapr-1.pdb"
+ -@erase ".\include\apr.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./include/arch" /I "./include/arch/win32" /I "./include/arch/unix" /D "_DEBUG" /D "APR_DECLARE_EXPORT" /D "WIN32" /D "WINNT" /D "_WINDOWS" /D "WIN64" /D "_WIN64" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libapr_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libapr.res" /i "./include" /d "_DEBUG" /d "APR_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libapr.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib shell32.lib rpcrt4.lib /nologo /base:"0x6EEC0000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libapr-1.pdb" /debug /out:"$(OUTDIR)\libapr-1.dll" /implib:"$(OUTDIR)\libapr-1.lib" /MACHINE:X64
+LINK32_OBJS= \
+ "$(INTDIR)\apr_atomic.obj" \
+ "$(INTDIR)\dso.obj" \
+ "$(INTDIR)\buffer.obj" \
+ "$(INTDIR)\copy.obj" \
+ "$(INTDIR)\dir.obj" \
+ "$(INTDIR)\fileacc.obj" \
+ "$(INTDIR)\filedup.obj" \
+ "$(INTDIR)\filepath.obj" \
+ "$(INTDIR)\filepath_util.obj" \
+ "$(INTDIR)\filestat.obj" \
+ "$(INTDIR)\filesys.obj" \
+ "$(INTDIR)\flock.obj" \
+ "$(INTDIR)\fullrw.obj" \
+ "$(INTDIR)\mktemp.obj" \
+ "$(INTDIR)\open.obj" \
+ "$(INTDIR)\pipe.obj" \
+ "$(INTDIR)\readwrite.obj" \
+ "$(INTDIR)\seek.obj" \
+ "$(INTDIR)\tempdir.obj" \
+ "$(INTDIR)\proc_mutex.obj" \
+ "$(INTDIR)\thread_cond.obj" \
+ "$(INTDIR)\thread_mutex.obj" \
+ "$(INTDIR)\thread_rwlock.obj" \
+ "$(INTDIR)\apr_pools.obj" \
+ "$(INTDIR)\charset.obj" \
+ "$(INTDIR)\env.obj" \
+ "$(INTDIR)\errorcodes.obj" \
+ "$(INTDIR)\getopt.obj" \
+ "$(INTDIR)\internal.obj" \
+ "$(INTDIR)\misc.obj" \
+ "$(INTDIR)\otherchild.obj" \
+ "$(INTDIR)\rand.obj" \
+ "$(INTDIR)\start.obj" \
+ "$(INTDIR)\utf8.obj" \
+ "$(INTDIR)\version.obj" \
+ "$(INTDIR)\common.obj" \
+ "$(INTDIR)\mmap.obj" \
+ "$(INTDIR)\inet_ntop.obj" \
+ "$(INTDIR)\inet_pton.obj" \
+ "$(INTDIR)\multicast.obj" \
+ "$(INTDIR)\sendrecv.obj" \
+ "$(INTDIR)\sockaddr.obj" \
+ "$(INTDIR)\sockets.obj" \
+ "$(INTDIR)\socket_util.obj" \
+ "$(INTDIR)\sockopt.obj" \
+ "$(INTDIR)\apr_getpass.obj" \
+ "$(INTDIR)\poll.obj" \
+ "$(INTDIR)\pollcb.obj" \
+ "$(INTDIR)\pollset.obj" \
+ "$(INTDIR)\select.obj" \
+ "$(INTDIR)\apr_random.obj" \
+ "$(INTDIR)\sha2.obj" \
+ "$(INTDIR)\sha2_glue.obj" \
+ "$(INTDIR)\shm.obj" \
+ "$(INTDIR)\apr_cpystrn.obj" \
+ "$(INTDIR)\apr_fnmatch.obj" \
+ "$(INTDIR)\apr_snprintf.obj" \
+ "$(INTDIR)\apr_strings.obj" \
+ "$(INTDIR)\apr_strnatcmp.obj" \
+ "$(INTDIR)\apr_strtok.obj" \
+ "$(INTDIR)\apr_hash.obj" \
+ "$(INTDIR)\apr_tables.obj" \
+ "$(INTDIR)\proc.obj" \
+ "$(INTDIR)\signals.obj" \
+ "$(INTDIR)\thread.obj" \
+ "$(INTDIR)\threadpriv.obj" \
+ "$(INTDIR)\time.obj" \
+ "$(INTDIR)\timestr.obj" \
+ "$(INTDIR)\groupinfo.obj" \
+ "$(INTDIR)\userinfo.obj" \
+ "$(INTDIR)\libapr.res"
+
+"$(OUTDIR)\libapr-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\x64\Debug\libapr-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\x64\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libapr-1.dll"
+ if exist .\x64\Debug\libapr-1.dll.manifest mt.exe -manifest .\x64\Debug\libapr-1.dll.manifest -outputresource:.\x64\Debug\libapr-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("libapr.dep")
+!INCLUDE "libapr.dep"
+!ELSE
+!MESSAGE Warning: cannot find "libapr.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "libapr - Win32 Release" || "$(CFG)" == "libapr - Win32 Debug" || "$(CFG)" == "libapr - Win32 Release9x" || "$(CFG)" == "libapr - Win32 Debug9x" || "$(CFG)" == "libapr - x64 Release" || "$(CFG)" == "libapr - x64 Debug"
+SOURCE=.\atomic\win32\apr_atomic.c
+
+"$(INTDIR)\apr_atomic.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dso\win32\dso.c
+
+"$(INTDIR)\dso.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\buffer.c
+
+"$(INTDIR)\buffer.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\copy.c
+
+"$(INTDIR)\copy.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\dir.c
+
+"$(INTDIR)\dir.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\fileacc.c
+
+"$(INTDIR)\fileacc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filedup.c
+
+"$(INTDIR)\filedup.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filepath.c
+
+"$(INTDIR)\filepath.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\filepath_util.c
+
+"$(INTDIR)\filepath_util.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filestat.c
+
+"$(INTDIR)\filestat.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\filesys.c
+
+"$(INTDIR)\filesys.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\flock.c
+
+"$(INTDIR)\flock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\fullrw.c
+
+"$(INTDIR)\fullrw.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\mktemp.c
+
+"$(INTDIR)\mktemp.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\open.c
+
+"$(INTDIR)\open.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\pipe.c
+
+"$(INTDIR)\pipe.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\readwrite.c
+
+"$(INTDIR)\readwrite.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\win32\seek.c
+
+"$(INTDIR)\seek.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\file_io\unix\tempdir.c
+
+"$(INTDIR)\tempdir.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\proc_mutex.c
+
+"$(INTDIR)\proc_mutex.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_cond.c
+
+"$(INTDIR)\thread_cond.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_mutex.c
+
+"$(INTDIR)\thread_mutex.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\locks\win32\thread_rwlock.c
+
+"$(INTDIR)\thread_rwlock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\memory\unix\apr_pools.c
+
+"$(INTDIR)\apr_pools.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\apr_app.c
+SOURCE=.\misc\win32\charset.c
+
+"$(INTDIR)\charset.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\env.c
+
+"$(INTDIR)\env.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\errorcodes.c
+
+"$(INTDIR)\errorcodes.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\getopt.c
+
+"$(INTDIR)\getopt.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\internal.c
+
+"$(INTDIR)\internal.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\misc.c
+
+"$(INTDIR)\misc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\otherchild.c
+
+"$(INTDIR)\otherchild.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\rand.c
+
+"$(INTDIR)\rand.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\start.c
+
+"$(INTDIR)\start.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\win32\utf8.c
+
+"$(INTDIR)\utf8.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\unix\version.c
+
+"$(INTDIR)\version.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\mmap\unix\common.c
+
+"$(INTDIR)\common.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\mmap\win32\mmap.c
+
+"$(INTDIR)\mmap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\inet_ntop.c
+
+"$(INTDIR)\inet_ntop.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\inet_pton.c
+
+"$(INTDIR)\inet_pton.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\multicast.c
+
+"$(INTDIR)\multicast.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sendrecv.c
+
+"$(INTDIR)\sendrecv.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\sockaddr.c
+
+"$(INTDIR)\sockaddr.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\unix\socket_util.c
+
+"$(INTDIR)\socket_util.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sockets.c
+
+"$(INTDIR)\sockets.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\network_io\win32\sockopt.c
+
+"$(INTDIR)\sockopt.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\passwd\apr_getpass.c
+
+"$(INTDIR)\apr_getpass.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\poll.c
+
+"$(INTDIR)\poll.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\pollcb.c
+
+"$(INTDIR)\pollcb.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\pollset.c
+
+"$(INTDIR)\pollset.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\poll\unix\select.c
+
+"$(INTDIR)\select.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\apr_random.c
+
+"$(INTDIR)\apr_random.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\sha2.c
+
+"$(INTDIR)\sha2.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\random\unix\sha2_glue.c
+
+"$(INTDIR)\sha2_glue.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\shmem\win32\shm.c
+
+"$(INTDIR)\shm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_cpystrn.c
+
+"$(INTDIR)\apr_cpystrn.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_fnmatch.c
+
+"$(INTDIR)\apr_fnmatch.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_snprintf.c
+
+"$(INTDIR)\apr_snprintf.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strings.c
+
+"$(INTDIR)\apr_strings.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strnatcmp.c
+
+"$(INTDIR)\apr_strnatcmp.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strings\apr_strtok.c
+
+"$(INTDIR)\apr_strtok.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\tables\apr_hash.c
+
+"$(INTDIR)\apr_hash.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\tables\apr_tables.c
+
+"$(INTDIR)\apr_tables.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\proc.c
+
+"$(INTDIR)\proc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\signals.c
+
+"$(INTDIR)\signals.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\thread.c
+
+"$(INTDIR)\thread.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\threadproc\win32\threadpriv.c
+
+"$(INTDIR)\threadpriv.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\time\win32\time.c
+
+"$(INTDIR)\time.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\time\win32\timestr.c
+
+"$(INTDIR)\timestr.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\user\win32\groupinfo.c
+
+"$(INTDIR)\groupinfo.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\user\win32\userinfo.c
+
+"$(INTDIR)\userinfo.obj" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\include\apr.hw
+
+!IF "$(CFG)" == "libapr - Win32 Release"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Debug"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Release9x"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libapr - Win32 Debug9x"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libapr - x64 Release"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libapr - x64 Debug"
+
+InputPath=.\include\apr.hw
+
+".\include\apr.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\libapr.rc
+
+"$(INTDIR)\libapr.res" : $(SOURCE) "$(INTDIR)" ".\include\apr.h"
+ $(RSC) $(RSC_PROJ) $(SOURCE)
+
+
+
+!ENDIF
+
diff --git a/iis/winbuild/libaprutil.mak b/iis/winbuild/libaprutil.mak
new file mode 100644
index 00000000..83bee3db
--- /dev/null
+++ b/iis/winbuild/libaprutil.mak
@@ -0,0 +1,1465 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on libaprutil.dsp
+!IF "$(CFG)" == ""
+CFG=libaprutil - Win32 Release
+!MESSAGE No configuration specified. Defaulting to libaprutil - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "libaprutil - Win32 Release" && "$(CFG)" != "libaprutil - Win32 Debug" && "$(CFG)" != "libaprutil - x64 Release" && "$(CFG)" != "libaprutil - x64 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "libaprutil.mak" CFG="libaprutil - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "libaprutil - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libaprutil - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libaprutil - x64 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libaprutil - x64 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\apu_want.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "xml - Win32 Release" "libapriconv - Win32 Release" "libapr - Win32 Release" ".\include\apu_want.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 ReleaseCLEAN" "libapriconv - Win32 ReleaseCLEAN" "xml - Win32 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\libaprutil.res"
+ -@erase "$(INTDIR)\libaprutil_src.idb"
+ -@erase "$(INTDIR)\libaprutil_src.pdb"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\libaprutil-1.dll"
+ -@erase "$(OUTDIR)\libaprutil-1.exp"
+ -@erase "$(OUTDIR)\libaprutil-1.lib"
+ -@erase "$(OUTDIR)\libaprutil-1.pdb"
+ -@erase ".\include\apu_want.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libaprutil_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libaprutil.res" /i "./include" /i "../apr/include" /d "NDEBUG" /d "APU_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libaprutil.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib /nologo /base:"0x6EE60000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libaprutil-1.pdb" /debug /out:"$(OUTDIR)\libaprutil-1.dll" /implib:"$(OUTDIR)\libaprutil-1.lib" /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "$(INTDIR)\libaprutil.res" \
+ "..\apr\Release\libapr-1.lib" \
+ "..\apr-iconv\Release\libapriconv-1.lib" \
+ ".\xml\expat\lib\LibR\xml.lib"
+
+"$(OUTDIR)\libaprutil-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Release\libaprutil-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libaprutil-1.dll"
+ if exist .\Release\libaprutil-1.dll.manifest mt.exe -manifest .\Release\libaprutil-1.dll.manifest -outputresource:.\Release\libaprutil-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "xml - Win32 Debug" "libapriconv - Win32 Debug" "libapr - Win32 Debug" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 DebugCLEAN" "libapriconv - Win32 DebugCLEAN" "xml - Win32 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\libaprutil.res"
+ -@erase "$(INTDIR)\libaprutil_src.idb"
+ -@erase "$(INTDIR)\libaprutil_src.pdb"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\libaprutil-1.dll"
+ -@erase "$(OUTDIR)\libaprutil-1.exp"
+ -@erase "$(OUTDIR)\libaprutil-1.lib"
+ -@erase "$(OUTDIR)\libaprutil-1.pdb"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "_DEBUG" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libaprutil_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libaprutil.res" /i "./include" /i "../apr/include" /d "_DEBUG" /d "APU_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libaprutil.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib /nologo /base:"0x6EE60000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libaprutil-1.pdb" /debug /out:"$(OUTDIR)\libaprutil-1.dll" /implib:"$(OUTDIR)\libaprutil-1.lib"
+LINK32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "$(INTDIR)\libaprutil.res" \
+ "..\apr\Debug\libapr-1.lib" \
+ "..\apr-iconv\Debug\libapriconv-1.lib" \
+ ".\xml\expat\lib\LibD\xml.lib"
+
+"$(OUTDIR)\libaprutil-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Debug\libaprutil-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libaprutil-1.dll"
+ if exist .\Debug\libaprutil-1.dll.manifest mt.exe -manifest .\Debug\libaprutil-1.dll.manifest -outputresource:.\Debug\libaprutil-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+OUTDIR=.\x64\Release
+INTDIR=.\x64\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\x64\Release
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "xml - x64 Release" "libapriconv - x64 Release" "libapr - x64 Release" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - x64 ReleaseCLEAN" "libapriconv - x64 ReleaseCLEAN" "xml - x64 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\libaprutil.res"
+ -@erase "$(INTDIR)\libaprutil_src.idb"
+ -@erase "$(INTDIR)\libaprutil_src.pdb"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\libaprutil-1.dll"
+ -@erase "$(OUTDIR)\libaprutil-1.exp"
+ -@erase "$(OUTDIR)\libaprutil-1.lib"
+ -@erase "$(OUTDIR)\libaprutil-1.pdb"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libaprutil_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libaprutil.res" /i "./include" /i "../apr/include" /d "NDEBUG" /d "APU_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libaprutil.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib /nologo /base:"0x6EE60000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libaprutil-1.pdb" /debug /out:"$(OUTDIR)\libaprutil-1.dll" /implib:"$(OUTDIR)\libaprutil-1.lib" /MACHINE:X64 /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "$(INTDIR)\libaprutil.res" \
+ "..\apr\x64\Release\libapr-1.lib" \
+ "..\apr-iconv\x64\Release\libapriconv-1.lib" \
+ ".\xml\expat\lib\x64\LibR\xml.lib"
+
+"$(OUTDIR)\libaprutil-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\x64\Release\libaprutil-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\x64\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libaprutil-1.dll"
+ if exist .\x64\Release\libaprutil-1.dll.manifest mt.exe -manifest .\x64\Release\libaprutil-1.dll.manifest -outputresource:.\x64\Release\libaprutil-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+OUTDIR=.\x64\Debug
+INTDIR=.\x64\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\x64\Debug
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "xml - x64 Debug" "libapriconv - x64 Debug" "libapr - x64 Debug" ".\include\private\apu_select_dbm.h" ".\include\private\apu_config.h" ".\include\apu_want.h" ".\include\apu.h" ".\include\apr_ldap.h" "$(OUTDIR)\libaprutil-1.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - x64 DebugCLEAN" "libapriconv - x64 DebugCLEAN" "xml - x64 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\apr_base64.obj"
+ -@erase "$(INTDIR)\apr_brigade.obj"
+ -@erase "$(INTDIR)\apr_buckets.obj"
+ -@erase "$(INTDIR)\apr_buckets_alloc.obj"
+ -@erase "$(INTDIR)\apr_buckets_eos.obj"
+ -@erase "$(INTDIR)\apr_buckets_file.obj"
+ -@erase "$(INTDIR)\apr_buckets_flush.obj"
+ -@erase "$(INTDIR)\apr_buckets_heap.obj"
+ -@erase "$(INTDIR)\apr_buckets_mmap.obj"
+ -@erase "$(INTDIR)\apr_buckets_pipe.obj"
+ -@erase "$(INTDIR)\apr_buckets_pool.obj"
+ -@erase "$(INTDIR)\apr_buckets_refcount.obj"
+ -@erase "$(INTDIR)\apr_buckets_simple.obj"
+ -@erase "$(INTDIR)\apr_buckets_socket.obj"
+ -@erase "$(INTDIR)\apr_crypto.obj"
+ -@erase "$(INTDIR)\apr_date.obj"
+ -@erase "$(INTDIR)\apr_dbd.obj"
+ -@erase "$(INTDIR)\apr_dbm.obj"
+ -@erase "$(INTDIR)\apr_dbm_sdbm.obj"
+ -@erase "$(INTDIR)\apr_hooks.obj"
+ -@erase "$(INTDIR)\apr_ldap_stub.obj"
+ -@erase "$(INTDIR)\apr_ldap_url.obj"
+ -@erase "$(INTDIR)\apr_md4.obj"
+ -@erase "$(INTDIR)\apr_md5.obj"
+ -@erase "$(INTDIR)\apr_memcache.obj"
+ -@erase "$(INTDIR)\apr_queue.obj"
+ -@erase "$(INTDIR)\apr_reslist.obj"
+ -@erase "$(INTDIR)\apr_rmm.obj"
+ -@erase "$(INTDIR)\apr_sha1.obj"
+ -@erase "$(INTDIR)\apr_strmatch.obj"
+ -@erase "$(INTDIR)\apr_thread_pool.obj"
+ -@erase "$(INTDIR)\apr_uri.obj"
+ -@erase "$(INTDIR)\apr_xml.obj"
+ -@erase "$(INTDIR)\apu_dso.obj"
+ -@erase "$(INTDIR)\apu_version.obj"
+ -@erase "$(INTDIR)\getuuid.obj"
+ -@erase "$(INTDIR)\libaprutil.res"
+ -@erase "$(INTDIR)\libaprutil_src.idb"
+ -@erase "$(INTDIR)\libaprutil_src.pdb"
+ -@erase "$(INTDIR)\sdbm.obj"
+ -@erase "$(INTDIR)\sdbm_hash.obj"
+ -@erase "$(INTDIR)\sdbm_lock.obj"
+ -@erase "$(INTDIR)\sdbm_pair.obj"
+ -@erase "$(INTDIR)\uuid.obj"
+ -@erase "$(INTDIR)\xlate.obj"
+ -@erase "$(OUTDIR)\libaprutil-1.dll"
+ -@erase "$(OUTDIR)\libaprutil-1.exp"
+ -@erase "$(OUTDIR)\libaprutil-1.lib"
+ -@erase "$(OUTDIR)\libaprutil-1.pdb"
+ -@erase ".\include\apr_ldap.h"
+ -@erase ".\include\apu.h"
+ -@erase ".\include\apu_want.h"
+ -@erase ".\include\private\apu_config.h"
+ -@erase ".\include\private\apu_select_dbm.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "_DEBUG" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /D "XML_STATIC" /D "WIN32" /D "_WINDOWS" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libaprutil_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libaprutil.res" /i "./include" /i "../apr/include" /d "_DEBUG" /d "APU_VERSION_ONLY"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libaprutil.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib /nologo /base:"0x6EE60000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libaprutil-1.pdb" /debug /out:"$(OUTDIR)\libaprutil-1.dll" /implib:"$(OUTDIR)\libaprutil-1.lib" /MACHINE:X64
+LINK32_OBJS= \
+ "$(INTDIR)\apr_brigade.obj" \
+ "$(INTDIR)\apr_buckets.obj" \
+ "$(INTDIR)\apr_buckets_alloc.obj" \
+ "$(INTDIR)\apr_buckets_eos.obj" \
+ "$(INTDIR)\apr_buckets_file.obj" \
+ "$(INTDIR)\apr_buckets_flush.obj" \
+ "$(INTDIR)\apr_buckets_heap.obj" \
+ "$(INTDIR)\apr_buckets_mmap.obj" \
+ "$(INTDIR)\apr_buckets_pipe.obj" \
+ "$(INTDIR)\apr_buckets_pool.obj" \
+ "$(INTDIR)\apr_buckets_refcount.obj" \
+ "$(INTDIR)\apr_buckets_simple.obj" \
+ "$(INTDIR)\apr_buckets_socket.obj" \
+ "$(INTDIR)\apr_crypto.obj" \
+ "$(INTDIR)\apr_md4.obj" \
+ "$(INTDIR)\apr_md5.obj" \
+ "$(INTDIR)\apr_sha1.obj" \
+ "$(INTDIR)\getuuid.obj" \
+ "$(INTDIR)\uuid.obj" \
+ "$(INTDIR)\apr_dbd.obj" \
+ "$(INTDIR)\apr_dbm.obj" \
+ "$(INTDIR)\apr_dbm_sdbm.obj" \
+ "$(INTDIR)\apr_base64.obj" \
+ "$(INTDIR)\apr_hooks.obj" \
+ "$(INTDIR)\apr_ldap_stub.obj" \
+ "$(INTDIR)\apr_ldap_url.obj" \
+ "$(INTDIR)\apr_memcache.obj" \
+ "$(INTDIR)\apr_date.obj" \
+ "$(INTDIR)\apu_dso.obj" \
+ "$(INTDIR)\apr_queue.obj" \
+ "$(INTDIR)\apr_reslist.obj" \
+ "$(INTDIR)\apr_rmm.obj" \
+ "$(INTDIR)\apr_thread_pool.obj" \
+ "$(INTDIR)\apu_version.obj" \
+ "$(INTDIR)\sdbm.obj" \
+ "$(INTDIR)\sdbm_hash.obj" \
+ "$(INTDIR)\sdbm_lock.obj" \
+ "$(INTDIR)\sdbm_pair.obj" \
+ "$(INTDIR)\apr_strmatch.obj" \
+ "$(INTDIR)\apr_uri.obj" \
+ "$(INTDIR)\xlate.obj" \
+ "$(INTDIR)\apr_xml.obj" \
+ "$(INTDIR)\libaprutil.res" \
+ "..\apr\x64\Debug\libapr-1.lib" \
+ "..\apr-iconv\x64\Debug\libapriconv-1.lib" \
+ ".\xml\expat\lib\x64\LibD\xml.lib"
+
+"$(OUTDIR)\libaprutil-1.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\x64\Debug\libaprutil-1.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\x64\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libaprutil-1.dll"
+ if exist .\x64\Debug\libaprutil-1.dll.manifest mt.exe -manifest .\x64\Debug\libaprutil-1.dll.manifest -outputresource:.\x64\Debug\libaprutil-1.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("libaprutil.dep")
+!INCLUDE "libaprutil.dep"
+!ELSE
+!MESSAGE Warning: cannot find "libaprutil.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "libaprutil - Win32 Release" || "$(CFG)" == "libaprutil - Win32 Debug" || "$(CFG)" == "libaprutil - x64 Release" || "$(CFG)" == "libaprutil - x64 Debug"
+SOURCE=.\buckets\apr_brigade.c
+
+"$(INTDIR)\apr_brigade.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets.c
+
+"$(INTDIR)\apr_buckets.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_alloc.c
+
+"$(INTDIR)\apr_buckets_alloc.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_eos.c
+
+"$(INTDIR)\apr_buckets_eos.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_file.c
+
+"$(INTDIR)\apr_buckets_file.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_flush.c
+
+"$(INTDIR)\apr_buckets_flush.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_heap.c
+
+"$(INTDIR)\apr_buckets_heap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_mmap.c
+
+"$(INTDIR)\apr_buckets_mmap.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_pipe.c
+
+"$(INTDIR)\apr_buckets_pipe.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_pool.c
+
+"$(INTDIR)\apr_buckets_pool.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_refcount.c
+
+"$(INTDIR)\apr_buckets_refcount.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_simple.c
+
+"$(INTDIR)\apr_buckets_simple.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\buckets\apr_buckets_socket.c
+
+"$(INTDIR)\apr_buckets_socket.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_crypto.c
+
+"$(INTDIR)\apr_crypto.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_md4.c
+
+"$(INTDIR)\apr_md4.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_md5.c
+
+"$(INTDIR)\apr_md5.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\apr_sha1.c
+
+"$(INTDIR)\apr_sha1.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\getuuid.c
+
+"$(INTDIR)\getuuid.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\crypto\uuid.c
+
+"$(INTDIR)\uuid.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd.c
+
+"$(INTDIR)\apr_dbd.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbd\apr_dbd_freetds.c
+SOURCE=.\dbd\apr_dbd_mysql.c
+SOURCE=.\dbd\apr_dbd_odbc.c
+SOURCE=.\dbd\apr_dbd_oracle.c
+SOURCE=.\dbd\apr_dbd_pgsql.c
+SOURCE=.\dbd\apr_dbd_sqlite2.c
+SOURCE=.\dbd\apr_dbd_sqlite3.c
+SOURCE=.\dbm\apr_dbm.c
+
+"$(INTDIR)\apr_dbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\apr_dbm_berkeleydb.c
+SOURCE=.\dbm\apr_dbm_gdbm.c
+SOURCE=.\dbm\apr_dbm_sdbm.c
+
+"$(INTDIR)\apr_dbm_sdbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h" ".\include\private\apu_select_dbm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\encoding\apr_base64.c
+
+"$(INTDIR)\apr_base64.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\hooks\apr_hooks.c
+
+"$(INTDIR)\apr_hooks.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_init.c
+SOURCE=.\ldap\apr_ldap_option.c
+SOURCE=.\ldap\apr_ldap_rebind.c
+SOURCE=.\ldap\apr_ldap_stub.c
+
+"$(INTDIR)\apr_ldap_stub.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\ldap\apr_ldap_url.c
+
+"$(INTDIR)\apr_ldap_url.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\apr_ldap.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\memcache\apr_memcache.c
+
+"$(INTDIR)\apr_memcache.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_date.c
+
+"$(INTDIR)\apr_date.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_queue.c
+
+"$(INTDIR)\apr_queue.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_reslist.c
+
+"$(INTDIR)\apr_reslist.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_rmm.c
+
+"$(INTDIR)\apr_rmm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apr_thread_pool.c
+
+"$(INTDIR)\apr_thread_pool.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apu_dso.c
+
+"$(INTDIR)\apu_dso.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\misc\apu_version.c
+
+"$(INTDIR)\apu_version.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm.c
+
+"$(INTDIR)\sdbm.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_hash.c
+
+"$(INTDIR)\sdbm_hash.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_lock.c
+
+"$(INTDIR)\sdbm_lock.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\dbm\sdbm\sdbm_pair.c
+
+"$(INTDIR)\sdbm_pair.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\strmatch\apr_strmatch.c
+
+"$(INTDIR)\apr_strmatch.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\uri\apr_uri.c
+
+"$(INTDIR)\apr_uri.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\xlate\xlate.c
+
+"$(INTDIR)\xlate.obj" : $(SOURCE) "$(INTDIR)" ".\include\apu.h" ".\include\private\apu_config.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\xml\apr_xml.c
+
+"$(INTDIR)\apr_xml.obj" : $(SOURCE) "$(INTDIR)" ".\include\private\apu_config.h" ".\include\apu.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\include\apr_ldap.hw
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+InputPath=.\include\apr_ldap.hw
+
+".\include\apr_ldap.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apr_ldap.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\apu.hw
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+InputPath=.\include\apu.hw
+
+".\include\apu.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\private\apu_config.hw
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+InputPath=.\include\private\apu_config.hw
+
+".\include\private\apu_config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_config.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\private\apu_select_dbm.hw
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+InputPath=.\include\private\apu_select_dbm.hw
+
+".\include\private\apu_select_dbm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\private\apu_select_dbm.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\include\apu_want.hw
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+InputPath=.\include\apu_want.hw
+
+".\include\apu_want.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\apu_want.h
+<<
+
+
+!ENDIF
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+"libapr - Win32 Release" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release"
+ cd "..\apr-util"
+
+"libapr - Win32 ReleaseCLEAN" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+"libapr - Win32 Debug" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug"
+ cd "..\apr-util"
+
+"libapr - Win32 DebugCLEAN" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+"libapr - x64 Release" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - x64 Release"
+ cd "..\apr-util"
+
+"libapr - x64 ReleaseCLEAN" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - x64 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+"libapr - x64 Debug" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - x64 Debug"
+ cd "..\apr-util"
+
+"libapr - x64 DebugCLEAN" :
+ cd ".\..\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - x64 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ENDIF
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+"libapriconv - Win32 Release" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Release"
+ cd "..\apr-util"
+
+"libapriconv - Win32 ReleaseCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+"libapriconv - Win32 Debug" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Debug"
+ cd "..\apr-util"
+
+"libapriconv - Win32 DebugCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+"libapriconv - x64 Release" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - x64 Release"
+ cd "..\apr-util"
+
+"libapriconv - x64 ReleaseCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - x64 Release" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+"libapriconv - x64 Debug" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - x64 Debug"
+ cd "..\apr-util"
+
+"libapriconv - x64 DebugCLEAN" :
+ cd ".\..\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - x64 Debug" RECURSE=1 CLEAN
+ cd "..\apr-util"
+
+!ENDIF
+
+!IF "$(CFG)" == "libaprutil - Win32 Release"
+
+"xml - Win32 Release" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Release"
+ cd "..\..\.."
+
+"xml - Win32 ReleaseCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Release" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "libaprutil - Win32 Debug"
+
+"xml - Win32 Debug" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Debug"
+ cd "..\..\.."
+
+"xml - Win32 DebugCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Release"
+
+"xml - x64 Release" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Release"
+ cd "..\..\.."
+
+"xml - x64 ReleaseCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Release" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ELSEIF "$(CFG)" == "libaprutil - x64 Debug"
+
+"xml - x64 Debug" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Debug"
+ cd "..\..\.."
+
+"xml - x64 DebugCLEAN" :
+ cd ".\xml\expat\lib"
+ $(MAKE) /$(MAKEFLAGS) /F ".\xml.mak" CFG="xml - x64 Debug" RECURSE=1 CLEAN
+ cd "..\..\.."
+
+!ENDIF
+
+SOURCE=.\libaprutil.rc
+
+"$(INTDIR)\libaprutil.res" : $(SOURCE) "$(INTDIR)" ".\include\apu.h"
+ $(RSC) $(RSC_PROJ) $(SOURCE)
+
+
+
+!ENDIF
+
diff --git a/iis/winbuild/libhttpd.mak b/iis/winbuild/libhttpd.mak
new file mode 100644
index 00000000..7808ed1d
--- /dev/null
+++ b/iis/winbuild/libhttpd.mak
@@ -0,0 +1,1052 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on libhttpd.dsp
+!IF "$(CFG)" == ""
+CFG=libhttpd - Win32 Release
+!MESSAGE No configuration specified. Defaulting to libhttpd - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "libhttpd - Win32 Release" && "$(CFG)" != "libhttpd - Win32 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "libhttpd.mak" CFG="libhttpd - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "libhttpd - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "libhttpd - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\include\mod_dav.h" "$(OUTDIR)\libhttpd.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "pcre - Win32 Release" "gen_test_char - Win32 Release" "libaprutil - Win32 Release" "libapriconv - Win32 Release" "libapr - Win32 Release" ".\include\mod_dav.h" "$(OUTDIR)\libhttpd.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 ReleaseCLEAN" "libapriconv - Win32 ReleaseCLEAN" "libaprutil - Win32 ReleaseCLEAN" "gen_test_char - Win32 ReleaseCLEAN" "pcre - Win32 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\ap_regkey.obj"
+ -@erase "$(INTDIR)\byterange_filter.obj"
+ -@erase "$(INTDIR)\child.obj"
+ -@erase "$(INTDIR)\chunk_filter.obj"
+ -@erase "$(INTDIR)\config.obj"
+ -@erase "$(INTDIR)\connection.obj"
+ -@erase "$(INTDIR)\core.obj"
+ -@erase "$(INTDIR)\core_filters.obj"
+ -@erase "$(INTDIR)\eoc_bucket.obj"
+ -@erase "$(INTDIR)\error_bucket.obj"
+ -@erase "$(INTDIR)\http_core.obj"
+ -@erase "$(INTDIR)\http_etag.obj"
+ -@erase "$(INTDIR)\http_filters.obj"
+ -@erase "$(INTDIR)\http_protocol.obj"
+ -@erase "$(INTDIR)\http_request.obj"
+ -@erase "$(INTDIR)\libhttpd.res"
+ -@erase "$(INTDIR)\libhttpd_cl.idb"
+ -@erase "$(INTDIR)\libhttpd_cl.pdb"
+ -@erase "$(INTDIR)\listen.obj"
+ -@erase "$(INTDIR)\log.obj"
+ -@erase "$(INTDIR)\mod_so.obj"
+ -@erase "$(INTDIR)\mod_win32.obj"
+ -@erase "$(INTDIR)\modules.obj"
+ -@erase "$(INTDIR)\mpm_common.obj"
+ -@erase "$(INTDIR)\mpm_winnt.obj"
+ -@erase "$(INTDIR)\nt_eventlog.obj"
+ -@erase "$(INTDIR)\protocol.obj"
+ -@erase "$(INTDIR)\provider.obj"
+ -@erase "$(INTDIR)\request.obj"
+ -@erase "$(INTDIR)\scoreboard.obj"
+ -@erase "$(INTDIR)\service.obj"
+ -@erase "$(INTDIR)\util.obj"
+ -@erase "$(INTDIR)\util_cfgtree.obj"
+ -@erase "$(INTDIR)\util_filter.obj"
+ -@erase "$(INTDIR)\util_md5.obj"
+ -@erase "$(INTDIR)\util_pcre.obj"
+ -@erase "$(INTDIR)\util_script.obj"
+ -@erase "$(INTDIR)\util_time.obj"
+ -@erase "$(INTDIR)\util_win32.obj"
+ -@erase "$(INTDIR)\util_xml.obj"
+ -@erase "$(INTDIR)\vhost.obj"
+ -@erase "$(OUTDIR)\libhttpd.dll"
+ -@erase "$(OUTDIR)\libhttpd.exp"
+ -@erase "$(OUTDIR)\libhttpd.lib"
+ -@erase "$(OUTDIR)\libhttpd.pdb"
+ -@erase ".\include\mod_dav.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "./include" /I "./srclib/apr/include" /I "./srclib/apr-util/include" /I "./srclib/pcre" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "PCRE_STATIC" /D "AP_DECLARE_EXPORT" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libhttpd_cl" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libhttpd.res" /i "./include" /i "./srclib/apr/include" /d "NDEBUG" /d BIN_NAME="libhttpd.dll" /d LONG_NAME="Apache HTTP Server Core"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libhttpd.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib mswsock.lib "Release\buildmark.obj" /nologo /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libhttpd.pdb" /debug /out:"$(OUTDIR)\libhttpd.dll" /implib:"$(OUTDIR)\libhttpd.lib" /base:@"os\win32\BaseAddr.ref",libhttpd.dll /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\byterange_filter.obj" \
+ "$(INTDIR)\chunk_filter.obj" \
+ "$(INTDIR)\config.obj" \
+ "$(INTDIR)\connection.obj" \
+ "$(INTDIR)\core.obj" \
+ "$(INTDIR)\core_filters.obj" \
+ "$(INTDIR)\http_core.obj" \
+ "$(INTDIR)\http_etag.obj" \
+ "$(INTDIR)\http_filters.obj" \
+ "$(INTDIR)\http_protocol.obj" \
+ "$(INTDIR)\http_request.obj" \
+ "$(INTDIR)\log.obj" \
+ "$(INTDIR)\protocol.obj" \
+ "$(INTDIR)\request.obj" \
+ "$(INTDIR)\vhost.obj" \
+ "$(INTDIR)\mod_so.obj" \
+ "$(INTDIR)\mod_win32.obj" \
+ "$(INTDIR)\modules.obj" \
+ "$(INTDIR)\eoc_bucket.obj" \
+ "$(INTDIR)\error_bucket.obj" \
+ "$(INTDIR)\util.obj" \
+ "$(INTDIR)\util_cfgtree.obj" \
+ "$(INTDIR)\util_filter.obj" \
+ "$(INTDIR)\util_md5.obj" \
+ "$(INTDIR)\util_pcre.obj" \
+ "$(INTDIR)\util_script.obj" \
+ "$(INTDIR)\util_time.obj" \
+ "$(INTDIR)\util_win32.obj" \
+ "$(INTDIR)\util_xml.obj" \
+ "$(INTDIR)\ap_regkey.obj" \
+ "$(INTDIR)\child.obj" \
+ "$(INTDIR)\listen.obj" \
+ "$(INTDIR)\mpm_common.obj" \
+ "$(INTDIR)\mpm_winnt.obj" \
+ "$(INTDIR)\nt_eventlog.obj" \
+ "$(INTDIR)\provider.obj" \
+ "$(INTDIR)\scoreboard.obj" \
+ "$(INTDIR)\service.obj" \
+ "$(INTDIR)\libhttpd.res" \
+ ".\srclib\apr\Release\libapr-1.lib" \
+ ".\srclib\apr-iconv\Release\libapriconv-1.lib" \
+ ".\srclib\apr-util\Release\libaprutil-1.lib" \
+ ".\srclib\pcre\LibR\pcre.lib"
+
+"$(OUTDIR)\libhttpd.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ cl.exe /nologo /MD /W3 /O2 /Oy- /Zi /I "./include" /I "./srclib/apr/include" /I "./srclib/apr-util/include" /I "./srclib/pcre" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "PCRE_STATIC" /D "AP_DECLARE_EXPORT" /Fd"Release\libhttpd" /FD /c server\buildmark.c /Fo"Release\buildmark.obj"
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Release\libhttpd.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libhttpd.dll"
+ if exist .\Release\libhttpd.dll.manifest mt.exe -manifest .\Release\libhttpd.dll.manifest -outputresource:.\Release\libhttpd.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\server\test_char.h" ".\include\mpm_default.h" ".\include\mpm.h" ".\include\mod_so.h" ".\include\mod_proxy.h" ".\include\mod_include.h" ".\include\mod_dav.h" ".\include\mod_core.h" ".\include\mod_cgi.h" "$(OUTDIR)\libhttpd.dll" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "pcre - Win32 Debug" "gen_test_char - Win32 Debug" "libaprutil - Win32 Debug" "libapriconv - Win32 Debug" "libapr - Win32 Debug" ".\server\test_char.h" ".\include\mpm_default.h" ".\include\mpm.h" ".\include\mod_so.h" ".\include\mod_proxy.h" ".\include\mod_include.h" ".\include\mod_dav.h" ".\include\mod_core.h" ".\include\mod_cgi.h" "$(OUTDIR)\libhttpd.dll" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 DebugCLEAN" "libapriconv - Win32 DebugCLEAN" "libaprutil - Win32 DebugCLEAN" "gen_test_char - Win32 DebugCLEAN" "pcre - Win32 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\ap_regkey.obj"
+ -@erase "$(INTDIR)\byterange_filter.obj"
+ -@erase "$(INTDIR)\child.obj"
+ -@erase "$(INTDIR)\chunk_filter.obj"
+ -@erase "$(INTDIR)\config.obj"
+ -@erase "$(INTDIR)\connection.obj"
+ -@erase "$(INTDIR)\core.obj"
+ -@erase "$(INTDIR)\core_filters.obj"
+ -@erase "$(INTDIR)\eoc_bucket.obj"
+ -@erase "$(INTDIR)\error_bucket.obj"
+ -@erase "$(INTDIR)\http_core.obj"
+ -@erase "$(INTDIR)\http_etag.obj"
+ -@erase "$(INTDIR)\http_filters.obj"
+ -@erase "$(INTDIR)\http_protocol.obj"
+ -@erase "$(INTDIR)\http_request.obj"
+ -@erase "$(INTDIR)\libhttpd.res"
+ -@erase "$(INTDIR)\libhttpd_cl.idb"
+ -@erase "$(INTDIR)\libhttpd_cl.pdb"
+ -@erase "$(INTDIR)\listen.obj"
+ -@erase "$(INTDIR)\log.obj"
+ -@erase "$(INTDIR)\mod_so.obj"
+ -@erase "$(INTDIR)\mod_win32.obj"
+ -@erase "$(INTDIR)\modules.obj"
+ -@erase "$(INTDIR)\mpm_common.obj"
+ -@erase "$(INTDIR)\mpm_winnt.obj"
+ -@erase "$(INTDIR)\nt_eventlog.obj"
+ -@erase "$(INTDIR)\protocol.obj"
+ -@erase "$(INTDIR)\provider.obj"
+ -@erase "$(INTDIR)\request.obj"
+ -@erase "$(INTDIR)\scoreboard.obj"
+ -@erase "$(INTDIR)\service.obj"
+ -@erase "$(INTDIR)\util.obj"
+ -@erase "$(INTDIR)\util_cfgtree.obj"
+ -@erase "$(INTDIR)\util_filter.obj"
+ -@erase "$(INTDIR)\util_md5.obj"
+ -@erase "$(INTDIR)\util_pcre.obj"
+ -@erase "$(INTDIR)\util_script.obj"
+ -@erase "$(INTDIR)\util_time.obj"
+ -@erase "$(INTDIR)\util_win32.obj"
+ -@erase "$(INTDIR)\util_xml.obj"
+ -@erase "$(INTDIR)\vhost.obj"
+ -@erase "$(OUTDIR)\libhttpd.dll"
+ -@erase "$(OUTDIR)\libhttpd.exp"
+ -@erase "$(OUTDIR)\libhttpd.lib"
+ -@erase "$(OUTDIR)\libhttpd.pdb"
+ -@erase ".\include\mod_cgi.h"
+ -@erase ".\include\mod_core.h"
+ -@erase ".\include\mod_dav.h"
+ -@erase ".\include\mod_include.h"
+ -@erase ".\include\mod_proxy.h"
+ -@erase ".\include\mod_so.h"
+ -@erase ".\include\mpm.h"
+ -@erase ".\include\mpm_default.h"
+ -@erase ".\server\test_char.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "./include" /I "./srclib/apr/include" /I "./srclib/apr-util/include" /I "./srclib/pcre" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "PCRE_STATIC" /D "AP_DECLARE_EXPORT" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\libhttpd_cl" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libhttpd.res" /i "./include" /i "./srclib/apr/include" /d "_DEBUG" /d BIN_NAME="libhttpd.dll" /d LONG_NAME="Apache HTTP Server Core"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\libhttpd.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib mswsock.lib "Debug\buildmark.obj" /nologo /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\libhttpd.pdb" /debug /out:"$(OUTDIR)\libhttpd.dll" /implib:"$(OUTDIR)\libhttpd.lib" /base:@"os\win32\BaseAddr.ref",libhttpd.dll
+LINK32_OBJS= \
+ "$(INTDIR)\byterange_filter.obj" \
+ "$(INTDIR)\chunk_filter.obj" \
+ "$(INTDIR)\config.obj" \
+ "$(INTDIR)\connection.obj" \
+ "$(INTDIR)\core.obj" \
+ "$(INTDIR)\core_filters.obj" \
+ "$(INTDIR)\http_core.obj" \
+ "$(INTDIR)\http_etag.obj" \
+ "$(INTDIR)\http_filters.obj" \
+ "$(INTDIR)\http_protocol.obj" \
+ "$(INTDIR)\http_request.obj" \
+ "$(INTDIR)\log.obj" \
+ "$(INTDIR)\protocol.obj" \
+ "$(INTDIR)\request.obj" \
+ "$(INTDIR)\vhost.obj" \
+ "$(INTDIR)\mod_so.obj" \
+ "$(INTDIR)\mod_win32.obj" \
+ "$(INTDIR)\modules.obj" \
+ "$(INTDIR)\eoc_bucket.obj" \
+ "$(INTDIR)\error_bucket.obj" \
+ "$(INTDIR)\util.obj" \
+ "$(INTDIR)\util_cfgtree.obj" \
+ "$(INTDIR)\util_filter.obj" \
+ "$(INTDIR)\util_md5.obj" \
+ "$(INTDIR)\util_pcre.obj" \
+ "$(INTDIR)\util_script.obj" \
+ "$(INTDIR)\util_time.obj" \
+ "$(INTDIR)\util_win32.obj" \
+ "$(INTDIR)\util_xml.obj" \
+ "$(INTDIR)\ap_regkey.obj" \
+ "$(INTDIR)\child.obj" \
+ "$(INTDIR)\listen.obj" \
+ "$(INTDIR)\mpm_common.obj" \
+ "$(INTDIR)\mpm_winnt.obj" \
+ "$(INTDIR)\nt_eventlog.obj" \
+ "$(INTDIR)\provider.obj" \
+ "$(INTDIR)\scoreboard.obj" \
+ "$(INTDIR)\service.obj" \
+ "$(INTDIR)\libhttpd.res" \
+ ".\srclib\apr\Debug\libapr-1.lib" \
+ ".\srclib\apr-iconv\Debug\libapriconv-1.lib" \
+ ".\srclib\apr-util\Debug\libaprutil-1.lib" \
+ ".\srclib\pcre\LibD\pcre.lib"
+
+"$(OUTDIR)\libhttpd.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ cl.exe /nologo /MDd /W3 /EHsc /Zi /Od /I "./include" /I "./srclib/apr/include" /I "./srclib/apr-util/include" /I "./srclib/pcre" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "PCRE_STATIC" /D "AP_DECLARE_EXPORT" /Fd"Debug\libhttpd" /FD /c server\buildmark.c /Fo"Debug\buildmark.obj"
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Debug\libhttpd.dll
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\libhttpd.dll"
+ if exist .\Debug\libhttpd.dll.manifest mt.exe -manifest .\Debug\libhttpd.dll.manifest -outputresource:.\Debug\libhttpd.dll;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("libhttpd.dep")
+!INCLUDE "libhttpd.dep"
+!ELSE
+!MESSAGE Warning: cannot find "libhttpd.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "libhttpd - Win32 Release" || "$(CFG)" == "libhttpd - Win32 Debug"
+SOURCE=.\modules\generators\mod_cgi.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\generators\mod_cgi.h
+
+".\include\mod_cgi.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_cgi.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\generators\mod_cgi.h
+
+".\include\mod_cgi.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_cgi.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\modules\http\mod_core.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\http\mod_core.h
+
+".\include\mod_core.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_core.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\http\mod_core.h
+
+".\include\mod_core.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_core.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\modules\dav\main\mod_dav.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\dav\main\mod_dav.h
+
+".\include\mod_dav.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_dav.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\dav\main\mod_dav.h
+
+".\include\mod_dav.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_dav.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\modules\filters\mod_include.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\filters\mod_include.h
+
+".\include\mod_include.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_include.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\filters\mod_include.h
+
+".\include\mod_include.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_include.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\modules\proxy\mod_proxy.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\proxy\mod_proxy.h
+
+".\include\mod_proxy.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_proxy.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\proxy\mod_proxy.h
+
+".\include\mod_proxy.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_proxy.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\modules\mappers\mod_so.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\modules\mappers\mod_so.h
+
+".\include\mod_so.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_so.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\modules\mappers\mod_so.h
+
+".\include\mod_so.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mod_so.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\os\win32\os.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\os\win32\os.h
+
+".\include\os.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\os.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\os\win32\os.h
+
+".\include\os.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\os.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\server\buildmark.c
+SOURCE=.\modules\http\byterange_filter.c
+
+"$(INTDIR)\byterange_filter.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\chunk_filter.c
+
+"$(INTDIR)\chunk_filter.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\config.c
+
+"$(INTDIR)\config.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\connection.c
+
+"$(INTDIR)\connection.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm_default.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\core.c
+
+"$(INTDIR)\core.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\mod_core.h" ".\include\mod_proxy.h" ".\include\mod_so.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\core_filters.c
+
+"$(INTDIR)\core_filters.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\mod_core.h" ".\include\mod_proxy.h" ".\include\mod_so.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\http_core.c
+
+"$(INTDIR)\http_core.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\http_etag.c
+
+"$(INTDIR)\http_etag.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\http_filters.c
+
+"$(INTDIR)\http_filters.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\http_protocol.c
+
+"$(INTDIR)\http_protocol.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\http\http_request.c
+
+"$(INTDIR)\http_request.obj" : $(SOURCE) "$(INTDIR)" ".\modules\http\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\log.c
+
+"$(INTDIR)\log.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\protocol.c
+
+"$(INTDIR)\protocol.obj" : $(SOURCE) "$(INTDIR)" ".\include\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\request.c
+
+"$(INTDIR)\request.obj" : $(SOURCE) "$(INTDIR)" ".\include\mod_core.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\vhost.c
+
+"$(INTDIR)\vhost.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\mappers\mod_so.c
+
+"$(INTDIR)\mod_so.obj" : $(SOURCE) "$(INTDIR)" ".\modules\mappers\mod_so.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\modules\arch\win32\mod_win32.c
+
+"$(INTDIR)\mod_win32.obj" : $(SOURCE) "$(INTDIR)" ".\include\mod_core.h" ".\include\mod_cgi.h" ".\include\os.h" ".\include\mod_include.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\os\win32\modules.c
+
+"$(INTDIR)\modules.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\eoc_bucket.c
+
+"$(INTDIR)\eoc_bucket.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\error_bucket.c
+
+"$(INTDIR)\error_bucket.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util.c
+
+"$(INTDIR)\util.obj" : $(SOURCE) "$(INTDIR)" ".\server\test_char.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_cfgtree.c
+
+"$(INTDIR)\util_cfgtree.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_filter.c
+
+"$(INTDIR)\util_filter.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_md5.c
+
+"$(INTDIR)\util_md5.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_pcre.c
+
+"$(INTDIR)\util_pcre.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_script.c
+
+"$(INTDIR)\util_script.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_time.c
+
+"$(INTDIR)\util_time.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\os\win32\util_win32.c
+
+"$(INTDIR)\util_win32.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\util_xml.c
+
+"$(INTDIR)\util_xml.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\os\win32\ap_regkey.c
+
+"$(INTDIR)\ap_regkey.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\mpm\winnt\child.c
+
+"$(INTDIR)\child.obj" : $(SOURCE) "$(INTDIR)" ".\server\mpm\winnt\mpm_default.h" ".\include\os.h" ".\include\mpm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\listen.c
+
+"$(INTDIR)\listen.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\mpm\winnt\mpm.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\server\mpm\winnt\mpm.h
+
+".\include\mpm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mpm.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\server\mpm\winnt\mpm.h
+
+".\include\mpm.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mpm.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\server\mpm_common.c
+
+"$(INTDIR)\mpm_common.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\mpm_default.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\mpm\winnt\mpm_default.h
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\server\mpm\winnt\mpm_default.h
+
+".\include\mpm_default.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mpm_default.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\server\mpm\winnt\mpm_default.h
+
+".\include\mpm_default.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\include\mpm_default.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\server\mpm\winnt\mpm_winnt.c
+
+"$(INTDIR)\mpm_winnt.obj" : $(SOURCE) "$(INTDIR)" ".\server\mpm\winnt\mpm_default.h" ".\include\os.h" ".\include\mpm.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\mpm\winnt\nt_eventlog.c
+
+"$(INTDIR)\nt_eventlog.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\provider.c
+
+"$(INTDIR)\provider.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\scoreboard.c
+
+"$(INTDIR)\scoreboard.obj" : $(SOURCE) "$(INTDIR)" ".\include\mpm.h" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\server\mpm\winnt\service.c
+
+"$(INTDIR)\service.obj" : $(SOURCE) "$(INTDIR)" ".\include\os.h"
+ $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+"libapr - Win32 Release" :
+ cd ".\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release"
+ cd "..\.."
+
+"libapr - Win32 ReleaseCLEAN" :
+ cd ".\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+"libapr - Win32 Debug" :
+ cd ".\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug"
+ cd "..\.."
+
+"libapr - Win32 DebugCLEAN" :
+ cd ".\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ENDIF
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+"libapriconv - Win32 Release" :
+ cd ".\srclib\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Release"
+ cd "..\.."
+
+"libapriconv - Win32 ReleaseCLEAN" :
+ cd ".\srclib\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Release" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+"libapriconv - Win32 Debug" :
+ cd ".\srclib\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Debug"
+ cd "..\.."
+
+"libapriconv - Win32 DebugCLEAN" :
+ cd ".\srclib\apr-iconv"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapriconv.mak" CFG="libapriconv - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ENDIF
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+"libaprutil - Win32 Release" :
+ cd ".\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Release"
+ cd "..\.."
+
+"libaprutil - Win32 ReleaseCLEAN" :
+ cd ".\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Release" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+"libaprutil - Win32 Debug" :
+ cd ".\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Debug"
+ cd "..\.."
+
+"libaprutil - Win32 DebugCLEAN" :
+ cd ".\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ENDIF
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+"gen_test_char - Win32 Release" :
+ cd ".\server"
+ $(MAKE) /$(MAKEFLAGS) /F ".\gen_test_char.mak" CFG="gen_test_char - Win32 Release"
+ cd ".."
+
+"gen_test_char - Win32 ReleaseCLEAN" :
+ cd ".\server"
+ $(MAKE) /$(MAKEFLAGS) /F ".\gen_test_char.mak" CFG="gen_test_char - Win32 Release" RECURSE=1 CLEAN
+ cd ".."
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+"gen_test_char - Win32 Debug" :
+ cd ".\server"
+ $(MAKE) /$(MAKEFLAGS) /F ".\gen_test_char.mak" CFG="gen_test_char - Win32 Debug"
+ cd ".."
+
+"gen_test_char - Win32 DebugCLEAN" :
+ cd ".\server"
+ $(MAKE) /$(MAKEFLAGS) /F ".\gen_test_char.mak" CFG="gen_test_char - Win32 Debug" RECURSE=1 CLEAN
+ cd ".."
+
+!ENDIF
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+"pcre - Win32 Release" :
+ cd ".\srclib\pcre"
+ $(MAKE) /$(MAKEFLAGS) /F ".\pcre.mak" CFG="pcre - Win32 Release"
+ cd "..\.."
+
+"pcre - Win32 ReleaseCLEAN" :
+ cd ".\srclib\pcre"
+ $(MAKE) /$(MAKEFLAGS) /F ".\pcre.mak" CFG="pcre - Win32 Release" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+"pcre - Win32 Debug" :
+ cd ".\srclib\pcre"
+ $(MAKE) /$(MAKEFLAGS) /F ".\pcre.mak" CFG="pcre - Win32 Debug"
+ cd "..\.."
+
+"pcre - Win32 DebugCLEAN" :
+ cd ".\srclib\pcre"
+ $(MAKE) /$(MAKEFLAGS) /F ".\pcre.mak" CFG="pcre - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\.."
+
+!ENDIF
+
+SOURCE=.\server\gen_test_char.exe
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+InputPath=.\server\gen_test_char.exe
+USERDEP__GEN_T=".\include\os.h"
+
+".\server\test_char.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" $(USERDEP__GEN_T)
+ <.\server\test_char.h
+<<
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+InputPath=.\server\gen_test_char.exe
+USERDEP__GEN_T=".\include\os.h"
+
+".\server\test_char.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" $(USERDEP__GEN_T)
+ <.\server\test_char.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\build\win32\httpd.rc
+
+!IF "$(CFG)" == "libhttpd - Win32 Release"
+
+
+"$(INTDIR)\libhttpd.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) /l 0x409 /fo"$(INTDIR)\libhttpd.res" /i "./include" /i "./srclib/apr/include" /i "build\win32" /d "NDEBUG" /d BIN_NAME="libhttpd.dll" /d LONG_NAME="Apache HTTP Server Core" $(SOURCE)
+
+
+!ELSEIF "$(CFG)" == "libhttpd - Win32 Debug"
+
+
+"$(INTDIR)\libhttpd.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) /l 0x409 /fo"$(INTDIR)\libhttpd.res" /i "./include" /i "./srclib/apr/include" /i "build\win32" /d "_DEBUG" /d BIN_NAME="libhttpd.dll" /d LONG_NAME="Apache HTTP Server Core" $(SOURCE)
+
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/mod_ssl.mak b/iis/winbuild/mod_ssl.mak
new file mode 100644
index 00000000..db5baf60
--- /dev/null
+++ b/iis/winbuild/mod_ssl.mak
@@ -0,0 +1,733 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on mod_ssl.dsp
+!IF "$(CFG)" == ""
+CFG=mod_ssl - Win32 Release
+!MESSAGE No configuration specified. Defaulting to mod_ssl - Win32 Release.
+!ENDIF
+
+!IF "$(CFG)" != "mod_ssl - Win32 Release" && "$(CFG)" != "mod_ssl - Win32 Debug" && "$(CFG)" != "mod_ssl - Win32 Lexical"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "mod_ssl.mak" CFG="mod_ssl - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "mod_ssl - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "mod_ssl - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "mod_ssl - Win32 Lexical" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "libhttpd - Win32 Release" "libaprutil - Win32 Release" "libapr - Win32 Release" "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 ReleaseCLEAN" "libaprutil - Win32 ReleaseCLEAN" "libhttpd - Win32 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\mod_ssl.obj"
+ -@erase "$(INTDIR)\mod_ssl.res"
+ -@erase "$(INTDIR)\mod_ssl_src.idb"
+ -@erase "$(INTDIR)\mod_ssl_src.pdb"
+ -@erase "$(INTDIR)\ssl_engine_config.obj"
+ -@erase "$(INTDIR)\ssl_engine_dh.obj"
+ -@erase "$(INTDIR)\ssl_engine_init.obj"
+ -@erase "$(INTDIR)\ssl_engine_io.obj"
+ -@erase "$(INTDIR)\ssl_engine_kernel.obj"
+ -@erase "$(INTDIR)\ssl_engine_log.obj"
+ -@erase "$(INTDIR)\ssl_engine_mutex.obj"
+ -@erase "$(INTDIR)\ssl_engine_pphrase.obj"
+ -@erase "$(INTDIR)\ssl_engine_rand.obj"
+ -@erase "$(INTDIR)\ssl_engine_vars.obj"
+ -@erase "$(INTDIR)\ssl_expr.obj"
+ -@erase "$(INTDIR)\ssl_expr_eval.obj"
+ -@erase "$(INTDIR)\ssl_expr_parse.obj"
+ -@erase "$(INTDIR)\ssl_expr_scan.obj"
+ -@erase "$(INTDIR)\ssl_scache.obj"
+ -@erase "$(INTDIR)\ssl_scache_dbm.obj"
+ -@erase "$(INTDIR)\ssl_scache_dc.obj"
+ -@erase "$(INTDIR)\ssl_scache_shmcb.obj"
+ -@erase "$(INTDIR)\ssl_util.obj"
+ -@erase "$(INTDIR)\ssl_util_ssl.obj"
+ -@erase "$(OUTDIR)\mod_ssl.exp"
+ -@erase "$(OUTDIR)\mod_ssl.lib"
+ -@erase "$(OUTDIR)\mod_ssl.pdb"
+ -@erase "$(OUTDIR)\mod_ssl.so"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "../../include" /I "../generators" /I "../../srclib/apr/include" /I "../../srclib/apr-util/include" /I "../../srclib/openssl/inc32" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "WIN32_LEAN_AND_MEAN" /D "NO_IDEA" /D "NO_RC5" /D "NO_MDC2" /D "OPENSSL_NO_IDEA" /D "OPENSSL_NO_RC5" /D "OPENSSL_NO_MDC2" /D "HAVE_OPENSSL" /D "HAVE_SSL_SET_STATE" /D "HAVE_OPENSSL_ENGINE_H" /D "HAVE_ENGINE_INIT" /D "HAVE_ENGINE_LOAD_BUILTIN_ENGINES" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\mod_ssl_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /d "NDEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\mod_ssl.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib user32.lib wsock32.lib ws2_32.lib advapi32.lib gdi32.lib libeay32.lib ssleay32.lib /nologo /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\mod_ssl.pdb" /debug /out:"$(OUTDIR)\mod_ssl.so" /implib:"$(OUTDIR)\mod_ssl.lib" /libpath:"../../srclib/openssl/out32dll" /libpath:"../../srclib/openssl/out32" /base:@..\..\os\win32\BaseAddr.ref,mod_ssl.so /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\mod_ssl.obj" \
+ "$(INTDIR)\ssl_engine_config.obj" \
+ "$(INTDIR)\ssl_engine_dh.obj" \
+ "$(INTDIR)\ssl_engine_init.obj" \
+ "$(INTDIR)\ssl_engine_io.obj" \
+ "$(INTDIR)\ssl_engine_kernel.obj" \
+ "$(INTDIR)\ssl_engine_log.obj" \
+ "$(INTDIR)\ssl_engine_mutex.obj" \
+ "$(INTDIR)\ssl_engine_pphrase.obj" \
+ "$(INTDIR)\ssl_engine_rand.obj" \
+ "$(INTDIR)\ssl_engine_vars.obj" \
+ "$(INTDIR)\ssl_expr.obj" \
+ "$(INTDIR)\ssl_expr_eval.obj" \
+ "$(INTDIR)\ssl_expr_parse.obj" \
+ "$(INTDIR)\ssl_expr_scan.obj" \
+ "$(INTDIR)\ssl_scache.obj" \
+ "$(INTDIR)\ssl_scache_dbm.obj" \
+ "$(INTDIR)\ssl_scache_shmcb.obj" \
+ "$(INTDIR)\ssl_scache_dc.obj" \
+ "$(INTDIR)\ssl_util.obj" \
+ "$(INTDIR)\ssl_util_ssl.obj" \
+ "$(INTDIR)\mod_ssl.res" \
+ "..\..\srclib\apr\Release\libapr-1.lib" \
+ "..\..\srclib\apr-util\Release\libaprutil-1.lib" \
+ "..\..\Release\libhttpd.lib"
+
+"$(OUTDIR)\mod_ssl.so" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Release\mod_ssl.so
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\mod_ssl.so"
+ if exist .\Release\mod_ssl.so.manifest mt.exe -manifest .\Release\mod_ssl.so.manifest -outputresource:.\Release\mod_ssl.so;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : "libhttpd - Win32 Debug" "libaprutil - Win32 Debug" "libapr - Win32 Debug" "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"libapr - Win32 DebugCLEAN" "libaprutil - Win32 DebugCLEAN" "libhttpd - Win32 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\mod_ssl.obj"
+ -@erase "$(INTDIR)\mod_ssl.res"
+ -@erase "$(INTDIR)\mod_ssl_src.idb"
+ -@erase "$(INTDIR)\mod_ssl_src.pdb"
+ -@erase "$(INTDIR)\ssl_engine_config.obj"
+ -@erase "$(INTDIR)\ssl_engine_dh.obj"
+ -@erase "$(INTDIR)\ssl_engine_init.obj"
+ -@erase "$(INTDIR)\ssl_engine_io.obj"
+ -@erase "$(INTDIR)\ssl_engine_kernel.obj"
+ -@erase "$(INTDIR)\ssl_engine_log.obj"
+ -@erase "$(INTDIR)\ssl_engine_mutex.obj"
+ -@erase "$(INTDIR)\ssl_engine_pphrase.obj"
+ -@erase "$(INTDIR)\ssl_engine_rand.obj"
+ -@erase "$(INTDIR)\ssl_engine_vars.obj"
+ -@erase "$(INTDIR)\ssl_expr.obj"
+ -@erase "$(INTDIR)\ssl_expr_eval.obj"
+ -@erase "$(INTDIR)\ssl_expr_parse.obj"
+ -@erase "$(INTDIR)\ssl_expr_scan.obj"
+ -@erase "$(INTDIR)\ssl_scache.obj"
+ -@erase "$(INTDIR)\ssl_scache_dbm.obj"
+ -@erase "$(INTDIR)\ssl_scache_dc.obj"
+ -@erase "$(INTDIR)\ssl_scache_shmcb.obj"
+ -@erase "$(INTDIR)\ssl_util.obj"
+ -@erase "$(INTDIR)\ssl_util_ssl.obj"
+ -@erase "$(OUTDIR)\mod_ssl.exp"
+ -@erase "$(OUTDIR)\mod_ssl.lib"
+ -@erase "$(OUTDIR)\mod_ssl.pdb"
+ -@erase "$(OUTDIR)\mod_ssl.so"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /I "../../include" /I "../generators" /I "../../srclib/apr/include" /I "../../srclib/apr-util/include" /I "../../srclib/openssl/inc32" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "WIN32_LEAN_AND_MEAN" /D "NO_IDEA" /D "NO_RC5" /D "NO_MDC2" /D "OPENSSL_NO_IDEA" /D "OPENSSL_NO_RC5" /D "OPENSSL_NO_MDC2" /D "HAVE_OPENSSL" /D "HAVE_SSL_SET_STATE" /D "HAVE_OPENSSL_ENGINE_H" /D "HAVE_ENGINE_INIT" /D "HAVE_ENGINE_LOAD_BUILTIN_ENGINES" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\mod_ssl_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /d "_DEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\mod_ssl.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib user32.lib wsock32.lib ws2_32.lib advapi32.lib gdi32.lib libeay32.lib ssleay32.lib /nologo /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\mod_ssl.pdb" /debug /out:"$(OUTDIR)\mod_ssl.so" /implib:"$(OUTDIR)\mod_ssl.lib" /libpath:"../../srclib/openssl/out32dll.dbg" /libpath:"../../srclib/openssl/out32.dbg" /libpath:"../../srclib/openssl/out32dll" /libpath:"../../srclib/openssl/out32" /base:@..\..\os\win32\BaseAddr.ref,mod_ssl.so
+LINK32_OBJS= \
+ "$(INTDIR)\mod_ssl.obj" \
+ "$(INTDIR)\ssl_engine_config.obj" \
+ "$(INTDIR)\ssl_engine_dh.obj" \
+ "$(INTDIR)\ssl_engine_init.obj" \
+ "$(INTDIR)\ssl_engine_io.obj" \
+ "$(INTDIR)\ssl_engine_kernel.obj" \
+ "$(INTDIR)\ssl_engine_log.obj" \
+ "$(INTDIR)\ssl_engine_mutex.obj" \
+ "$(INTDIR)\ssl_engine_pphrase.obj" \
+ "$(INTDIR)\ssl_engine_rand.obj" \
+ "$(INTDIR)\ssl_engine_vars.obj" \
+ "$(INTDIR)\ssl_expr.obj" \
+ "$(INTDIR)\ssl_expr_eval.obj" \
+ "$(INTDIR)\ssl_expr_parse.obj" \
+ "$(INTDIR)\ssl_expr_scan.obj" \
+ "$(INTDIR)\ssl_scache.obj" \
+ "$(INTDIR)\ssl_scache_dbm.obj" \
+ "$(INTDIR)\ssl_scache_shmcb.obj" \
+ "$(INTDIR)\ssl_scache_dc.obj" \
+ "$(INTDIR)\ssl_util.obj" \
+ "$(INTDIR)\ssl_util_ssl.obj" \
+ "$(INTDIR)\mod_ssl.res" \
+ "..\..\srclib\apr\Debug\libapr-1.lib" \
+ "..\..\srclib\apr-util\Debug\libaprutil-1.lib" \
+ "..\..\Debug\libhttpd.lib"
+
+"$(OUTDIR)\mod_ssl.so" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Debug\mod_ssl.so
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\mod_ssl.so"
+ if exist .\Debug\mod_ssl.so.manifest mt.exe -manifest .\Debug\mod_ssl.so.manifest -outputresource:.\Debug\mod_ssl.so;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\ssl_expr_parse.h" ".\ssl_expr_parse.c" "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ELSE
+
+ALL : ".\ssl_expr_parse.h" ".\ssl_expr_parse.c" "$(OUTDIR)\mod_ssl.so" "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\mod_ssl.obj"
+ -@erase "$(INTDIR)\mod_ssl.res"
+ -@erase "$(INTDIR)\mod_ssl_src.idb"
+ -@erase "$(INTDIR)\mod_ssl_src.pdb"
+ -@erase "$(INTDIR)\ssl_engine_config.obj"
+ -@erase "$(INTDIR)\ssl_engine_dh.obj"
+ -@erase "$(INTDIR)\ssl_engine_init.obj"
+ -@erase "$(INTDIR)\ssl_engine_io.obj"
+ -@erase "$(INTDIR)\ssl_engine_kernel.obj"
+ -@erase "$(INTDIR)\ssl_engine_log.obj"
+ -@erase "$(INTDIR)\ssl_engine_mutex.obj"
+ -@erase "$(INTDIR)\ssl_engine_pphrase.obj"
+ -@erase "$(INTDIR)\ssl_engine_rand.obj"
+ -@erase "$(INTDIR)\ssl_engine_vars.obj"
+ -@erase "$(INTDIR)\ssl_expr.obj"
+ -@erase "$(INTDIR)\ssl_expr_eval.obj"
+ -@erase "$(INTDIR)\ssl_expr_parse.obj"
+ -@erase "$(INTDIR)\ssl_expr_scan.obj"
+ -@erase "$(INTDIR)\ssl_scache.obj"
+ -@erase "$(INTDIR)\ssl_scache_dbm.obj"
+ -@erase "$(INTDIR)\ssl_scache_dc.obj"
+ -@erase "$(INTDIR)\ssl_scache_shmcb.obj"
+ -@erase "$(INTDIR)\ssl_util.obj"
+ -@erase "$(INTDIR)\ssl_util_ssl.obj"
+ -@erase "$(OUTDIR)\mod_ssl.exp"
+ -@erase "$(OUTDIR)\mod_ssl.lib"
+ -@erase "$(OUTDIR)\mod_ssl.pdb"
+ -@erase "$(OUTDIR)\mod_ssl.so"
+ -@erase "ssl_expr_parse.c"
+ -@erase "ssl_expr_parse.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /Oy- /I "../../include" /I "../generators" /I "../../srclib/apr/include" /I "../../srclib/apr-util/include" /I "../../srclib/openssl/inc32" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "WIN32_LEAN_AND_MEAN" /D "NO_IDEA" /D "NO_RC5" /D "NO_MDC2" /D "OPENSSL_NO_IDEA" /D "OPENSSL_NO_RC5" /D "OPENSSL_NO_MDC2" /D "HAVE_OPENSSL" /D "HAVE_SSL_SET_STATE" /D "HAVE_OPENSSL_ENGINE_H" /D "HAVE_ENGINE_INIT" /D "HAVE_ENGINE_LOAD_BUILTIN_ENGINES" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\mod_ssl_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+MTL=midl.exe
+MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
+RSC=rc.exe
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /d "NDEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache"
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\mod_ssl.bsc"
+BSC32_SBRS= \
+
+LINK32=link.exe
+LINK32_FLAGS=kernel32.lib user32.lib wsock32.lib ws2_32.lib advapi32.lib gdi32.lib libeay32.lib ssleay32.lib /nologo /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\mod_ssl.pdb" /debug /out:"$(OUTDIR)\mod_ssl.so" /implib:"$(OUTDIR)\mod_ssl.lib" /libpath:"../../srclib/openssl/out32dll" /libpath:"../../srclib/openssl/out32" /base:@..\..\os\win32\BaseAddr.ref,mod_ssl.so /opt:ref
+LINK32_OBJS= \
+ "$(INTDIR)\mod_ssl.obj" \
+ "$(INTDIR)\ssl_engine_config.obj" \
+ "$(INTDIR)\ssl_engine_dh.obj" \
+ "$(INTDIR)\ssl_engine_init.obj" \
+ "$(INTDIR)\ssl_engine_io.obj" \
+ "$(INTDIR)\ssl_engine_kernel.obj" \
+ "$(INTDIR)\ssl_engine_log.obj" \
+ "$(INTDIR)\ssl_engine_mutex.obj" \
+ "$(INTDIR)\ssl_engine_pphrase.obj" \
+ "$(INTDIR)\ssl_engine_rand.obj" \
+ "$(INTDIR)\ssl_engine_vars.obj" \
+ "$(INTDIR)\ssl_expr.obj" \
+ "$(INTDIR)\ssl_expr_eval.obj" \
+ "$(INTDIR)\ssl_expr_parse.obj" \
+ "$(INTDIR)\ssl_expr_scan.obj" \
+ "$(INTDIR)\ssl_scache.obj" \
+ "$(INTDIR)\ssl_scache_dbm.obj" \
+ "$(INTDIR)\ssl_scache_shmcb.obj" \
+ "$(INTDIR)\ssl_scache_dc.obj" \
+ "$(INTDIR)\ssl_util.obj" \
+ "$(INTDIR)\ssl_util_ssl.obj" \
+ "$(INTDIR)\mod_ssl.res"
+
+"$(OUTDIR)\mod_ssl.so" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+ $(LINK32) @<<
+ $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+TargetPath=.\Release\mod_ssl.so
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+DS_POSTBUILD_DEP=$(INTDIR)\postbld.dep
+
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+"$(DS_POSTBUILD_DEP)" : "$(OUTDIR)\mod_ssl.so"
+ if exist .\Release\mod_ssl.so.manifest mt.exe -manifest .\Release\mod_ssl.so.manifest -outputresource:.\Release\mod_ssl.so;2
+ echo Helper for Post-build step > "$(DS_POSTBUILD_DEP)"
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("mod_ssl.dep")
+!INCLUDE "mod_ssl.dep"
+!ELSE
+!MESSAGE Warning: cannot find "mod_ssl.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release" || "$(CFG)" == "mod_ssl - Win32 Debug" || "$(CFG)" == "mod_ssl - Win32 Lexical"
+SOURCE=.\mod_ssl.c
+
+"$(INTDIR)\mod_ssl.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_config.c
+
+"$(INTDIR)\ssl_engine_config.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_dh.c
+
+"$(INTDIR)\ssl_engine_dh.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_init.c
+
+"$(INTDIR)\ssl_engine_init.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_io.c
+
+"$(INTDIR)\ssl_engine_io.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_kernel.c
+
+"$(INTDIR)\ssl_engine_kernel.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_log.c
+
+"$(INTDIR)\ssl_engine_log.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_mutex.c
+
+"$(INTDIR)\ssl_engine_mutex.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_pphrase.c
+
+"$(INTDIR)\ssl_engine_pphrase.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_rand.c
+
+"$(INTDIR)\ssl_engine_rand.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_engine_vars.c
+
+"$(INTDIR)\ssl_engine_vars.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_expr.c
+
+"$(INTDIR)\ssl_expr.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_expr_eval.c
+
+"$(INTDIR)\ssl_expr_eval.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_expr_parse.c
+
+"$(INTDIR)\ssl_expr_parse.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_expr_scan.c
+
+"$(INTDIR)\ssl_expr_scan.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_scache.c
+
+"$(INTDIR)\ssl_scache.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_scache_dbm.c
+
+"$(INTDIR)\ssl_scache_dbm.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_scache_dc.c
+
+"$(INTDIR)\ssl_scache_dc.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_scache_shmcb.c
+
+"$(INTDIR)\ssl_scache_shmcb.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_util.c
+
+"$(INTDIR)\ssl_util.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_util_ssl.c
+
+"$(INTDIR)\ssl_util_ssl.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\ssl_expr_parse.y
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+InputPath=.\ssl_expr_parse.y
+
+".\ssl_expr_parse.c" ".\ssl_expr_parse.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ <ssl_expr_parse.c
+ del y.tab.c
+ sed -e "s;yy;ssl_expr_yy;g" ssl_expr_parse.h
+ del y.tab.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\ssl_expr_scan.l
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+InputPath=.\ssl_expr_scan.l
+
+".\ssl_expr_scan.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ <ssl_expr_scan.c
+ del lex.ssl_expr_yy.c
+<<
+
+
+!ENDIF
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+"libapr - Win32 Release" :
+ cd ".\..\..\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release"
+ cd "..\..\modules\ssl"
+
+"libapr - Win32 ReleaseCLEAN" :
+ cd ".\..\..\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Release" RECURSE=1 CLEAN
+ cd "..\..\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+"libapr - Win32 Debug" :
+ cd ".\..\..\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug"
+ cd "..\..\modules\ssl"
+
+"libapr - Win32 DebugCLEAN" :
+ cd ".\..\..\srclib\apr"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libapr.mak" CFG="libapr - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\..\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+!ENDIF
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+"libaprutil - Win32 Release" :
+ cd ".\..\..\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Release"
+ cd "..\..\modules\ssl"
+
+"libaprutil - Win32 ReleaseCLEAN" :
+ cd ".\..\..\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Release" RECURSE=1 CLEAN
+ cd "..\..\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+"libaprutil - Win32 Debug" :
+ cd ".\..\..\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Debug"
+ cd "..\..\modules\ssl"
+
+"libaprutil - Win32 DebugCLEAN" :
+ cd ".\..\..\srclib\apr-util"
+ $(MAKE) /$(MAKEFLAGS) /F ".\libaprutil.mak" CFG="libaprutil - Win32 Debug" RECURSE=1 CLEAN
+ cd "..\..\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+!ENDIF
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+"libhttpd - Win32 Release" :
+ cd ".\..\.."
+ $(MAKE) /$(MAKEFLAGS) /F ".\libhttpd.mak" CFG="libhttpd - Win32 Release"
+ cd ".\modules\ssl"
+
+"libhttpd - Win32 ReleaseCLEAN" :
+ cd ".\..\.."
+ $(MAKE) /$(MAKEFLAGS) /F ".\libhttpd.mak" CFG="libhttpd - Win32 Release" RECURSE=1 CLEAN
+ cd ".\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+"libhttpd - Win32 Debug" :
+ cd ".\..\.."
+ $(MAKE) /$(MAKEFLAGS) /F ".\libhttpd.mak" CFG="libhttpd - Win32 Debug"
+ cd ".\modules\ssl"
+
+"libhttpd - Win32 DebugCLEAN" :
+ cd ".\..\.."
+ $(MAKE) /$(MAKEFLAGS) /F ".\libhttpd.mak" CFG="libhttpd - Win32 Debug" RECURSE=1 CLEAN
+ cd ".\modules\ssl"
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+!ENDIF
+
+SOURCE=..\..\build\win32\httpd.rc
+
+!IF "$(CFG)" == "mod_ssl - Win32 Release"
+
+
+"$(INTDIR)\mod_ssl.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) /l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /i ".\..\..\build\win32" /d "NDEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache" $(SOURCE)
+
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Debug"
+
+
+"$(INTDIR)\mod_ssl.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) /l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /i ".\..\..\build\win32" /d "_DEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache" $(SOURCE)
+
+
+!ELSEIF "$(CFG)" == "mod_ssl - Win32 Lexical"
+
+
+"$(INTDIR)\mod_ssl.res" : $(SOURCE) "$(INTDIR)"
+ $(RSC) /l 0x409 /fo"$(INTDIR)\mod_ssl.res" /i "../../include" /i "../../srclib/apr/include" /i ".\..\..\build\win32" /d "NDEBUG" /d BIN_NAME="mod_ssl.so" /d LONG_NAME="proxy_ssl_module for Apache" $(SOURCE)
+
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/pcre.mak b/iis/winbuild/pcre.mak
new file mode 100644
index 00000000..54266a85
--- /dev/null
+++ b/iis/winbuild/pcre.mak
@@ -0,0 +1,340 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on pcre.dsp
+!IF "$(CFG)" == ""
+CFG=pcre - Win32 Debug
+!MESSAGE No configuration specified. Defaulting to pcre - Win32 Debug.
+!ENDIF
+
+!IF "$(CFG)" != "pcre - Win32 Release" && "$(CFG)" != "pcre - Win32 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "pcre.mak" CFG="pcre - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "pcre - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "pcre - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+!ERROR An invalid configuration is specified.
+!ENDIF
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE
+NULL=nul
+!ENDIF
+
+!IF "$(CFG)" == "pcre - Win32 Release"
+
+OUTDIR=.\LibR
+INTDIR=.\LibR
+# Begin Custom Macros
+OutDir=.\LibR
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : "$(OUTDIR)\pcre.lib"
+
+!ELSE
+
+ALL : "dftables - Win32 Release" "$(OUTDIR)\pcre.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"dftables - Win32 ReleaseCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\get.obj"
+ -@erase "$(INTDIR)\maketables.obj"
+ -@erase "$(INTDIR)\pcre.obj"
+ -@erase "$(INTDIR)\pcre_src.idb"
+ -@erase "$(INTDIR)\pcre_src.pdb"
+ -@erase "$(INTDIR)\study.obj"
+ -@erase "$(OUTDIR)\pcre.lib"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MD /W3 /Zi /O2 /D "_WIN32" /D "NDEBUG" /D "_WINDOWS" /D "PCRE_STATIC" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\pcre_src" /FD /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\pcre.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\pcre.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\get.obj" \
+ "$(INTDIR)\maketables.obj" \
+ "$(INTDIR)\pcre.obj" \
+ "$(INTDIR)\study.obj"
+
+"$(OUTDIR)\pcre.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ELSEIF "$(CFG)" == "pcre - Win32 Debug"
+
+OUTDIR=.\LibD
+INTDIR=.\LibD
+# Begin Custom Macros
+OutDir=.\LibD
+# End Custom Macros
+
+!IF "$(RECURSE)" == "0"
+
+ALL : ".\pcre.h" ".\config.h" ".\chartables.c" "$(OUTDIR)\pcre.lib"
+
+!ELSE
+
+ALL : "dftables - Win32 Debug" ".\pcre.h" ".\config.h" ".\chartables.c" "$(OUTDIR)\pcre.lib"
+
+!ENDIF
+
+!IF "$(RECURSE)" == "1"
+CLEAN :"dftables - Win32 DebugCLEAN"
+!ELSE
+CLEAN :
+!ENDIF
+ -@erase "$(INTDIR)\get.obj"
+ -@erase "$(INTDIR)\maketables.obj"
+ -@erase "$(INTDIR)\pcre.obj"
+ -@erase "$(INTDIR)\pcre_src.idb"
+ -@erase "$(INTDIR)\pcre_src.pdb"
+ -@erase "$(INTDIR)\study.obj"
+ -@erase "$(OUTDIR)\pcre.lib"
+ -@erase ".\chartables.c"
+ -@erase ".\config.h"
+ -@erase ".\pcre.h"
+
+"$(OUTDIR)" :
+ if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP=cl.exe
+CPP_PROJ=/nologo /MDd /W3 /Zi /Od /D "_WIN32" /D "_DEBUG" /D "_WINDOWS" /D "PCRE_STATIC" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\pcre_src" /FD /EHsc /c
+
+.c{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.obj::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.c{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cpp{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+.cxx{$(INTDIR)}.sbr::
+ $(CPP) @<<
+ $(CPP_PROJ) $<
+<<
+
+RSC=rc.exe
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\pcre.bsc"
+BSC32_SBRS= \
+
+LIB32=link.exe -lib
+LIB32_FLAGS=/nologo /out:"$(OUTDIR)\pcre.lib"
+LIB32_OBJS= \
+ "$(INTDIR)\get.obj" \
+ "$(INTDIR)\maketables.obj" \
+ "$(INTDIR)\pcre.obj" \
+ "$(INTDIR)\study.obj"
+
+"$(OUTDIR)\pcre.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
+ $(LIB32) @<<
+ $(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
+<<
+
+!ENDIF
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("pcre.dep")
+!INCLUDE "pcre.dep"
+!ELSE
+!MESSAGE Warning: cannot find "pcre.dep"
+!ENDIF
+!ENDIF
+
+
+!IF "$(CFG)" == "pcre - Win32 Release" || "$(CFG)" == "pcre - Win32 Debug"
+SOURCE=.\dftables.exe
+
+!IF "$(CFG)" == "pcre - Win32 Release"
+
+InputPath=.\dftables.exe
+
+".\chartables.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\config.h
+<<
+
+
+!ELSEIF "$(CFG)" == "pcre - Win32 Debug"
+
+InputPath=.\config.hw
+
+".\config.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\config.h
+<<
+
+
+!ENDIF
+
+SOURCE=.\pcre.hw
+
+!IF "$(CFG)" == "pcre - Win32 Release"
+
+InputPath=.\pcre.hw
+
+".\pcre.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\pcre.h
+<<
+
+
+!ELSEIF "$(CFG)" == "pcre - Win32 Debug"
+
+InputPath=.\pcre.hw
+
+".\pcre.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ < .\pcre.h
+<<
+
+
+!ENDIF
+
+!IF "$(CFG)" == "pcre - Win32 Release"
+
+"dftables - Win32 Release" :
+ cd "."
+ $(MAKE) /$(MAKEFLAGS) /F ".\dftables.mak" CFG="dftables - Win32 Release"
+ cd "."
+
+"dftables - Win32 ReleaseCLEAN" :
+ cd "."
+ $(MAKE) /$(MAKEFLAGS) /F ".\dftables.mak" CFG="dftables - Win32 Release" RECURSE=1 CLEAN
+ cd "."
+
+!ELSEIF "$(CFG)" == "pcre - Win32 Debug"
+
+"dftables - Win32 Debug" :
+ cd "."
+ $(MAKE) /$(MAKEFLAGS) /F ".\dftables.mak" CFG="dftables - Win32 Debug"
+ cd "."
+
+"dftables - Win32 DebugCLEAN" :
+ cd "."
+ $(MAKE) /$(MAKEFLAGS) /F ".\dftables.mak" CFG="dftables - Win32 Debug" RECURSE=1 CLEAN
+ cd "."
+
+!ENDIF
+
+
+!ENDIF
+
diff --git a/iis/winbuild/vcvars64.bat b/iis/winbuild/vcvars64.bat
new file mode 100644
index 00000000..c7794638
--- /dev/null
+++ b/iis/winbuild/vcvars64.bat
@@ -0,0 +1,113 @@
+@echo Setting environment for using Microsoft Visual Studio 2010 x64 tools.
+
+@call :GetVSCommonToolsDir
+@if "%VS100COMNTOOLS%"=="" goto error_no_VS100COMNTOOLSDIR
+
+@call "%VS100COMNTOOLS%VCVarsQueryRegistry.bat" No32bit 64bit
+
+@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
+@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR
+@if "%FrameworkDir64%"=="" goto error_no_FrameworkDIR64
+@if "%FrameworkVersion64%"=="" goto error_no_FrameworkVer64
+@if "%Framework35Version%"=="" goto error_no_Framework35Version
+
+@set FrameworkDir=%FrameworkDir64%
+@set FrameworkVersion=%FrameworkVersion64%
+
+@if not "%WindowsSdkDir%" == "" (
+ @set "PATH=%WindowsSdkDir%bin\NETFX 4.0 Tools\x64;%WindowsSdkDir%bin\x64;%WindowsSdkDir%bin;%PATH%"
+ @set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%"
+ @set "LIB=%WindowsSdkDir%lib\x64;%LIB%"
+)
+
+@rem PATH
+@rem ----
+@if exist "%VSINSTALLDIR%Team Tools\Performance Tools\x64" (
+ @set "PATH=%VSINSTALLDIR%Team Tools\Performance Tools\x64;%VSINSTALLDIR%Team Tools\Performance Tools;%PATH%"
+)
+@if exist "%ProgramFiles%\HTML Help Workshop" set PATH=%ProgramFiles%\HTML Help Workshop;%PATH%
+@if exist "%ProgramFiles(x86)%\HTML Help Workshop" set PATH=%ProgramFiles(x86)%\HTML Help Workshop;%PATH%
+@set PATH=%VSINSTALLDIR%Common7\Tools;%PATH%
+@set PATH=%VSINSTALLDIR%Common7\IDE;%PATH%
+@set PATH=%VCINSTALLDIR%VCPackages;%PATH%
+@set PATH=%FrameworkDir%\%Framework35Version%;%PATH%
+@set PATH=%FrameworkDir%\%FrameworkVersion%;%PATH%
+@set PATH=%VCINSTALLDIR%BIN\amd64;%PATH%
+
+@rem INCLUDE
+@rem -------
+@if exist "%VCINSTALLDIR%ATLMFC\INCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFC\INCLUDE;%INCLUDE%
+@set INCLUDE=%VCINSTALLDIR%INCLUDE;%INCLUDE%
+
+@rem LIB
+@rem ---
+@if exist "%VCINSTALLDIR%ATLMFC\LIB\amd64" set LIB=%VCINSTALLDIR%ATLMFC\LIB\amd64;%LIB%
+@set LIB=%VCINSTALLDIR%LIB\amd64;%LIB%
+
+@rem LIBPATH
+@rem -------
+@if exist "%VCINSTALLDIR%ATLMFC\LIB\amd64" set LIBPATH=%VCINSTALLDIR%ATLMFC\LIB\amd64;%LIBPATH%
+@set LIBPATH=%VCINSTALLDIR%LIB\amd64;%LIBPATH%
+@set LIBPATH=%FrameworkDir%\%Framework35Version%;%LIBPATH%
+@set LIBPATH=%FrameworkDir%\%FrameworkVersion%;%LIBPATH%
+
+@set Platform=X64
+@set CommandPromptType=Native
+
+@goto end
+
+@REM -----------------------------------------------------------------------
+:GetVSCommonToolsDir
+@set VS100COMNTOOLS=
+@call :GetVSCommonToolsDirHelper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetVSCommonToolsDirHelper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VS100COMNTOOLS=%%k"
+ )
+)
+@if "%VS100COMNTOOLS%"=="" exit /B 1
+@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
+@exit /B 0
+
+:GetVSCommonToolsDirHelper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VS100COMNTOOLS=%%k"
+ )
+)
+@if "%VS100COMNTOOLS%"=="" exit /B 1
+@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:error_no_VS100COMNTOOLSDIR
+@echo ERROR: Cannot determine the location of the VS Common Tools folder.
+@goto end
+
+:error_no_VSINSTALLDIR
+@echo ERROR: Cannot determine the location of the VS installation.
+@goto end
+
+:error_no_VCINSTALLDIR
+@echo ERROR: Cannot determine the location of the VC installation.
+@goto end
+
+:error_no_FrameworkDIR64
+@echo ERROR: Cannot determine the location of the .NET Framework 64bit installation.
+@goto end
+
+:error_no_FrameworkVer64
+@echo ERROR: Cannot determine the version of the .NET Framework 64bit installation.
+@goto end
+
+:error_no_Framework35Version
+@echo ERROR: Cannot determine the .NET Framework 3.5 version.
+@goto end
+
+:end
diff --git a/iis/winbuild/vsvars32.bat b/iis/winbuild/vsvars32.bat
new file mode 100644
index 00000000..cdfc24ba
--- /dev/null
+++ b/iis/winbuild/vsvars32.bat
@@ -0,0 +1,118 @@
+@echo Setting environment for using Microsoft Visual Studio 2010 x86 tools.
+
+@call :GetVSCommonToolsDir
+@if "%VS100COMNTOOLS%"=="" goto error_no_VS100COMNTOOLSDIR
+
+@call "%VS100COMNTOOLS%VCVarsQueryRegistry.bat" 32bit No64bit
+
+@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
+@if "%FrameworkDir32%"=="" goto error_no_FrameworkDIR32
+@if "%FrameworkVersion32%"=="" goto error_no_FrameworkVer32
+@if "%Framework35Version%"=="" goto error_no_Framework35Version
+
+@set FrameworkDir=%FrameworkDir32%
+@set FrameworkVersion=%FrameworkVersion32%
+
+@if not "%WindowsSdkDir%" == "" (
+ @set "PATH=%WindowsSdkDir%bin\NETFX 4.0 Tools;%WindowsSdkDir%bin;%PATH%"
+ @set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%"
+ @set "LIB=%WindowsSdkDir%lib;%LIB%"
+)
+
+@rem
+@rem Root of Visual Studio IDE installed files.
+@rem
+@set DevEnvDir=%VSINSTALLDIR%Common7\IDE\
+
+@rem PATH
+@rem ----
+@if exist "%VSINSTALLDIR%Team Tools\Performance Tools" (
+ @set "PATH=%VSINSTALLDIR%Team Tools\Performance Tools;%PATH%"
+)
+@if exist "%ProgramFiles%\HTML Help Workshop" set PATH=%ProgramFiles%\HTML Help Workshop;%PATH%
+@if exist "%ProgramFiles(x86)%\HTML Help Workshop" set PATH=%ProgramFiles(x86)%\HTML Help Workshop;%PATH%
+@if exist "%VCINSTALLDIR%VCPackages" set PATH=%VCINSTALLDIR%VCPackages;%PATH%
+@set PATH=%FrameworkDir%%Framework35Version%;%PATH%
+@set PATH=%FrameworkDir%%FrameworkVersion%;%PATH%
+@set PATH=%VSINSTALLDIR%Common7\Tools;%PATH%
+@if exist "%VCINSTALLDIR%BIN" set PATH=%VCINSTALLDIR%BIN;%PATH%
+@set PATH=%DevEnvDir%;%PATH%
+
+@if exist "%VSINSTALLDIR%VSTSDB\Deploy" (
+ @set "PATH=%VSINSTALLDIR%VSTSDB\Deploy;%PATH%"
+)
+
+@if not "%FSHARPINSTALLDIR%" == "" (
+ @set "PATH=%FSHARPINSTALLDIR%;%PATH%"
+)
+
+@rem INCLUDE
+@rem -------
+@if exist "%VCINSTALLDIR%ATLMFC\INCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFC\INCLUDE;%INCLUDE%
+@if exist "%VCINSTALLDIR%INCLUDE" set INCLUDE=%VCINSTALLDIR%INCLUDE;%INCLUDE%
+
+@rem LIB
+@rem ---
+@if exist "%VCINSTALLDIR%ATLMFC\LIB" set LIB=%VCINSTALLDIR%ATLMFC\LIB;%LIB%
+@if exist "%VCINSTALLDIR%LIB" set LIB=%VCINSTALLDIR%LIB;%LIB%
+
+@rem LIBPATH
+@rem -------
+@if exist "%VCINSTALLDIR%ATLMFC\LIB" set LIBPATH=%VCINSTALLDIR%ATLMFC\LIB;%LIBPATH%
+@if exist "%VCINSTALLDIR%LIB" set LIBPATH=%VCINSTALLDIR%LIB;%LIBPATH%
+@set LIBPATH=%FrameworkDir%%Framework35Version%;%LIBPATH%
+@set LIBPATH=%FrameworkDir%%FrameworkVersion%;%LIBPATH%
+
+@goto end
+
+@REM -----------------------------------------------------------------------
+:GetVSCommonToolsDir
+@set VS100COMNTOOLS=
+@call :GetVSCommonToolsDirHelper32 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper32 HKCU > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper64 HKLM > nul 2>&1
+@if errorlevel 1 call :GetVSCommonToolsDirHelper64 HKCU > nul 2>&1
+@exit /B 0
+
+:GetVSCommonToolsDirHelper32
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VS100COMNTOOLS=%%k"
+ )
+)
+@if "%VS100COMNTOOLS%"=="" exit /B 1
+@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
+@exit /B 0
+
+:GetVSCommonToolsDirHelper64
+@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
+ @if "%%i"=="10.0" (
+ @SET "VS100COMNTOOLS=%%k"
+ )
+)
+@if "%VS100COMNTOOLS%"=="" exit /B 1
+@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
+@exit /B 0
+
+@REM -----------------------------------------------------------------------
+:error_no_VS100COMNTOOLSDIR
+@echo ERROR: Cannot determine the location of the VS Common Tools folder.
+@goto end
+
+:error_no_VSINSTALLDIR
+@echo ERROR: Cannot determine the location of the VS installation.
+@goto end
+
+:error_no_FrameworkDIR32
+@echo ERROR: Cannot determine the location of the .NET Framework 32bit installation.
+@goto end
+
+:error_no_FrameworkVer32
+@echo ERROR: Cannot determine the version of the .NET Framework 32bit installation.
+@goto end
+
+:error_no_Framework35Version
+@echo ERROR: Cannot determine the .NET Framework 3.5 version.
+@goto end
+
+:end
diff --git a/nginx/TODO b/nginx/TODO
new file mode 100644
index 00000000..fb443444
--- /dev/null
+++ b/nginx/TODO
@@ -0,0 +1,15 @@
+Modsecurity NGINX TODO
+
+* Code Cleanup
+
+* Create a method for action DROP as in Apache
+
+* Add CRS Support
+
+* Specific NGINX config file
+
+* Separate nginx/ IIS/ apache/ and generic/ folders
+
+* Source code documentation (insert doxygen headers)
+
+* Create better build infrastructure with support for tests and automated regression
diff --git a/nginx/modsecurity/config b/nginx/modsecurity/config
new file mode 100644
index 00000000..faf96fd3
--- /dev/null
+++ b/nginx/modsecurity/config
@@ -0,0 +1,6 @@
+ngx_addon_name=ngx_http_modsecurity_module
+HTTP_MODULES="$HTTP_MODULES ngx_http_modsecurity_module"
+NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_modsecurity_module.c"
+NGX_ADDON_DEPS="$NGX_ADDON_DEPS"
+CORE_LIBS="$CORE_LIBS $ngx_addon_dir/../../standalone/.libs/standalone.a -lapr-1 -laprutil-1 -lxml2 -lm"
+CORE_INCS="$CORE_INCS /usr/include/apache2 /usr/include/apr-1.0 $ngx_addon_dir/../../standalone $ngx_addon_dir/../../apache2 /usr/include/libxml2"
diff --git a/nginx/modsecurity/ngx_http_modsecurity_module.c b/nginx/modsecurity/ngx_http_modsecurity_module.c
new file mode 100644
index 00000000..3206580d
--- /dev/null
+++ b/nginx/modsecurity/ngx_http_modsecurity_module.c
@@ -0,0 +1,413 @@
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#undef CR
+#undef LF
+#undef CRLF
+
+#include "api.h"
+
+extern ngx_module_t ngx_http_modsecurity_module;
+
+typedef struct
+{
+ ngx_log_t *log;
+} ngx_http_modsecurity_main_conf_t;
+
+typedef struct
+{
+ ngx_int_t request_processed;
+ ngx_int_t request_blocked;
+ ngx_int_t error;
+ ngx_flag_t enabled;
+ ngx_str_t config_path;
+ directory_config *config;
+} ngx_http_modsecurity_loc_conf_t;
+
+/*
+** Module's registred function/handlers.
+*/
+static ngx_int_t ngx_http_modsecurity_access_handler(ngx_http_request_t *r);
+static ngx_int_t ngx_http_modsecurity_init(ngx_conf_t *cf);
+static ngx_int_t ngx_http_modsecurity_init_process(ngx_cycle_t *cycle);
+static void ngx_http_modsecurity_exit_process(ngx_cycle_t *cycle);
+static void *ngx_http_modsecurity_create_loc_conf(ngx_conf_t *cf);
+static char *ngx_http_modsecurity_merge_loc_conf(ngx_conf_t *cf,
+ void *parent,
+ void *child);
+static ngx_int_t ngx_http_read_request_body(ngx_http_request_t *req,
+ ngx_http_client_body_handler_pt handler);
+void *ngx_http_modsecurity_create_main_conf(ngx_conf_t *cf);
+
+
+/* command handled by the module */
+static ngx_command_t ngx_http_modsecurity_commands[] = {
+ { ngx_string("ModSecurityConfig"),
+ NGX_HTTP_LOC_CONF|NGX_CONF_1MORE,
+ ngx_conf_set_str_slot,
+ NGX_HTTP_LOC_CONF_OFFSET,
+ offsetof(ngx_http_modsecurity_loc_conf_t, config_path),
+ NULL },
+ { ngx_string("ModSecurityEnabled"),
+ NGX_HTTP_LOC_CONF|NGX_CONF_FLAG,
+ ngx_conf_set_flag_slot,
+ NGX_HTTP_LOC_CONF_OFFSET,
+ offsetof(ngx_http_modsecurity_loc_conf_t, enabled),
+ NULL },
+ ngx_null_command
+};
+
+/*
+** handlers for configuration phases of the module
+*/
+
+static ngx_http_module_t ngx_http_modsecurity_module_ctx = {
+ NULL, /* preconfiguration */
+ ngx_http_modsecurity_init, /* postconfiguration */
+ ngx_http_modsecurity_create_main_conf, /* create main configuration */
+ NULL, /* init main configuration */
+ NULL, /* create server configuration */
+ NULL, /* merge server configuration */
+ ngx_http_modsecurity_create_loc_conf, /* create location configuration */
+ ngx_http_modsecurity_merge_loc_conf /* merge location configuration */
+};
+
+
+ngx_module_t ngx_http_modsecurity_module = {
+ NGX_MODULE_V1,
+ &ngx_http_modsecurity_module_ctx, /* module context */
+ ngx_http_modsecurity_commands, /* module directives */
+ NGX_HTTP_MODULE, /* module type */
+ NULL, /* init master */
+ NULL, /* init module */
+ ngx_http_modsecurity_init_process, /* init process */
+ NULL, /* init thread */
+ NULL, /* exit thread */
+ ngx_http_modsecurity_exit_process, /* exit process */
+ NULL, /* exit master */
+ NGX_MODULE_V1_PADDING
+};
+
+#define DEFAULT_MAX_LOC_T 10
+
+void *
+ngx_http_modsecurity_create_main_conf(ngx_conf_t *cf)
+{
+ ngx_http_modsecurity_main_conf_t *mc;
+
+ mc = ngx_pcalloc(cf->pool, sizeof(ngx_http_modsecurity_main_conf_t));
+ if (!mc)
+ return (NGX_CONF_ERROR);
+
+ return (mc);
+}
+
+
+/* create log conf struct */
+static void *
+ngx_http_modsecurity_create_loc_conf(ngx_conf_t *cf)
+{
+ ngx_http_modsecurity_loc_conf_t *conf;
+
+ conf = ngx_pcalloc(cf->pool, sizeof(ngx_http_modsecurity_loc_conf_t));
+ if (conf == NULL)
+ return NULL;
+
+ conf->enabled = NGX_CONF_UNSET;
+
+ return (conf);
+}
+
+/* merge loc conf */
+static char *
+ngx_http_modsecurity_merge_loc_conf(ngx_conf_t *cf, void *parent,
+ void *child)
+{
+ ngx_http_modsecurity_loc_conf_t *prev = parent;
+ ngx_http_modsecurity_loc_conf_t *conf = child;
+
+ if(conf->config_path.len == 0)
+ conf->config_path = prev->config_path;
+
+ ngx_conf_merge_value(conf->enabled, prev->enabled, 0);
+
+ return NGX_CONF_OK;
+}
+
+void modsecLog(void *obj, int level, char *str)
+{
+ if(obj != NULL)
+ ngx_log_error(NGX_LOG_INFO, (ngx_log_t *)obj, 0, str);
+}
+
+/*
+** This function sets up handlers for ACCESS_PHASE,
+*/
+static ngx_int_t
+ngx_http_modsecurity_init(ngx_conf_t *cf)
+{
+ ngx_http_handler_pt *h;
+ ngx_http_core_main_conf_t *cmcf;
+ ngx_http_modsecurity_main_conf_t *main_cf;
+// ngx_http_modsecurity_loc_conf_t **loc_cf;
+// unsigned int i;
+
+ cmcf = ngx_http_conf_get_module_main_conf(cf, ngx_http_core_module);
+ main_cf = ngx_http_conf_get_module_main_conf(cf, ngx_http_modsecurity_module);
+ if (cmcf == NULL ||
+ main_cf == NULL)
+ return (NGX_ERROR);
+
+ /* Register for access phase */
+ //h = ngx_array_push(&cmcf->phases[NGX_HTTP_ACCESS_PHASE].handlers);
+ h = ngx_array_push(&cmcf->phases[NGX_HTTP_REWRITE_PHASE].handlers);
+ if (h == NULL)
+ return (NGX_ERROR);
+ *h = ngx_http_modsecurity_access_handler;
+
+ return (NGX_OK);
+}
+
+static ngx_int_t
+ngx_http_modsecurity_init_process(ngx_cycle_t *cycle)
+{
+ cycle->log->log_level = NGX_LOG_INFO;
+
+ modsecSetLogHook(cycle->log, modsecLog);
+
+ modsecInit();
+
+ modsecStartConfig();
+
+ modsecFinalizeConfig();
+
+ modsecInitProcess();
+
+ return NGX_OK;
+}
+
+static void
+ngx_http_modsecurity_exit_process(ngx_cycle_t *cycle)
+{
+ modsecTerminate();
+}
+
+// This is a temporary hack to make PCRE work with ModSecurity
+// nginx hijacks pcre_malloc and pcre_free, so we have to re-hijack them
+//
+
+extern apr_pool_t *pool;
+
+void *modsec_pcre_malloc(size_t size)
+{
+ return apr_palloc(pool, size);
+}
+
+void modsec_pcre_free(void *ptr)
+{
+}
+
+char *ConvertNgxStringToUTF8(ngx_str_t str, apr_pool_t *pool)
+{
+ char *t = (char *)apr_palloc(pool, str.len + 1);
+
+ memcpy(t, str.data, str.len);
+ t[str.len] = 0;
+
+ return t;
+}
+
+/*
+ ** Create payload handler for calling request body function
+ */
+
+void
+ngx_http_dummy_payload_handler(ngx_http_request_t *req)
+{
+ ngx_http_finalize_request(req, NGX_DONE);
+}
+
+
+/*
+ ** If method is POST or PUT, read request body and put in req->request_body->bufs
+ */
+
+static ngx_int_t
+ngx_http_read_request_body(ngx_http_request_t *req,
+ ngx_http_client_body_handler_pt handler)
+{
+// If has body request treat it
+ ngx_int_t rc = 0;
+
+ if(req->method == NGX_HTTP_POST || req->method==NGX_HTTP_PUT)
+ {
+ //calling request body function
+ rc = ngx_http_read_client_request_body(req, ngx_http_dummy_payload_handler);
+ }
+ //If some error, returns rc
+ if (rc == NGX_ERROR || rc >= NGX_HTTP_SPECIAL_RESPONSE) {
+ return rc;
+ }
+ //Has the end of request body?
+ if (rc == NGX_AGAIN) {
+ return NGX_DONE;
+ }
+
+return NGX_DECLINED;
+}
+
+/*
+** [ENTRY POINT] does : this is the function called by nginx :
+*/
+static ngx_int_t ngx_http_modsecurity_access_handler(ngx_http_request_t *req)
+{
+/* ngx_http_request_ctx_t *ctx;
+ ngx_int_t rc;
+ ngx_http_core_loc_conf_t *clcf;
+ struct tms tmsstart, tmsend;
+ clock_t start, end;
+
+ ctx = ngx_http_get_module_ctx(r, ngx_http_modsecurity_module);
+
+ clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
+
+ if (ctx && ctx->over)
+ return (NGX_DECLINED);
+ if (ctx && ctx->wait_for_body) {
+ return (NGX_DONE);
+ }
+ // the module is not enabled here
+ //if (!cf->enabled || cf->force_disabled)
+ // return (NGX_DECLINED);
+ // don't process internal requests.
+ //if (r->internal) {
+ // return (NGX_DECLINED);
+ }
+
+ //nothing: return (NGX_OK);
+ //redirect : return (NGX_HTTP_OK);
+*/
+ ngx_http_modsecurity_loc_conf_t *cf;
+ conn_rec *c;
+ request_rec *r;
+
+ cf = ngx_http_get_module_loc_conf(req, ngx_http_modsecurity_module);
+
+ if (!cf)
+ return (NGX_ERROR);
+
+ if(!cf->enabled)
+ return (NGX_DECLINED);
+
+ // temporary hack, nginx uses pcre as well and hijacks these two
+ //
+ pcre_malloc = modsec_pcre_malloc;
+ pcre_free = modsec_pcre_free;
+
+ if(cf->config == NULL)
+ {
+ cf->config = modsecGetDefaultConfig();
+
+ if(cf->config_path.len != 0)
+ {
+ char *path = ngx_pcalloc(req->pool, cf->config_path.len+1);
+
+ memcpy(path, cf->config_path.data, cf->config_path.len);
+
+ const char *msg = modsecProcessConfig(cf->config, path);
+
+ if(msg != NULL)
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, msg);
+ }
+ }
+
+ //if(r->connection->requests == 0)
+ //{
+ c = modsecNewConnection();
+
+ modsecProcessConnection(c);
+ //}
+
+ r = modsecNewRequest(c, cf->config);
+
+ r->request_time = apr_time_now();
+
+ r->path_info = ConvertNgxStringToUTF8(req->unparsed_uri, r->pool);
+
+ r->unparsed_uri = ConvertNgxStringToUTF8(req->unparsed_uri, r->pool);
+ r->uri = r->unparsed_uri;
+
+ r->the_request = ConvertNgxStringToUTF8(req->request_line, r->pool);
+
+ r->args = ConvertNgxStringToUTF8(req->args, r->pool);
+
+ r->filename = r->path_info;
+
+ r->parsed_uri.scheme = "http";
+ r->parsed_uri.path = r->path_info;
+ r->parsed_uri.is_initialized = 1;
+ r->parsed_uri.port = 80;
+ r->parsed_uri.port_str = "80";
+ r->parsed_uri.query = r->args;
+ r->parsed_uri.dns_looked_up = 0;
+ r->parsed_uri.dns_resolved = 0;
+ r->parsed_uri.password = NULL;
+ r->parsed_uri.user = NULL;
+ r->parsed_uri.fragment = ConvertNgxStringToUTF8(req->exten, r->pool);
+
+ ngx_list_part_t *part = &req->headers_in.headers.part;
+ ngx_table_elt_t *h = part->elts;
+ u_int i;
+
+ for(i = 0; ; i++)
+ {
+ if(i >= part->nelts)
+ {
+ if(part->next == NULL)
+ break;
+
+ part = part->next;
+ h = part->elts;
+ i = 0;
+ }
+
+ apr_table_setn(r->headers_in, ConvertNgxStringToUTF8(h[i].key, r->pool),
+ ConvertNgxStringToUTF8(h[i].value, r->pool));
+ }
+
+ apr_table_setn(r->subprocess_env, "UNIQUE_ID", "12345");
+
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, r->uri);
+
+ int status = modsecProcessRequest(r);
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, "status: %d", status);
+
+ ngx_http_read_request_body(req, ngx_http_dummy_payload_handler);
+
+ if(req->headers_in.content_length)
+ {
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, "request body: %s", req->request_body->bufs);
+ } else {
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, "request body: ");
+ }
+
+ if(status == DECLINED)
+ {
+ // this function would work here, but it is only internal
+ //ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR);
+ return (NGX_DECLINED);
+
+ // If DECLINED, finalize connection (sent FIN) and return HTTP 500
+ ngx_log_error(NGX_LOG_INFO, req->connection->log, 0, "Invalid Request");
+ ngx_http_finalize_request(req, NGX_HTTP_INTERNAL_SERVER_ERROR);
+ return NGX_HTTP_INTERNAL_SERVER_ERROR;
+ }
+
+ return status;
+}