diff --git a/harbour/ChangeLog b/harbour/ChangeLog index edb010f3d4..3191512987 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,27 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-10-06 18:34 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * harbour/harbour.spec + ! fixed to build with postinst.prg executed by shared linked hbrun + + * harbour/bin/hb-func.sh + * harbour/debian/rules + * harbour/harbour.spec + % use HB_INST_PKGPREF instead of _DEFAULT_*_DIR + Please test DEB building in Debian, Ubuntu or in other DPKG + based distro. It probably has the same problem with postinst.prg + as all other builds. + + * harbour/debian/rules + * harbour/harbour.spec + * harbour/mpkg_tgz.sh + * harbour/source/compiler/gencobj.c + * updated harbour.cfg localization in *nix builds + + * harbour/utils/hbrun/Makefile + ! restored support for default include directory in system wide builds + 2009-10-06 16:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) * harbour/config/instsh.mk * harbour/bin/hb-func.sh diff --git a/harbour/bin/hb-func.sh b/harbour/bin/hb-func.sh index c53f9c3fc3..325cf06c85 100755 --- a/harbour/bin/hb-func.sh +++ b/harbour/bin/hb-func.sh @@ -190,10 +190,6 @@ mk_hbtools() hb_gt_ori=${HB_GT_LIB} [ -z "${HB_GT_LIB}" ] && HB_GT_LIB="gtstd" - [ -z "${_DEFAULT_BIN_DIR}" ] && _DEFAULT_BIN_DIR="${HB_BIN_INSTALL}" - [ -z "${_DEFAULT_INC_DIR}" ] && _DEFAULT_INC_DIR="${HB_INC_INSTALL}" - [ -z "${_DEFAULT_LIB_DIR}" ] && _DEFAULT_LIB_DIR="${HB_LIB_INSTALL}" - if [ "${HB_PLATFORM}" = "beos" ]; then HB_SYS_LIBS="-lroot -lnetwork" else @@ -303,9 +299,9 @@ mk_hbtools() # set environment variables export HB_PLATFORM="${HB_PLATFORM}" export HB_COMPILER="${HB_COMPILER}" -[ -z "\${HB_BIN_INSTALL}" ] && export HB_BIN_INSTALL="${_DEFAULT_BIN_DIR}" -[ -z "\${HB_INC_INSTALL}" ] && export HB_INC_INSTALL="${_DEFAULT_INC_DIR}" -[ -z "\${HB_LIB_INSTALL}" ] && export HB_LIB_INSTALL="${_DEFAULT_LIB_DIR}" +[ -z "\${HB_BIN_INSTALL}" ] && export HB_BIN_INSTALL="${HB_BIN_INSTALL}" +[ -z "\${HB_INC_INSTALL}" ] && export HB_INC_INSTALL="${HB_INC_INSTALL}" +[ -z "\${HB_LIB_INSTALL}" ] && export HB_LIB_INSTALL="${HB_LIB_INSTALL}" # be sure that ${name} binaries are in your path export PATH="\${HB_BIN_INSTALL}${hb_path_separator}${hb_ccpath}\${PATH}" diff --git a/harbour/debian/rules b/harbour/debian/rules index 8aa3c64e0b..958b963651 100755 --- a/harbour/debian/rules +++ b/harbour/debian/rules @@ -6,26 +6,25 @@ # 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 _DEFAULT_DOC_DIR := /usr/share/doc/harbour -export INSTDIR := $(CURDIR)/debian/harbour -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_DOC_INSTALL := $(INSTDIR)$(_DEFAULT_DOC_DIR) -export HB_ETC_DIR := $(INSTDIR)/etc +export HB_BIN_INSTALL := /usr/bin +export HB_LIB_INSTALL := /usr/include/harbour +export HB_INC_INSTALL := /usr/lib/harbour +export HB_DOC_INSTALL := /usr/share/doc/harbour +export HB_ETC_INSTALL := /etc/harbour +export HB_INST_PKGPREF := $(CURDIR)/debian/harbour -CFLAGS := -g +# is INSTDIR necessary for dpkg? If not then please remove it. +export INSTDIR := $(HB_INST_PKGPREF) ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) - CFLAGS += -O0 + HB_USER_CFLAGS += -O0 else - CFLAGS += -O3 + HB_USER_CFLAGS += -O3 endif ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) INSTALL_PROGRAM += -s +else + HB_USER_CFLAGS := -g endif build: build-stamp @@ -53,9 +52,8 @@ install: build dh_installdirs make install - rm -f $(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 debian/harbour.cfg $(HB_INST_PKGPREF)$(HB_ETC_INSTALL)/harbour.cfg + install -m644 source/rtl/gtcrs/hb-charmap.def $(HB_INST_PKGPREF)$(HB_ETC_INSTALL)/hb-charmap.def # Build architecture-independent files here. diff --git a/harbour/harbour.spec b/harbour/harbour.spec index 81f35aadbd..458bfad8ea 100644 --- a/harbour/harbour.spec +++ b/harbour/harbour.spec @@ -69,6 +69,7 @@ %define version 2.0.0 %define releasen beta3 %define hb_pref hb +%define hb_etcdir /etc/%{name} %define hb_plat export HB_PLATFORM=linux %define hb_cc export HB_COMPILER=gcc %define hb_cflag export HB_USER_CFLAGS= @@ -81,9 +82,10 @@ %define hb_bdir export HB_BIN_INSTALL=%{_bindir} %define hb_idir export HB_INC_INSTALL=%{_includedir}/%{name} %define hb_ldir export HB_LIB_INSTALL=%{_libdir}/%{name} +%define hb_edir export HB_ETC_INSTALL=%{hb_etcdir} %define hb_cmrc export HB_COMMERCE=%{?_without_gpllib:yes} %define hb_ctrb export HB_CONTRIBLIBS="hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmzip hbnetio hbtip hbtpathy hbhpdf hbziparc xhb rddsql %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_fbsql:hbfbird} %{?_with_allegro:gtalleg}" -%define hb_env %{hb_plat} ; %{hb_cc} ; %{hb_cflag} ; %{hb_lflag} ; %{hb_gpm} ; %{hb_crs} ; %{hb_sln} ; %{hb_x11} ; %{hb_local} ; %{hb_bdir} ; %{hb_idir} ; %{hb_ldir} ; %{hb_ctrb} ; %{hb_cmrc} +%define hb_env %{hb_plat} ; %{hb_cc} ; %{hb_cflag} ; %{hb_lflag} ; %{hb_gpm} ; %{hb_crs} ; %{hb_sln} ; %{hb_x11} ; %{hb_local} ; %{hb_bdir} ; %{hb_idir} ; %{hb_ldir} ; %{hb_edir} ; %{hb_ctrb} ; %{hb_cmrc} %define hb_host www.harbour-project.org %define readme README.RPM ###################################################################### @@ -379,38 +381,36 @@ make %{?_smp_mflags} %{hb_env} -export _DEFAULT_BIN_DIR=$HB_BIN_INSTALL -export _DEFAULT_INC_DIR=$HB_INC_INSTALL -export _DEFAULT_LIB_DIR=$HB_LIB_INSTALL -export HB_BIN_INSTALL=$RPM_BUILD_ROOT/$HB_BIN_INSTALL -export HB_INC_INSTALL=$RPM_BUILD_ROOT/$HB_INC_INSTALL -export HB_LIB_INSTALL=$RPM_BUILD_ROOT/$HB_LIB_INSTALL +export HB_INST_PKGPREF=$RPM_BUILD_ROOT export HB_BUILD_STRIP=all export HB_BUILD_SHARED=%{!?_with_static:yes} +# necessary for shared linked hbrun used to execute postinst.prg +export LD_LIBRARY_PATH=$HB_INST_PKGPREF$HB_LIB_INSTALL + make install %{?_smp_mflags} -[ "%{?_with_allegro:1}" ] || rm -f $HB_LIB_INSTALL/libgtalleg.a -[ "%{?_without_gtcrs:1}" ] && rm -f $HB_LIB_INSTALL/libgtcrs.a -[ "%{?_without_gtsln:1}" ] && rm -f $HB_LIB_INSTALL/libgtsln.a -rm -f $HB_LIB_INSTALL/liblibhpdf.a -rm -f $HB_LIB_INSTALL/liblibpng.a -rm -f $HB_LIB_INSTALL/libsqlite3.a +[ "%{?_with_allegro:1}" ] || rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/libgtalleg.a +[ "%{?_without_gtcrs:1}" ] && rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/libgtcrs.a +[ "%{?_without_gtsln:1}" ] && rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/libgtsln.a +rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/liblibhpdf.a +rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/liblibpng.a +rm -f $HB_INST_PKGPREF$HB_LIB_INSTALL/libsqlite3.a -mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1 -install -m644 doc/man/*.1* $RPM_BUILD_ROOT%{_mandir}/man1/ +mkdir -p $HB_INST_PKGPREF%{_mandir}/man1 +install -m644 doc/man/*.1* $HB_INST_PKGPREF%{_mandir}/man1/ -mkdir -p $RPM_BUILD_ROOT/etc/harbour -install -m644 source/rtl/gtcrs/hb-charmap.def $RPM_BUILD_ROOT/etc/harbour/hb-charmap.def -cat > $RPM_BUILD_ROOT/etc/harbour.cfg < $HB_INST_PKGPREF$HB_ETC_INSTALL/harbour.cfg < doc/%{readme} < $HB_INST_PKGPREF$ETC/harbour.cfg < $HB_INST_PKGPREF$ETC/harbour/harbour.cfg <