diff --git a/harbour/ChangeLog b/harbour/ChangeLog index f5f1b1526e..c9ff877369 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,31 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ +2007-07-31 21:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/make_rpm.sh + * removed not longer necessary flex and bison from dependences list + + + harbour/debian + + harbour/debian/control + + harbour/debian/harbour.cfg + + harbour/debian/harbour.1 + + harbour/debian/dirs + + harbour/debian/rules.cf + + harbour/debian/compat + + harbour/debian/hbmake.1 + + harbour/debian/changelog + + harbour/debian/copyright + + harbour/debian/hbtest.1 + + harbour/debian/hbpp.1 + + harbour/debian/hbrun.1 + + harbour/debian/hbdoc.1 + + harbour/make_deb.sh + + added rules to generate DEB packages - rules by Luis Mayoral + taken from Debian distribution updated for current code but + not tested at all. Please make some test running make_deb.sh + in Debian and Ubuntu distribution and give me an information + about results. + 2007-07-31 21:00 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/include/hbexprb.c * disable CTOD("") optimization when -kc switch is used diff --git a/harbour/debian/changelog b/harbour/debian/changelog new file mode 100644 index 0000000000..e479b84882 --- /dev/null +++ b/harbour/debian/changelog @@ -0,0 +1,15 @@ +harbour (0.45.0-0.1) unstable; urgency=low + + * NMU + * New upstream release. + * Bump to Standards-Version 3.6.2. + * Drop gcc-3.3 build-dep. + + -- Clint Adams Thu, 18 May 2006 14:43:11 -0400 + +harbour (0.44-1) unstable; urgency=low + + * Initial Release (closes: Bug#251486). + + -- Luis Mayoral Sun, 05 Sep 2004 14:33:19 +0200 + diff --git a/harbour/debian/compat b/harbour/debian/compat new file mode 100644 index 0000000000..b8626c4cff --- /dev/null +++ b/harbour/debian/compat @@ -0,0 +1 @@ +4 diff --git a/harbour/debian/control b/harbour/debian/control new file mode 100644 index 0000000000..521ca9bb1d --- /dev/null +++ b/harbour/debian/control @@ -0,0 +1,22 @@ +Source: harbour +Section: devel +Priority: optional +Maintainer: Luis Mayoral +Build-Depends: debhelper (>= 4.0.0), libncurses5-dev, libslang2-dev, libgpmg1-dev, libx11-dev, unixodbc-dev +Standards-Version: 3.6.2 + +Package: harbour +Architecture: any +Depends: ${shlibs:Depends} +Description: Compiler for the xBase superset language often referred to as Clipper + Harbour is a free software compiler for the xBase superset language + often referred to as Clipper (the language that is implemented by the + compiler CA-Clipper). + . + Harbour is a cross platform compiler and is known to compile and run on + MS-DOS, MS-Windows, OS/2 and GNU/Linux. + . + The main advantage Harbour has over other Clipper compilers is that it + is free software. Harbour also attempts to remove some of the limits + imposed by the base implementation but the extent of this will depend on + your chosen platform. diff --git a/harbour/debian/copyright b/harbour/debian/copyright new file mode 100644 index 0000000000..1b4da7fa0f --- /dev/null +++ b/harbour/debian/copyright @@ -0,0 +1,118 @@ +This package was debianized by Luis Mayoral on +Sun, 05 Sep 2004 14:33:19 +0200. + +It was downloaded from http://www.harbour-project.org + +Upstream Authors: The Harbour Project + +Copyright (C) 1999-2003 The Harbour Project + + The GNU General Public License, mentioned below, can be found on + Debian systems at /usr/share/common-licenses/GPL + +THE HARBOUR PROJECT COMPILER LICENSE +==================================== + + Note: This license applies to most of the files in the source/compiler + directory. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + +THE HARBOUR PROJECT LIBRARY LICENSE +=================================== + + Note: This license applies to most of the files in the include directory, + source directory, and subdirectories. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + As a special exception, the Harbour Project gives permission for + additional uses of the text contained in its release of Harbour. + + The exception is that, if you link the Harbour libraries with other + files to produce an executable, this does not by itself cause the + resulting executable to be covered by the GNU General Public License. + Your use of that executable is in no way restricted on account of + linking the Harbour library code into it. + + This exception does not however invalidate any other reasons why + the executable file might be covered by the GNU General Public License. + + This exception applies only to the code released by the Harbour + Project under the name Harbour. If you copy code from other + Harbour Project or Free Software Foundation releases into a copy of + Harbour, as the General Public License permits, the exception does + not apply to the code that you add in this way. To avoid misleading + anyone as to the status of such modified files, you must delete + this exception notice from them. + + If you write modifications of your own for Harbour, it is your choice + whether to permit this exception to apply to your modifications. + If you do not wish that, delete this exception notice. + + +THE OLD HARBOUR PROJECT LIBRARY LICENSE +======================================= + + Note: This license only applies to the following files: + + contrib\libmisc\dates2.c (Only the DateTime() function by Jon Berg) + samples\pe\license.txt + source\rtl\philes.c + source\rtl\binnum.c + source\lang\msgeu.c + source\lang\msgsl437.c + source\lang\msgsl852.c + source\lang\msgsliso.c + source\lang\msgslwin.c + source\lang\msgsr852.c + source\lang\msgsriso.c + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version, with one exception: + + The exception is that if you link the Harbour Runtime Library (HRL) + and/or the Harbour Virtual Machine (HVM) with other files to produce + an executable, this does not by itself cause the resulting executable + to be covered by the GNU General Public License. Your use of that + executable is in no way restricted on account of linking the HRL + and/or HVM code into it. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + +THE HARBOUR PROJECT CONTRIB LICENSE +=================================== + + There is no one single license that applies to the Harbour Project + contrib files. Some files use the Harbour Project Compiler license. + Some files use the Harbour Project Library license. Some files use + the old Harbour Project Library license (and in one case, just one + function in a file that otherwise uses the Harbour Project Library + license uses the old license - this is the DateTime() function in + the file contrib\libmisc\dates2.c). Some files may even use other + types of free software or open source software licenses. Some files + have been donated to the public domain. If you use any of the contrib + files, you need to investigate the license that applies to each file. + diff --git a/harbour/debian/dirs b/harbour/debian/dirs new file mode 100644 index 0000000000..6afa466164 --- /dev/null +++ b/harbour/debian/dirs @@ -0,0 +1,7 @@ +etc/harbour +usr/bin +usr/lib/harbour +usr/include/harbour +usr/share/doc/harbour +usr/share/doc/harbour/en +usr/share/doc/harbour/es diff --git a/harbour/debian/harbour.1 b/harbour/debian/harbour.1 new file mode 100644 index 0000000000..df524ef1b5 --- /dev/null +++ b/harbour/debian/harbour.1 @@ -0,0 +1,87 @@ +.TH HARBOUR 1 + +.SH NAME +harbour \- Harbour Project compiler + +.SH SYNOPSIS +\fBharbour\fP \fB\fP \fB[options]\fP + +.SH DESCRIPTION +\fBharbour\fP is a CA-Clipper compatible compiler for multiple platforms. + +.SH OPTIONS +.IP "\fB-a\fP" 10 +Automatic memvar declaration +.IP "\fB-b\fP" 10 +Debug info +.IP "\fB-build\fP" 10 +display detailed version info +.IP "\fB-credits\fP" 10 +display credits +.IP "\fB-d[=]\fP" 10 +#define +.IP "\fB-es[]\fP" 10 +set exit severity +.IP "\fB-g\fP" 10 +output type generated is (see below) +.IP "\fB-gc[]\fP" 10 +output type: C source (.c) (default) +.IP +: 0=compact 1=normal 2=verbose (default) +.IP +3=generate real C code instead of PCODE +.IP "\fB-go\fP" 10 +output type: Platform dependant object module +.IP "\fB-gw\fP" 10 +output type: Windows/DOS OBJ32 (.obj) +.IP "\fB-gh\fP" 10 +output type: Harbour Portable Object (.hrb) +.IP "\fB-gj\fP" 10 +output type: Java source (.java) +.IP "\fB-gi\fP" 10 +output type: .NET platform (.il) +.IP "\fB-i\fP" 10 +#include file search path +.IP "\fB-k\fP" 10 +compilation mode (type -k? for more data) +.IP "\fB-l\fP" 10 +suppress line number information +.IP "\fB-m\fP" 10 +compile module only +.IP "\fB-n[]\fP" 10 +no implicit starting procedure (default) +.IP +: 0=no implicit starting procedure +.IP +1=no starting procedure at all +.IP "\fB-o\fP" 10 +object file drive and/or path +.IP "\fB-p[]\fP" 10 +generate pre-processed output (.ppo) file +.IP "\fB-q\fP" 10 +quiet +.IP "\fB-q0\fP" 10 +quiet and don't display program header +.IP "\fB-r=\fP" 10 +set maximum number of preprocessor iterations +.IP "\fB-s\fP" 10 +syntax check only +.IP "\fB-u[]\fP" 10 +use command def set in (or none) +.IP "\fB-v\fP" 10 +variables are assumed M-> +.IP "\fB-w[]\fP" 10 +set warning level number (0..3, default 1) +.IP "\fB-x[]\fP" 10 +set symbol init function name prefix (for .c only) +.IP "\fB-z\fP" 10 +suppress shortcutting (.and. & .or.) +.IP "\fB@\fP" 10 +compile list of modules in + +.SH AUTHOR + +Author of harbour: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/harbour.cfg b/harbour/debian/harbour.cfg new file mode 100644 index 0000000000..2b57f66cc7 --- /dev/null +++ b/harbour/debian/harbour.cfg @@ -0,0 +1,4 @@ +CC=gcc +CFLAGS=-c -I/usr/include/harbour -O3 +VERBOSE=YES +DELTMP=YES diff --git a/harbour/debian/hbdoc.1 b/harbour/debian/hbdoc.1 new file mode 100644 index 0000000000..d53eb55f19 --- /dev/null +++ b/harbour/debian/hbdoc.1 @@ -0,0 +1,41 @@ +.TH HBDOC 1 + +.SH NAME +hbdoc \- Harbour Project Doc Extractor + +.SH SYNOPSIS +\fBhbdoc\fP \fB[options]\fP \fB\fP \fB[]\fP + +.SH DESCRIPTION +\fBhbdoc\fP is the Harbour Project doc extractor. + +.SH OPTIONS +.IP "\fB-txt\fP" 10 +Create an ASCII file instead of a Norton Guide +.IP "\fB-con\fP" 10 +Create an ASCII file without formfeeds +.IP "\fB-hpc\fP" 10 +Helpc source file +.IP "\fB-ngi\fP" 10 +Adds the -NG switch to EHC command for compile for DOS/Windows/Linux. +.IP "\fB-rtf\fP" 10 +Winhelp source code for Windows +.IP "\fB-os2\fP" 10 +OS/2 help source code For OS/2 +.IP "\fB-htm\fP" 10 +Generate HTML output +.IP "\fB-chm\fP" 10 +Generate HTML source files for Windows .CHM Help files +.IP "\fB-pdf\fP" 10 +Generate an Adobe Portable Document (.PDF) +.IP "\fB-trf\fP" 10 +Generate Linux TROFF code +.IP "\fB-doc\fP" 10 +Create continuous ASCII file w/o author information + +.SH AUTHOR + +Author of hbdoc: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/hbmake.1 b/harbour/debian/hbmake.1 new file mode 100644 index 0000000000..58c8a05c73 --- /dev/null +++ b/harbour/debian/hbmake.1 @@ -0,0 +1,46 @@ +.TH HBMAKE 1 + +.SH NAME +hbmake \- Harbour Project Make Utility + +.SH SYNOPSIS +\fBhbmake\fP \fBcFile\fP \fB[options]\fP + +.SH DESCRIPTION +\fBhbmake\fP is the Harbour Project make utility. + +.SH OPTIONS +.IP "\fB-e[x]\fP" 10 +Create a new Makefile. If /ex is used it creates a new make file in extended mode +.IP "\fB-el[x]\fP" 10 +Create a new Makefile. If /elx is used it creates a new make file to build a library in extended mode +.IP "\fB-D\fP" 10 +Define a macro +.IP "\fB-p\fP" 10 +Print all commands and depedencies +.IP "\fB-b\fP" 10 +Use BCC as C compiler +.IP "\fB-g\fP" 10 +Use GCC as C compiler +.IP "\fB-gl\fP" 10 +Use GCC as C compiler in Linux +.IP "\fB-v\fP" 10 +Use MSVC as C compiler +.IP "\fB-f\fP" 10 +Force recompilation of all files +.IP "\fB-i\fP" 10 +Ignore errors returned by command +.IP "\fB-r\fP" 10 +Recurse Source Directory +.IP "\fB-l[LANGID]\fP" 10 +Specify the language to be used on hbmake Texts LANGID = (EN/PT/ES). On Windows +System, the default will be the SO language if is found. Otherwise, will be English. +On OS/2;FreeBSD/LINUX the default is English + + +.SH AUTHOR + +Author of hbmake: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/hbpp.1 b/harbour/debian/hbpp.1 new file mode 100644 index 0000000000..e06e4e74ab --- /dev/null +++ b/harbour/debian/hbpp.1 @@ -0,0 +1,30 @@ +.TH HBPP 1 + +.SH NAME +hbpp \- Harbour Project Preprocessor + +.SH SYNOPSIS +\fBhbpp\fP \fB\fP \fB[options]\fP + +.SH DESCRIPTION +\fBhbpp\fP is the old Harbour Project preprocessor. + +.SH OPTIONS +.IP "\fB-d[=]\fP" 10 +#define +.IP "\fB-i\fP" 10 +add #include file search path +.IP "\fB-o\fP" 10 +creates hbpp.out with all tables +.IP "\fB-n\fP" 10 +with those only, which defined in your file +.IP "\fB-w\fP" 10 +enable warnings + + +.SH AUTHOR + +Author of hbpp: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/hbrun.1 b/harbour/debian/hbrun.1 new file mode 100644 index 0000000000..4d43ec060d --- /dev/null +++ b/harbour/debian/hbrun.1 @@ -0,0 +1,32 @@ +.TH HBRUN 1 + +.SH NAME +hbrun \- Harbour Project Runner + +.SH SYNOPSIS +\fBhbrun\fP \fB\fP \fB[]\fP + +.SH DESCRIPTION +\fBhbrun\fP is the Harbour Project runner which can execute +xBase/Clipper source code in .prg files or compiled Harbour +Portable Objects - .hrb files. Type of file is recognized by +extension used with \fB\fP parameter. If not given +then .hrb is used. +.PP +\fBhbrun\fP can be also used to execute .prg files as scripts +It's enough to add in the first line of .prg file: +.PP +\fB#!/usr/bin/hbrun\fP +.PP +and set executable attribute. + +.SH OPTIONS +This program has no options. \fB\fP are passed to +startup function in executed code. + +.SH AUTHOR + +Author of hbrun: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/hbtest.1 b/harbour/debian/hbtest.1 new file mode 100644 index 0000000000..6bdc933525 --- /dev/null +++ b/harbour/debian/hbtest.1 @@ -0,0 +1,26 @@ +.TH HBTEST 1 + +.SH NAME +hbtest \- Harbour Project Regression Test Suite + +.SH SYNOPSIS +\fBhbtest\fP \fB[options]\fP + +.SH DESCRIPTION +\fBhbtest\fP is the Harbour Project regression test suite. + +.SH OPTIONS +.IP "\fB-h, -?\fP" 10 +Display help +.IP "\fB-all\fP" 10 +Display all tests, not only the failures +.IP "\fB-skip:\fP" 10 +Skip the listed test numbers + + +.SH AUTHOR + +Author of hbtest: The Harbour Project (http://www.harbour-project.org) + +This manual page was written by Luis Mayoral , +for the Debian GNU/Linux system (but may be used by others). diff --git a/harbour/debian/rules.cf b/harbour/debian/rules.cf new file mode 100755 index 0000000000..703ecca6a3 --- /dev/null +++ b/harbour/debian/rules.cf @@ -0,0 +1,88 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +export _DEFAULT_BIN_DIR=/usr/bin +export _DEFAULT_INC_DIR=/usr/include/harbour +export _DEFAULT_LIB_DIR=/usr/lib/harbour +export INSTDIR=$(CURDIR)/debian/harbour/tmp +export HB_BIN_INSTALL=$(INSTDIR)$(_DEFAULT_BIN_DIR) +export HB_LIB_INSTALL=$(INSTDIR)$(_DEFAULT_LIB_DIR) +export HB_INC_INSTALL=$(INSTDIR)$(_DEFAULT_INC_DIR) +export HB_ETC_DIR=$(INSTDIR)/etc +export HB_DOC_INSTALL=$(INSTDIR)/usr/share/doc + +CFLAGS = -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O3 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +build: build-stamp + +build-stamp: + dh_testdir + + bash make_gnu.sh + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + -bash make_gnu.sh clean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + bash make_gnu.sh install + rm $(HB_BIN_INSTALL)/hbverfix + install -m644 debian/harbour.cfg $(HB_ETC_DIR)/harbour.cfg + install -m644 source/rtl/gtcrs/hb-charmap.def $(HB_ETC_DIR)/harbour + install -m644 doc/*.txt $(HB_DOC_INSTALL)/harbour + install -m644 doc/en/*.txt $(HB_DOC_INSTALL)/harbour/en + install -m644 doc/es/*.txt $(HB_DOC_INSTALL)/harbour/es + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples +# dh_install + dh_installman debian/harbour.1 debian/hbdoc.1 debian/hbmake.1 debian/hbpp.1 debian/hbrun.1 debian/hbtest.1 debian/hbverfix.1 + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/harbour/make_deb.sh b/harbour/make_deb.sh new file mode 100755 index 0000000000..3272873157 --- /dev/null +++ b/harbour/make_deb.sh @@ -0,0 +1,48 @@ +#!/bin/sh +# +# $Id$ +# + +# --------------------------------------------------------------- +# Copyright 2003 Przemyslaw Czerpak +# simple script to build DEBs from Harbour sources +# +# See doc/license.txt for licensing terms. +# --------------------------------------------------------------- + +test_reqrpm() +{ + dpkg -s "$1" &> /dev/null +} + +TOINST_LST="" +for i in gcc binutils bash debmake libncurses-dev libslang2-dev libx11-dev unixodbc-dev +do + test_reqrpm "$i" || TOINST_LST="${TOINST_LST} $i" +done + +if [ -z "${TOINST_LST}" ] || [ "$1" = "--force" ] +then + . ./bin/pack_src.sh + stat="$?" + if [ -z "${hb_filename}" ] + then + echo "The script ./bin/pack_src.sh doesn't set archive name to \${hb_filename}" + exit 1 + elif [ "${stat}" != 0 ] + then + echo "Error during packing the sources in ./bin/pack_src.sh" + exit 1 + elif [ -f ${hb_filename} ] + then + dpkg-buildpackage -b + else + echo "Cannot find archive file: ${hb_filename}" + exit 1 + fi +else + echo "If you want to build Harbour compiler" + echo "you have to install the folowing RPM files:" + echo "${TOINST_LST}" + exit 1 +fi diff --git a/harbour/make_rpm.sh b/harbour/make_rpm.sh index 89c4437a8e..0cd0767f3e 100755 --- a/harbour/make_rpm.sh +++ b/harbour/make_rpm.sh @@ -53,7 +53,7 @@ get_rpmmacro() echo -n "${R}" } -NEED_RPM="make gcc binutils bison flex bash ncurses ncurses-devel" +NEED_RPM="make gcc binutils bash ncurses ncurses-devel" FORCE="" BUGGY_RPM=""