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
18 autotools. 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) 2019 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 2019-01-01:
100 * Project start
101
102 $ cat ChangeLog
103 2019-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/mkpro‐
145 ject/skeletons/ ( mkproject skeleton format is bash source ).
146 See actual implementations for examples. Integration is auto‐
147 mated.
148
150 Written by Juan Manuel Borges Caño.
151
153 mkproject (make project) home page
154 <http://code.google.com/p/makeproject>.
155
157 Report bugs to <juanmabcmail@gmail.com>.
158
160 Copyright © 2007-2019 Juan Manuel Borges Caño
161 This is free software. You may redistribute copies of it under
162 the terms of the GNU General Public License
163 <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY,
164 to the extent permitted by law.
165
167 The full documentation for mkproject is maintained as a Texinfo
168 manual. If the info and mkproject programs are properly
169 installed at your site, the command
170
171 info mkproject
172
173 should give you access to the complete manual.
174
175
176
177mkproject 0.4.6 February 2019 MKPROJECT(1)