From 94a7fd285e0ea15018024a436eefcde82dd5cdec Mon Sep 17 00:00:00 2001 From: Steve Hollasch Date: Sun, 16 Oct 2016 13:50:50 -0700 Subject: [PATCH] Move build/win up to just build Since this tool is very specific to the Windows OS, there's no point generalizing the build directory structure for other systems. This change basically moves all build files up from the old `win` directory. I also changed the output target of the experimental `netuse` tool to direct output to `out/x64/Debug` instead of just `out`. --- README.md | 41 ++++++++++++-------------- build/{win => }/drives.sln | 0 build/{win => }/drives.vcxproj | 14 ++++----- build/{win => }/drives.vcxproj.filters | 2 +- build/makefile | 19 ++++++++++++ build/win/makefile | 18 ----------- 6 files changed, 46 insertions(+), 48 deletions(-) rename build/{win => }/drives.sln (100%) rename build/{win => }/drives.vcxproj (95%) rename build/{win => }/drives.vcxproj.filters (95%) create mode 100644 build/makefile delete mode 100644 build/win/makefile diff --git a/README.md b/README.md index ecb4cc5..92a3c01 100644 --- a/README.md +++ b/README.md @@ -12,27 +12,25 @@ command takes no arguments. Usage ----- -``` -drives 1.0 -drives: Print drive and volume information. -Usage: drives [/?|-h|--help] [--version] [-v|--verbose] [-p|--parseable] - [drive] + drives 1.0 + drives: Print drive and volume information. + Usage: drives [/?|-h|--help] [--version] [-v|--verbose] [-p|--parseable] + [drive] -Single letter options may use either dashes (-) or slashes (/) as option -prefixes, and are case insensitive. This program also prints all network -mappings and drive substitutions (see the 'subst' command). + Single letter options may use either dashes (-) or slashes (/) as option + prefixes, and are case insensitive. This program also prints all network + mappings and drive substitutions (see the 'subst' command). ---help / -h Print help information. + --help / -h Print help information. ---verbose / -v Print verbose; print additional information (only affects - human format). + --verbose / -v Print verbose; print additional information (only affects + human format). ---version Print program version. + --version Print program version. ---parseable / -p Print results in machine-parseable format. + --parseable / -p Print results in machine-parseable format. -[drive] Drive letter for single drive report. -``` + [drive] Drive letter for single drive report. Sample Output @@ -49,13 +47,12 @@ Sample Output Developing ---------- -This project is managed with Visual Studio. It is built as a 64-bit application. -However, it is structured in a way that is friendly to add build setups from -other environments. Here's the overall tree structure: +This project is managed with Visual Studio, and is built as a 64-bit +application. However, it is structured in a way that is friendly to add build +setups from other environments. Here's the overall tree structure: +---src ^---build - | ^---win ^---out ^---x64 ^---Debug @@ -67,10 +64,10 @@ other environments. Here's the overall tree structure: Pure source files are in the `src` directory. The `build` directory contains all of the configuration for build tools. For now, it just has the Visual Studio -build environment, in `build/win`. All generated build output goes to the `out` -directory (it's always safe to delete the entire `out` directory). +build environment and an `nmake`-style makefile. All generated build output goes +to the `out` directory (it's always safe to delete the entire `out` directory). -There's also a makefile that will build netuse, an experimental tool for now. +The makefile just builds netuse, an experimental tool for now. -------------------------------------------------------------------------------- diff --git a/build/win/drives.sln b/build/drives.sln similarity index 100% rename from build/win/drives.sln rename to build/drives.sln diff --git a/build/win/drives.vcxproj b/build/drives.vcxproj similarity index 95% rename from build/win/drives.vcxproj rename to build/drives.vcxproj index c270876..826b792 100644 --- a/build/win/drives.vcxproj +++ b/build/drives.vcxproj @@ -18,6 +18,9 @@ x64 + + + {17B3A31D-06A2-4275-A777-D508F1769838} Win32Proj @@ -71,16 +74,16 @@ true - $(SolutionDir)..\..\out\$(Platform)\$(Configuration)\ - $(SolutionDir)..\..\out\$(Platform)\$(Configuration)\intermediate\ + $(SolutionDir)..\out\$(Platform)\$(Configuration)\ + $(SolutionDir)..\out\$(Platform)\$(Configuration)\intermediate\ false false - $(SolutionDir)..\..\out\$(Platform)\$(Configuration)\ - $(SolutionDir)..\..\out\$(Platform)\$(Configuration)\intermediate\ + $(SolutionDir)..\out\$(Platform)\$(Configuration)\ + $(SolutionDir)..\out\$(Platform)\$(Configuration)\intermediate\ @@ -152,9 +155,6 @@ mpr.lib;%(AdditionalDependencies) - - - diff --git a/build/win/drives.vcxproj.filters b/build/drives.vcxproj.filters similarity index 95% rename from build/win/drives.vcxproj.filters rename to build/drives.vcxproj.filters index 40f31a1..c9fb9fb 100644 --- a/build/win/drives.vcxproj.filters +++ b/build/drives.vcxproj.filters @@ -15,7 +15,7 @@ - + Source Files diff --git a/build/makefile b/build/makefile new file mode 100644 index 0000000..b30c058 --- /dev/null +++ b/build/makefile @@ -0,0 +1,19 @@ + +LIBS = kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib \ + advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib \ + odbccp32.lib + +OUT = ..\out\x64\Debug +SRC = ..\src +SRCFromOut = ..\..\..\src + +all: $(OUT)\netuse.exe + +$(OUT)\netuse.exe: $(SRC)\netuse.cpp + -mkdir 2>nul $(OUT) + cd $(OUT) & cl -nologo /Zi $(SRCFromOut)\netuse.cpp + +clean clobber: + -cd $(OUT) & del 2>nul netuse.* vc120.pdb + +fresh: clobber all diff --git a/build/win/makefile b/build/win/makefile deleted file mode 100644 index d76a42b..0000000 --- a/build/win/makefile +++ /dev/null @@ -1,18 +0,0 @@ - -LIBS = kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ - advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\ - odbccp32.lib - -OUT = ..\..\out -SRC = ..\..\src - -all: $(OUT)\netuse.exe - -$(OUT)\netuse.exe: $(SRC)\netuse.cpp - -md 2>nul $(OUT) - cd $(OUT) & cl -nologo -Ox ..\src\netuse.cpp - -clean clobber: - -cd $(OUT) & del 2>nul *.obj *.exe *.pdb *.ilk - -fresh: clobber all