1<project-template> 2 <project-wizard> 3 <_name>Generic (Minimal)</_name> 4 <_description>A generic minimal and flat project</_description> 5 <icon>terminal-logo.png</icon> 6 <category>C</category> 7 <order>4</order> 8 <required-program>automake</required-program> 9 <required-program>autoconf</required-program> 10 <required-program>make</required-program> 11 </project-wizard> 12 13 <page name="basic" _label="Basic information" _description="General Project Information"> 14 <property type="string" name="Name" _label="Project Name:" _description="project name" default="foobar-sample" summary="yes" restriction="filename" mandatory="yes"/> 15 <property type="string" name="Author" _label="Author:" _description="" default="[+UserName+]" mandatory="yes"/> 16 <property type="string" name="Email" _label="Email address:" _description="" default="[+EmailAddress+]" mandatory="no"/> 17 <property type="string" name="Version" _label="Version:" default="0.1" mandatory="yes"/> 18 </page> 19 20 <page name="options" _label="Project options" _description="Options for project build system"> 21 <property type='directory' name='Destination' _label='Destination:' _description='' default='[+AnjutaProjectDirectory+]/[+(string-downcase (get "Name"))+]' mandatory='yes' exist='no' summary='yes'/> 22 [+INCLUDE "licenses.tpl"+] 23 <property type="hidden" name="NameUpper" default='[+(string-upcase (get "Name"))+]'/> 24 <property type="hidden" name="NameLower" default='[+(string-downcase (get "Name"))+]'/> 25 <property type="hidden" name="NameCUpper" default='[+(string-append (if (~~* (get "Name") "[0-9]") "_" "") (string->c-name! (string-substitute (string-upcase (get "Name")) " " "_")))+]'/> 26 <property type="hidden" name="NameCLower" default='[+(string->c-name! (string-substitute (string-downcase (get "Name")) " " "_"))+]'/> 27 <property type="hidden" name="NameHLower" default='[+(string-substitute (string->c-name! (string-downcase (get "Name"))) " " "-")+]'/> 28 <property type="boolean" name="HaveLangCPP" _label="Add C++ support:" _description="Adds C++ support to the project so that C++ source files can be built" default="0"/> 29 <property type="boolean" name="HaveSharedlib" _label="Add shared library support:" _description="Adds support for building shared libraries in your project" default="0"/> 30 <property type="boolean" name="HavePackage" _label="Configure external packages:" _description="Use pkg-config to add library support from other packages" default="0"/> 31 </page> 32 33[+IF (=(get "HavePackage") "1")+] 34 <page name="packages" _label="Configure external packages" _description="Configure external packages"> 35 <property type="package" name="PackageModule1" _label="Required Packages:" _description="Check the packages that your project requires" mandatory="yes"/> 36 </page> 37[+ENDIF+] 38 39 <content> 40 <directory source="minimal" destination="[+Destination+]"> 41 <file source="Makefile.am.tpl" destination="Makefile.am"/> 42 <file source="autogen.sh" executable="yes"/> 43 <file source="configure.ac.tpl" destination="configure.ac"/> 44 <file destination="[+NameHLower+].anjuta" source="project.anjuta"/> 45 </directory> 46 <directory source="terminal" destination="[+Destination+]"> 47 <directory source="src" destination="."> 48 <file source="main.c"/> 49 </directory> 50 </directory> 51 <directory source="licenses" destination="[+Destination+]"> 52 <file source="[+License+].txt" destination="COPYING"/> 53 </directory> 54 <directory source="minimal" destination="[+Destination+]"> 55 <directory source="." destination=".anjuta"> 56 <directory source="." destination="session"> 57 <file source="anjuta.session"/> 58 </directory> 59 </directory> 60 </directory> 61 </content> 62 63 <action> 64 <open file="[+Destination+]/[+NameHLower+].anjuta"/> 65 </action> 66 67</project-template> 68