Browse Source

Clean up the MVSC nmake files so they work again.

Fixes bug 13081; bugfix on 0.2.5.1-alpha. Patch from "NewEraCracker."
Nick Mathewson 6 years ago
parent
commit
8391c96091
6 changed files with 37 additions and 7 deletions
  1. 4 0
      Makefile.nmake
  2. 3 0
      changes/bug13081
  3. 5 4
      src/common/Makefile.nmake
  4. 12 0
      src/ext/Makefile.nmake
  5. 5 3
      src/or/Makefile.nmake
  6. 8 0
      src/win32/orconfig.h

+ 4 - 0
Makefile.nmake

@@ -1,6 +1,8 @@
 all:
 	cd src/common
 	$(MAKE) /F Makefile.nmake
+	cd ../../src/ext
+	$(MAKE) /F Makefile.nmake
 	cd ../../src/or
 	$(MAKE) /F Makefile.nmake
 	cd ../../src/test
@@ -9,6 +11,8 @@ all:
 clean:
 	cd src/common
 	$(MAKE) /F Makefile.nmake clean
+	cd ../../src/ext
+	$(MAKE) /F Makefile.nmake clean
 	cd ../../src/or
 	$(MAKE) /F Makefile.nmake clean
 	cd ../../src/test

+ 3 - 0
changes/bug13081

@@ -0,0 +1,3 @@
+  o Compilation fixes:
+    - Make the nmake make files work again. Fixes bug 13081. Bugfix on 0.2.5.1-alpha. Patch
+      from "NewEraCracker".

+ 5 - 4
src/common/Makefile.nmake

@@ -1,12 +1,13 @@
 all: libor.lib libor-crypto.lib libor-event.lib
 
-CFLAGS = /I ..\win32 /I ..\..\..\build-alpha\include /I ..\ext
+CFLAGS = /O2 /MT /I ..\win32 /I ..\..\..\build-alpha\include /I ..\common \
+    /I ..\ext
 
-LIBOR_OBJECTS = address.obj compat.obj container.obj di_ops.obj \
-	log.obj memarea.obj mempool.obj procmon.obj util.obj \
+LIBOR_OBJECTS = address.obj backtrace.obj compat.obj container.obj di_ops.obj \
+	log.obj memarea.obj mempool.obj procmon.obj sandbox.obj util.obj \
 	util_codedigest.obj
 
-LIBOR_CRYPTO_OBJECTS = aes.obj crypto.obj torgzip.obj tortls.obj \
+LIBOR_CRYPTO_OBJECTS = aes.obj crypto.obj crypto_format.obj torgzip.obj tortls.obj \
 	crypto_curve25519.obj curve25519-donna.obj
 
 LIBOR_EVENT_OBJECTS = compat_libevent.obj

+ 12 - 0
src/ext/Makefile.nmake

@@ -0,0 +1,12 @@
+all: csiphash.lib
+
+CFLAGS = /O2 /MT /I ..\win32 /I ..\..\..\build-alpha\include /I ..\common \
+    /I ..\ext
+
+CSIPHASH_OBJECTS = csiphash.obj
+
+csiphash.lib: $(CSIPHASH_OBJECTS)
+	lib $(CSIPHASH_OBJECTS) $(CURVE25519_DONNA_OBJECTS) /out:csiphash.lib
+
+clean:
+	del *.obj *.lib

+ 5 - 3
src/or/Makefile.nmake

@@ -1,6 +1,6 @@
 all: tor.exe
 
-CFLAGS = /I ..\win32 /I ..\..\..\build-alpha\include /I ..\common \
+CFLAGS = /O2 /MT /I ..\win32 /I ..\..\..\build-alpha\include /I ..\common \
     /I ..\ext
 
 LIBS = ..\..\..\build-alpha\lib\libevent.lib \
@@ -15,6 +15,7 @@ LIBTOR_OBJECTS = \
   buffers.obj \
   channel.obj \
   channeltls.obj \
+  circpathbias.obj \
   circuitbuild.obj \
   circuitlist.obj \
   circuitmux.obj \
@@ -35,6 +36,7 @@ LIBTOR_OBJECTS = \
   dirvote.obj \
   dns.obj \
   dnsserv.obj \
+  ext_orport.obj \
   fp_pair.obj \
   entrynodes.obj \
   geoip.obj \
@@ -69,7 +71,7 @@ libtor.lib: $(LIBTOR_OBJECTS)
 	lib $(LIBTOR_OBJECTS) /out:$@
 
 tor.exe: libtor.lib tor_main.obj
-	$(CC) $(CFLAGS) $(LIBS) libtor.lib ..\common\*.lib tor_main.obj /Fe$@
+	$(CC) $(CFLAGS) $(LIBS) libtor.lib ..\common\*.lib ..\ext\*.lib tor_main.obj /Fe$@
 
 clean:
-	del $(LIBTOR_OBJECTS) *.lib tor.exe
+	del $(LIBTOR_OBJECTS) tor_main.obj *.lib tor.exe

+ 8 - 0
src/win32/orconfig.h

@@ -257,3 +257,11 @@
 #define USE_CURVE25519_DONNA
 
 #define ENUM_VALS_ARE_SIGNED 1
+
+#ifndef STDOUT_FILENO
+#define STDOUT_FILENO 1
+#endif
+
+#ifndef STDERR_FILENO
+#define STDERR_FILENO 2
+#endif