1MKPROJECT(1) User Commands MKPROJECT(1)
2
3
4
6 mkproject - make project skeletons
7
9 mkproject [OPTIONS]
10
11 Example: mkproject -s bash -t test
12
14 make project is a command that makes project skeletons. make project
15 automatizes the task of starting a new project with the information
16 provided from the command line. The package created by default is a
17 'hello world' project of the selected skeleton that is managed with au‐
18 totools. There are skeletons for bash, c, c library, python, c++, c++
19 library and perl.
20
21 Mandatory arguments for long options are mandatory for short options
22 too.
23
24 -l, --list
25 list skeletons
26
27 -s, --skeleton=SKELETON
28 set skeleton type (obligatory)
29
30 -t, --tarname=TARNAME
31 set tar name (obligatory)
32
33 -p, --pkgname=PKGNAME
34 set package name (full)
35
36 -d, --description=DESCRIPTION
37 set short description
38
39 -a, --author=AUTHOR
40 set full author name
41
42 -b, --bugreport=BUGREPORT
43 set bug report adress
44
45 -m, --homepage=HOMEPAGE
46 set homepage url
47
48 -n, --dependencies=DEPENDENCIES
49 set dependencies
50
51 -r, --verbose
52 show progress messages
53
54 -h, --help
55 show a help message
56
57 -v, --version
58 show the program version
59
60 Skeleton and Tar Name are obligatory, the rest are recommended, depen‐
61 dencies is optional.
62
64 1: A bash project:
65 $ mkproject --skeleton=bash --tarname=test --pkgname="A test" --description="A test package for mkproject" --author="Someone" --bugreport=noemail@network.org --homepage "http://nohomepage.org"
66
67 let's try it:
68
69 $ cd test
70 $ ls
71 aclocal.m4 ChangeLog COPYING Makefile.am mkproject.log src
72 AUTHORS configure INSTALL Makefile.in NEWS
73 autom4te.cache configure.ac install-sh missing README
74
75 $ cat README
76 A test: A test package for mkproject
77
78 Copyright (C) 2021 Someone
79
80 This program is free software: you can redistribute it and/or modify
81 it under the terms of the GNU General Public License as published by
82 the Free Software Foundation, either version 3 of the License, or
83 (at your option) any later version.
84
85 This program is distributed in the hope that it will be useful,
86 but WITHOUT ANY WARRANTY; without even the implied warranty of
87 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
88 GNU General Public License for more details.
89
90 You should have received a copy of the GNU General Public License
91 along with this program. If not, see <http://www.gnu.org/licenses/>.
92
93 test (A test) homepage <http://nohomepage.org>
94
95 $ cat AUTHORS
96 Someone <noemail@network.org>
97
98 $ cat NEWS
99 2021-01-01:
100 * Project start
101
102 $ cat ChangeLog
103 2021-01-01 Someone <noemail@network.org>
104 * ChangeLog start
105
106 $ cat src/main.sh
107 #! /usr/bin/env bash
108 echo "Hello world!"
109
110 $ ./configure
111 checking for a BSD-compatible install... /usr/bin/install -c
112 checking whether build environment is sane... yes
113 checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
114 checking for gawk... gawk
115 checking whether make sets $(MAKE)... yes
116 checking for bash... yes
117 configure: creating ./config.status
118 config.status: creating Makefile
119 config.status: creating src/Makefile
120
121 $ make
122 Making all in src
123 make[1]: Entering directory `test/src'
124 cp ./main.sh test
125 chmod +x test
126 make[1]: Leaving directory `test/src'
127 make[1]: Entering directory `test'
128 make[1]: Nothing to be done for `all-am'.
129 make[1]: Leaving directory `test'
130
131 $ src/test
132 Hello world!
133
134 2: A c project:
135 $ mkproject -s c -t at -p "Another test" -d "Another test for mkproject" -a "The same one" -b "stillnoemail@network.org" -m "http://stillnohomepage.org"
136 to try it:
137 $ cd at && ./configure && make && src/at && make distcheck
138
139
140 3: Minimal options:
141 $ mkproject -s bash -t test
142
144 To add skeletons just place them in ${prefix}/share/mkproject/skele‐
145 tons/ ( mkproject skeleton format is bash source ). See actual imple‐
146 mentations for examples. Integration is automated.
147
149 Written by Juan Manuel Borges Caño.
150
152 mkproject (make project) home page <http://code.google.com/p/makepro‐
153 ject>.
154
156 Report bugs to <juanmabcmail@gmail.com>.
157
159 Copyright © 2007-2021 Juan Manuel Borges Caño
160 This is free software. You may redistribute copies of it under the
161 terms of the GNU General Public License <http://www.gnu.org/li‐
162 censes/gpl.html>. There is NO WARRANTY, to the extent permitted by
163 law.
164
166 The full documentation for mkproject is maintained as a Texinfo manual.
167 If the info and mkproject programs are properly installed at your site,
168 the command
169
170 info mkproject
171
172 should give you access to the complete manual.
173
174
175
176mkproject 0.4.6 January 2021 MKPROJECT(1)