@Database VPM.guide
@Author "Bartlomiej Pater <bartlomiej_pater@ii.tuniv.szczecin.pl>"
@Macro VER "v1.03"
@Macro DATE "(27-12-1998)"
@SmartWarp

@Node Main "VBCC Project Manager"


@{JCenter}VBCC Project Manager @{VER} @{DATE}
Copyright (c)1998 by Bartlomiej Pater

@{JLeft}
  @{" Introduction "	Link Intro} ................................. just introduction
  @{" Disclaimer   "	Link Laimer} ................................. what you should now
  @{" Requirements "	Link Reqs} ................................. what's needed
  @{" Usage        "	Link Use} ................................. is clear and simple
  @{" History      "	Link Hist} ................................. God bless da King!
  @{" Todo         " Link Todo} ................................. the missing things
  @{" Thanks       " Link THX} ................................. find you here
  @{" Author       " Link Noster} ................................. contacting me

@EndNode
@Node Intro "VPM introduction"


@{u}About VBCC Project manager @{VER}.@{uu}

VPM is a freeware utility for managing C projects. It is prepared for use
with VBCC. VBCC is a free portable and retargetable ANSI C compiler by Volker
Barthelmann. Despite it has got very nice frontend, some people (like me)
prefer graphics environment over CLI console. VBCC Project Manager (later
called VPM) is for them.

The idea of making VPM has been inspired by SAS/C Project Manager by Donald
Milne because I just got used to it, and I wanted to have similar program
for VBCC. I also wanted to experiment with @{" MUI " Link MUI} by Stefan Stuntz. The GUI
was built with MUI Builder v2.2b by Eric Totel. The VPM was compiled with
VBCC v0.6a.

@EndNode
@Node Laimer "Disclaimer - legal stuff"


@{u}Disclaimer@{uu}

There is no warranty for this program to the extent permitted by applicable
law. Except where otherwise stated in writing the copyright holder and/or
other parties provide the program "as is" without warranty of any kind,
either expressed or implied, including, but not limited to, the implied
warranties of merchantability and fitness for a particular purpose. The
entire risk as to the quality and performance of the program is with you.
Should the program prove defective, you assume the cost of all necessary
service, repair, or correction.


In no event, unless required by applicable law or agreed to in writing, will
any copyright holder, or any other party who may redistribute the program as
permitted above, be liable to you for damages, including any general,
special, incidental or consequential damages arising out of the use or
inability to use the program (including but not limited to loss of data or
data being rendered inaccurate or losses sustained by you or third parties or
a failure of the program to operate with any other programs), even if such
holder or other party has been advised of the possibility of such damages.

@EndNode
@Node Reqs "What you will need"


@{u}Requirements@{uu}

- an Amiga computer with OS2.0+,
- the @{" MUI " Link MUI} v3.0+.

The VBCC is not required but strongly sugested to use with VPM (or VPM
should be used with VBCC, I don't know).

@EndNode
@Node MUI "MUI - MagicUserInterface"

@{JCenter}@{b}MUI - MagicUserInterface@{ub}
1993/97 by Stefan Stuntz

@{JLeft}
MUI is a system to generate and maintain graphical user interfaces. With the
aid of a preferences program, the user of an application has the ability to
customize the outfit according to his personal taste.

MUI is distributed as shareware. To obtain a complete package containing lots
of examples and more information about registration please look for a file
called "muiXXusr.lha" (XX means the latest version number) on your local
bulletin boards or on public domain disks.


@{JCenter}If you want to register directly, feel free to send


DM 30.-  or  US$ 20.-


to


Stefan Stuntz
Eduard-Spranger-Straße 7
80935 München
GERMANY
@{JLeft}

@EndNode
@Node Use "How to use it?"


@{u}Usage@{uu}

The usage is really simple: first put VPM executable in your path (i.e. in
vbcc:bin) and then enter the directory where you have sources for one project
and launch it. Add sources to the project, set your options (especially
editor) and then save them.

I think usage of VPM should be rather selfexplaining, but I will write
few words about it.

When VPM is started you should see the @{" Main window " LINK MainWindow}.

@EndNode
@Node MainWindow "Main window"

@{u}Main window:@{uu}
This window contains a listview for project files and some (nine) buttons.
The order in the list can be changed with drag&drop technique. The nice
buttons are:

- @{b}Headers@{ub} - pressing this button will cause Headers window
  to open (only when some source is selected in the main window). When
  it happen you should see the list of all CUSTOM includes used with
  THAT particular source. You can now double click on them to edit them
  (see @{" Options/Project/Edit " LINK Project}). Pressing Edit button gives the same effect,
  pressing Done or closing window will ... close the window.

- @{b}Edit@{ub} - lets you edit selected source file (see
@{" Options/Project/Edit " LINK Project}).

- @{b}Add@{ub} - adds file(s) to the project. All files which are to be used
  in the projects have to be in the same (current) directory. Entering name
  of non-existing file will invoke selected editor with this name (see
@{" Options/Project/Edit " LINK Project}).

- @{b}Delete@{ub} - removes selected file from project.

- @{b}Compile@{ub} - (hopefully) compiles selected file. All the needed
  assigns for VBCC has to be done before launching VPM.

- @{b}Link@{ub} - links compiled objects.

- @{b}Make@{ub} - compiles and links all changed files from the project.

- @{b}Run@{ub} - runs executable selected in @{" Options/Project/Executable
filename " LINK Project}.

- @{b}Options@{ub} - opens @{" Options window " LINK OptionsWindow}.

@EndNode

@Node OptionsWindow "Options window"

@{u}Options window:@{uu}
In this window you have magic number (nine) of registers (I will call them
bookmarks):


  @{" Project         "	LINK Project}
  @{" Code            "	LINK Code}
  @{" Compiler        "	LINK Compiler}
  @{" Optimize        "	LINK Optimize}
  @{" Ignore warnings "	LINK Warnings}
  @{" Enable warnings "	LINK Warnings}
  @{" Define          "	LINK Define}
  @{" Include paths   "	LINK Include}
  @{" Libraries       "	LINK Libraries}


There are also three buttons at the bottom: Save, Save as default and Cancel.
"Save" button saves (surprise, surprise!) the vc.config in the current
directory - it will be used with the current project, and vc.project file
also in the current directory - a project definition. "Save as default" saves
config file into ENVARC: as a default config for projects without one. "Cancel"
button doesn't cancel anything... it just closes the window without saving.
This behaviour will change in the near future.

@EndNode
@Node Project "Project options"

@{u}Project@{uu}
Here you can change the project proporties like:
machine, editor to use, output executable name, output console, stack for the
VBCC. Editor and exename are obligatory, and they do not have any defaults,
so set them immediatelly after creating new project. Stack should be set to
the value requested in the VBCC manual (default: 100000).
Here you can select what device you will use as an output - dos console or
VBrowse. You can run it by pressing on VBrowse gadget. The 'cmd' field
contains command used to run VBrowse if you use CygnusEd put following line
in it:

vbrowse editor "rx vbr.arexx %d %s"

This will run CygnusEd after clicking on error message in VBrowse window.


@EndNode
@Node Code "Code options"

@{u}Code@{uu}
changing options gathered here will cause different code to be generated.
Dependant on what machine is selected in @{" Options/Project/Machine " LINK Project}
you should see:

- @{b}CPU@{ub} - the CPU selector. In m68k mode it will contain 680x0 family
  processors, in PPC/WOS mode there will be only MPC 603/604 (not really
  usable yet, but who knows what will happen in the future...).

- @{b}FPU@{ub} - FPU selector only works in the m68k mode as all PPC processors
  have got FPUs. You can choose NONE (either no fpu code will be generated
  nor fpu libraries will be used), IEEE (no fpu code will be generated, math
  libraries will be used instead) and FPU (code will be generated for hardware
  fpu only, correct math library (for 68881, 040/060) will be linked).

- @{b}Code & data models@{ub} - it is much better described in @{" the VBCC manual " Link vbcc://doc/vbccm68k.doc}.

- @{b}Debug level@{ub} - set debugging level to requested value.

@EndNode
@Node Compiler "Compiler options"

Compiler

@EndNode
@Node Optimize "Optimize options"

Optimize

@EndNode
@Node Warnings "Ignore/Enable warnings options"

Ignore/Enable Warnings

@EndNode
@Node Define "Define options"

Define

@EndNode
@Node Include "Include paths options"

Include

@EndNode
@Node Libraries "Libraries options"

Libraries to link are more or less described in @{" the VBCC manual " Link vbcc://doc/vbcc.doc}.

@EndNode
@Node Hist "The ultra mighty VPM history (full of glory:)"


@{u}VBCC Project Manager history:@{uu}


@{u}v1.03 (27-12-98)@{uu}
Bugs fixed:
- updated to new vlink.

Features added:
- schedule added,
- no-alias-opt appeared again.


@{u}v1.02 (21-11-98)@{uu}
Bugs fixed:
- if errors occured during making project compilation will be stopped now,
- FINALLY! stack increasing is no longer required.

Features added:
- BUILD option was changed into MAKE.


@{u}v0.98 (08-08-98)@{uu}
Bugs fixed:
- adding sources from subdirectories didn't work,
- suffix from ppc linked libs ("*.a") wasn't cut.


@{u}v0.97 (14-07-98)@{uu}
Bugs fixed:
- project changes weren't noticed when adding few files.

Features added:
- vbrowse can now be used as VBCC output.


@{u}v0.95 (06-07-98)@{uu}
Bugs fixed:
- PPC/WarpOS config saving (hopefully) fixed.

Features added:
- optimize options reworked,
- project changes notification.


@{u}v0.91 (23-06-98)@{uu}
Bugs fixed:
- fixed config writting for FPU (040 and 060).

Features added:
- adding non-existing files invokes editor,
- compiler messages option,
- WarpUP/WarpOS support,
- busing parent windows.


@{u}v0.82 (06-06-98)@{uu}
Bugs fixed:
- stupid bug probably introduced with v0.81 - system crashed when Link/Build
  button was pressed.


@{u}v0.81 (30-05-98)@{uu}
Bugs fixed:
- the RUN gadget "worked" even if there weren't executable name given.


@{u}v0.8 (13-05-98)@{uu}
First non-public release.

@EndNode
@Node Todo "Where to go tomorrow?"


@{u}The things to be done@{uu}

- write manual (Gosh, I'm so lazy...),
- bubble help? (is there need for such a thing?),
- ask and I will see what I can do for you.

@EndNode
@Node THX "Thanks..."


I would like to thank few people who helped me during development of VPM
- Volker Barthelmann,
- Frank Wille,
- Sebastian Jedruszkiewicz.


@EndNode
@Node Noster "HowTo contact me"


@{u}Contacting the author@{uu}

Sending bugs... I mean bug reports, comments, (new)icons, and PPC cards
is very welcome. Please try do it with the following address:

bartlomiej_pater@ii.tuniv.szczecin.pl
@EndNode
