#include <apt-pkg/error.h>
#include <apt-pkg/strutl.h>
#include <apt-pkg/configuration.h>
-#include <system.h>
+#include <apt-pkg/macros.h>
#include <stdlib.h>
#include <unistd.h>
#include <apt-pkg/hashes.h>
#include <apt-pkg/fileutl.h>
#include <apt-pkg/configuration.h>
-
+#include <apt-pkg/macros.h>
+
#include <unistd.h>
-#include <system.h>
#include <string>
#include <iostream>
/*}}}*/
--- /dev/null
+// -*- mode: cpp; mode: fold -*-
+// Description /*{{{*/
+/* ######################################################################
+
+ Macros Header - Various useful macro definitions
+
+ This source is placed in the Public Domain, do with it what you will
+ It was originally written by Brian C. White.
+
+ ##################################################################### */
+ /*}}}*/
+// Private header
+#ifndef MACROS_H
+#define MACROS_H
+
+// MIN_VAL(SINT16) will return -0x8000 and MAX_VAL(SINT16) = 0x7FFF
+#define MIN_VAL(t) (((t)(-1) > 0) ? (t)( 0) : (t)(((1L<<(sizeof(t)*8-1)) )))
+#define MAX_VAL(t) (((t)(-1) > 0) ? (t)(-1) : (t)(((1L<<(sizeof(t)*8-1))-1)))
+
+// Min/Max functions
+#if !defined(MIN)
+#if defined(__HIGHC__)
+#define MIN(x,y) _min(x,y)
+#define MAX(x,y) _max(x,y)
+#endif
+
+// GNU C++ has a min/max operator <coolio>
+#if defined(__GNUG__)
+#define MIN(A,B) ((A) <? (B))
+#define MAX(A,B) ((A) >? (B))
+#endif
+
+/* Templates tend to mess up existing code that uses min/max because of the
+ strict matching requirements */
+#if !defined(MIN)
+#define MIN(A,B) ((A) < (B)?(A):(B))
+#define MAX(A,B) ((A) > (B)?(A):(B))
+#endif
+#endif
+
+/* Bound functions, bound will return the value b within the limits a-c
+ bounv will change b so that it is within the limits of a-c. */
+#define _bound(a,b,c) MIN(c,MAX(b,a))
+#define _boundv(a,b,c) b = _bound(a,b,c)
+#define ABS(a) (((a) < (0)) ?-(a) : (a))
+
+/* Usefull count macro, use on an array of things and it will return the
+ number of items in the array */
+#define _count(a) (sizeof(a)/sizeof(a[0]))
+
+// Flag Macros
+#define FLAG(f) (1L << (f))
+#define SETFLAG(v,f) ((v) |= FLAG(f))
+#define CLRFLAG(v,f) ((v) &=~FLAG(f))
+#define CHKFLAG(v,f) ((v) & FLAG(f) ? true : false)
+
+// some nice optional GNUC features
+#if __GNUC__ >= 3
+ #define __must_check __attribute__ ((warn_unused_result))
+ #define __deprecated __attribute__ ((deprecated))
+ /* likely() and unlikely() can be used to mark boolean expressions
+ as (not) likely true which will help the compiler to optimise */
+ #define likely(x) __builtin_expect (!!(x), 1)
+ #define unlikely(x) __builtin_expect (!!(x), 0)
+#else
+ #define __must_check /* no warn_unused_result */
+ #define __deprecated /* no deprecated */
+ #define likely(x) (x)
+ #define unlikely(x) (x)
+#endif
+
+// cold functions are unlikely() to be called
+#if (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) || __GNUC__ > 4
+ #define __cold __attribute__ ((__cold__))
+#else
+ #define __cold /* no cold marker */
+#endif
+
+#ifdef __GNUG__
+// Methods have a hidden this parameter that is visible to this attribute
+ #define __like_printf_1 __attribute__ ((format (printf, 2, 3)))
+ #define __like_printf_2 __attribute__ ((format (printf, 3, 4)))
+#else
+ #define __like_printf_1
+ #define __like_printf_2
+#endif
+
+#endif
// Include Files /*{{{*/
#include <apt-pkg/md5.h>
#include <apt-pkg/strutl.h>
+#include <apt-pkg/macros.h>
#include <string.h>
#include <unistd.h>
#include <netinet/in.h> // For htonl
#include <inttypes.h>
#include <config.h>
-#include <system.h>
-
/*}}}*/
// byteSwap - Swap bytes in a buffer /*{{{*/
// Include Files /*{{{*/
#include <apt-pkg/sha1.h>
#include <apt-pkg/strutl.h>
+#include <apt-pkg/macros.h>
#include <string.h>
#include <unistd.h>
#include <inttypes.h>
#include <config.h>
-#include <system.h>
/*}}}*/
// SHA1Transform - Alters an existing SHA-1 hash /*{{{*/
+++ /dev/null
-// -*- mode: cpp; mode: fold -*-
-// Description /*{{{*/
-// $Id: system.h,v 1.3 1999/12/10 23:40:29 jgg Exp $
-/* ######################################################################
-
- System Header - Usefull private definitions
-
- This source is placed in the Public Domain, do with it what you will
- It was originally written by Brian C. White.
-
- ##################################################################### */
- /*}}}*/
-// Private header
-#ifndef SYSTEM_H
-#define SYSTEM_H
-
-// MIN_VAL(SINT16) will return -0x8000 and MAX_VAL(SINT16) = 0x7FFF
-#define MIN_VAL(t) (((t)(-1) > 0) ? (t)( 0) : (t)(((1L<<(sizeof(t)*8-1)) )))
-#define MAX_VAL(t) (((t)(-1) > 0) ? (t)(-1) : (t)(((1L<<(sizeof(t)*8-1))-1)))
-
-// Min/Max functions
-#if !defined(MIN)
-#if defined(__HIGHC__)
-#define MIN(x,y) _min(x,y)
-#define MAX(x,y) _max(x,y)
-#endif
-
-// GNU C++ has a min/max operator <coolio>
-#if defined(__GNUG__)
-#define MIN(A,B) ((A) <? (B))
-#define MAX(A,B) ((A) >? (B))
-#endif
-
-/* Templates tend to mess up existing code that uses min/max because of the
- strict matching requirements */
-#if !defined(MIN)
-#define MIN(A,B) ((A) < (B)?(A):(B))
-#define MAX(A,B) ((A) > (B)?(A):(B))
-#endif
-#endif
-
-/* Bound functions, bound will return the value b within the limits a-c
- bounv will change b so that it is within the limits of a-c. */
-#define _bound(a,b,c) MIN(c,MAX(b,a))
-#define _boundv(a,b,c) b = _bound(a,b,c)
-#define ABS(a) (((a) < (0)) ?-(a) : (a))
-
-/* Usefull count macro, use on an array of things and it will return the
- number of items in the array */
-#define _count(a) (sizeof(a)/sizeof(a[0]))
-
-// Flag Macros
-#define FLAG(f) (1L << (f))
-#define SETFLAG(v,f) ((v) |= FLAG(f))
-#define CLRFLAG(v,f) ((v) &=~FLAG(f))
-#define CHKFLAG(v,f) ((v) & FLAG(f) ? true : false)
-
-// some nice optional GNUC features
-#if __GNUC__ >= 3
- #define __must_check __attribute__ ((warn_unused_result))
- #define __deprecated __attribute__ ((deprecated))
- /* likely() and unlikely() can be used to mark boolean expressions
- as (not) likely true which will help the compiler to optimise */
- #define likely(x) __builtin_expect (!!(x), 1)
- #define unlikely(x) __builtin_expect (!!(x), 0)
-#else
- #define __must_check /* no warn_unused_result */
- #define __deprecated /* no deprecated */
- #define likely(x) (x)
- #define unlikely(x) (x)
-#endif
-
-// cold functions are unlikely() to be called
-#if (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) || __GNUC__ > 4
- #define __cold __attribute__ ((__cold__))
-#else
- #define __cold /* no cold marker */
-#endif
-
-#ifdef __GNUG__
-// Methods have a hidden this parameter that is visible to this attribute
- #define __like_printf_1 __attribute__ ((format (printf, 2, 3)))
- #define __like_printf_2 __attribute__ ((format (printf, 3, 4)))
-#else
- #define __like_printf_1
- #define __like_printf_2
-#endif
-
-#endif
#include <apt-pkg/strutl.h>
#include <apt-pkg/crc-16.h>
#include <apt-pkg/md5.h>
+#include <apt-pkg/macros.h>
#include <ctype.h>
-
-#include <system.h>
/*}}}*/
static debListParser::WordList PrioList[] = {{"important",pkgCache::State::Important},
contrib/cdromutl.cc contrib/crc-16.cc contrib/netrc.cc \
contrib/fileutl.cc
HEADERS = mmap.h error.h configuration.h fileutl.h cmndline.h netrc.h\
- md5.h crc-16.h cdromutl.h strutl.h sptr.h sha1.h sha256.h hashes.h
+ md5.h crc-16.h cdromutl.h strutl.h sptr.h sha1.h sha256.h hashes.h \
+ macros.h
# Source code for the core main library
SOURCE+= pkgcache.cc version.cc depcache.cc \
HEADERS := $(addprefix apt-pkg/,$(HEADERS))
-# Private header files
-HEADERS+= system.h
-
include $(LIBRARY_H)
#include <unistd.h>
#include <ctype.h>
-#include <system.h>
/*}}}*/
using std::string;
#include <apt-pkg/strutl.h>
#include <apt-pkg/sptr.h>
#include <apt-pkg/pkgsystem.h>
+#include <apt-pkg/macros.h>
#include <apt-pkg/tagfile.h>
#include <unistd.h>
#include <errno.h>
#include <stdio.h>
-#include <system.h>
/*}}}*/
typedef vector<pkgIndexFile *>::iterator FileIterator;
* French translation update.
[ David Kalnischkies ]
+ * apt-pkg/contrib/macros.h:
+ - move the header system.h with a new name to the public domain,
+ to be able to use it in other headers (Closes: #567662)
* cmdline/acqprogress.cc:
- Set Mode to Medium so that the correct prefix is used.
Thanks Stefan Haller for the patch! (Closes: #567304 LP: #275243)
##################################################################### */
/*}}}*/
-#include <system.h>
+#include <apt-pkg/macros.h>
#include <apt-pkg/error.h>
#include <apt-pkg/version.h>
#include <apt-pkg/debversion.h>