Changeset: f031c775f29e for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/f031c775f29e Branch: const_aggr_elim Log Message:
Merges default diffs (truncated from 4726 to 300 lines): diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -18,12 +18,8 @@ */ #include "monetdb_config.h" -#ifndef HAVE_GETOPT_LONG -# include "monet_getopt.h" -#else -# ifdef HAVE_GETOPT_H -# include "getopt.h" -# endif +#ifdef HAVE_GETOPT_H +#include "getopt.h" #endif #include "stream.h" #include "mapi.h" diff --git a/clients/mapiclient/msqldump.c b/clients/mapiclient/msqldump.c --- a/clients/mapiclient/msqldump.c +++ b/clients/mapiclient/msqldump.c @@ -11,12 +11,8 @@ */ #include "monetdb_config.h" -#ifndef HAVE_GETOPT_LONG -# include "monet_getopt.h" -#else -# ifdef HAVE_GETOPT_H -# include "getopt.h" -# endif +#ifdef HAVE_GETOPT_H +#include "getopt.h" #endif #include "mapi.h" #include <unistd.h> diff --git a/cmake/Modules/FindGetopt.cmake b/cmake/Modules/FindGetopt.cmake deleted file mode 100644 --- a/cmake/Modules/FindGetopt.cmake +++ /dev/null @@ -1,17 +0,0 @@ -# - Find Getopt -# Find the native getopt headers and libraries. -# -# GETOPT_INCLUDE_DIR - where to find getopt.h, etc. -# GETOPT_LIBRARIES - List of libraries when using getopt. -# GETOPT_FOUND - True if getopt found. - -##find_path(HAVE_GETOPT_H "getopt.h") -##check_symbol_exists("getopt_long" "getopt.h" HAVE_GETOPT_LONG) - -##find_library(GETOPT_LIB "getopt.lib") -#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@ -#cmakedefine HAVE_GETOPT_LONG @HAVE_GETOPT_LONG@ - -#define HAVE_GETOPT_LONG 1 -#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@ -#cmakedefine GETOPT_LIB @GETOPT_LIB@ diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake --- a/cmake/monetdb-defines.cmake +++ b/cmake/monetdb-defines.cmake @@ -74,10 +74,6 @@ function(monetdb_configure_defines) check_function_exists("getentropy" HAVE_GETENTROPY) check_function_exists("getexecname" HAVE_GETEXECNAME) check_function_exists("getlogin" HAVE_GETLOGIN) - cmake_push_check_state() - set(CMAKE_REQUIRED_INCLUDES "${HAVE_GETOPT_H}") - check_symbol_exists("getopt_long" "getopt.h" HAVE_GETOPT_LONG) - cmake_pop_check_state() check_function_exists("getrlimit" HAVE_GETRLIMIT) check_function_exists("gettid" HAVE_GETTID) check_function_exists("gettimeofday" HAVE_GETTIMEOFDAY) @@ -175,9 +171,6 @@ macro(monetdb_macro_variables) CACHE INTERNAL "C udfs extension is available") - if(HAVE_GETOPT_H) - set(HAVE_GETOPT 1) - endif() # compiler options, profiling (google perf tools), valgrind # Check that posix regex is available when pcre is not found # "monetdb5/module/mal/pcre.c" assumes the regex library is available diff --git a/common/options/CMakeLists.txt b/common/options/CMakeLists.txt --- a/common/options/CMakeLists.txt +++ b/common/options/CMakeLists.txt @@ -11,8 +11,7 @@ #]] set(moptions_public_headers - ${CMAKE_CURRENT_SOURCE_DIR}/monet_options.h - ${CMAKE_CURRENT_SOURCE_DIR}/monet_getopt.h) + ${CMAKE_CURRENT_SOURCE_DIR}/monet_options.h) add_library(moptions STATIC) @@ -24,16 +23,13 @@ target_sources(moptions ${moptions_public_headers}) target_include_directories(moptions - PRIVATE - $<$<PLATFORM_ID:Windows>:${HAVE_GETOPT_H}> PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb>) target_link_libraries(moptions PRIVATE - monetdb_config_header - $<$<PLATFORM_ID:Windows>:${GETOPT_LIB}>) + monetdb_config_header) if(NOT MONETDB_STATIC) set_target_properties(moptions @@ -44,7 +40,6 @@ endif() install(FILES monet_options.h - monet_getopt.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/monetdb COMPONENT monetdbdev) diff --git a/common/options/getopt.c b/common/options/getopt.c deleted file mode 100644 --- a/common/options/getopt.c +++ /dev/null @@ -1,941 +0,0 @@ -/* - * SPDX-License-Identifier: MPL-2.0 - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * Copyright 2024, 2025 MonetDB Foundation; - * Copyright August 2008 - 2023 MonetDB B.V.; - * Copyright 1997 - July 2008 CWI. - */ - -/* Getopt for GNU. - NOTE: getopt is now part of the C library, so if you don't know what - "Keep this file name-space clean" means, talk to drep...@gnu.org - before changing it! - Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>. - Ditto for AIX 3.2 and <stdlib.h>. */ -#ifndef _NO_PROTO -# define _NO_PROTO -#endif - -#include "monetdb_config.h" - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself. This code is part of the GNU C - Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand `configure --with-gnu-libc' and omit the object files, - it is simpler to just do this in the source for each such file. */ - -#define GETOPT_INTERFACE_VERSION 2 -#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 -# include <gnu-versions.h> -# if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION -# define ELIDE_CODE -# endif -#endif - -#ifndef ELIDE_CODE - - -/* This needs to come after some library #include - to get __GNU_LIBRARY__ defined. */ -#ifdef __GNU_LIBRARY__ -/* Don't include stdlib.h for non-GNU C libraries because some of them - contain conflicting prototypes for getopt. */ -# include <stdlib.h> -# include <unistd.h> -#else -# ifdef _MSC_VER -# include <stdlib.h> -# include <io.h> -# endif -#endif /* GNU C library. */ - -#ifdef VMS -# include <unixlib.h> -# if HAVE_STRING_H - 0 -# include <string.h> -# endif -#endif - -#ifndef _ -/* This is for other GNU distributions with internationalized messages. */ -# if defined HAVE_LIBINTL_H || defined _LIBC -# include <libintl.h> -# ifndef _ -# define _(msgid) gettext (msgid) -# endif -# else -# define _(msgid) (msgid) -# endif -#endif - -/* This version of `getopt' appears to the caller like standard Unix `getopt' - but it behaves differently for the user, since it allows the user - to intersperse the options with the other arguments. - - As `getopt' works, it permutes the elements of ARGV so that, - when it is done, all the options precede everything else. Thus - all application programs are extended to handle flexible argument order. - - Setting the environment variable POSIXLY_CORRECT disables permutation. - Then the behavior is completely standard. - - GNU application programs can use a third alternative mode in which - they can distinguish the relative order of options and other arguments. */ - -#include "monet_getopt.h" - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -/* 1003.2 says this must be 1 before any call. */ -int optind = 1; - -/* Formerly, initialization of getopt depended on optind==0, which - causes problems with re-calling getopt as programs generally don't - know that. */ - -int __getopt_initialized; - -/* The next char to be scanned in the option-element - in which the last option character we returned was found. - This allows us to pick up the scan where we left off. - - If this is zero, or a null string, it means resume the scan - by advancing to the next ARGV-element. */ - -static char *nextchar; - -/* Callers store zero here to inhibit the error message - for unrecognized options. */ - -int opterr = 1; - -/* Set to an option character which was unrecognized. - This must be initialized on some systems to avoid linking in the - system's own getopt implementation. */ - -int optopt = '?'; - -/* Describe how to deal with options that follow non-option ARGV-elements. - - If the caller did not specify anything, - the default is REQUIRE_ORDER if the environment variable - POSIXLY_CORRECT is defined, PERMUTE otherwise. - - REQUIRE_ORDER means don't recognize them as options; - stop option processing when the first non-option is seen. - This is what Unix does. - This mode of operation is selected by either setting the environment - variable POSIXLY_CORRECT, or using `+' as the first character - of the list of option characters. - - PERMUTE is the default. We permute the contents of ARGV as we scan, _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org