cGit-UI for Git Repositories

cGit-UI – is a web interface for Git Repositories. cGit CGI script is writen in C and therefore it's fast enough

12 Commits   0 Branches   1 Tag
Index: configure.ac
===================================================================
--- configure.ac	(nonexistent)
+++ configure.ac	(revision 5)
@@ -0,0 +1,231 @@
+
+dnl ============================================================
+dnl  Process this file with autoconf to produce
+dnl  a configure script.
+dnl ============================================================
+
+AC_PREREQ(2.71)dnl        dnl Minimum Autoconf version required.
+
+
+AC_INIT([cgit-ui], [0.1.7],
+  [support@radix.pro], [cgit-ui], [https://radix.pro])
+
+dnl ============================================================
+dnl m4's diversions:
+dnl ---------------
+dnl
+dnl see: /use/share/autoconf/autoconf/general.m4
+dnl ============================================================
+m4_divert_push([M4SH-INIT])
+PACKAGE_CGI=cgit-ui.cgi
+PACKAGE_LICENSE=Radix-1.0
+CGIT_SCRIPT_DIR=/var/www/htdocs/cgit
+m4_divert_pop([M4SH-INIT])
+
+AC_CGIT_HEADLINE([cgit-ui], [cGit-ui], [Copyright (c) 2019-2022 Andrey V.Kosteltsev])
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Init Automake environment                        $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(Init Automake environment)
+
+AC_CANONICAL_TARGET
+
+AM_INIT_AUTOMAKE([subdir-objects foreign no-dist-gzip dist-xz tar-pax])
+
+AC_CONFIG_HEADERS([config.h])
+
+AC_PREFIX_DEFAULT(/usr/local)
+
+AC_MSG_CFG_PART(Test for GNU Gettext)
+AM_GNU_GETTEXT([external])
+AM_GNU_GETTEXT_VERSION
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Test for Build Tools                             $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(Test for build tools)
+AC_CHECK_TOOL([GCC], [gcc], [:])
+AC_PATH_PROG([BISON], [bison], [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+test "$BISON" = "no" && AC_MSG_ERROR([Unable to find required program 'bison'])
+
+
+AC_MSG_CFG_PART(Test for Header files)
+dnl
+dnl  Check for system header files.
+dnl  =============================
+dnl  /* GetText частично проверил. Но мы делаем для себя. */
+AC_CHECK_HEADERS( locale.h )
+AC_CHECK_HEADERS( sys/types.h sys/stat.h stdlib.h stddef.h )
+AC_CHECK_HEADERS( memory.h string.h strings.h )
+AC_CHECK_HEADERS( inntypes.h stdint.h unistd.h )
+AC_CHECK_HEADERS( fcntl.h errno.h )
+AC_CHECK_HEADERS( sys/file.h )
+AC_CHECK_HEADERS( sys/uio.h )
+AC_CHECK_HEADERS( stdarg.h )
+AC_CHECK_HEADERS( sys/time.h )
+AC_CHECK_HEADERS( limits.h )
+AC_CHECK_HEADERS( endian.h )
+AC_CHECK_HEADERS( pcre2.h )
+AC_CHECK_HEADERS( wchar.h )
+AC_CHECK_HEADERS( wctype.h )
+AC_CHECK_HEADERS( math.h )
+AC_CHECK_HEADERS( md4c.h md4c-html.h )
+AC_CHECK_HEADERS( magic.h )
+
+AC_MSG_CFG_PART(Test for cScm Configuration Daemon)
+dnl  Check for system header file <cscm/bcf.h> provided by cScm package:
+dnl  ==================================================================
+AC_CHECK_HEADER([cscm/bcf.h],[AC_DEFINE(HAVE_CSCM_BCF_H, 1, [Define to 1 if you have the <cscm/bcf.h> header file.])],
+                             [AC_MSG_ERROR([cscm/bcf.h not found. Please install cScm package.])])
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Test for Libraries                               $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(Test for libraries)
+AC_CHECK_LIB([pcre2-8],[pcre2_compile_8],[],[AC_MSG_ERROR([Unable to find required libpcre2-8])])
+AC_CHECK_LIB([rt],[aio_suspend],[],[AC_MSG_ERROR([Unable to find required librt])])
+AC_CHECK_LIB([m],[round],[],[AC_MSG_ERROR([Unable to find required libm])])
+AC_CHECK_LIB([md4c],[md_parse],[],[AC_MSG_ERROR([Unable to find required libmd4c])])
+AC_CHECK_LIB([md4c-html],[md_html],[],[AC_MSG_ERROR([Unable to find required libmd4c-html])])
+AC_CHECK_LIB([magic],[magic_version],[],[AC_MSG_ERROR([Unable to find required libmagic])])
+
+PKG_CHECK_MODULES([GIT2], [libgit2 >= 1.1.0],
+                  [AC_DEFINE([HAVE_LIBGIT2],[1],[Define to 1 if you have the `git2' library (-lgit2).])],
+                  [AC_MSG_ERROR([Unable to find required libgit2])])
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Test for Runtime Tools                           $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(Test for runtime tools)
+AC_PATH_PROG([GIT], [git], [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+test "$GIT" = "no" && AC_MSG_ERROR([Unable to find required program 'git'])
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: cGit Features                                    $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_ARG_WITH([scriptdir],
+  [AS_HELP_STRING([--with-scriptdir=DIR], [cGit-ui CGI script directory @<:@default=/var/www/htdocs/cgit@:>@],[26],[84])],
+  [scriptdir=$withval],
+  [scriptdir="/var/www/htdocs/cgit"])
+AC_SUBST([scriptdir], [$scriptdir])
+AC_SUBST([CGIT_SCRIPT_DIR], [$scriptdir])
+AC_DEFINE_UNQUOTED([CGIT_SCRIPT_DIR], ["$CGIT_SCRIPT_DIR"], [Define the CGI script directory])
+
+AC_SUBST(PROGRAM_CGI,[${PACKAGE_CGI}])
+AC_SUBST(PROGRAM_VERSION,[${PACKAGE_VERSION}])
+AC_SUBST(PROGRAM_LICENSE,[${PACKAGE_LICENSE}])
+
+AC_DEFINE_UNQUOTED([PROGRAM_CGI], ["$PROGRAM_CGI"], [Define the CGI script name])
+AC_DEFINE_UNQUOTED([PROGRAM_VERSION], ["$PROGRAM_VERSION"], [Define the version of all programs in this package])
+AC_DEFINE_UNQUOTED([PROGRAM_LICENSE], ["$PROGRAM_LICENSE"], [Define the License of all programs in this package])
+
+
+dnl ============================================================
+dnl Environment Variables:
+dnl ---------------------
+dnl  For 'Some influential environment variables:' help section
+dnl ============================================================
+AC_ARG_VAR([STRIP], [strip command])
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Test for Auxiliary (my be version sensitive)     $$
+dnl $$       programs                                         $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(Test for aux programs)
+AC_PATH_PROG_LN_S
+AC_PATH_PROG([CAT],       [cat],       [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([CHMOD],     [chmod],     [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([CP],        [cp],        [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([FIND],      [find],      [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([GZIP],      [gzip],      [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([MV],        [mv],        [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([RM],        [rm],        [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([SED],       [sed],       [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([TAR],       [tar],       [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+AC_PATH_PROG([XZ],        [xz],        [no], [/usr/local/bin:/usr/bin:/bin:$PATH])
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: OUTPUT Substitution                              $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_CFG_PART(OUTPUT)
+
+AC_CONFIG_FILES([ po/Makefile.in
+cgitcgi/Makefile
+Makefile
+])
+AC_OUTPUT