1 / 9

Software Development

CS240 Dick Steflik. Software Development. Make. “make” is a software engineering tool for managing and maintaining computer programs Help minimize the life cycle cost of developing and maintaining computer software Descriptor file Name: “makefile” // POT (Plain Old Text) ‏

cutter
Download Presentation

Software Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS240 Dick Steflik Software Development

  2. Make • “make” is a software engineering tool for managing and maintaining computer programs • Help minimize the life cycle cost of developing and maintaining computer software • Descriptor file • Name: “makefile” // POT (Plain Old Text)‏ • Defines job steps and what the dependencies for that job step are . • Also the actual command for accomplishing that job step

  3. makefile descriptor file • Made up of : • Macro definitions • For doing text substitutions • $(name) – to invoke • Comments (start with a # character • Dependency rule: • Target (one or more) : dependencies (zero or more) ; • Name of the file to be created • : (reqd character)‏ • Dependencies – space delimited list of files reqd for this step • One or more commands (must start with a tab character)‏

  4. Sample makefile prog.exe : prog.c bag.o bag.c gcc prog.c bag.o -oprog.exe bag.o : bag.c bag.h gcc bag.c -c

  5. Using make • In the directory where your files are place the descriptor file with the name makefile • No file extension • At the command prompt enter make • make will go through the descriptor file checking dependencies, insuring that the most recent files are included and any intermediate files are recompiled if their time/date stamps are more recent than the current time/date stamps on the dependent files

  6. Version Control Systems • Used on multi programmer projects to insure that developers don't accidentally destroy each other's changes • Like a library: each user has to check files in and out, systems prevents one person from saving their changes to a file on top of another person's changes • System enforces safe controls • Changes are saves as a sequence of add, delets and modifications to a base file, not as complete files

  7. CVS • Concurrent Versioning System • Oldest of the version control systems • Open Source • Client-server architecture • Originally developed for UNIX • Ported to Windows NT • Each time a file is checked in, user is required to enter a description of what was done • Commandline and GUI based client programs are available.

  8. Visual SourceSafe • Originally developed by One Tree Software • Original name was Delta • Acquired by Microsoft and rebranded as Visual SourceSafe (1994)‏ • Integrates with most Microsoft software development products • Not Client Server based

  9. Subversion • Open Source version control system • Circa 2000, goal is to be the preferred successor to CVS • Widely used in the Open Source community for version control on projects like Apache, KDE, Gnome, gcc, python, ruby, Mono... • Client-server architecture • Commandline and GUI clients available for most OS environments.

More Related