From 0a24cf40f07ef64ae28a19a82051fda925e20a68 Mon Sep 17 00:00:00 2001 From: Daniel Richard G Date: Wed, 13 Nov 2013 02:20:31 -0500 Subject: [PATCH] Moved most of the source into a src/ subdirectory The SolveSpace top-level directory was getting a bit cluttered, so following the example of numerous other free-software projects, we move the main application source into a subdirectory and adjust the build systems accordingly. Also, got rid of the obj/ directory in favor of creating it on the fly in Makefile.msvc. --- Makefile.am | 192 +---------------- Makefile.msvc | 45 ++-- configure.ac | 4 +- obj/t | 0 src/Makefile.am | 195 ++++++++++++++++++ .../bitmapextra.table.h | 0 bitmapfont.table.h => src/bitmapfont.table.h | 0 bsp.cpp => src/bsp.cpp | 0 clipboard.cpp => src/clipboard.cpp | 0 confscreen.cpp => src/confscreen.cpp | 0 constraint.cpp => src/constraint.cpp | 0 constrainteq.cpp => src/constrainteq.cpp | 0 describescreen.cpp => src/describescreen.cpp | 0 draw.cpp => src/draw.cpp | 0 drawconstraint.cpp => src/drawconstraint.cpp | 0 drawentity.cpp => src/drawentity.cpp | 0 dsc.h => src/dsc.h | 0 entity.cpp => src/entity.cpp | 0 export.cpp => src/export.cpp | 0 exportstep.cpp => src/exportstep.cpp | 0 exportvector.cpp => src/exportvector.cpp | 0 expr.cpp => src/expr.cpp | 0 expr.h => src/expr.h | 0 file.cpp => src/file.cpp | 0 {fltk => src/fltk}/fltkmain.cpp | 0 {fltk => src/fltk}/fltkutil.cpp | 0 {fltk => src/fltk}/xFl_Gl_Window_Group.H | 0 {fltk => src/fltk}/xFl_Gl_Window_Group.cxx | 0 font.table.h => src/font.table.h | 0 generate.cpp => src/generate.cpp | 0 glhelper.cpp => src/glhelper.cpp | 0 graphicswin.cpp => src/graphicswin.cpp | 0 group.cpp => src/group.cpp | 0 groupmesh.cpp => src/groupmesh.cpp | 0 {icons => src/icons}/angle.png | Bin {icons => src/icons}/arc.png | Bin {icons => src/icons}/assemble.png | Bin {icons => src/icons}/bezier.png | Bin {icons => src/icons}/char-0-check-false.png | Bin {icons => src/icons}/char-1-check-true.png | Bin {icons => src/icons}/char-2-radio-false.png | Bin {icons => src/icons}/char-3-radio-true.png | Bin {icons => src/icons}/circle.png | Bin {icons => src/icons}/constraint.png | Bin {icons => src/icons}/construction.png | Bin {icons => src/icons}/edges.png | Bin {icons => src/icons}/equal.png | Bin {icons => src/icons}/extrude.png | Bin {icons => src/icons}/faces.png | Bin {icons => src/icons}/hidden-lines.png | Bin {icons => src/icons}/horiz.png | Bin {icons => src/icons}/in3d.png | Bin {icons => src/icons}/length.png | Bin {icons => src/icons}/line.png | Bin {icons => src/icons}/mesh.png | Bin {icons => src/icons}/normal.png | Bin {icons => src/icons}/ontoworkplane.png | Bin {icons => src/icons}/other-supp.png | Bin {icons => src/icons}/parallel.png | Bin {icons => src/icons}/perpendicular.png | Bin {icons => src/icons}/point.png | Bin {icons => src/icons}/pointonx.png | Bin {icons => src/icons}/rectangle.png | Bin {icons => src/icons}/ref.png | Bin {icons => src/icons}/same-orientation.png | Bin {icons => src/icons}/shaded.png | Bin {icons => src/icons}/sketch-in-3d.png | Bin {icons => src/icons}/sketch-in-plane.png | Bin {icons => src/icons}/step-rotate.png | Bin {icons => src/icons}/step-translate.png | Bin {icons => src/icons}/symmetric.png | Bin {icons => src/icons}/tangent-arc.png | Bin {icons => src/icons}/text.png | Bin {icons => src/icons}/trim.png | Bin {icons => src/icons}/vert.png | Bin {icons => src/icons}/workplane.png | Bin mesh.cpp => src/mesh.cpp | 0 modify.cpp => src/modify.cpp | 0 mouse.cpp => src/mouse.cpp | 0 png2c.pl => src/png2c.pl | 0 pngchar2c.pl => src/pngchar2c.pl | 0 polygon.cpp => src/polygon.cpp | 0 polygon.h => src/polygon.h | 0 request.cpp => src/request.cpp | 0 sketch.h => src/sketch.h | 0 solvespace.cpp => src/solvespace.cpp | 0 solvespace.h => src/solvespace.h | 0 {srf => src/srf}/boolean.cpp | 0 {srf => src/srf}/curve.cpp | 0 {srf => src/srf}/merge.cpp | 0 {srf => src/srf}/ratpoly.cpp | 0 {srf => src/srf}/raycast.cpp | 0 {srf => src/srf}/surface.cpp | 0 {srf => src/srf}/surface.h | 0 {srf => src/srf}/surfinter.cpp | 0 {srf => src/srf}/triangulate.cpp | 0 style.cpp => src/style.cpp | 0 system.cpp => src/system.cpp | 0 textscreens.cpp => src/textscreens.cpp | 0 textwin.cpp => src/textwin.cpp | 0 toolbar.cpp => src/toolbar.cpp | 0 ttf.cpp => src/ttf.cpp | 0 ui.h => src/ui.h | 0 undoredo.cpp => src/undoredo.cpp | 0 util.cpp => src/util.cpp | 0 view.cpp => src/view.cpp | 0 {win32 => src/win32}/freeze.cpp | 0 {win32 => src/win32}/freeze.h | 0 icon.ico => src/win32/icon.ico | Bin {win32 => src/win32}/manifest.xml | 0 {win32 => src/win32}/resource.rc | 0 {win32 => src/win32}/w32main.cpp | 0 {win32 => src/win32}/w32util.cpp | 0 113 files changed, 227 insertions(+), 209 deletions(-) delete mode 100644 obj/t create mode 100644 src/Makefile.am rename bitmapextra.table.h => src/bitmapextra.table.h (100%) rename bitmapfont.table.h => src/bitmapfont.table.h (100%) rename bsp.cpp => src/bsp.cpp (100%) rename clipboard.cpp => src/clipboard.cpp (100%) rename confscreen.cpp => src/confscreen.cpp (100%) rename constraint.cpp => src/constraint.cpp (100%) rename constrainteq.cpp => src/constrainteq.cpp (100%) rename describescreen.cpp => src/describescreen.cpp (100%) rename draw.cpp => src/draw.cpp (100%) rename drawconstraint.cpp => src/drawconstraint.cpp (100%) rename drawentity.cpp => src/drawentity.cpp (100%) rename dsc.h => src/dsc.h (100%) rename entity.cpp => src/entity.cpp (100%) rename export.cpp => src/export.cpp (100%) rename exportstep.cpp => src/exportstep.cpp (100%) rename exportvector.cpp => src/exportvector.cpp (100%) rename expr.cpp => src/expr.cpp (100%) rename expr.h => src/expr.h (100%) rename file.cpp => src/file.cpp (100%) rename {fltk => src/fltk}/fltkmain.cpp (100%) rename {fltk => src/fltk}/fltkutil.cpp (100%) rename {fltk => src/fltk}/xFl_Gl_Window_Group.H (100%) rename {fltk => src/fltk}/xFl_Gl_Window_Group.cxx (100%) rename font.table.h => src/font.table.h (100%) rename generate.cpp => src/generate.cpp (100%) rename glhelper.cpp => src/glhelper.cpp (100%) rename graphicswin.cpp => src/graphicswin.cpp (100%) rename group.cpp => src/group.cpp (100%) rename groupmesh.cpp => src/groupmesh.cpp (100%) rename {icons => src/icons}/angle.png (100%) rename {icons => src/icons}/arc.png (100%) rename {icons => src/icons}/assemble.png (100%) rename {icons => src/icons}/bezier.png (100%) rename {icons => src/icons}/char-0-check-false.png (100%) rename {icons => src/icons}/char-1-check-true.png (100%) rename {icons => src/icons}/char-2-radio-false.png (100%) rename {icons => src/icons}/char-3-radio-true.png (100%) rename {icons => src/icons}/circle.png (100%) rename {icons => src/icons}/constraint.png (100%) rename {icons => src/icons}/construction.png (100%) rename {icons => src/icons}/edges.png (100%) rename {icons => src/icons}/equal.png (100%) rename {icons => src/icons}/extrude.png (100%) rename {icons => src/icons}/faces.png (100%) rename {icons => src/icons}/hidden-lines.png (100%) rename {icons => src/icons}/horiz.png (100%) rename {icons => src/icons}/in3d.png (100%) rename {icons => src/icons}/length.png (100%) rename {icons => src/icons}/line.png (100%) rename {icons => src/icons}/mesh.png (100%) rename {icons => src/icons}/normal.png (100%) rename {icons => src/icons}/ontoworkplane.png (100%) rename {icons => src/icons}/other-supp.png (100%) rename {icons => src/icons}/parallel.png (100%) rename {icons => src/icons}/perpendicular.png (100%) rename {icons => src/icons}/point.png (100%) rename {icons => src/icons}/pointonx.png (100%) rename {icons => src/icons}/rectangle.png (100%) rename {icons => src/icons}/ref.png (100%) rename {icons => src/icons}/same-orientation.png (100%) rename {icons => src/icons}/shaded.png (100%) rename {icons => src/icons}/sketch-in-3d.png (100%) rename {icons => src/icons}/sketch-in-plane.png (100%) rename {icons => src/icons}/step-rotate.png (100%) rename {icons => src/icons}/step-translate.png (100%) rename {icons => src/icons}/symmetric.png (100%) rename {icons => src/icons}/tangent-arc.png (100%) rename {icons => src/icons}/text.png (100%) rename {icons => src/icons}/trim.png (100%) rename {icons => src/icons}/vert.png (100%) rename {icons => src/icons}/workplane.png (100%) rename mesh.cpp => src/mesh.cpp (100%) rename modify.cpp => src/modify.cpp (100%) rename mouse.cpp => src/mouse.cpp (100%) rename png2c.pl => src/png2c.pl (100%) rename pngchar2c.pl => src/pngchar2c.pl (100%) rename polygon.cpp => src/polygon.cpp (100%) rename polygon.h => src/polygon.h (100%) rename request.cpp => src/request.cpp (100%) rename sketch.h => src/sketch.h (100%) rename solvespace.cpp => src/solvespace.cpp (100%) rename solvespace.h => src/solvespace.h (100%) rename {srf => src/srf}/boolean.cpp (100%) rename {srf => src/srf}/curve.cpp (100%) rename {srf => src/srf}/merge.cpp (100%) rename {srf => src/srf}/ratpoly.cpp (100%) rename {srf => src/srf}/raycast.cpp (100%) rename {srf => src/srf}/surface.cpp (100%) rename {srf => src/srf}/surface.h (100%) rename {srf => src/srf}/surfinter.cpp (100%) rename {srf => src/srf}/triangulate.cpp (100%) rename style.cpp => src/style.cpp (100%) rename system.cpp => src/system.cpp (100%) rename textscreens.cpp => src/textscreens.cpp (100%) rename textwin.cpp => src/textwin.cpp (100%) rename toolbar.cpp => src/toolbar.cpp (100%) rename ttf.cpp => src/ttf.cpp (100%) rename ui.h => src/ui.h (100%) rename undoredo.cpp => src/undoredo.cpp (100%) rename util.cpp => src/util.cpp (100%) rename view.cpp => src/view.cpp (100%) rename {win32 => src/win32}/freeze.cpp (100%) rename {win32 => src/win32}/freeze.h (100%) rename icon.ico => src/win32/icon.ico (100%) rename {win32 => src/win32}/manifest.xml (100%) rename {win32 => src/win32}/resource.rc (100%) rename {win32 => src/win32}/w32main.cpp (100%) rename {win32 => src/win32}/w32util.cpp (100%) diff --git a/Makefile.am b/Makefile.am index a73df99..6f55865 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,157 +2,7 @@ ACLOCAL_AMFLAGS = -I ac-aux -AM_CPPFLAGS = $(FLTK_CXXFLAGS) - -if WIN32 -AM_CPPFLAGS += \ - -I$(srcdir)/extlib/libpng \ - -I$(srcdir)/extlib/si \ - -I$(srcdir)/extlib/zlib -endif - -bin_PROGRAMS = solvespace - -icons_src = \ - icons.h \ - icons-proto.h - -BUILT_SOURCES = $(icons_src) - -solvespace_SOURCES = \ - $(icons_src) \ - bsp.cpp \ - clipboard.cpp \ - confscreen.cpp \ - constraint.cpp \ - constrainteq.cpp \ - describescreen.cpp \ - draw.cpp \ - drawconstraint.cpp \ - drawentity.cpp \ - dsc.h \ - entity.cpp \ - export.cpp \ - exportstep.cpp \ - exportvector.cpp \ - expr.h \ - expr.cpp \ - file.cpp \ - generate.cpp \ - glhelper.cpp \ - graphicswin.cpp \ - group.cpp \ - groupmesh.cpp \ - mesh.cpp \ - modify.cpp \ - mouse.cpp \ - polygon.h \ - polygon.cpp \ - request.cpp \ - sketch.h \ - solvespace.h \ - solvespace.cpp \ - style.cpp \ - system.cpp \ - textscreens.cpp \ - textwin.cpp \ - toolbar.cpp \ - ttf.cpp \ - ui.h \ - undoredo.cpp \ - util.cpp \ - view.cpp \ - srf/boolean.cpp \ - srf/curve.cpp \ - srf/merge.cpp \ - srf/ratpoly.cpp \ - srf/raycast.cpp \ - srf/surface.h \ - srf/surface.cpp \ - srf/surfinter.cpp \ - srf/triangulate.cpp - -if HAVE_FLTK -solvespace_SOURCES += \ - fltk/xFl_Gl_Window_Group.H \ - fltk/xFl_Gl_Window_Group.cxx \ - fltk/fltkmain.cpp \ - fltk/fltkutil.cpp - -solvespace_LDADD = $(FLTK_LDSTATICFLAGS) -lGLU -endif - -if WIN32 -solvespace_SOURCES += \ - win32/freeze.h \ - win32/freeze.cpp \ - win32/w32main.cpp \ - win32/w32util.cpp - -if MINGW -solvespace_LDFLAGS = \ - -llibpng \ - -lzlib \ - -luser32 -lgdi32 -lcomctl32 -ladvapi32 -lshell32 \ - -lopengl32 -lglu32 -else -solvespace_LDFLAGS = -link \ - -libpath:$(srcdir)/extlib/libpng libpng.lib \ - -libpath:$(srcdir)/extlib/zlib zlib.lib \ - user32.lib gdi32.lib comctl32.lib advapi32.lib shell32.lib \ - opengl32.lib glu32.lib -endif # MINGW -endif # WIN32 - -icons = \ - icon.ico \ - icons/angle.png \ - icons/arc.png \ - icons/assemble.png \ - icons/bezier.png \ - icons/char-0-check-false.png \ - icons/char-1-check-true.png \ - icons/char-2-radio-false.png \ - icons/char-3-radio-true.png \ - icons/circle.png \ - icons/constraint.png \ - icons/construction.png \ - icons/edges.png \ - icons/equal.png \ - icons/extrude.png \ - icons/faces.png \ - icons/hidden-lines.png \ - icons/horiz.png \ - icons/in3d.png \ - icons/length.png \ - icons/line.png \ - icons/mesh.png \ - icons/normal.png \ - icons/ontoworkplane.png \ - icons/other-supp.png \ - icons/parallel.png \ - icons/perpendicular.png \ - icons/point.png \ - icons/pointonx.png \ - icons/rectangle.png \ - icons/ref.png \ - icons/same-orientation.png \ - icons/shaded.png \ - icons/sketch-in-3d.png \ - icons/sketch-in-plane.png \ - icons/step-rotate.png \ - icons/step-translate.png \ - icons/symmetric.png \ - icons/tangent-arc.png \ - icons/text.png \ - icons/trim.png \ - icons/vert.png \ - icons/workplane.png - -tables = \ - bitmapextra.table.h \ - bitmapfont.table.h \ - font.table.h +SUBDIRS = src exposed = \ exposed/CDemo.c \ @@ -163,19 +13,13 @@ exposed = \ exposed/slvs.h EXTRA_DIST = \ - $(icons) \ - $(tables) \ $(exposed) \ COPYING.txt \ Makefile.msvc \ extlib/build-fltk.sh \ - png2c.pl \ - pngchar2c.pl \ tools/Makefile \ tools/ttf2c.cpp \ - wishlist.txt \ - win32/manifest.xml \ - win32/resource.rc + wishlist.txt optional_dist = \ extlib/libpng/png.h \ @@ -211,36 +55,4 @@ dist-hook: exit 1; \ fi -if MAINTAINER_MODE - -icons.h: $(icons) $(srcdir)/png2c.pl - $(PERL) $(srcdir)/png2c.pl $@ icons-proto.h $(srcdir) - -icons-proto.h: icons.h - @exit 0 - -bitmapextra.table.h: $(icons) $(srcdir)/pngchar2c.pl - $(PERL) $(srcdir)/pngchar2c.pl $(srcdir) >$@.tmp - mv -f $@.tmp $@ - -endif # MAINTAINER_MODE - -run-valgrind: solvespace$(EXEEXT) - @test -z "$$VALGRIND_OPTS" || echo VALGRIND_OPTS = $$VALGRIND_OPTS - valgrind \ - --tool=memcheck \ - --verbose \ - --track-fds=yes \ - --log-file=vg.%p.out \ - --num-callers=50 \ - --error-limit=no \ - --read-var-info=yes \ - --leak-check=full \ - --leak-resolution=high \ - --show-reachable=yes \ - --track-origins=yes \ - --malloc-fill=0xac \ - --free-fill=0xde \ - ./solvespace$(EXEEXT) - ## end Makefile.am diff --git a/Makefile.msvc b/Makefile.msvc index e5d7d45..1204345 100644 --- a/Makefile.msvc +++ b/Makefile.msvc @@ -20,11 +20,18 @@ DEFINES = \ # We build with /MT for compatibility with the SpaceWare library, and to # avoid a needless dependency on a C runtime DLL. # -CXXFLAGS = /nologo /W3 /MT /I. /Iextlib\libpng /Iextlib\si /Iextlib\zlib /Zi /EHs # /O2 +CXXFLAGS = /nologo /W3 /MT /Isrc /Iextlib\libpng /Iextlib\si /Iextlib\zlib /Zi /EHs # /O2 -HEADERS = win32\freeze.h ui.h solvespace.h dsc.h sketch.h expr.h polygon.h srf\surface.h +HEADERS = src\dsc.h \ + src\expr.h \ + src\polygon.h \ + src\sketch.h \ + src\solvespace.h \ + src\srf\surface.h \ + src\ui.h \ + src\win32\freeze.h -OBJDIR = obj +OBJDIR = obj W32OBJS = $(OBJDIR)\freeze.obj \ $(OBJDIR)\w32main.obj \ @@ -94,37 +101,41 @@ all: $(OBJDIR)\solvespace.exe @echo solvespace.exe clean: - del /q obj\* + -rmdir /s /q $(OBJDIR) $(OBJDIR)\solvespace.exe: $(SSOBJS) $(SRFOBJS) $(W32OBJS) $(RES) $(CXX) $(DEFINES) $(CXXFLAGS) /Fe$(OBJDIR)\solvespace.exe $(SSOBJS) $(SRFOBJS) $(W32OBJS) $(RES) $(LIBS) editbin /nologo /STACK:8388608 $(OBJDIR)\solvespace.exe -{.}.cpp{$(OBJDIR)}.obj:: +{src}.cpp{$(OBJDIR)}.obj:: + @if not exist $(OBJDIR) mkdir $(OBJDIR) $(CXX) $(CXXFLAGS) $(DEFINES) /c /Fo$(OBJDIR)\ $< -{srf}.cpp{$(OBJDIR)}.obj:: +{src\srf}.cpp{$(OBJDIR)}.obj:: + @if not exist $(OBJDIR) mkdir $(OBJDIR) $(CXX) $(CXXFLAGS) $(DEFINES) /c /Fo$(OBJDIR)\ $< -{win32}.cpp{$(OBJDIR)}.obj:: +{src\win32}.cpp{$(OBJDIR)}.obj:: + @if not exist $(OBJDIR) mkdir $(OBJDIR) $(CXX) $(CXXFLAGS) $(DEFINES) /c /Fo$(OBJDIR)\ $< -$(RES): win32\$(@B).rc icon.ico - $(RC) /fo$@ win32\$(@B).rc +$(RES): src\win32\$(@B).rc src\win32\icon.ico + @if not exist $(OBJDIR) mkdir $(OBJDIR) + $(RC) /fo$@ src\win32\$(@B).rc -$(OBJDIR)\glhelper.obj: bitmapextra.table.h bitmapfont.table.h font.table.h +$(OBJDIR)\glhelper.obj: src\bitmapextra.table.h src\bitmapfont.table.h src\font.table.h -$(OBJDIR)\textwin.obj: icons.h +$(OBJDIR)\textwin.obj: src\icons.h -$(OBJDIR)\toolbar.obj: icons.h +$(OBJDIR)\toolbar.obj: src\icons.h !IFDEF PERL -icons.h: icons\*.png png2c.pl - $(PERL) png2c.pl $@ icons-proto.h +src\icons.h: src\icons\*.png src\png2c.pl + $(PERL) src/png2c.pl $@ icons-proto.h -bitmapextra.table.h: icons\*.png pngchar2c.pl - $(PERL) pngchar2c.pl >tmp.$@ - move /y tmp.$@ $@ +src\bitmapextra.table.h: src\icons\*.png src\pngchar2c.pl + $(PERL) src/pngchar2c.pl >$@.tmp + move /y $@.tmp $@ !ENDIF # PERL diff --git a/configure.ac b/configure.ac index 8934762..51b077d 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ([2.59]) AC_INIT([SolveSpace], [2.1], [jwesthues@cq.cx], [solvespace]) AC_CONFIG_HEADERS([config.h]) -AC_CONFIG_SRCDIR([solvespace.cpp]) +AC_CONFIG_SRCDIR([src/solvespace.cpp]) AC_CONFIG_AUX_DIR([ac-aux]) AC_CONFIG_MACRO_DIR([ac-aux]) @@ -115,7 +115,7 @@ fi ## Wrap it up ## -AC_CONFIG_FILES([Makefile]) +AC_CONFIG_FILES([Makefile src/Makefile]) AC_OUTPUT cat <$@.tmp + mv -f $@.tmp $@ + +endif # MAINTAINER_MODE + +run-valgrind: solvespace$(EXEEXT) + @test -z "$$VALGRIND_OPTS" || echo VALGRIND_OPTS = $$VALGRIND_OPTS + valgrind \ + --tool=memcheck \ + --verbose \ + --track-fds=yes \ + --log-file=vg.%p.out \ + --num-callers=50 \ + --error-limit=no \ + --read-var-info=yes \ + --leak-check=full \ + --leak-resolution=high \ + --show-reachable=yes \ + --track-origins=yes \ + --malloc-fill=0xac \ + --free-fill=0xde \ + ./solvespace$(EXEEXT) + +## end src/Makefile.am diff --git a/bitmapextra.table.h b/src/bitmapextra.table.h similarity index 100% rename from bitmapextra.table.h rename to src/bitmapextra.table.h diff --git a/bitmapfont.table.h b/src/bitmapfont.table.h similarity index 100% rename from bitmapfont.table.h rename to src/bitmapfont.table.h diff --git a/bsp.cpp b/src/bsp.cpp similarity index 100% rename from bsp.cpp rename to src/bsp.cpp diff --git a/clipboard.cpp b/src/clipboard.cpp similarity index 100% rename from clipboard.cpp rename to src/clipboard.cpp diff --git a/confscreen.cpp b/src/confscreen.cpp similarity index 100% rename from confscreen.cpp rename to src/confscreen.cpp diff --git a/constraint.cpp b/src/constraint.cpp similarity index 100% rename from constraint.cpp rename to src/constraint.cpp diff --git a/constrainteq.cpp b/src/constrainteq.cpp similarity index 100% rename from constrainteq.cpp rename to src/constrainteq.cpp diff --git a/describescreen.cpp b/src/describescreen.cpp similarity index 100% rename from describescreen.cpp rename to src/describescreen.cpp diff --git a/draw.cpp b/src/draw.cpp similarity index 100% rename from draw.cpp rename to src/draw.cpp diff --git a/drawconstraint.cpp b/src/drawconstraint.cpp similarity index 100% rename from drawconstraint.cpp rename to src/drawconstraint.cpp diff --git a/drawentity.cpp b/src/drawentity.cpp similarity index 100% rename from drawentity.cpp rename to src/drawentity.cpp diff --git a/dsc.h b/src/dsc.h similarity index 100% rename from dsc.h rename to src/dsc.h diff --git a/entity.cpp b/src/entity.cpp similarity index 100% rename from entity.cpp rename to src/entity.cpp diff --git a/export.cpp b/src/export.cpp similarity index 100% rename from export.cpp rename to src/export.cpp diff --git a/exportstep.cpp b/src/exportstep.cpp similarity index 100% rename from exportstep.cpp rename to src/exportstep.cpp diff --git a/exportvector.cpp b/src/exportvector.cpp similarity index 100% rename from exportvector.cpp rename to src/exportvector.cpp diff --git a/expr.cpp b/src/expr.cpp similarity index 100% rename from expr.cpp rename to src/expr.cpp diff --git a/expr.h b/src/expr.h similarity index 100% rename from expr.h rename to src/expr.h diff --git a/file.cpp b/src/file.cpp similarity index 100% rename from file.cpp rename to src/file.cpp diff --git a/fltk/fltkmain.cpp b/src/fltk/fltkmain.cpp similarity index 100% rename from fltk/fltkmain.cpp rename to src/fltk/fltkmain.cpp diff --git a/fltk/fltkutil.cpp b/src/fltk/fltkutil.cpp similarity index 100% rename from fltk/fltkutil.cpp rename to src/fltk/fltkutil.cpp diff --git a/fltk/xFl_Gl_Window_Group.H b/src/fltk/xFl_Gl_Window_Group.H similarity index 100% rename from fltk/xFl_Gl_Window_Group.H rename to src/fltk/xFl_Gl_Window_Group.H diff --git a/fltk/xFl_Gl_Window_Group.cxx b/src/fltk/xFl_Gl_Window_Group.cxx similarity index 100% rename from fltk/xFl_Gl_Window_Group.cxx rename to src/fltk/xFl_Gl_Window_Group.cxx diff --git a/font.table.h b/src/font.table.h similarity index 100% rename from font.table.h rename to src/font.table.h diff --git a/generate.cpp b/src/generate.cpp similarity index 100% rename from generate.cpp rename to src/generate.cpp diff --git a/glhelper.cpp b/src/glhelper.cpp similarity index 100% rename from glhelper.cpp rename to src/glhelper.cpp diff --git a/graphicswin.cpp b/src/graphicswin.cpp similarity index 100% rename from graphicswin.cpp rename to src/graphicswin.cpp diff --git a/group.cpp b/src/group.cpp similarity index 100% rename from group.cpp rename to src/group.cpp diff --git a/groupmesh.cpp b/src/groupmesh.cpp similarity index 100% rename from groupmesh.cpp rename to src/groupmesh.cpp diff --git a/icons/angle.png b/src/icons/angle.png similarity index 100% rename from icons/angle.png rename to src/icons/angle.png diff --git a/icons/arc.png b/src/icons/arc.png similarity index 100% rename from icons/arc.png rename to src/icons/arc.png diff --git a/icons/assemble.png b/src/icons/assemble.png similarity index 100% rename from icons/assemble.png rename to src/icons/assemble.png diff --git a/icons/bezier.png b/src/icons/bezier.png similarity index 100% rename from icons/bezier.png rename to src/icons/bezier.png diff --git a/icons/char-0-check-false.png b/src/icons/char-0-check-false.png similarity index 100% rename from icons/char-0-check-false.png rename to src/icons/char-0-check-false.png diff --git a/icons/char-1-check-true.png b/src/icons/char-1-check-true.png similarity index 100% rename from icons/char-1-check-true.png rename to src/icons/char-1-check-true.png diff --git a/icons/char-2-radio-false.png b/src/icons/char-2-radio-false.png similarity index 100% rename from icons/char-2-radio-false.png rename to src/icons/char-2-radio-false.png diff --git a/icons/char-3-radio-true.png b/src/icons/char-3-radio-true.png similarity index 100% rename from icons/char-3-radio-true.png rename to src/icons/char-3-radio-true.png diff --git a/icons/circle.png b/src/icons/circle.png similarity index 100% rename from icons/circle.png rename to src/icons/circle.png diff --git a/icons/constraint.png b/src/icons/constraint.png similarity index 100% rename from icons/constraint.png rename to src/icons/constraint.png diff --git a/icons/construction.png b/src/icons/construction.png similarity index 100% rename from icons/construction.png rename to src/icons/construction.png diff --git a/icons/edges.png b/src/icons/edges.png similarity index 100% rename from icons/edges.png rename to src/icons/edges.png diff --git a/icons/equal.png b/src/icons/equal.png similarity index 100% rename from icons/equal.png rename to src/icons/equal.png diff --git a/icons/extrude.png b/src/icons/extrude.png similarity index 100% rename from icons/extrude.png rename to src/icons/extrude.png diff --git a/icons/faces.png b/src/icons/faces.png similarity index 100% rename from icons/faces.png rename to src/icons/faces.png diff --git a/icons/hidden-lines.png b/src/icons/hidden-lines.png similarity index 100% rename from icons/hidden-lines.png rename to src/icons/hidden-lines.png diff --git a/icons/horiz.png b/src/icons/horiz.png similarity index 100% rename from icons/horiz.png rename to src/icons/horiz.png diff --git a/icons/in3d.png b/src/icons/in3d.png similarity index 100% rename from icons/in3d.png rename to src/icons/in3d.png diff --git a/icons/length.png b/src/icons/length.png similarity index 100% rename from icons/length.png rename to src/icons/length.png diff --git a/icons/line.png b/src/icons/line.png similarity index 100% rename from icons/line.png rename to src/icons/line.png diff --git a/icons/mesh.png b/src/icons/mesh.png similarity index 100% rename from icons/mesh.png rename to src/icons/mesh.png diff --git a/icons/normal.png b/src/icons/normal.png similarity index 100% rename from icons/normal.png rename to src/icons/normal.png diff --git a/icons/ontoworkplane.png b/src/icons/ontoworkplane.png similarity index 100% rename from icons/ontoworkplane.png rename to src/icons/ontoworkplane.png diff --git a/icons/other-supp.png b/src/icons/other-supp.png similarity index 100% rename from icons/other-supp.png rename to src/icons/other-supp.png diff --git a/icons/parallel.png b/src/icons/parallel.png similarity index 100% rename from icons/parallel.png rename to src/icons/parallel.png diff --git a/icons/perpendicular.png b/src/icons/perpendicular.png similarity index 100% rename from icons/perpendicular.png rename to src/icons/perpendicular.png diff --git a/icons/point.png b/src/icons/point.png similarity index 100% rename from icons/point.png rename to src/icons/point.png diff --git a/icons/pointonx.png b/src/icons/pointonx.png similarity index 100% rename from icons/pointonx.png rename to src/icons/pointonx.png diff --git a/icons/rectangle.png b/src/icons/rectangle.png similarity index 100% rename from icons/rectangle.png rename to src/icons/rectangle.png diff --git a/icons/ref.png b/src/icons/ref.png similarity index 100% rename from icons/ref.png rename to src/icons/ref.png diff --git a/icons/same-orientation.png b/src/icons/same-orientation.png similarity index 100% rename from icons/same-orientation.png rename to src/icons/same-orientation.png diff --git a/icons/shaded.png b/src/icons/shaded.png similarity index 100% rename from icons/shaded.png rename to src/icons/shaded.png diff --git a/icons/sketch-in-3d.png b/src/icons/sketch-in-3d.png similarity index 100% rename from icons/sketch-in-3d.png rename to src/icons/sketch-in-3d.png diff --git a/icons/sketch-in-plane.png b/src/icons/sketch-in-plane.png similarity index 100% rename from icons/sketch-in-plane.png rename to src/icons/sketch-in-plane.png diff --git a/icons/step-rotate.png b/src/icons/step-rotate.png similarity index 100% rename from icons/step-rotate.png rename to src/icons/step-rotate.png diff --git a/icons/step-translate.png b/src/icons/step-translate.png similarity index 100% rename from icons/step-translate.png rename to src/icons/step-translate.png diff --git a/icons/symmetric.png b/src/icons/symmetric.png similarity index 100% rename from icons/symmetric.png rename to src/icons/symmetric.png diff --git a/icons/tangent-arc.png b/src/icons/tangent-arc.png similarity index 100% rename from icons/tangent-arc.png rename to src/icons/tangent-arc.png diff --git a/icons/text.png b/src/icons/text.png similarity index 100% rename from icons/text.png rename to src/icons/text.png diff --git a/icons/trim.png b/src/icons/trim.png similarity index 100% rename from icons/trim.png rename to src/icons/trim.png diff --git a/icons/vert.png b/src/icons/vert.png similarity index 100% rename from icons/vert.png rename to src/icons/vert.png diff --git a/icons/workplane.png b/src/icons/workplane.png similarity index 100% rename from icons/workplane.png rename to src/icons/workplane.png diff --git a/mesh.cpp b/src/mesh.cpp similarity index 100% rename from mesh.cpp rename to src/mesh.cpp diff --git a/modify.cpp b/src/modify.cpp similarity index 100% rename from modify.cpp rename to src/modify.cpp diff --git a/mouse.cpp b/src/mouse.cpp similarity index 100% rename from mouse.cpp rename to src/mouse.cpp diff --git a/png2c.pl b/src/png2c.pl similarity index 100% rename from png2c.pl rename to src/png2c.pl diff --git a/pngchar2c.pl b/src/pngchar2c.pl similarity index 100% rename from pngchar2c.pl rename to src/pngchar2c.pl diff --git a/polygon.cpp b/src/polygon.cpp similarity index 100% rename from polygon.cpp rename to src/polygon.cpp diff --git a/polygon.h b/src/polygon.h similarity index 100% rename from polygon.h rename to src/polygon.h diff --git a/request.cpp b/src/request.cpp similarity index 100% rename from request.cpp rename to src/request.cpp diff --git a/sketch.h b/src/sketch.h similarity index 100% rename from sketch.h rename to src/sketch.h diff --git a/solvespace.cpp b/src/solvespace.cpp similarity index 100% rename from solvespace.cpp rename to src/solvespace.cpp diff --git a/solvespace.h b/src/solvespace.h similarity index 100% rename from solvespace.h rename to src/solvespace.h diff --git a/srf/boolean.cpp b/src/srf/boolean.cpp similarity index 100% rename from srf/boolean.cpp rename to src/srf/boolean.cpp diff --git a/srf/curve.cpp b/src/srf/curve.cpp similarity index 100% rename from srf/curve.cpp rename to src/srf/curve.cpp diff --git a/srf/merge.cpp b/src/srf/merge.cpp similarity index 100% rename from srf/merge.cpp rename to src/srf/merge.cpp diff --git a/srf/ratpoly.cpp b/src/srf/ratpoly.cpp similarity index 100% rename from srf/ratpoly.cpp rename to src/srf/ratpoly.cpp diff --git a/srf/raycast.cpp b/src/srf/raycast.cpp similarity index 100% rename from srf/raycast.cpp rename to src/srf/raycast.cpp diff --git a/srf/surface.cpp b/src/srf/surface.cpp similarity index 100% rename from srf/surface.cpp rename to src/srf/surface.cpp diff --git a/srf/surface.h b/src/srf/surface.h similarity index 100% rename from srf/surface.h rename to src/srf/surface.h diff --git a/srf/surfinter.cpp b/src/srf/surfinter.cpp similarity index 100% rename from srf/surfinter.cpp rename to src/srf/surfinter.cpp diff --git a/srf/triangulate.cpp b/src/srf/triangulate.cpp similarity index 100% rename from srf/triangulate.cpp rename to src/srf/triangulate.cpp diff --git a/style.cpp b/src/style.cpp similarity index 100% rename from style.cpp rename to src/style.cpp diff --git a/system.cpp b/src/system.cpp similarity index 100% rename from system.cpp rename to src/system.cpp diff --git a/textscreens.cpp b/src/textscreens.cpp similarity index 100% rename from textscreens.cpp rename to src/textscreens.cpp diff --git a/textwin.cpp b/src/textwin.cpp similarity index 100% rename from textwin.cpp rename to src/textwin.cpp diff --git a/toolbar.cpp b/src/toolbar.cpp similarity index 100% rename from toolbar.cpp rename to src/toolbar.cpp diff --git a/ttf.cpp b/src/ttf.cpp similarity index 100% rename from ttf.cpp rename to src/ttf.cpp diff --git a/ui.h b/src/ui.h similarity index 100% rename from ui.h rename to src/ui.h diff --git a/undoredo.cpp b/src/undoredo.cpp similarity index 100% rename from undoredo.cpp rename to src/undoredo.cpp diff --git a/util.cpp b/src/util.cpp similarity index 100% rename from util.cpp rename to src/util.cpp diff --git a/view.cpp b/src/view.cpp similarity index 100% rename from view.cpp rename to src/view.cpp diff --git a/win32/freeze.cpp b/src/win32/freeze.cpp similarity index 100% rename from win32/freeze.cpp rename to src/win32/freeze.cpp diff --git a/win32/freeze.h b/src/win32/freeze.h similarity index 100% rename from win32/freeze.h rename to src/win32/freeze.h diff --git a/icon.ico b/src/win32/icon.ico similarity index 100% rename from icon.ico rename to src/win32/icon.ico diff --git a/win32/manifest.xml b/src/win32/manifest.xml similarity index 100% rename from win32/manifest.xml rename to src/win32/manifest.xml diff --git a/win32/resource.rc b/src/win32/resource.rc similarity index 100% rename from win32/resource.rc rename to src/win32/resource.rc diff --git a/win32/w32main.cpp b/src/win32/w32main.cpp similarity index 100% rename from win32/w32main.cpp rename to src/win32/w32main.cpp diff --git a/win32/w32util.cpp b/src/win32/w32util.cpp similarity index 100% rename from win32/w32util.cpp rename to src/win32/w32util.cpp