Commit Graph

355 Commits

Author SHA1 Message Date
Alexander Karatarakis
d65e78f6f5 Move functions that are only used by import out of vcpkg.h/cpp 2016-11-07 16:17:34 -08:00
Alexander Karatarakis
058cbaf459 Merge lib.cpp and vcpkg.cpp -> vcpkg.cpp 2016-11-07 16:10:41 -08:00
Alexander Karatarakis
a721db2c1f Refactor: create new Paragraphs.h/cpp 2016-11-07 16:06:36 -08:00
Alexander Karatarakis
8e9338e4a0 Update CHANGELOG and bump version to v0.0.51 2016-11-07 14:45:53 -08:00
Alexander Karatarakis
b81d1910db [vcpkg search] Use System::println() instead of iostream + iomanip 2016-11-07 14:42:25 -08:00
Alexander Karatarakis
45eee10708 Add simple substring filtering to vcpkg list 2016-11-07 14:39:52 -08:00
Alexander Karatarakis
7e05c53628 Rework vcpkg cache implementation 2016-11-07 14:06:51 -08:00
Alexander Karatarakis
c2a6ed412b Rework vcpkg search implementation 2016-11-07 13:57:52 -08:00
Alexander Karatarakis
8f162188dd Add simple substring filtering to vcpkg cache, like vcpkg search 2016-11-07 13:44:57 -08:00
Alexander Karatarakis
331ac16736 Make lambda arg const 2016-11-07 13:43:36 -08:00
Alexander Karatarakis
e745e3f855 Update CHANGELOG and bump version to v0.0.50 2016-11-07 00:09:12 -08:00
Alexander Karatarakis
e4cab414ae Add new command: portsdiff 2016-11-06 22:39:15 -08:00
Alexander Karatarakis
a6821438bc Make parameter const 2016-11-06 20:12:21 -08:00
Alexander Karatarakis
83ffbf028f [Maps] Add overload for map (existing: unordered_map) 2016-11-06 20:11:50 -08:00
Robert Schumacher
7f336c7467 Enable qualified dependencies. Fix bug in internal 'build' command.
Added capability for CONTROL files to specify qualified dependencies, which are substring searched inside triplet names.

Fixed bug in internal 'build' command where if a package is already built, that built package's dependencies will be used to determine requirements for the build instead of the port directory's CONTROL file.
2016-11-05 01:02:15 -07:00
Alexander Karatarakis
d5d997bd7d [StatusParagraph] Minor refactor 2016-11-03 18:55:32 -07:00
Alexander Karatarakis
11c9a523f7 [SourceParagraph] Make function static 2016-11-03 18:52:44 -07:00
Alexander Karatarakis
95ef1b95e6 [BinaryParagraph] Refactor implementation 2016-11-03 17:36:47 -07:00
Alexander Karatarakis
99b3c49172 [SourceParagraph] Remove using namespace; 2016-11-03 17:32:31 -07:00
Alexander Karatarakis
90876a3bfe SourceParagraph checks fields at construction time 2016-11-03 17:32:00 -07:00
Alexander Karatarakis
5b60e13466 [SourceParagraph] Consistency rename 2016-11-03 14:37:10 -07:00
Alexander Karatarakis
a868bc96da Add port name to the output message 2016-11-02 20:57:19 -07:00
Alexander Karatarakis
4665b16ab3 Add checks for fields in CONTROL file. Resolves #228 2016-11-02 20:26:52 -07:00
Alexander Karatarakis
079a027b1e parse_depends() now handles empty case internally 2016-11-02 19:39:45 -07:00
Alexander Karatarakis
87a78a78dc [Strings] Add join() 2016-11-02 19:34:30 -07:00
Alexander Karatarakis
8a97f05d92 [Maps] Add function extract_keys() 2016-11-02 19:33:11 -07:00
Alexander Karatarakis
1fa0555695 [building] Parse SourceParagraph at the start of the build 2016-11-02 19:30:53 -07:00
Alexander Karatarakis
ce890f9799 check_exit() instead of check_throw() 2016-11-02 17:47:25 -07:00
Alexander Karatarakis
e695f92dec [post-build-checks] Add check for empty directories 2016-11-02 14:57:50 -07:00
Alexander Karatarakis
4bf461c9cd [post-build-checks] Add check for bin folders in static builds 2016-11-02 14:57:18 -07:00
Alexander Karatarakis
5d1dccf618 [post-build-checks] Fix debug/release file vectors that were swapped 2016-10-27 14:09:40 -07:00
Alexander Karatarakis
6380852f89 [coff_file_reader] Improve error message 2016-10-26 12:46:26 -07:00
Robert Schumacher
7625d837d5 [vcpkg] Revert 5671a12. Fixes #206, we should reapply these checks once all existing ports have been fixed. 2016-10-23 14:09:30 -07:00
Alexander Karatarakis
16ecddf94d [post-build] Convert message to warning 2016-10-22 20:33:21 -07:00
Alexander Karatarakis
5671a12eef [post-build-checks] Add checks about subdirectories in lib/ 2016-10-22 20:29:36 -07:00
Alexander Karatarakis
4fcdf15651 [post-build-checks] Add check for mismatching number of debug/release
binaries
2016-10-22 20:02:46 -07:00
Alexander Karatarakis
7db7ea5ceb Use pointer instead of reference for output parameter 2016-10-22 19:24:09 -07:00
Alexander Karatarakis
1c37f9981d Remove unused include directives 2016-10-20 18:12:19 -07:00
Alexander Karatarakis
251b3f0369 Rename function and make it static 2016-10-20 18:11:50 -07:00
Alexander Karatarakis
e118c15719 Remove accidental copy of file 2016-10-20 18:06:26 -07:00
Alexander Karatarakis
c12c3d90be src Formatting 2016-10-20 18:05:52 -07:00
flysha
337c96fc06 Switch to using CertUtil to generate hash. 2016-10-21 07:44:00 +08:00
sdcb
2b8bdeb044 Add hash file support. 2016-10-20 13:03:58 +08:00
Alexander Karatarakis
eb1cea1f43 Use coff_file_reader for checking the architecture of libs/dlls 2016-10-14 16:52:19 -07:00
Alexander Karatarakis
b15a23a268 Add coff_file_reader to extract info/from dll/lib files without dumpbin
Calling dumpbin was very slow in some cases (e.g. boost).
With coff_file_reader we directly examine the binary for the few bits we need.
2016-10-14 16:51:15 -07:00
Alexander Karatarakis
aa35c41aa6 Add MachineType enum 2016-10-14 16:49:44 -07:00
Alexander Karatarakis
b2585bba5d [Stopwatch] Microseconds now displayed as us instead of micros 2016-10-14 16:25:15 -07:00
Alexander Karatarakis
6a45620ce2 Fix overload of Checks::exit_with_message 2016-10-14 13:28:44 -07:00
Alexander Karatarakis
6d6467984d Rename lint_status::ERROR to lint_status::ERROR_DETECTED
This is because windows.h defines an ERROR macro
2016-10-11 11:32:23 -07:00
Alexander Karatarakis
1f055ef472 [Stopwatch] start()/stop() return const & 2016-10-10 23:57:43 -07:00
Alexander Karatarakis
38bf4de0fe Rename System::Stopwatch to System::Stopwatch2 2016-10-10 18:46:40 -07:00
Alexander Karatarakis
a6f8650edb [post-build-lint] Look no further than newline when detecting "machine" line 2016-10-10 18:44:18 -07:00
Alexander Karatarakis
6595a311e9 Post-build checks no longer use findstr. Resolves #69 2016-10-10 18:27:47 -07:00
Alexander Karatarakis
3ecc67784a Add Stopwatch class 2016-10-10 18:12:26 -07:00
Alexander Karatarakis
a00500bcc1 Add to_printf_arg(double) overload 2016-10-10 15:03:48 -07:00
Alexander Karatarakis
bf6ddeb018 Add post build checks for the presence of dlls in static builds 2016-10-05 17:44:02 -07:00
Alexander Karatarakis
52b7630c86 Add triplet::build_type() 2016-10-05 17:44:02 -07:00
Alexander Karatarakis
8b4f7d4a98 Fix cast to size_t 2016-10-05 17:43:46 -07:00
Alexander Karatarakis
12d9cba5d8 Update CHANGELOG and bump version to v0.0.40 2016-10-05 17:00:49 -07:00
Alexander Karatarakis
1f9b97d683 Add "lowercase" to the message about invalid chars 2016-10-05 13:45:44 -07:00
Alexander Karatarakis
5adf575879 Fix #119 [regression]: cannot use numbers in library names 2016-10-05 13:20:33 -07:00
Alexander Karatarakis
7fd71747d7 Display the lowercased name for errors in package parsing 2016-10-05 13:19:46 -07:00
Alexander Karatarakis
8c035ea36a Temporarily use get_or_throw() 2016-10-04 15:25:53 -07:00
Alexander Karatarakis
0050125443 Rename function case_insensitive_find() to case_insensitive_ascii_find() 2016-10-04 15:23:44 -07:00
Alexander Karatarakis
8400da7f1d Remove function prefix_path_for_package() 2016-10-04 15:18:44 -07:00
Alexander Karatarakis
429e2eca4a BinaryParagraph now contains a package_spec instead of name+triplet 2016-10-04 15:16:07 -07:00
Alexander Karatarakis
e383b39637 Replace auto with actual type 2016-10-04 15:10:04 -07:00
Alexander Karatarakis
79f823590d Temporarily use get_or_throw() 2016-10-04 14:55:33 -07:00
Alexander Karatarakis
7d13495cf9 All-CAPS for enum members 2016-10-04 14:48:39 -07:00
Alexander Karatarakis
bf323e8cc6 [package_spec]User input gets lowercased; other input is checked 2016-10-04 14:47:42 -07:00
Alexander Karatarakis
04539816b5 Add another result when parsing package spec: has_invalid_characters 2016-10-04 14:46:40 -07:00
Alexander Karatarakis
ea751d6630 Add Strings::ascii_to_lowercase() 2016-10-04 14:44:19 -07:00
Alexander Karatarakis
31c9cd8c2d Remove redundant parentheses 2016-10-03 19:48:56 -07:00
Alexander Karatarakis
5d58eb29cc [package_spec] Force using the factories that do sanity checks 2016-10-03 17:45:01 -07:00
Alexander Karatarakis
2f8c115777 [package_spec] Static factory now lowercases all chars 2016-10-03 17:24:42 -07:00
Alexander Karatarakis
330b411cd2 [triplet] Force using the factory that does sanity checks 2016-10-03 17:20:52 -07:00
Robert Schumacher
98d361de3f [vcpkg] Adjust ersion to point at LICENSE.txt 2016-10-03 15:15:32 -07:00
Alexander Karatarakis
e507c14229 create & edit commands now only handle package names 2016-09-30 18:21:38 -07:00
Alexander Karatarakis
25145714f7 [vcpkg edit] Now throws an error if it cannot launch an editor 2016-09-30 17:36:33 -07:00
Alexander Karatarakis
188eac680b Rename check_all_triplets() to check_triplets() 2016-09-30 17:02:39 -07:00
Alexander Karatarakis
51bc83c70e Added triplet check in all commands that obtain package_specs 2016-09-30 17:01:41 -07:00
Alexander Karatarakis
e3455e281b Introduce Input::check_all_triplets() 2016-09-30 16:55:34 -07:00
Alexander Karatarakis
4b0f3d87be Introduce Input::check_triplet() 2016-09-30 16:54:07 -07:00
Alexander Karatarakis
d31498d0e7 Merge branch 'master' of https://github.com/Microsoft/vcpkg 2016-09-30 16:49:47 -07:00
Alexander Karatarakis
8becbe15a2 Place check_and_get_package_spec in a separate file 2016-09-30 16:49:30 -07:00
Robert Schumacher
cddc4f612e Merge branch 'master' of https://github.com/microsoft/vcpkg 2016-09-30 16:48:16 -07:00
Alexander Karatarakis
bcb2be360a Remove parse_all_arguments_as_package_specs() 2016-09-30 16:39:23 -07:00
Alexander Karatarakis
d7c357db2e Replace usage of parse_all_args_as_package_specs with the new functions 2016-09-30 16:38:29 -07:00
Alexander Karatarakis
df55e93b18 [vcpkg_paths] Use fs alias in all places within the header 2016-09-30 16:34:55 -07:00
Alexander Karatarakis
3f5275ed9f Add function check_and_get_package_spec() and variant for multiple specs 2016-09-30 16:29:12 -07:00
Alexander Karatarakis
b2c1076aef All commands now use the new functions for argument checking 2016-09-30 15:02:08 -07:00
Robert Schumacher
17786b865a Merge branch 'master' of https://github.com/microsoft/vcpkg 2016-09-30 14:59:58 -07:00
Alexander Karatarakis
82d145c9bc Add quotes around command name 2016-09-30 11:52:54 -07:00
Alexander Karatarakis
fc1e55173b Rename check_max_args to check_max_arg_count and introduce min/exact variants 2016-09-30 11:29:01 -07:00
Alexander Karatarakis
0fdd57983a Introduce create_example_string() 2016-09-30 11:23:05 -07:00
Alexander Karatarakis
3419a7f9ca Change error_count to size_t 2016-09-30 11:22:24 -07:00
Alexander Karatarakis
4faf11f206 Add size_t overload to to_printf_arg() 2016-09-30 11:21:51 -07:00
Alexander Karatarakis
8ed88af8c9 Rename wchar_t overload of Strings::format() to wformat() 2016-09-29 19:28:00 -07:00
Alexander Karatarakis
a4ab4fd241 Rename wchar_t overload of format_internal to wformat_internal 2016-09-29 19:25:07 -07:00
Alexander Karatarakis
8e3ee05230 Rename validate_triplet to is_valid_triplet 2016-09-29 15:02:56 -07:00
Alexander Karatarakis
033f577c51 Fix formatting 2016-09-29 15:02:56 -07:00
Alexander Karatarakis
fb1130876f Valiting triplets is now the responsibility of vcpkg_paths 2016-09-29 15:00:40 -07:00
Alexander Karatarakis
8ea76e833e [triplet] Part before dash is arch. Part after dash is system 2016-09-29 14:58:09 -07:00
Robert Schumacher
4ab32c520d [vcpkg] Improve error message on mistyped package name. 2016-09-29 14:31:28 -07:00
Robert Schumacher
93f8088a5a [vcpkg] Improved help message upon build failure. 2016-09-29 11:50:31 -07:00
Alexander Karatarakis
48fe5f36b2 Rename SCAFFOLD to CREATE to match vcpkg create 2016-09-28 16:25:32 -07:00
Robert Schumacher
1402262962 [vcpkg] Fix user wide integration to avoid XCOPY due to locale-specific failures 2016-09-28 12:22:12 -07:00
Robert Schumacher
cc29d43f85 Merge branch 'master' of https://github.com/microsoft/vcpkg 2016-09-27 15:51:16 -07:00
Robert Schumacher
2ed13a583d [vcpkg] Provide more error information on installation failures 2016-09-27 15:51:00 -07:00
Alexander Karatarakis
687ac42cdd Make member function const 2016-09-27 01:48:51 -07:00
Alexander Karatarakis
a098ecad03 vcpkglib_helpers: Return output instead of accepting it as arg 2016-09-26 21:12:04 -07:00
Alexander Karatarakis
a8b0651e50 vcpkg create now checks for invalid chars in the zip file 2016-09-23 17:57:50 -07:00
Alexander Karatarakis
1cd1f6a46b Add Files::has_invalid_chars_for_filesystem() 2016-09-23 17:57:18 -07:00
Alexander Karatarakis
c7a7d062a7 Fix vcpkg create to not parse all arguments as package specs 2016-09-23 17:07:01 -07:00
Alexander Karatarakis
6cc29c1f84 Change vcpkg::parse() to vcpkg::package_spec::from_string() 2016-09-23 16:39:07 -07:00
Alexander Karatarakis
cd30cd4df9 parse_all_arguments_as_package_specs: remove unused parameter 2016-09-23 16:26:27 -07:00
Robert Schumacher
76149ffac5 [vcpkg] Rename vcpkg_ports::find_available_x to be more concise 2016-09-23 14:32:56 -07:00
Robert Schumacher
f4196f1638 [vcpkg] Move find_available_package, find_available_port_file into vcpkg_paths.
`vcpkg_paths` is responsible for binding the concrete filesystem representation to the abstract `package_spec`.
2016-09-23 14:25:17 -07:00
Robert Schumacher
ddd0f88579 Merged alzie:default_triplet for PR #70 2016-09-23 12:19:57 -07:00
Alexander Karatarakis
b2f6a769ea find_unment_dependencies() now works for a single package 2016-09-23 12:06:55 -07:00
Alexander Karatarakis
0b59e6c0fb [vcpkg build] Print the missing package's arch along with the package name 2016-09-23 12:01:25 -07:00
Albert Ziegenhagel
082eb3680e Disabled validation of per-package triplet 2016-09-23 11:49:29 +02:00
Albert Ziegenhagel
3495f094bc Fixed errors introduced during merge 2016-09-23 10:06:45 +02:00
Albert Ziegenhagel
430f53af7d Merge branch 'master' into default_triplet
# Conflicts:
#	toolsrc/include/vcpkg_cmd_arguments.h
#	toolsrc/src/commands_installation.cpp
#	toolsrc/src/vcpkg_cmd_arguments.cpp
2016-09-23 09:58:33 +02:00
Albert Ziegenhagel
31935aa0fd Improved error reporting when user provides invalid triplets 2016-09-23 09:44:30 +02:00
Alexander Karatarakis
5b89712df0 Restruct vcpkg build to 1 package 2016-09-23 00:02:51 -07:00
Alexander Karatarakis
a26c88c754 vcpkg build will now show helpful error if dependencies are missing 2016-09-22 23:53:13 -07:00
Alexander Karatarakis
33a2969b9c Refactor dependency related code to vcpkg::Dependencies 2016-09-22 23:28:50 -07:00
Alexander Karatarakis
addecbfdef Introduce vcpkg_Maps utility namespace 2016-09-22 23:28:14 -07:00
Alexander Karatarakis
c699d5715b Introduce vcpkg::Sets utility namespace 2016-09-22 23:27:46 -07:00
Albert Ziegenhagel
4a818b6a3e Fixed encoding of default triplet name 2016-09-22 13:17:00 +02:00
Albert Ziegenhagel
eba6126d15 Introduced environment variable "VCPKG_DEFAULT_TRIPLET" 2016-09-22 12:00:27 +02:00
Alexander Karatarakis
23a45e7db6 Use System::println() 2016-09-22 01:24:26 -07:00
Alexander Karatarakis
f26c8c8b60 Place import_command() in a separate cpp file 2016-09-22 01:15:09 -07:00
Alexander Karatarakis
95a44983db Use print_example() 2016-09-22 00:40:23 -07:00
Alexander Karatarakis
4f80532991 Place owns_command() in a separate cpp file 2016-09-22 00:06:37 -07:00
Alexander Karatarakis
1339080a90 Place command_create() in a separate cpp file 2016-09-22 00:02:09 -07:00
Alexander Karatarakis
e3a9d3524b Place list_command() in a separate cpp file 2016-09-22 00:00:38 -07:00
Alexander Karatarakis
97b79e1f0c Place command_list() in a separate cpp file 2016-09-21 23:54:23 -07:00
Alexander Karatarakis
aeab2fee87 Place update_command() in a separate cpp file 2016-09-21 23:51:45 -07:00
Alexander Karatarakis
03b43aad42 Place command_cache in a separate cpp file 2016-09-21 23:49:20 -07:00
Alexander Karatarakis
869a3b22ad vcpkg search now does substring search 2016-09-21 22:47:36 -07:00
Alexander Karatarakis
63052551ef Simplify for-iterator 2016-09-21 22:14:02 -07:00
Alexander Karatarakis
fd7969d325 Move search_command to a separate file 2016-09-21 21:57:27 -07:00
Alexander Karatarakis
54341f745c MOve recursive upwards search to Files 2016-09-21 21:43:59 -07:00
Dan Sarginson
a1d9468e6d Remove use of wildcard in integration installation dest path.
This seemed to be used in order to stop XPATH blocking on the file/directory dialog. It was causing odd issues I mentioned in #62. Instead used "echo f" to assure XCOPY that we're dealing with files.

Fixes #62.
2016-09-21 19:31:36 -07:00
Robert Schumacher
81d6426298 [vcpkg] Place VS user-wide integration into a C++ specific folder instead of for all projects.
This avoids a bug where the IDE would erroneously add x86, x64, and ARM architectures to C# projects.
2016-09-21 15:41:30 -07:00
Alexander Karatarakis
e2f34523dd [integration] Add check that the targets file was properly copied 2016-09-21 12:32:28 -07:00
Ahmed Mahdy
4abe1d4235 Account for when ImportBefore does not exist 2016-09-21 03:34:18 -07:00
Alexander Karatarakis
58bcdde2f7 [vcpkg] Improve consistency in use of %VS140COMNTOOLS% 2016-09-20 15:36:22 -07:00
Robert Schumacher
7fd253e277 Merge branch 'master' of https://github.com/Remotion/vcpkg 2016-09-20 14:32:36 -07:00
Robert Schumacher
6c9b62eea3 [vcpkg] Fix mismatch between props and targets for user integration. 2016-09-20 14:25:28 -07:00
Remotion
4c4b94d270 Using %VS140COMNTOOLS% now for the case if VS is not installed in default location. 2016-09-20 21:38:27 +02:00
Alexander Karatarakis
1eb51cc427 vcpkg.exe now detects the root dir via the .vcpkg-root file 2016-09-19 19:12:46 -07:00
Alexander Karatarakis
ccca198c1b Initial commit 2016-09-18 20:54:03 -07:00