From f931780fded04def6702d62a3ec47e5d24de66c8 Mon Sep 17 00:00:00 2001 From: Xavier Grave Date: Mon, 13 Apr 2015 21:29:42 +0200 Subject: add ada4hurd basic documentation --- hurd/ada4hurd.mdwn | 63 +++++++++++++++++++++++++ hurd/documentation.mdwn | 2 + hurd/documentation/netfs_ada_results.mdwn | 77 +++++++++++++++++++++++++++++++ 3 files changed, 142 insertions(+) create mode 100644 hurd/ada4hurd.mdwn create mode 100644 hurd/documentation/netfs_ada_results.mdwn diff --git a/hurd/ada4hurd.mdwn b/hurd/ada4hurd.mdwn new file mode 100644 index 00000000..784ad7fd --- /dev/null +++ b/hurd/ada4hurd.mdwn @@ -0,0 +1,63 @@ +[[!meta copyright="Copyright © 2015 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +# Ada4Hurd + +## Introduction + +Ada4Hurd provides tools and examples to ease Ada development in Hurd. It is at an early stage. + +### ada2def + + * It is based on the [ASIS](http://libre.adacore.com/tools/gnat-gpl-edition/) standard + * It analyse an Ada specification and generates some .defs file + +### def2ada + + * Using [opentoken](http://stephe-leake.org/ada/opentoken.html) it analyse a .defs file + * it can generate server skeleton + * it can generate a client library for easy connection to the server + +### xmladafs + + * Mainly a translation of xmlfs in Ada + * write capabilities development is undergoing + * use [xmlada](http://libre.adacore.com/tools/xmlada/) + +### hello + + * Hello World example translated in Ada + +### netfs_base + + * Mainly a dummy translator to understand netfs mechanisms + * [[Some results of netfs experimentation|documentation/netfs_ada_results]] + +## Where to find the code + + * Ada4Hurd is a [sourceforge](https://sourceforge.net/projects/ada4hurd/) based project + * Mercurial is used as DVCS + + $ hg clone http://hg.code.sf.net/p/ada4hurd/code ada4hurd-code + +## Build the code + + * Install the build dependencies as root + + $ apt-get install gnat libopentoken4-dev libxmlada5-dev libasis2014-dev + + * Build + + $ cd ada4hurd-code + $ make + + * Play with xmladafs + + $ make trans_on \ No newline at end of file diff --git a/hurd/documentation.mdwn b/hurd/documentation.mdwn index 944b5c98..a85f4d4f 100644 --- a/hurd/documentation.mdwn +++ b/hurd/documentation.mdwn @@ -88,3 +88,5 @@ is included in the section entitled investigates the mobility aspect of stores and how it can be generalized and used for other applications. The background chapter may be of interest to new developers. + + * [[Ada4Hurd]]: some tools to write translators with Ada \ No newline at end of file diff --git a/hurd/documentation/netfs_ada_results.mdwn b/hurd/documentation/netfs_ada_results.mdwn new file mode 100644 index 00000000..13029f85 --- /dev/null +++ b/hurd/documentation/netfs_ada_results.mdwn @@ -0,0 +1,77 @@ +[[!meta copyright="Copyright © 2015 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +# Netfs Ada experimentations + +## Rev 05c2ac288ad2 + + * Nothing is implemented in the Netfs\_Implementation package + * node is the translator inode in directory . + +### ls -la . + + * Leads to a call of Validate\_Stat : line 115 of Netfs\_Implementation package + * Returns an error : + * bash: cd: node: Not a directory + +### ls -la node + + * Returns an error : + * ls: cannot access node: Not a directory + * Leads also to a call of Validate\_Stat : line 115 of Netfs\_Implementation package + +### cd node + + * Returns an error : + * bash: cd: node: Not a directory + * Validate\_Stat get called three times + +## Rev 6052185bf877 + + * Only a very simple Validate\_State is implemented + +### ls -la . + + * Leads to a call of Validate\_Stat : line 120 of Netfs\_Implementation package then a call to Check\_Open\_Permissions : line 13 + * Returns this error : + * "ls: cannot access node: Not a directory" + +### ls -la node + + * Returns an error : + * ls: cannot access node: Not a directory + * Leads to a call of Validate\_Stat : line 120 of Netfs\_Implementation package then a call to Check\_Open\_Permissions : line 13 + +### cd node + + * Returns an error : + * bash: cd: node: Not a directory + * Validate\_Stat then Check\_Open\_Permissions sequence is called three times + +## Rev dd3e6b7ea5c7 + + * Check\_Open\_Permissions implemented + +### ls -la . + * No more error : node is displayed as a directory + * Sequence call : validate\_state / check\_open\_permissions / validate\_state + +### ls -la node + + * Returns an error : + * ls: reading directory node: Operation not supported + * call sequence : + * validate\_state + * check\_open\_permissions + * validate\_state + * validate\_state + * check\_open\_permissions + * validate\_state + * get\_dirents line 90 of netfs\_implementation package \ No newline at end of file -- cgit v1.2.3 From 28ff170f0e2965ed7a770f544d2b06b3414136fd Mon Sep 17 00:00:00 2001 From: Xavier Grave Date: Mon, 13 Apr 2015 21:50:57 +0200 Subject: [ada4hurd] add cd node results --- hurd/documentation/netfs_ada_results.mdwn | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/hurd/documentation/netfs_ada_results.mdwn b/hurd/documentation/netfs_ada_results.mdwn index 13029f85..cc075da8 100644 --- a/hurd/documentation/netfs_ada_results.mdwn +++ b/hurd/documentation/netfs_ada_results.mdwn @@ -67,11 +67,22 @@ is included in the section entitled * Returns an error : * ls: reading directory node: Operation not supported - * call sequence : + * Call sequence : * validate\_state * check\_open\_permissions * validate\_state * validate\_state * check\_open\_permissions * validate\_state - * get\_dirents line 90 of netfs\_implementation package \ No newline at end of file + * get\_dirents line 90 of netfs\_implementation package + +### cd node + + * Hangs + * Call sequence : + * Validate\_Stat + * Check\_Open\_Permissions + * Validate\_Stat + * Validate\_Stat + * Check\_Open\_Permissions + * netfs\_implementation.adb:57 Netfs\_Implementation.Attempt\_Lookup \ No newline at end of file -- cgit v1.2.3 From 94e499cc669d76a9f64998be3a75e1607261126d Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawlhuDmpoP_69ebY9ZWu9hqr2RDLwsOf980" Date: Tue, 14 Apr 2015 18:03:11 +0200 Subject: Link to recent discussion. --- open_issues/_san.mdwn | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/open_issues/_san.mdwn b/open_issues/_san.mdwn index 5e6c8796..5980784b 100644 --- a/open_issues/_san.mdwn +++ b/open_issues/_san.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2012, 2013 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2012, 2013, 2015 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -10,7 +11,7 @@ License|/fdl]]."]]"""]] [[!meta title="Port the GCC and LLVM/clang Sanitizers (*san) to the Hurd"]] -[[!tag open_issue_gcc]] +[[!tag open_issue_gcc open_issue_llvm]] GCC and LLVM/clang provide several *sanitizers*, , such @@ -62,3 +63,8 @@ first look they reimplement a lot of [[/glibc]] by directly using richi: that said, I don't want to spend as much time as I've done so far on it, and in the time I'll allocate for it optimizing the code it generates is higher on the todo list than ports to other targets + + +# 2015-04-14 + +[[!message-id "20150414130851.GA6154@type.bordeaux.inria.fr"]]. -- cgit v1.2.3