]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Eliminate os.c and ApacheOS.dsp, ApacheOS.mak, et. al. Update the winnt
authorBill Stoddard <stoddard@apache.org>
Fri, 24 Mar 2000 04:45:27 +0000 (04:45 +0000)
committerBill Stoddard <stoddard@apache.org>
Fri, 24 Mar 2000 04:45:27 +0000 (04:45 +0000)
MPM to use native thread control calls rather than the deprecated stuff
in os.c. Even though I don't use APR in the MPM yet, this is forward
progress.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84831 13f79535-47bb-0310-9956-ffa450edef68

ApacheCore.dsp
Makefile.win
httpd.dsp
server/mpm/winnt/mpm_winnt.c

index 1c9b45833dd8590ca17c702b34d28a0c19012eeb..b6970441b8ba51f8aa65689e9bd5a52b321696df 100644 (file)
@@ -55,7 +55,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 lib\apr\Release\aprlib.lib os\win32\ApacheOSR\ApacheOS.lib regex\release\regex.lib ap\Release\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /machine:I386
+# ADD LINK32 lib\apr\Release\aprlib.lib  regex\release\regex.lib ap\Release\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /machine:I386
 
 !ELSEIF  "$(CFG)" == "ApacheCore - Win32 Debug"
 
@@ -82,7 +82,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386
-# ADD LINK32 lib\apr\debug\aprlib.lib regex\debug\regex.lib os\win32\ApacheOSD\ApacheOS.lib ap\Debug\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /debug /machine:I386
+# ADD LINK32 lib\apr\debug\aprlib.lib regex\debug\regex.lib  ap\Debug\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /debug /machine:I386
 # SUBTRACT LINK32 /map
 
 !ENDIF 
index 1211a9cf17e8504be04a484c6d0514917cb439c7..1cd0c9962cdd03656e554d15799e9a292cfc2fe1 100644 (file)
@@ -53,9 +53,6 @@ _build:
        cd lib\apr
         nmake /nologo CFG="aprlib - Win32 $(LONG)" -f aprlib.mak
        cd ..\..
-       cd os\win32
-        nmake /nologo CFG="ApacheOS - Win32 $(LONG)" -f ApacheOS.mak
-       cd ..\..
        cd regex
         nmake /nologo CFG="regex - Win32 $(LONG)" -f regex.mak
        cd ..
@@ -119,9 +116,6 @@ _clean:
        cd lib\apr
         nmake /nologo CFG="aprlib - Win32 $(LONG)" -f aprlib.mak clean
        cd ..\..
-       cd os\win32
-        nmake /nologo CFG="ApacheOS - Win32 $(LONG)" -f ApacheOS.mak clean
-       cd ..\..
        cd regex
         nmake /nologo CFG="regex - Win32 $(LONG)" -f regex.mak clean
        cd ..
index 1c9b45833dd8590ca17c702b34d28a0c19012eeb..b6970441b8ba51f8aa65689e9bd5a52b321696df 100644 (file)
--- a/httpd.dsp
+++ b/httpd.dsp
@@ -55,7 +55,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 lib\apr\Release\aprlib.lib os\win32\ApacheOSR\ApacheOS.lib regex\release\regex.lib ap\Release\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /machine:I386
+# ADD LINK32 lib\apr\Release\aprlib.lib  regex\release\regex.lib ap\Release\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /machine:I386
 
 !ELSEIF  "$(CFG)" == "ApacheCore - Win32 Debug"
 
@@ -82,7 +82,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386
-# ADD LINK32 lib\apr\debug\aprlib.lib regex\debug\regex.lib os\win32\ApacheOSD\ApacheOS.lib ap\Debug\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /debug /machine:I386
+# ADD LINK32 lib\apr\debug\aprlib.lib regex\debug\regex.lib  ap\Debug\ap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib mswsock.lib /nologo /subsystem:windows /dll /debug /machine:I386
 # SUBTRACT LINK32 /map
 
 !ENDIF 
index 775a9dd5cdb76ad7964755d64ebd36e78b986bd6..f60b690bc79ac7d6868da8b3a95dd46ece9bc603 100644 (file)
@@ -1097,7 +1097,7 @@ static void cleanup_thread(thread **handles, int *thread_cnt, int thread_to_clea
 {
     int i;
 
-    free_thread(handles[thread_to_clean]);
+    CloseHandle(handles[thread_to_clean]);
     for (i = thread_to_clean; i < ((*thread_cnt) - 1); i++)
        handles[i] = handles[i + 1];
     (*thread_cnt)--;
@@ -1116,7 +1116,7 @@ static void cleanup_thread(thread **handles, int *thread_cnt, int thread_to_clea
 static void child_main()
 {
     int nthreads = ap_threads_per_child;
-
+    int thread_id;
     thread **child_handles;
     int rv;
     ap_status_t status;
@@ -1173,12 +1173,14 @@ static void child_main()
     ap_log_error(APLOG_MARK,APLOG_INFO, APR_SUCCESS, server_conf, "Child %d: Creating %d worker threads",my_pid, nthreads);
     child_handles = (thread *) alloca(nthreads * sizeof(int));
     for (i = 0; i < nthreads; i++) {
-        child_handles[i] = create_thread((void (*)(void *)) worker_main, (void *) i);
+        child_handles[i] = (thread *) _beginthreadex(NULL, 0, (LPTHREAD_START_ROUTINE) worker_main,
+                                                     NULL, 0, &thread_id);
     }
 
     if (osver.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS) {
         /* Win95/98: Create the accept thread */
-        create_thread((void (*)(void *)) accept_and_queue_connections, (void *) NULL);
+        _beginthreadex(NULL, 0, (LPTHREAD_START_ROUTINE) accept_and_queue_connections,
+                       (void *) i, 0, &thread_id);
     }
 
     /* Wait for the exit event to be signaled by the parent process */
@@ -1224,8 +1226,8 @@ static void child_main()
         break;
     }
     for (i = 0; i < nthreads; i++) {
-       kill_thread(child_handles[i]);
-       free_thread(child_handles[i]);
+        TerminateThread(child_handles[i], 1);
+        CloseHandle(child_handles[i]);
     }
     ap_log_error(APLOG_MARK,APLOG_INFO, APR_SUCCESS, server_conf, 
                  "Child %d: All worker threads have ended.", my_pid);