diff --git a/dev-util/global/global-6.6.3.recipe b/dev-util/global/global-6.6.3.recipe new file mode 100644 index 000000000..4583c7c10 --- /dev/null +++ b/dev-util/global/global-6.6.3.recipe @@ -0,0 +1,71 @@ +SUMMARY="A source code tagging system" +DESCRIPTION="GNU GLOBAL is a source code tagging system that works the same \ +way across diverse environments (emacs, vi, less, bash, web browser, etc). \ +You can locate symbols in source files and move there easily. It is useful \ +for hacking a large project containing many sub-directories, many #ifdef and \ +many main() functions. It is similar to ctags or etags but is different from \ +them at the point of independence of any editor. It runs on a UNIX(POSIX) \ +compatible operating system like GNU and BSD." +HOMEPAGE="http://www.gnu.org/software/global/" +COPYRIGHT="2000-2013 Tama Communications Corporation + 2007-2013 Free Software Foundation, Inc." +LICENSE="GNU GPL v3" +REVISION="1" +SOURCE_URI="http://ftp.gnu.org/pub/gnu/global/global-$portVersion.tar.gz" +CHECKSUM_SHA256="cbee98ef6c1b064bc5b062d14a6d94dca67289e8374860817057db7688bc651c" +PATCHES="global-$portVersion.patchset" + +ARCHITECTURES="x86_gcc2 x86 x86_64" + +PROVIDES=" + global = $portVersion compat >= 6.3 + cmd:global = $portVersion compat >= 6.3 + cmd:globash = $portVersion compat >= 6.3 + cmd:gozilla = $portVersion compat >= 6.3 + cmd:gtags = $portVersion compat >= 6.3 + cmd:gtags_cscope = $portVersion compat >= 6.3 + cmd:htags = $portVersion compat >= 6.3 + cmd:htags_server = $portVersion compat >= 6.3 + " +REQUIRES=" + haiku + cmd:ctags + cmd:sort + lib:libltdl + lib:libncurses >= 6 + " + +BUILD_REQUIRES=" + haiku_devel + devel:libncurses >= 6 + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:autoreconf + cmd:ctags + cmd:find + cmd:gcc + cmd:grep + cmd:ld + cmd:libtool + cmd:make + cmd:perl + cmd:sed + cmd:sort + " + +BUILD() +{ + autoreconf -fi + runConfigure ./configure \ + --with-ncurses \ + --with-exuberant-ctags=${portPackageLinksDir}/cmd~ctags/bin/ctags \ + --with-posix-sort=${portPackageLinksDir}/cmd~sort/bin/sort + make +} + +INSTALL() +{ + make install +} diff --git a/dev-util/global/patches/global-6.6.3.patchset b/dev-util/global/patches/global-6.6.3.patchset new file mode 100644 index 000000000..7537032a2 --- /dev/null +++ b/dev-util/global/patches/global-6.6.3.patchset @@ -0,0 +1,94 @@ +From 9221c7a6778a0d6e91180f925998d8511e740d6d Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Wed, 25 Jun 2014 21:57:57 -0600 +Subject: Haiku fixes + + +diff --git a/configure.ac b/configure.ac +index c4a1aba..b7bbad2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -57,7 +57,7 @@ LTDL_INIT([recursive]) + dnl Checks for libraries. + + dnl Checks for header files. +-AC_CHECK_HEADERS(limits.h string.h unistd.h stdarg.h sys/time.h fcntl.h) ++AC_CHECK_HEADERS(limits.h string.h unistd.h stdarg.h stdint.h sys/time.h fcntl.h) + AC_CHECK_HEADERS(sys/resource.h) + AC_HEADER_DIRENT + if test ${ac_header_dirent} = no; then +diff --git a/libdb/db.h b/libdb/db.h +index 67ab8f3..c648202 100644 +--- a/libdb/db.h ++++ b/libdb/db.h +@@ -42,6 +42,9 @@ + #ifdef HAVE_UNISTD_H + #include + #endif ++#ifdef HAVE_STDINT_H ++#include ++#endif + + #include "compat.h" + +diff --git a/libutil/conf.h b/libutil/conf.h +index 4a3a625..bfd7c73 100644 +--- a/libutil/conf.h ++++ b/libutil/conf.h +@@ -29,7 +29,11 @@ + */ + #define GTAGSCONF "/etc/gtags.conf" + #define DEBIANCONF "/etc/gtags/gtags.conf" ++#ifdef __HAIKU__ ++#define GTAGSRC "globalrc" ++#else + #define GTAGSRC ".globalrc" ++#endif + #ifdef __DJGPP__ + #define DOS_GTAGSRC "_globalrc" + #endif +diff --git a/libutil/env.c b/libutil/env.c +index d277578..1dfe23e 100644 +--- a/libutil/env.c ++++ b/libutil/env.c +@@ -32,6 +32,11 @@ + #include + #endif + ++#ifdef __HAIKU__ ++#include ++#include ++#endif ++ + #include "conf.h" + #include "die.h" + #include "env.h" +@@ -74,6 +79,11 @@ get_home_directory(void) + { + #ifdef HAVE_HOME_ETC_H + return _HEdir; ++#elif defined(__HAIKU__) ++ char buffer[B_PATH_NAME_LENGTH+B_FILE_NAME_LENGTH]; ++ if (find_directory(B_USER_SETTINGS_DIRECTORY, -1, false, buffer, sizeof(buffer)) != B_OK) ++ return NULL; ++ return strdup(buffer); + #else + return getenv("HOME"); + #endif +diff --git a/m4/check_curses.m4 b/m4/check_curses.m4 +index 14aaec5..a370ec6 100644 +--- a/m4/check_curses.m4 ++++ b/m4/check_curses.m4 +@@ -240,6 +240,9 @@ AC_DEFUN([AC_SEARCH_NCURSES], [ + + AC_NCURSES(/usr/include/ncurses, curses.h, -lncurses, -I/usr/include/ncurses -DRENAMED_NCURSES, "renamed ncurses on /usr/include/ncurses") + ++ AC_NCURSES(/boot/system/develop/headers, ncurses.h, -lncurses, -I/boot/system/develop/headers/, "ncurses in /boot/system") ++ AC_NCURSES(/boot/home/config/develop/headers, ncurses.h, -lncurses, -I/boot/home/config/develop/headers, "ncurses in /boot/home/config") ++ + dnl + dnl We couldn't find ncurses, try SysV curses + dnl +-- +1.8.3.4 +