On 14/01/14 17:25, Patrick Walton wrote:
On 1/14/14 1:29 AM, comex wrote:
On Mon, Jan 13, 2014 at 10:30 AM, George Makrydakis
<[email protected]> wrote:
Again, note that this rather long thread is about discussing in the
end what
the official stance should be. There is no valid reason other than
lack of
manpower and / or language immaturity for having to depend on ruby,
python,
autotools, cmake or whatever else in order to build rust software.
There is no reason every language should have its own build system
written from scratch (or package manager, for that matter); the goals
of each language community are really mostly identical<snip>
However, I'd say there is a stunning lack of existing build systems
that actually combine a clean design, flexibility, portability, and
performance<snip>
This e-mail sums up my feelings to a T, and it's why I'm conflicted
about the whole matter.
The more people talk about different build systems and how we can't
choose one yet, the more I agree.
So, rethinking, it seems to me that important part seems, is to be
COMPATIBLE with everyone's project hosting, build system, and/or package
manager of choice. That would include command line build tools, pretty
website download catalogs, yum, synaptic, cabal, etc.
So, much more important than choosing TOOLS, I think Rust needs to
standardise INFORMATION that any tool can use. Perhaps something like this?
[
"project": {
"name": "someproject",
"brief-description": "some description",
"limited-description": [
"Para-one.",
"Para-two.",
"Para-three."
],
"web": "http://buggysoft.com",
"screenshots": {
"screenshot one": {
"uri": "http://www.buggypics.com/massivebug.png",
"alt-text": "Features massive bugs",
},
},
"bug-tickets": "http://overloaded-cloud-system.buggysoft.com",
"authors": {
"author1": {
"email": "[email protected]",
"web": "http://someplace.com",
},
},
"copyright": {
"license-file": "docs/LICENSE.TXT",
"license-flags": "SHAREALIKE | ATTRIBUTION |
ADVERTISING_CLAUSE",
},
"build-info": {
"build-type": "library",
"target": "libx.so"
"source-files": [ "src/*.rs", "somedir/a_file.rs" ],
},
"developer-support-info": {
"rust-ide-doc-file": "docs/libx.rustapi",
"rust-ide-completion-file": "docs/libx.rusttags",
},
"dependencies": {
"rust-projects": {
"someotherproject": { # from that projects
"project" -> "name" entry
# following fields are optional; any
specified filter the list
# the list of suitable candidates.
"min-version": "0.1",
"max-version": "0.1",
"gitrepo":
"http://somehub.com/someuser/someotherproject/",
"min-git-tag": "04a453543",
"max-git-tag": "045ead634",
"tarball-uri":
"http://someotherproject.com/somepath-${version}.tgz",
"distro-version-ok": "true"
}
},
"external-libs": {
"libssl": {
"min-version": "0.1",
"max-version": "0.1",
"gitrepo":
"http://somehub.com/someuser/someotherproject/",
"min-git-tag": "04a453543",
"max-git-tag": "045ead634",
"tarball-uri":
"http://someotherproject.com/somepath-${version}.tgz"
"distro-version-ok": "true",
}
},
}
}
]
--
Lee
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev