
Add stubs for functions to perform Booleans, and get rid of mesh stuff, including the kd tree accelerated snap to vertex (which should not be required if the shell triangulation performs as it should). Also check that a sketch is not self-intersecting before extruding it or whatever. This is dead slow, needs n*log(n) implementation. [git-p4: depot-paths = "//depot/solvespace/": change = 1902]
86 lines
2.7 KiB
Makefile
86 lines
2.7 KiB
Makefile
DEFINES = /D_WIN32_WINNT=0x500 /DISOLATION_AWARE_ENABLED /D_WIN32_IE=0x500 /DWIN32_LEAN_AND_MEAN /DWIN32
|
|
# Use the multi-threaded static libc because libpng and zlib do; not sure if anything bad
|
|
# happens if those mix, but don't want to risk it.
|
|
CFLAGS = /W3 /nologo -MT -Iextlib -I..\common\win32 /D_DEBUG /D_CRT_SECURE_NO_WARNINGS /I. /Zi /EHs
|
|
|
|
HEADERS = ..\common\win32\freeze.h ui.h solvespace.h dsc.h sketch.h expr.h polygon.h srf\surface.h
|
|
|
|
OBJDIR = obj
|
|
|
|
FREEZE = $(OBJDIR)\freeze.obj
|
|
|
|
W32OBJS = $(OBJDIR)\w32main.obj \
|
|
|
|
SSOBJS = $(OBJDIR)\solvespace.obj \
|
|
$(OBJDIR)\textwin.obj \
|
|
$(OBJDIR)\textscreens.obj \
|
|
$(OBJDIR)\graphicswin.obj \
|
|
$(OBJDIR)\modify.obj \
|
|
$(OBJDIR)\util.obj \
|
|
$(OBJDIR)\entity.obj \
|
|
$(OBJDIR)\drawentity.obj \
|
|
$(OBJDIR)\group.obj \
|
|
$(OBJDIR)\groupmesh.obj \
|
|
$(OBJDIR)\request.obj \
|
|
$(OBJDIR)\glhelper.obj \
|
|
$(OBJDIR)\expr.obj \
|
|
$(OBJDIR)\constraint.obj \
|
|
$(OBJDIR)\constrainteq.obj \
|
|
$(OBJDIR)\draw.obj \
|
|
$(OBJDIR)\toolbar.obj \
|
|
$(OBJDIR)\drawconstraint.obj \
|
|
$(OBJDIR)\file.obj \
|
|
$(OBJDIR)\undoredo.obj \
|
|
$(OBJDIR)\system.obj \
|
|
$(OBJDIR)\polygon.obj \
|
|
$(OBJDIR)\mesh.obj \
|
|
$(OBJDIR)\bsp.obj \
|
|
$(OBJDIR)\ttf.obj \
|
|
$(OBJDIR)\generate.obj \
|
|
$(OBJDIR)\export.obj \
|
|
|
|
SRFOBJS = $(OBJDIR)\ratpoly.obj \
|
|
$(OBJDIR)\triangulate.obj \
|
|
$(OBJDIR)\boolean.obj \
|
|
|
|
|
|
RES = $(OBJDIR)\resource.res
|
|
|
|
|
|
LIBS = user32.lib gdi32.lib comctl32.lib advapi32.lib shell32.lib opengl32.lib glu32.lib \
|
|
extlib\libpng.lib extlib\zlib.lib
|
|
|
|
all: $(OBJDIR)/solvespace.exe
|
|
@cp $(OBJDIR)/solvespace.exe .
|
|
solvespace t.slvs
|
|
|
|
clean:
|
|
rm -f obj/*
|
|
|
|
$(OBJDIR)/solvespace.exe: $(SRFOBJS) $(SSOBJS) $(W32OBJS) $(FREEZE) $(RES)
|
|
@$(CC) $(DEFINES) $(CFLAGS) -Fe$(OBJDIR)/solvespace.exe $(SSOBJS) $(SRFOBJS) $(W32OBJS) $(FREEZE) $(RES) $(LIBS)
|
|
editbin /nologo /STACK:8388608 $(OBJDIR)/solvespace.exe
|
|
@echo solvespace.exe
|
|
|
|
$(SSOBJS): $(@B).cpp $(HEADERS)
|
|
@$(CC) $(CFLAGS) $(DEFINES) -c -Fo$(OBJDIR)/$(@B).obj $(@B).cpp
|
|
|
|
$(SRFOBJS): srf\$(@B).cpp $(HEADERS)
|
|
@$(CC) $(CFLAGS) $(DEFINES) -c -Fo$(OBJDIR)/$(@B).obj srf\$(@B).cpp
|
|
|
|
$(W32OBJS): win32/$(@B).cpp $(HEADERS)
|
|
@$(CC) $(CFLAGS) $(DEFINES) -c -Fo$(OBJDIR)/$(@B).obj win32/$(@B).cpp
|
|
|
|
$(FREEZE): ..\common\win32\$(@B).cpp $(HEADERS)
|
|
@$(CC) $(CFLAGS) $(DEFINES) -c -Fo$(OBJDIR)/$(@B).obj ..\common\win32\$(@B).cpp
|
|
|
|
$(RES): win32/$(@B).rc icon.ico
|
|
rc win32/$(@B).rc
|
|
mv win32/$(@B).res $(OBJDIR)/$(@B).res
|
|
|
|
toolbar.cpp: $(OBJDIR)/icons.h
|
|
|
|
$(OBJDIR)/icons.h: icons/* png2c.pl
|
|
perl png2c.pl > $(OBJDIR)/icons.h
|
|
|