From 1a7bba516ddae6c8601f45e9a4baa663c0a8904b Mon Sep 17 00:00:00 2001 From: Tobe O Date: Sun, 29 Sep 2019 00:30:52 -0400 Subject: [PATCH] Cmake install into root --- CMakeLists.txt | 1 + example/main.dart | 11 ++++++++--- libangel_wings.dylib | Bin 63 -> 135636 bytes 3 files changed, 9 insertions(+), 3 deletions(-) mode change 120000 => 100755 libangel_wings.dylib diff --git a/CMakeLists.txt b/CMakeLists.txt index 56ea8495..d240b0ad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,3 +4,4 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake_dart_utils/cmake" find_package(Dart REQUIRED) set(CMAKE_CXX_STANDARD 11) add_subdirectory(lib/src) +install(TARGETS angel_wings LIBRARY DESTINATION "${CMAKE_CURRENT_LIST_DIR}") diff --git a/example/main.dart b/example/main.dart index e1c45216..4aa16ffc 100644 --- a/example/main.dart +++ b/example/main.dart @@ -7,13 +7,17 @@ import 'package:logging/logging.dart'; import 'package:pretty_logging/pretty_logging.dart'; main() async { - var app = Angel(); + hierarchicalLoggingEnabled = true; + + var logger = Logger.detached('wings') + ..level = Level.ALL + ..onRecord.listen(prettyLog); + var app = Angel(logger: logger); var wings = AngelWings(app); var fs = LocalFileSystem(); var vDir = CachingVirtualDirectory(app, fs, source: fs.currentDirectory, allowDirectoryListing: true); - app.logger = Logger('wings')..onRecord.listen(prettyLog); app.mimeTypeResolver.addExtension('yaml', 'text/x-yaml'); app.get('/', (req, res) => 'WINGS!!!'); @@ -21,9 +25,10 @@ main() async { await req.parseBody(); return req.bodyAsMap; }); + app.fallback(vDir.handleRequest); app.fallback((req, res) => throw AngelHttpException.notFound()); - await wings.startServer(InternetAddress.loopbackIPv6, 3000); + await wings.startServer(InternetAddress.loopbackIPv4, 3000); print('Listening at ${wings.uri}'); } diff --git a/libangel_wings.dylib b/libangel_wings.dylib deleted file mode 120000 index eb7bc46e..00000000 --- a/libangel_wings.dylib +++ /dev/null @@ -1 +0,0 @@ -/Users/thosakwe/Source/Angel/wings/lib/src/libangel_wings.dylib \ No newline at end of file diff --git a/libangel_wings.dylib b/libangel_wings.dylib new file mode 100755 index 0000000000000000000000000000000000000000..ada89e46be25836b9dde05892c4c5f8e3fda5c72 GIT binary patch literal 135636 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