public inbox for sourcenav@sourceware.org
 help / color / mirror / Atom feed
* Re: Build SN452 on Windows NT4
@ 2000-10-22  6:53 Michael Thomas
  2000-10-22 14:27 ` Ben Elliston
  0 siblings, 1 reply; 3+ messages in thread
From: Michael Thomas @ 2000-10-22  6:53 UTC (permalink / raw)
  To: Ben Elliston; +Cc: sourcenav

Hi,

I tried that on the Windows NT configuration file.
Apparently, I might not know what to do. Attached is
my attempt for ClearCase version 4.x, w/dynamic views,
and no CCase project files.

There are still many error messages, warnings,
problems I could not resolve just from the
configuration file. I'd like the opportunity to clean
up those issues, before asking our other developers to
use the tool.

I don't understand why "checkout-individual-to-stdout"
seems to be used for file differences? At least that
is the line that runs when I select Difference in SN.
Am I missing something?

Regards,

Mike Thomas

--- Ben Elliston <bje@cygnus.com> wrote:
>    I'm trying to build SN452 on Windows NT4 so I can
> patch the
>    integration with Clearcase 4.x. I have all the
> PC's, OS's, tools,
>    debuggers, etc., except the build environment for
> Windows NT.
> 
> It's not necessary to rebuild to fix integration
> with version control
> systems.  That is all done from etc/sn_prop.cfg.in.
> 
> Ben
> 


__________________________________________________
Do You Yahoo!?
Yahoo! Messenger - Talk while you surf!  It's FREE.
http://im.yahoo.com/
###############################################################################
#
# sn_prop.cfg
#
# Copyright (C) 1997 Cygnus Solutions, Inc.
#
# Description:
# This is a Tcl source file that is read by Source-Navigator at startup.  By
# modifying this file, it is possible to reconfigure Source-Navigator.
#
# The most common reason for modifying this file is to integrate revision
# control software packages or new language parsers into Source-Navigator.
# Refer to the Programmer's Reference Guide for more detailed information.
#
###############################################################################

###############################################################################
#
# Version control system configuration
#
# To integrate a new third-party version control system into Source-Navigator,
# use the Tcl command `sn_add_version_control_system'.  Refer to the
# Programmer's Reference Guide for further details.  
#
###############################################################################

# GNU Revision Control System (RCS)

sn_add_version_control_system rcs -default yes \
	-checkin "ci -u" \
	-checkin-comment-via stdin \
	-checkin-exclusive "ci -l" \
	-checkout "co -f" \
	-checkout-exclusive "co -f -l" \
	-checkout-individual "co -f -r" \
	-checkout-individual-to-stdout "co -p" \
	-checkout-with-lock yes \
	-delete-revision "rcs -o" \
	-discard "unco" \
	-history "rlog" \
	-history-pattern { {"^-----" "^====="} } \
	-history-individual "rlog -r" \
	-history-individual-pattern { {"^-----" "^====="} } \
	-history-replacements { {"[ \t]+" " "} } \
	-ignore-dirs RCS \
	-lock "rcs -l" \
	-lock-individual "rcs -l" \
	-revision-number-pattern "^revision (\[0-9.\]+)" \
	-symbolic-tags-pattern { {"^symbolic names" "^keyword"} } \
	-symbolic-tags-replacements { {"\t" ""} } \
	-unlock "rcs -u" \
	-unlock-individual "rcs -u"

# Concurrent Versions System (CVS)
#
# This configuration provides lazy locking as described in the CVS
# documentation.  Files are checked out with read/write permissions. CVS is
# multiuser version control system, so locking is not necessary and is
# therefore not implemented.

sn_add_version_control_system cvs \
	-checkin "cvs commit -F " \
	-checkin-comment-via file \
	-checkout "cvs update -r" \
	-checkout-individual "cvs update -r" \
	-checkout-individual-to-stdout "cvs update -p -r" \
	-checkout-with-lock no \
	-delete-revision "cvs admin -o" \
	-discard {} \
	-history "cvs log" \
	-history-pattern { {"^-----" "^====="} } \
	-history-individual "cvs log -r" \
	-history-individual-pattern { {"^-----" "^====="} } \
	-history-replacements { {"[ \t]+" " "} } \
	-ignore-dirs CVS \
	-revision-number-pattern "^revision (\[0-9.\]+)" \
	-symbolic-tags-pattern { {"^symbolic names" "^keyword"} } \
	-symbolic-tags-replacements { {"\t" ""} }

# AT&T Source Code Control System (SCCS)
#
# The configuration uses the "sccs" command front-end to the SCCS utilities.
# On some systems, failing to do some may cause conflicts with other
# similiarly named utilities in the path (e.g. "get").  Using the front-end
# also insulates Source-Navigator from implementation details and potential
# changes to a vendor's implementation of SCCS.

sn_add_version_control_system sccs \
	-checkin "sccs delget" \
	-checkin-comment-via stdin \
	-checkout "sccs get -r" \
	-checkout-exclusive "sccs edit" \
	-checkout-individual "sccs get -r" \
	-checkout-individual-to-stdout "sccs get -p -r" \
	-checkout-with-lock yes \
	-delete-revision "sccs rmdel -r" \
	-discard "sccs unget" \
	-history "sccs prs" \
	-history-pattern { {"^D" end} } \
	-history-individual "sccs prs -r" \
	-history-individual-pattern { {"^D" end} } \
	-ignore-dirs SCCS \
	-lock "sccs get -g -e" \
	-lock-individual "sccs get -g -e -r" \
	-revision-number-pattern "^D (\[0-9\.\]+)" \
	-unlock-individual "sccs unget -n" \
	-unlock-individual "sccs unget -n -r"

# Rational's ClearCase configuration management system (version 3.x)
#
# This configuration uses the command line driven ClearCase diff tool to
# produce UNIX-compatible diff output on stdout.  Then we use Source-
# Navigator's built-in diff tool to view the results.

sn_add_version_control_system ccase \
	-checkin "cleartool checkin -cq" \
	-checkin-comment-via stdin \
	-checkout "cleartool checkout -nc" \
	-checkout-exclusive "cleartool checkout -nc -reserved" \
	-checkout-individual "cleartool -nc checkout" \
	-checkout-individual-to-stdout "cleartool checkout -o -" \
	-checkout-with-lock no \
	-delete-revision "cleartool rmver -force" \
	-diff-command "cleartool diff -diff_format" \
	-diff-ignore-case "" \
	-diff-ignore-whitespace "-opt -blank_ignore" \
	-discard "cleartool uncheckout" \
	-history "cleartool lshistory" \
	-history-individual "cleartool lshistory" \
	-ignore-dirs archives \
	-lock "cleartool reserve -nc" \
	-lock-individual "cleartool reserve -nc" \
	-revision-number-pattern {create version "(.*)"} \
	-symbolic-tags-pattern {create version .*\((.*)\)} \
	-title ClearCase \
	-unlock "cleartool unreserve -nc" \
	-unlock-individual "cleartool unreserve -nc"

# Rational's ClearCase configuration management system (version 4.x)
#
# This configuration uses the command line driven ClearCase diff tool to
# produce UNIX-compatible diff output on stdout.  Then we use Source-
# Navigator's built-in diff tool to view the results.
#
# ClearCase version 4.x is unsupported. But, these settings support most 
# SN452 version control features on ClearCase 4.x on Window NT4. Ignore the 
# warning messages, then you can prove it for yourself. Copy this file 
# over the original C:\Program Files\Cygnus\SN452\share\etc\sn_prop.cfg. 
# Set Project Properties|Version Control|Version control system to 
# ClearCaseHack. The following feature work (ignore most warning messages):
#     Tools|Revision Control|Check Out
#     Tools|Revision Control|Check In
#     Tools|Revision Control|Discard Changes
#     Tools|Revision Control|Lock
#     Tools|Revision Control|Unlock
#     Tools|Revision Control|Compare Revisions ** Note 1
#     Tools|Revision Control|Revision Control Editor ** Note 2
#
# ** Note 1 - Always select the top revision on right side, wrapping {}'s
# ** Note 2 - The Revision Control Editor, Delete Version does not work.
#    We disabled rmver using lshistory command, producing fewer warnings.  
#
# One helpful trick is to always select a revision, forcing wrapped {}'s.
# Also, remove the "-pre" from checkout-individual-to-stdout if you only 
# want to diff two versions, because its setup for three panels.

sn_add_version_control_system ccase2 \
	-checkin "cleartool checkin -cq" \
	-checkin-comment-via stdin \
	-checkout "cleartool checkout -res -nwa -nc " \
	-checkout-exclusive "cleartool checkout -res -nwa -nc " \
	-checkout-individual "cleartool checkout -res -nc " \
	-checkout-individual-to-stdout "cleartool diff -g -pre " \
	-checkout-with-lock no \
	-delete-revision "cleartool lshistory " \
	-diff-command "cleartool diff -diff_format" \
	-diff-ignore-case "" \
	-diff-ignore-whitespace "-opt -blank_ignore" \
	-discard "cleartool uncheckout" \
	-history "cleartool lshistory" \
	-history-individual "cleartool lshistory" \
	-ignore-dirs archives \
	-lock "cleartool reserve -nc " \
	-lock-individual "cleartool reserve -nc " \
	-revision-number-pattern {create version "(.*)"} \
	-symbolic-tags-pattern {create version .*\((.*)\)} \
	-title ClearCaseHack \
	-unlock "cleartool unreserve -nc " \
	-unlock-individual "cleartool unreserve -nc "

###############################################################################
#
# Parser configuration
#
# To add a parser, insert additional procedure calls to `sn_add_parser' 
# here.  Refer to the Programmer's Reference Guide for further details.
# Possible arguments to the function:
# -suffix              :suffixes for the supported language files
# -brow_cmd            :parser program
# -high_cmd            :highlighting program
# -editor              :external editor
# -brow_switch         :parser switches
# -high_switch         :switches used by highlighting program
# -case        (1, 0)  :turn case sensitive on/of
# -macros      (-m, ""):parser understand macros
#
###############################################################################

# FORTRAN

sn_add_parser fortran \
	-suffix {*.f *.for *.FOR} \
	-brow_cmd $sn_path(bindir)/fbrowser \
	-high_cmd $sn_path(bindir)/fbrowser \
	-brow_switch "" \
	-high_switch "-h" \
	-case 1

# ELF

#sn_add_parser elf \
	-suffix {*.elf *.am} \
	-brow_cmd $sn_path(bindir)/ebrowser \
	-high_cmd $sn_path(bindir)/ebrowser \
	-high_switch "-h"

# ELF (using ApplixWare macro editor)

#sn_add_parser elf \
	-suffix {*.elf *.am} \
	-brow_cmd $sn_path(bindir)/ebrowser \
	-high_cmd $sn_path(bindir)/ebrowser \
	-brow_switch "$asterx_home_dir/applix -macro sn_imporp -pass" \
	-high_switch "-h"

# COBOL

sn_add_parser cobol \
	-suffix {*.cbl *.cob} \
	-brow_cmd $sn_path(bindir)/obrowser \
	-high_cmd $sn_path(bindir)/obrowser \
	-high_switch "-h" \
	-case 0

# C++
if {$tcl_platform(platform) == "windows"} {
	#windows file dialog box doesn't understand with '[]' grouped extensions
	set cpp_ext {*.h *.H *.c *.C *.cxx *.hxx *.cpp *.hpp *.cc *.hh *.CXX *.HXX *.CPP *.HPP *.CC *.HH}
} else {
	set cpp_ext {*.[hHcC] *.[ch]xx *.[ch]pp *.cc *.hh *.[CH]XX *.[CH]PP *.CC *.HH}
}
sn_add_parser c++ \
	-suffix $cpp_ext \
	-brow_cmd $sn_path(bindir)/cbrowser \
	-high_cmd $sn_path(bindir)/cbrowser \
	-high_switch "-h" \
	-macros "-m"

# C
#sn_add_parser c \
	-suffix {*.ec *.ep *.sc *.cpc} \
	-brow_cmd $sn_path(bindir)/cbrowser \
	-high_cmd $sn_path(bindir)/cbrowser \
	-brow_switch "-C" \
	-high_switch "-C -h"

# Java

sn_add_parser java \
	-suffix {*.java} \
	-brow_cmd $sn_path(bindir)/jbrowser \
	-high_cmd $sn_path(bindir)/jbrowser \
	-high_switch "-h"

# Tcl/Tk and [incr Tcl]

sn_add_parser tcl \
	-suffix {*.tcl *.itcl *.itk *.tk}\
	-brow_cmd $sn_path(bindir)/tbrowser \
	-high_cmd $sn_path(bindir)/tbrowser \
	-high_switch "-h"

# PowerPC 601 assembly language

sn_add_parser asm \
	-suffix {*.asm *.s *.S}\
	-brow_cmd $sn_path(bindir)/abrowser \
	-high_cmd $sn_path(bindir)/abrowser

# CCITT High Level Language (CHILL)

#sn_add_parser chill \
	-suffix {*.ch} \
	-brow_cmd $sn_path(bindir)/chbrowser \
	-high_cmd $sn_path(bindir)/chbrowser

# Python

sn_add_parser python \
	-suffix {*.py *.pyw} \
	-brow_cmd $sn_path(bindir)/pybrowser \
	-high_cmd $sn_path(bindir)/pybrowser
 
# Files without a parser


if {$tcl_platform(platform) == "windows"} {
	#windows file dialog box doesn't understand with '[]' grouped extensions
	set other_ext {*.l *.y *Makefile *makefile *Iakefile}
} else {
	set other_ext {*.[ly] *[IMm]akefile}
}

sn_add_parser others -suffix $other_ext


# Addisional build rules

# A Build rule for Yacc files.
sn_add_simple_ide_rule YACC \
	-suffix-list {.y.c} \
	-action "$<" \
	-tool bison \
	-description "Process a yacc file." \
	-file-type Yacc

# A Build rule for Lex files
sn_add_simple_ide_rule LEX \
	-suffix-list {.l.c} \
	-action "$<" \
	-tool flex \
	-description "Process a lex file." \
	-file-type Lex
	

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Build SN452 on Windows NT4
  2000-10-22  6:53 Build SN452 on Windows NT4 Michael Thomas
@ 2000-10-22 14:27 ` Ben Elliston
  2000-10-23 10:20   ` How do you delete a Project Editor view? Berek
  0 siblings, 1 reply; 3+ messages in thread
From: Ben Elliston @ 2000-10-22 14:27 UTC (permalink / raw)
  To: Michael Thomas; +Cc: sourcenav

   I don't understand why "checkout-individual-to-stdout" seems to be
   used for file differences? At least that is the line that runs when I
   select Difference in SN. Am I missing something?

The principle is that the diff tool is sufficiently general that it
simply shows the differences between two files.  You've got one already --
the one you're working on.  To get the other, the sought after revision is
checked out to stdout and captured to a temporary file.

Ben

^ permalink raw reply	[flat|nested] 3+ messages in thread

* How do you delete a Project Editor view?
  2000-10-22 14:27 ` Ben Elliston
@ 2000-10-23 10:20   ` Berek
  0 siblings, 0 replies; 3+ messages in thread
From: Berek @ 2000-10-23 10:20 UTC (permalink / raw)
  To: sourcenav

See subject.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2000-10-23 10:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-10-22  6:53 Build SN452 on Windows NT4 Michael Thomas
2000-10-22 14:27 ` Ben Elliston
2000-10-23 10:20   ` How do you delete a Project Editor view? Berek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).