From bonivart at users.sourceforge.net Thu Oct 1 00:03:26 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Wed, 30 Sep 2009 22:03:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[6634] csw/mgar/pkg/pkgutil/trunk/Makefile Message-ID: Revision: 6634 http://gar.svn.sourceforge.net/gar/?rev=6634&view=rev Author: bonivart Date: 2009-09-30 22:03:26 +0000 (Wed, 30 Sep 2009) Log Message: ----------- pkgutil: split into two packages Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2009-09-30 20:38:57 UTC (rev 6633) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2009-09-30 22:03:26 UTC (rev 6634) @@ -12,8 +12,19 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(GARNAME)-$(GARVERSION).zip -DISTFILES += $(call admfiles,CSWpkgutil,prototype postinstall preremove) +#DISTFILES += $(call admfiles,CSWpkgutil,prototype postinstall preremove) +DISTFILES += $(call admfiles,CSWpkgutil,postinstall preremove) +PACKAGES = CSWpkgutil CSWpkgutilplus + +SPKG_DESC_CSWpkgutil = $(DESCRIPTION) +SPKG_DESC_CSWpkgutilplus = Extends pkgutil functionality + +REQUIRED_PKGS_CSWpkgutilplus = CSWperl CSWgnupg + +PKGFILES_CSWpkgutilplus = .*bldcat.* +PKGFILES_CSWpkgutilplus += .*chkcat.* + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).zip This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 11:52:38 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 09:52:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[6635] csw/mgar/pkg/bdb46/trunk Message-ID: Revision: 6635 http://gar.svn.sourceforge.net/gar/?rev=6635&view=rev Author: dmichelsen Date: 2009-10-01 09:52:37 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb46: Initial commit Added Paths: ----------- csw/mgar/pkg/bdb46/trunk/Makefile csw/mgar/pkg/bdb46/trunk/checksums csw/mgar/pkg/bdb46/trunk/files/ csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.1 csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.2 csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.3 csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.4 Property Changed: ---------------- csw/mgar/pkg/bdb46/trunk/ Property changes on: csw/mgar/pkg/bdb46/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v1 + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Copied: csw/mgar/pkg/bdb46/trunk/Makefile (from rev 6627, csw/mgar/pkg/bdb47/trunk/Makefile) =================================================================== --- csw/mgar/pkg/bdb46/trunk/Makefile (rev 0) +++ csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,88 @@ +GARNAME = db +GARVERSION = 4.6.21 +CATEGORIES = lib + +DESCRIPTION = Berkeley DB 4.6 +define BLURB + Berkeley DB (libdb) is a programmatic toolkit that provides embedded database + support for both traditional and client/server applications. It includes + b+tree, queue, extended linear hashing, fixed, and variable-length record + access methods, transactions, locking, logging, shared memory caching and + database recovery. DB supports C, C++, Java, and Perl APIs. It is available + for a wide variety of UNIX platforms as well as Windows NT and Windows 95 + (MSVC 4, 5 and 6). +endef + +MASTER_SITES = http://download.oracle.com/berkeley-db/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + +WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix + +PATCHDIR = $(WORKSRC)/.. +PATCHDIRLEVEL = 0 +PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) + +BUILD64 = 1 +CONFIGURE_SCRIPTS = dist + +prefix = $(BUILD_PREFIX)/bdb46 +CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --enable-compat185 +CONFIGURE_ARGS += --enable-o_direct +CONFIGURE_ARGS += --enable-rpc +CONFIGURE_ARGS += --enable-cxx +CONFIGURE_ARGS += --enable-java + +# Exclude TCL support for 64 bit until we have a 64 bit TCL +CONFIGURE_ARGS-mm-32 = --enable-tcl --with-tcl=$(libpath) +CONFIGURE_ARGS += $(CONFIGURE_ARGS-mm-$(MEMORYMODEL)) + +# bdb tests are *very* time consuming +TEST_SCRIPTS = + +NO_ISAEXEC = 1 + +PACKAGES = CSWbdb46 CSWbdb46devel CSWbdb46doc + +CATALOGNAME_CSWbdb46 = berkeleydb46 +CATALOGNAME_CSWbdb46devel = berkeleydb46_devel +CATALOGNAME_CSWbdb46doc = berkeleydb46_doc + +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb46),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* + +ARCHALL_CSWbdbdoc = 1 + +SPKG_DESC_CSWbdb46 = BerkeleyDB 4.6 embedded database libraries and utilities +SPKG_DESC_CSWbdb46devel = BerkeleyDB 4.6 development support +SPKG_DESC_CSWbdb46doc = BerkeleyDB 4.6 documentation + +REQUIRED_PKGS_CSWbdb46devel = CSWbdb46 + +LICENSE = LICENSE + +PKGFILES_CSWbdb46doc = /opt/csw/share/doc/.* + +PKGFILES_CSWbdb46devel = $(PKGFILES_DEVEL) + +include gar/category.mk + +LIBS += -lnsl +export LIBS + +PATH := /usr/jdk1.6.0_07/bin:$(PATH) +export PATH + +configure-dist: + @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) + @$(MAKECOOKIE) Added: csw/mgar/pkg/bdb46/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb46/trunk/checksums (rev 0) +++ csw/mgar/pkg/bdb46/trunk/checksums 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,5 @@ +718082e7e35fc48478a2334b0bc4cd11 download/db-4.6.21.tar.gz +4878872edfc53c6ecb871b1062a4bdaf download/patch.4.6.21.1 +55074e53d3acae2dcbeae8322f96e522 download/patch.4.6.21.2 +7a6e11b54712caf752f9c4a52babe60c download/patch.4.6.21.3 +ae7d3d587355fe85b512ef09b9a77d19 download/patch.4.6.21.4 Added: csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.1 =================================================================== --- csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.1 (rev 0) +++ csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.1 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,90 @@ +*** dbinc/mp.h 2007-09-28 01:28:25.000000000 +1000 +--- dbinc/mp.h 2008-02-14 01:22:09.000000000 +1100 +*************** +*** 639,644 **** +--- 639,647 ---- + */ + #define MP_TRUNC_RECOVER 0x01 + ++ /* Private flags to DB_MPOOLFILE->close. */ ++ #define DB_MPOOL_NOLOCK 0x002 /* Already have mpf locked. */ ++ + #if defined(__cplusplus) + } + #endif +*** mp/mp_fopen.c 2007-05-18 03:18:01.000000000 +1000 +--- mp/mp_fopen.c 2008-02-12 16:09:42.000000000 +1100 +*************** +*** 888,894 **** + * when we try to flush them. + */ + deleted = 0; +! MUTEX_LOCK(dbenv, mfp->mutex); + if (F_ISSET(dbmfp, MP_MULTIVERSION)) + --mfp->multiversion; + if (--mfp->mpf_cnt == 0 || LF_ISSET(DB_MPOOL_DISCARD)) { +--- 888,895 ---- + * when we try to flush them. + */ + deleted = 0; +! if (!LF_ISSET(DB_MPOOL_NOLOCK)) +! MUTEX_LOCK(dbenv, mfp->mutex); + if (F_ISSET(dbmfp, MP_MULTIVERSION)) + --mfp->multiversion; + if (--mfp->mpf_cnt == 0 || LF_ISSET(DB_MPOOL_DISCARD)) { +*************** +*** 909,921 **** + } + } + if (mfp->block_cnt == 0) { + if ((t_ret = + __memp_mf_discard(dbmp, mfp)) != 0 && ret == 0) + ret = t_ret; + deleted = 1; + } + } +! if (!deleted) + MUTEX_UNLOCK(dbenv, mfp->mutex); + + done: /* Discard the DB_MPOOLFILE structure. */ +--- 910,928 ---- + } + } + if (mfp->block_cnt == 0) { ++ /* ++ * We should never discard this mp file if our caller ++ * is holding the lock on it. See comment in ++ * __memp_sync_file. ++ */ ++ DB_ASSERT(dbenv, !LF_ISSET(DB_MPOOL_NOLOCK)); + if ((t_ret = + __memp_mf_discard(dbmp, mfp)) != 0 && ret == 0) + ret = t_ret; + deleted = 1; + } + } +! if (!deleted && !LF_ISSET(DB_MPOOL_NOLOCK)) + MUTEX_UNLOCK(dbenv, mfp->mutex); + + done: /* Discard the DB_MPOOLFILE structure. */ +*** mp/mp_sync.c 2007-06-02 04:32:44.000000000 +1000 +--- mp/mp_sync.c 2008-02-12 16:09:42.000000000 +1100 +*************** +*** 755,761 **** + * This is important since we are called with the hash bucket + * locked. The mfp will get freed via the cleanup pass. + */ +! if (dbmfp != NULL && (t_ret = __memp_fclose(dbmfp, 0)) != 0 && ret == 0) + ret = t_ret; + + --mfp->mpf_cnt; +--- 755,762 ---- + * This is important since we are called with the hash bucket + * locked. The mfp will get freed via the cleanup pass. + */ +! if (dbmfp != NULL && +! (t_ret = __memp_fclose(dbmfp, DB_MPOOL_NOLOCK)) != 0 && ret == 0) + ret = t_ret; + + --mfp->mpf_cnt; + Added: csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.2 =================================================================== --- csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.2 (rev 0) +++ csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.2 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,27 @@ +*** mp/mp_region.c 2007-05-18 03:18:01.000000000 +1000 +--- mp/mp_region.c 2008-06-24 13:15:56.000000000 +1000 +*************** +*** 249,256 **** + mtx_base = htab[0].mtx_hash; + } + + if (mtx_base != MUTEX_INVALID) +! mtx_base += reginfo_off * htab_buckets; + + /* Allocate hash table space and initialize it. */ + if ((ret = __env_alloc(infop, +--- 249,262 ---- + mtx_base = htab[0].mtx_hash; + } + ++ /* ++ * We preallocated all of the mutexes in a block, so for regions after ++ * the first, we skip mutexes in use in earlier regions. Each region ++ * has the same number of buckets and there are two mutexes per hash ++ * bucket (the bucket mutex and the I/O mutex). ++ */ + if (mtx_base != MUTEX_INVALID) +! mtx_base += reginfo_off * htab_buckets * 2; + + /* Allocate hash table space and initialize it. */ + if ((ret = __env_alloc(infop, Added: csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.3 =================================================================== --- csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.3 (rev 0) +++ csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.3 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,74 @@ +*** sequence/sequence.c +--- sequence/sequence.c +*************** +*** 196,202 **** + if ((ret = __db_get_flags(dbp, &tflags)) != 0) + goto err; + +! if (DB_IS_READONLY(dbp)) { + ret = __db_rdonly(dbp->dbenv, "DB_SEQUENCE->open"); + goto err; + } +--- 196,206 ---- + if ((ret = __db_get_flags(dbp, &tflags)) != 0) + goto err; + +! /* +! * We can let replication clients open sequences, but must +! * check later that they do not update them. +! */ +! if (F_ISSET(dbp, DB_AM_RDONLY)) { + ret = __db_rdonly(dbp->dbenv, "DB_SEQUENCE->open"); + goto err; + } +*************** +*** 252,257 **** +--- 256,266 ---- + if ((ret != DB_NOTFOUND && ret != DB_KEYEMPTY) || + !LF_ISSET(DB_CREATE)) + goto err; ++ if (IS_REP_CLIENT(dbenv) && ++ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { ++ ret = __db_rdonly(dbenv, "DB_SEQUENCE->open"); ++ goto err; ++ } + ret = 0; + + rp = &seq->seq_record; +*************** +*** 304,310 **** + */ + rp = seq->seq_data.data; + if (rp->seq_version == DB_SEQUENCE_OLDVER) { +! oldver: rp->seq_version = DB_SEQUENCE_VERSION; + if (__db_isbigendian()) { + if (IS_DB_AUTO_COMMIT(dbp, txn)) { + if ((ret = +--- 313,324 ---- + */ + rp = seq->seq_data.data; + if (rp->seq_version == DB_SEQUENCE_OLDVER) { +! oldver: if (IS_REP_CLIENT(dbenv) && +! !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { +! ret = __db_rdonly(dbenv, "DB_SEQUENCE->open"); +! goto err; +! } +! rp->seq_version = DB_SEQUENCE_VERSION; + if (__db_isbigendian()) { + if (IS_DB_AUTO_COMMIT(dbp, txn)) { + if ((ret = +*************** +*** 713,718 **** +--- 727,738 ---- + + MUTEX_LOCK(dbenv, seq->mtx_seq); + ++ if (handle_check && IS_REP_CLIENT(dbenv) && ++ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { ++ ret = __db_rdonly(dbenv, "DB_SEQUENCE->get"); ++ goto err; ++ } ++ + if (rp->seq_min + delta > rp->seq_max) { + __db_errx(dbenv, "Sequence overflow"); + ret = EINVAL; Added: csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.4 =================================================================== --- csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.4 (rev 0) +++ csw/mgar/pkg/bdb46/trunk/files/patch.4.6.21.4 2009-10-01 09:52:37 UTC (rev 6635) @@ -0,0 +1,1414 @@ +*** dbinc/repmgr.h 2007-10-31 10:23:52.000000000 -0700 +--- dbinc/repmgr.h 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 36,41 **** +--- 36,55 ---- + #endif + + /* ++ * The (arbitrary) maximum number of outgoing messages we're willing to hold, on ++ * a queue per connection, waiting for TCP buffer space to become available in ++ * the kernel. Rather than exceeding this limit, we simply discard additional ++ * messages (since this is always allowed by the replication protocol). ++ * As a special dispensation, if a message is destined for a specific remote ++ * site (i.e., it's not a broadcast), then we first try blocking the sending ++ * thread, waiting for space to become available (though we only wait a limited ++ * time). This is so as to be able to handle the immediate flood of (a ++ * potentially large number of) outgoing messages that replication generates, in ++ * a tight loop, when handling PAGE_REQ, LOG_REQ and ALL_REQ requests. ++ */ ++ #define OUT_QUEUE_LIMIT 10 ++ ++ /* + * The system value is available from sysconf(_SC_HOST_NAME_MAX). + * Historically, the maximum host name was 256. + */ +*************** +*** 47,52 **** +--- 61,71 ---- + #define MAX_SITE_LOC_STRING (MAXHOSTNAMELEN+20) + typedef char SITE_STRING_BUFFER[MAX_SITE_LOC_STRING+1]; + ++ /* Default timeout values, in seconds. */ ++ #define DB_REPMGR_DEFAULT_ACK_TIMEOUT (1 * US_PER_SEC) ++ #define DB_REPMGR_DEFAULT_CONNECTION_RETRY (30 * US_PER_SEC) ++ #define DB_REPMGR_DEFAULT_ELECTION_RETRY (10 * US_PER_SEC) ++ + struct __repmgr_connection; + typedef struct __repmgr_connection REPMGR_CONNECTION; + struct __repmgr_queue; typedef struct __repmgr_queue REPMGR_QUEUE; +*************** +*** 171,178 **** + #ifdef DB_WIN32 + WSAEVENT event_object; + #endif +! #define CONN_CONNECTING 0x01 /* nonblocking connect in progress */ +! #define CONN_DEFUNCT 0x02 /* socket close pending */ + u_int32_t flags; + + /* +--- 190,198 ---- + #ifdef DB_WIN32 + WSAEVENT event_object; + #endif +! #define CONN_CONGESTED 0x01 /* msg thread wait has exceeded timeout */ +! #define CONN_CONNECTING 0x02 /* nonblocking connect in progress */ +! #define CONN_DEFUNCT 0x04 /* socket close pending */ + u_int32_t flags; + + /* +*************** +*** 180,189 **** + * send() function's thread. But if TCP doesn't have enough network + * buffer space for us when we first try it, we instead allocate some + * memory, and copy the message, and then send it as space becomes +! * available in our main select() thread. + */ + OUT_Q_HEADER outbound_queue; + int out_queue_length; + + /* + * Input: while we're reading a message, we keep track of what phase +--- 200,215 ---- + * send() function's thread. But if TCP doesn't have enough network + * buffer space for us when we first try it, we instead allocate some + * memory, and copy the message, and then send it as space becomes +! * available in our main select() thread. In some cases, if the queue +! * gets too long we wait until it's drained, and then append to it. +! * This condition variable's associated mutex is the normal per-repmgr +! * db_rep->mutex, because that mutex is always held anyway whenever the +! * output queue is consulted. + */ + OUT_Q_HEADER outbound_queue; + int out_queue_length; ++ cond_var_t drained; ++ int blockers; /* ref count of msg threads waiting on us */ + + /* + * Input: while we're reading a message, we keep track of what phase +*** dbinc_auto/int_def.in 2007-10-31 10:23:52.000000000 -0700 +--- dbinc_auto/int_def.in 2007-10-31 10:23:52.000000000 -0700 +*************** +*** 1420,1425 **** +--- 1420,1428 ---- + #define __repmgr_wake_waiting_senders __repmgr_wake_waiting_senders at DB_VERSION_UNIQUE_NAME@ + #define __repmgr_await_ack __repmgr_await_ack at DB_VERSION_UNIQUE_NAME@ + #define __repmgr_compute_wait_deadline __repmgr_compute_wait_deadline at DB_VERSION_UNIQUE_NAME@ ++ #define __repmgr_await_drain __repmgr_await_drain at DB_VERSION_UNIQUE_NAME@ ++ #define __repmgr_alloc_cond __repmgr_alloc_cond at DB_VERSION_UNIQUE_NAME@ ++ #define __repmgr_free_cond __repmgr_free_cond at DB_VERSION_UNIQUE_NAME@ + #define __repmgr_init_sync __repmgr_init_sync at DB_VERSION_UNIQUE_NAME@ + #define __repmgr_close_sync __repmgr_close_sync at DB_VERSION_UNIQUE_NAME@ + #define __repmgr_net_init __repmgr_net_init at DB_VERSION_UNIQUE_NAME@ +*** dbinc_auto/repmgr_ext.h 2007-10-31 10:23:52.000000000 -0700 +--- dbinc_auto/repmgr_ext.h 2007-10-31 10:23:52.000000000 -0700 +*************** +*** 21,30 **** + int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); + void __repmgr_stash_generation __P((DB_ENV *)); + int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); +! int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, u_int, const DBT *, const DBT *)); + int __repmgr_is_permanent __P((DB_ENV *, const DB_LSN *)); +! int __repmgr_bust_connection __P((DB_ENV *, REPMGR_CONNECTION *, int)); +! void __repmgr_cleanup_connection __P((DB_ENV *, REPMGR_CONNECTION *)); + int __repmgr_find_site __P((DB_ENV *, const char *, u_int)); + int __repmgr_pack_netaddr __P((DB_ENV *, const char *, u_int, ADDRINFO *, repmgr_netaddr_t *)); + int __repmgr_getaddr __P((DB_ENV *, const char *, u_int, int, ADDRINFO **)); +--- 21,30 ---- + int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); + void __repmgr_stash_generation __P((DB_ENV *)); + int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); +! int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, u_int, const DBT *, const DBT *, int)); + int __repmgr_is_permanent __P((DB_ENV *, const DB_LSN *)); +! int __repmgr_bust_connection __P((DB_ENV *, REPMGR_CONNECTION *)); +! int __repmgr_cleanup_connection __P((DB_ENV *, REPMGR_CONNECTION *)); + int __repmgr_find_site __P((DB_ENV *, const char *, u_int)); + int __repmgr_pack_netaddr __P((DB_ENV *, const char *, u_int, ADDRINFO *, repmgr_netaddr_t *)); + int __repmgr_getaddr __P((DB_ENV *, const char *, u_int, int, ADDRINFO **)); +*************** +*** 39,44 **** +--- 39,47 ---- + int __repmgr_wake_waiting_senders __P((DB_ENV *)); + int __repmgr_await_ack __P((DB_ENV *, const DB_LSN *)); + void __repmgr_compute_wait_deadline __P((DB_ENV*, struct timespec *, db_timeout_t)); ++ int __repmgr_await_drain __P((DB_ENV *, REPMGR_CONNECTION *, db_timeout_t)); ++ int __repmgr_alloc_cond __P((cond_var_t *)); ++ int __repmgr_free_cond __P((cond_var_t *)); + int __repmgr_init_sync __P((DB_ENV *, DB_REP *)); + int __repmgr_close_sync __P((DB_ENV *)); + int __repmgr_net_init __P((DB_ENV *, DB_REP *)); +*** repmgr/repmgr_method.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_method.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 196,204 **** + int ret; + + /* Set some default values. */ +! db_rep->ack_timeout = 1 * US_PER_SEC; /* 1 second */ +! db_rep->connection_retry_wait = 30 * US_PER_SEC; /* 30 seconds */ +! db_rep->election_retry_wait = 10 * US_PER_SEC; /* 10 seconds */ + db_rep->config_nsites = 0; + db_rep->peer = DB_EID_INVALID; + db_rep->perm_policy = DB_REPMGR_ACKS_QUORUM; +--- 196,204 ---- + int ret; + + /* Set some default values. */ +! db_rep->ack_timeout = DB_REPMGR_DEFAULT_ACK_TIMEOUT; +! db_rep->connection_retry_wait = DB_REPMGR_DEFAULT_CONNECTION_RETRY; +! db_rep->election_retry_wait = DB_REPMGR_DEFAULT_ELECTION_RETRY; + db_rep->config_nsites = 0; + db_rep->peer = DB_EID_INVALID; + db_rep->perm_policy = DB_REPMGR_ACKS_QUORUM; +*************** +*** 238,243 **** +--- 238,244 ---- + DB_ENV *dbenv; + { + DB_REP *db_rep; ++ REPMGR_CONNECTION *conn; + int ret; + + db_rep = dbenv->rep_handle; +*************** +*** 254,259 **** +--- 255,266 ---- + + if ((ret = __repmgr_signal(&db_rep->queue_nonempty)) != 0) + goto unlock; ++ ++ TAILQ_FOREACH(conn, &db_rep->connections, entries) { ++ if (conn->blockers > 0 && ++ ((ret = __repmgr_signal(&conn->drained)) != 0)) ++ goto unlock; ++ } + UNLOCK_MUTEX(db_rep->mutex); + + return (__repmgr_wake_main_thread(dbenv)); +*** repmgr/repmgr_msg.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_msg.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 183,192 **** + + /* + * Acknowledges a message. +- * +- * !!! +- * Note that this cannot be called from the select() thread, in case we call +- * __repmgr_bust_connection(..., FALSE). + */ + static int + ack_message(dbenv, generation, lsn) +--- 183,188 ---- +*************** +*** 227,235 **** + rec2.size = 0; + + conn = site->ref.conn; + if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_ACK, +! &control2, &rec2)) == DB_REP_UNAVAIL) +! ret = __repmgr_bust_connection(dbenv, conn, FALSE); + } + + UNLOCK_MUTEX(db_rep->mutex); +--- 223,236 ---- + rec2.size = 0; + + conn = site->ref.conn; ++ /* ++ * It's hard to imagine anyone would care about a lost ack if ++ * the path to the master is so congested as to need blocking; ++ * so pass "blockable" argument as FALSE. ++ */ + if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_ACK, +! &control2, &rec2, FALSE)) == DB_REP_UNAVAIL) +! ret = __repmgr_bust_connection(dbenv, conn); + } + + UNLOCK_MUTEX(db_rep->mutex); +*** repmgr/repmgr_net.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_net.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 63,69 **** + static void setup_sending_msg + __P((struct sending_msg *, u_int, const DBT *, const DBT *)); + static int __repmgr_send_internal +! __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *)); + static int enqueue_msg + __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, size_t)); + static int flatten __P((DB_ENV *, struct sending_msg *)); +--- 63,69 ---- + static void setup_sending_msg + __P((struct sending_msg *, u_int, const DBT *, const DBT *)); + static int __repmgr_send_internal +! __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, int)); + static int enqueue_msg + __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, size_t)); + static int flatten __P((DB_ENV *, struct sending_msg *)); +*************** +*** 73,85 **** + * __repmgr_send -- + * The send function for DB_ENV->rep_set_transport. + * +- * !!! +- * This is only ever called as the replication transport call-back, which means +- * it's either on one of our message processing threads or an application +- * thread. It mustn't be called from the select() thread, because we might call +- * __repmgr_bust_connection(..., FALSE) here, and that's not allowed in the +- * select() thread. +- * + * PUBLIC: int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, + * PUBLIC: const DB_LSN *, int, u_int32_t)); + */ +--- 73,78 ---- +*************** +*** 126,134 **** + } + + conn = site->ref.conn; + if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_REP_MESSAGE, +! control, rec)) == DB_REP_UNAVAIL && +! (t_ret = __repmgr_bust_connection(dbenv, conn, FALSE)) != 0) + ret = t_ret; + if (ret != 0) + goto out; +--- 119,128 ---- + } + + conn = site->ref.conn; ++ /* Pass the "blockable" argument as TRUE. */ + if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_REP_MESSAGE, +! control, rec, TRUE)) == DB_REP_UNAVAIL && +! (t_ret = __repmgr_bust_connection(dbenv, conn)) != 0) + ret = t_ret; + if (ret != 0) + goto out; +*************** +*** 222,228 **** + if (site->state != SITE_CONNECTED) + return (NULL); + +! if (F_ISSET(site->ref.conn, CONN_CONNECTING)) + return (NULL); + return (site); + } +--- 216,222 ---- + if (site->state != SITE_CONNECTED) + return (NULL); + +! if (F_ISSET(site->ref.conn, CONN_CONNECTING|CONN_DEFUNCT)) + return (NULL); + return (site); + } +*************** +*** 235,244 **** + * + * !!! + * Caller must hold dbenv->mutex. +- * +- * !!! +- * Note that this cannot be called from the select() thread, in case we call +- * __repmgr_bust_connection(..., FALSE). + */ + static int + __repmgr_send_broadcast(dbenv, control, rec, nsitesp, npeersp) +--- 229,234 ---- +*************** +*** 268,281 **** + !IS_VALID_EID(conn->eid)) + continue; + +! if ((ret = __repmgr_send_internal(dbenv, conn, &msg)) == 0) { + site = SITE_FROM_EID(conn->eid); + nsites++; + if (site->priority > 0) + npeers++; + } else if (ret == DB_REP_UNAVAIL) { +! if ((ret = __repmgr_bust_connection( +! dbenv, conn, FALSE)) != 0) + return (ret); + } else + return (ret); +--- 258,277 ---- + !IS_VALID_EID(conn->eid)) + continue; + +! /* +! * Broadcast messages are either application threads committing +! * transactions, or replication status message that we can +! * afford to lose. So don't allow blocking for them (pass +! * "blockable" argument as FALSE). +! */ +! if ((ret = __repmgr_send_internal(dbenv, +! conn, &msg, FALSE)) == 0) { + site = SITE_FROM_EID(conn->eid); + nsites++; + if (site->priority > 0) + npeers++; + } else if (ret == DB_REP_UNAVAIL) { +! if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) + return (ret); + } else + return (ret); +*************** +*** 301,339 **** + * intersperse writes that are part of two single messages. + * + * PUBLIC: int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, +! * PUBLIC: u_int, const DBT *, const DBT *)); + */ + int +! __repmgr_send_one(dbenv, conn, msg_type, control, rec) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; + u_int msg_type; + const DBT *control, *rec; + { + struct sending_msg msg; + + setup_sending_msg(&msg, msg_type, control, rec); +! return (__repmgr_send_internal(dbenv, conn, &msg)); + } + + /* + * Attempts a "best effort" to send a message on the given site. If there is an +! * excessive backlog of message already queued on the connection, we simply drop +! * this message, and still return 0 even in this case. + */ + static int +! __repmgr_send_internal(dbenv, conn, msg) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; + struct sending_msg *msg; + { +! #define OUT_QUEUE_LIMIT 10 /* arbitrary, for now */ + REPMGR_IOVECS iovecs; + SITE_STRING_BUFFER buffer; + int ret; + size_t nw; + size_t total_written; + + DB_ASSERT(dbenv, !F_ISSET(conn, CONN_CONNECTING)); + if (!STAILQ_EMPTY(&conn->outbound_queue)) { + /* +--- 297,355 ---- + * intersperse writes that are part of two single messages. + * + * PUBLIC: int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, +! * PUBLIC: u_int, const DBT *, const DBT *, int)); + */ + int +! __repmgr_send_one(dbenv, conn, msg_type, control, rec, blockable) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; + u_int msg_type; + const DBT *control, *rec; ++ int blockable; + { + struct sending_msg msg; + + setup_sending_msg(&msg, msg_type, control, rec); +! return (__repmgr_send_internal(dbenv, conn, &msg, blockable)); + } + + /* + * Attempts a "best effort" to send a message on the given site. If there is an +! * excessive backlog of message already queued on the connection, what shall we +! * do? If the caller doesn't mind blocking, we'll wait (a limited amount of +! * time) for the queue to drain. Otherwise we'll simply drop the message. This +! * is always allowed by the replication protocol. But in the case of a +! * multi-message response to a request like PAGE_REQ, LOG_REQ or ALL_REQ we +! * almost always get a flood of messages that instantly fills our queue, so +! * blocking improves performance (by avoiding the need for the client to +! * re-request). +! * +! * How long shall we wait? We could of course create a new timeout +! * configuration type, so that the application could set it directly. But that +! * would start to overwhelm the user with too many choices to think about. We +! * already have an ACK timeout, which is the user's estimate of how long it +! * should take to send a message to the client, have it be processed, and return +! * a message back to us. We multiply that by the queue size, because that's how +! * many messages have to be swallowed up by the client before we're able to +! * start sending again (at least to a rough approximation). + */ + static int +! __repmgr_send_internal(dbenv, conn, msg, blockable) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; + struct sending_msg *msg; ++ int blockable; + { +! DB_REP *db_rep; + REPMGR_IOVECS iovecs; + SITE_STRING_BUFFER buffer; ++ db_timeout_t drain_to; + int ret; + size_t nw; + size_t total_written; + ++ db_rep = dbenv->rep_handle; ++ + DB_ASSERT(dbenv, !F_ISSET(conn, CONN_CONNECTING)); + if (!STAILQ_EMPTY(&conn->outbound_queue)) { + /* +*************** +*** 344,358 **** + RPRINT(dbenv, (dbenv, "msg to %s to be queued", + __repmgr_format_eid_loc(dbenv->rep_handle, + conn->eid, buffer))); + if (conn->out_queue_length < OUT_QUEUE_LIMIT) + return (enqueue_msg(dbenv, conn, msg, 0)); + else { + RPRINT(dbenv, (dbenv, "queue limit exceeded")); + STAT(dbenv->rep_handle-> + region->mstat.st_msgs_dropped++); +! return (0); + } + } + + /* + * Send as much data to the site as we can, without blocking. Keep +--- 360,393 ---- + RPRINT(dbenv, (dbenv, "msg to %s to be queued", + __repmgr_format_eid_loc(dbenv->rep_handle, + conn->eid, buffer))); ++ if (conn->out_queue_length >= OUT_QUEUE_LIMIT && ++ blockable && !F_ISSET(conn, CONN_CONGESTED)) { ++ RPRINT(dbenv, (dbenv, ++ "block msg thread, await queue space")); ++ ++ if ((drain_to = db_rep->ack_timeout) == 0) ++ drain_to = DB_REPMGR_DEFAULT_ACK_TIMEOUT; ++ conn->blockers++; ++ ret = __repmgr_await_drain(dbenv, ++ conn, drain_to * OUT_QUEUE_LIMIT); ++ conn->blockers--; ++ if (db_rep->finished) ++ return (DB_TIMEOUT); ++ if (ret != 0) ++ return (ret); ++ if (STAILQ_EMPTY(&conn->outbound_queue)) ++ goto empty; ++ } + if (conn->out_queue_length < OUT_QUEUE_LIMIT) + return (enqueue_msg(dbenv, conn, msg, 0)); + else { + RPRINT(dbenv, (dbenv, "queue limit exceeded")); + STAT(dbenv->rep_handle-> + region->mstat.st_msgs_dropped++); +! return (blockable ? DB_TIMEOUT : 0); + } + } ++ empty: + + /* + * Send as much data to the site as we can, without blocking. Keep +*************** +*** 498,521 **** + + /* + * Abandons a connection, to recover from an error. Upon entry the conn struct +! * must be on the connections list. +! * +! * If the 'do_close' flag is true, we do the whole job; the clean-up includes +! * removing the struct from the list and freeing all its memory, so upon return +! * the caller must not refer to it any further. Otherwise, we merely mark the +! * connection for clean-up later by the main thread. + * + * PUBLIC: int __repmgr_bust_connection __P((DB_ENV *, +! * PUBLIC: REPMGR_CONNECTION *, int)); + * + * !!! + * Caller holds mutex. + */ + int +! __repmgr_bust_connection(dbenv, conn, do_close) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; +- int do_close; + { + DB_REP *db_rep; + int connecting, ret, eid; +--- 533,553 ---- + + /* + * Abandons a connection, to recover from an error. Upon entry the conn struct +! * must be on the connections list. For now, just mark it as unusable; it will +! * be fully cleaned up in the top-level select thread, as soon as possible. + * + * PUBLIC: int __repmgr_bust_connection __P((DB_ENV *, +! * PUBLIC: REPMGR_CONNECTION *)); + * + * !!! + * Caller holds mutex. ++ * ++ * Must be idempotent + */ + int +! __repmgr_bust_connection(dbenv, conn) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; + { + DB_REP *db_rep; + int connecting, ret, eid; +*************** +*** 526,537 **** + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); + eid = conn->eid; + connecting = F_ISSET(conn, CONN_CONNECTING); +! if (do_close) +! __repmgr_cleanup_connection(dbenv, conn); +! else { +! F_SET(conn, CONN_DEFUNCT); +! conn->eid = -1; +! } + + /* + * When we first accepted the incoming connection, we set conn->eid to +--- 558,566 ---- + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); + eid = conn->eid; + connecting = F_ISSET(conn, CONN_CONNECTING); +! +! F_SET(conn, CONN_DEFUNCT); +! conn->eid = -1; + + /* + * When we first accepted the incoming connection, we set conn->eid to +*************** +*** 557,563 **** + dbenv, ELECT_FAILURE_ELECTION)) != 0) + return (ret); + } +! } else if (!do_close) { + /* + * One way or another, make sure the main thread is poked, so + * that we do the deferred clean-up. +--- 586,592 ---- + dbenv, ELECT_FAILURE_ELECTION)) != 0) + return (ret); + } +! } else { + /* + * One way or another, make sure the main thread is poked, so + * that we do the deferred clean-up. +*************** +*** 568,577 **** + } + + /* +! * PUBLIC: void __repmgr_cleanup_connection + * PUBLIC: __P((DB_ENV *, REPMGR_CONNECTION *)); + */ +! void + __repmgr_cleanup_connection(dbenv, conn) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; +--- 597,610 ---- + } + + /* +! * PUBLIC: int __repmgr_cleanup_connection + * PUBLIC: __P((DB_ENV *, REPMGR_CONNECTION *)); ++ * ++ * !!! ++ * Idempotent. This can be called repeatedly as blocking message threads (of ++ * which there could be multiples) wake up in case of error on the connection. + */ +! int + __repmgr_cleanup_connection(dbenv, conn) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; +*************** +*** 580,596 **** + QUEUED_OUTPUT *out; + REPMGR_FLAT *msg; + DBT *dbt; + + db_rep = dbenv->rep_handle; + +! TAILQ_REMOVE(&db_rep->connections, conn, entries); + if (conn->fd != INVALID_SOCKET) { +! (void)closesocket(conn->fd); + #ifdef DB_WIN32 +! (void)WSACloseEvent(conn->event_object); + #endif + } + + /* + * Deallocate any input and output buffers we may have. + */ +--- 613,643 ---- + QUEUED_OUTPUT *out; + REPMGR_FLAT *msg; + DBT *dbt; ++ int ret; + + db_rep = dbenv->rep_handle; + +! DB_ASSERT(dbenv, F_ISSET(conn, CONN_DEFUNCT) || db_rep->finished); +! + if (conn->fd != INVALID_SOCKET) { +! ret = closesocket(conn->fd); +! conn->fd = INVALID_SOCKET; +! if (ret == SOCKET_ERROR) { +! ret = net_errno; +! __db_err(dbenv, ret, "closing socket"); +! } + #ifdef DB_WIN32 +! if (!WSACloseEvent(conn->event_object) && ret != 0) +! ret = net_errno; + #endif ++ if (ret != 0) ++ return (ret); + } + ++ if (conn->blockers > 0) ++ return (__repmgr_signal(&conn->drained)); ++ ++ TAILQ_REMOVE(&db_rep->connections, conn, entries); + /* + * Deallocate any input and output buffers we may have. + */ +*************** +*** 614,620 **** +--- 661,669 ---- + __os_free(dbenv, out); + } + ++ ret = __repmgr_free_cond(&conn->drained); + __os_free(dbenv, conn); ++ return (ret); + } + + static int +*************** +*** 1063,1069 **** + + while (!TAILQ_EMPTY(&db_rep->connections)) { + conn = TAILQ_FIRST(&db_rep->connections); +! __repmgr_cleanup_connection(dbenv, conn); + } + + for (i = 0; i < db_rep->site_cnt; i++) { +--- 1112,1118 ---- + + while (!TAILQ_EMPTY(&db_rep->connections)) { + conn = TAILQ_FIRST(&db_rep->connections); +! (void)__repmgr_cleanup_connection(dbenv, conn); + } + + for (i = 0; i < db_rep->site_cnt; i++) { +*** repmgr/repmgr_posix.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_posix.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 21,26 **** +--- 21,28 ---- + size_t __repmgr_guesstimated_max = (128 * 1024); + #endif + ++ static int __repmgr_conn_work __P((DB_ENV *, ++ REPMGR_CONNECTION *, fd_set *, fd_set *, int)); + static int finish_connecting __P((DB_ENV *, REPMGR_CONNECTION *)); + + /* +*************** +*** 189,194 **** +--- 191,284 ---- + } + + /* ++ * PUBLIC: int __repmgr_await_drain __P((DB_ENV *, ++ * PUBLIC: REPMGR_CONNECTION *, db_timeout_t)); ++ * ++ * Waits for space to become available on the connection's output queue. ++ * Various ways we can exit: ++ * ++ * 1. queue becomes non-full ++ * 2. exceed time limit ++ * 3. connection becomes defunct (due to error in another thread) ++ * 4. repmgr is shutting down ++ * 5. any unexpected system resource failure ++ * ++ * In cases #3 and #5 we return an error code. Caller is responsible for ++ * distinguishing the remaining cases if desired. ++ * ++ * !!! ++ * Caller must hold repmgr->mutex. ++ */ ++ int ++ __repmgr_await_drain(dbenv, conn, timeout) ++ DB_ENV *dbenv; ++ REPMGR_CONNECTION *conn; ++ db_timeout_t timeout; ++ { ++ DB_REP *db_rep; ++ struct timespec deadline; ++ int ret; ++ ++ db_rep = dbenv->rep_handle; ++ ++ __repmgr_compute_wait_deadline(dbenv, &deadline, timeout); ++ ++ ret = 0; ++ while (conn->out_queue_length >= OUT_QUEUE_LIMIT) { ++ ret = pthread_cond_timedwait(&conn->drained, ++ &db_rep->mutex, &deadline); ++ switch (ret) { ++ case 0: ++ if (db_rep->finished) ++ goto out; /* #4. */ ++ /* ++ * Another thread could have stumbled into an error on ++ * the socket while we were waiting. ++ */ ++ if (F_ISSET(conn, CONN_DEFUNCT)) { ++ ret = DB_REP_UNAVAIL; /* #3. */ ++ goto out; ++ } ++ break; ++ case ETIMEDOUT: ++ F_SET(conn, CONN_CONGESTED); ++ ret = 0; ++ goto out; /* #2. */ ++ default: ++ goto out; /* #5. */ ++ } ++ } ++ /* #1. */ ++ ++ out: ++ return (ret); ++ } ++ ++ /* ++ * PUBLIC: int __repmgr_alloc_cond __P((cond_var_t *)); ++ * ++ * Initialize a condition variable (in allocated space). ++ */ ++ int ++ __repmgr_alloc_cond(c) ++ cond_var_t *c; ++ { ++ return (pthread_cond_init(c, NULL)); ++ } ++ ++ /* ++ * PUBLIC: int __repmgr_free_cond __P((cond_var_t *)); ++ * ++ * Clean up a previously initialized condition variable. ++ */ ++ int ++ __repmgr_free_cond(c) ++ cond_var_t *c; ++ { ++ return (pthread_cond_destroy(c)); ++ } ++ ++ /* + * PUBLIC: int __repmgr_init_sync __P((DB_ENV *, DB_REP *)); + * + * Allocate/initialize all data necessary for thread synchronization. This +*************** +*** 443,449 **** + REPMGR_RETRY *retry; + db_timespec timeout; + fd_set reads, writes; +! int ret, flow_control, maxfd, nready; + u_int8_t buf[10]; /* arbitrary size */ + + flow_control = FALSE; +--- 533,539 ---- + REPMGR_RETRY *retry; + db_timespec timeout; + fd_set reads, writes; +! int ret, flow_control, maxfd; + u_int8_t buf[10]; /* arbitrary size */ + + flow_control = FALSE; +*************** +*** 477,482 **** +--- 567,575 ---- + * each one. + */ + TAILQ_FOREACH(conn, &db_rep->connections, entries) { ++ if (F_ISSET(conn, CONN_DEFUNCT)) ++ continue; ++ + if (F_ISSET(conn, CONN_CONNECTING)) { + FD_SET((u_int)conn->fd, &reads); + FD_SET((u_int)conn->fd, &writes); +*************** +*** 533,616 **** + return (ret); + } + } +- nready = ret; +- + LOCK_MUTEX(db_rep->mutex); + +- /* +- * The first priority thing we must do is to clean up any +- * pending defunct connections. Otherwise, if they have any +- * lingering pending input, we get very confused if we try to +- * process it. +- * +- * The TAILQ_FOREACH macro would be suitable here, except that +- * it doesn't allow unlinking the current element, which is +- * needed for cleanup_connection. +- */ +- for (conn = TAILQ_FIRST(&db_rep->connections); +- conn != NULL; +- conn = next) { +- next = TAILQ_NEXT(conn, entries); +- if (F_ISSET(conn, CONN_DEFUNCT)) +- __repmgr_cleanup_connection(dbenv, conn); +- } +- + if ((ret = __repmgr_retry_connections(dbenv)) != 0) + goto out; +- if (nready == 0) +- continue; + + /* +! * Traverse the linked list. (Again, like TAILQ_FOREACH, except +! * that we need the ability to unlink an element along the way.) + */ + for (conn = TAILQ_FIRST(&db_rep->connections); + conn != NULL; + conn = next) { + next = TAILQ_NEXT(conn, entries); +! if (F_ISSET(conn, CONN_CONNECTING)) { +! if (FD_ISSET((u_int)conn->fd, &reads) || +! FD_ISSET((u_int)conn->fd, &writes)) { +! if ((ret = finish_connecting(dbenv, +! conn)) == DB_REP_UNAVAIL) { +! if ((ret = +! __repmgr_bust_connection( +! dbenv, conn, TRUE)) != 0) +! goto out; +! } else if (ret != 0) +! goto out; +! } +! continue; +! } +! +! /* +! * Here, the site is connected, and the FD_SET's are +! * valid. +! */ +! if (FD_ISSET((u_int)conn->fd, &writes)) { +! if ((ret = __repmgr_write_some( +! dbenv, conn)) == DB_REP_UNAVAIL) { +! if ((ret = +! __repmgr_bust_connection(dbenv, +! conn, TRUE)) != 0) +! goto out; +! continue; +! } else if (ret != 0) +! goto out; +! } +! +! if (!flow_control && +! FD_ISSET((u_int)conn->fd, &reads)) { +! if ((ret = __repmgr_read_from_site(dbenv, conn)) +! == DB_REP_UNAVAIL) { +! if ((ret = +! __repmgr_bust_connection(dbenv, +! conn, TRUE)) != 0) +! goto out; +! continue; +! } else if (ret != 0) +! goto out; +! } + } + + /* +--- 626,650 ---- + return (ret); + } + } + LOCK_MUTEX(db_rep->mutex); + + if ((ret = __repmgr_retry_connections(dbenv)) != 0) + goto out; + + /* +! * Examine each connection, to see what work needs to be done. +! * +! * The TAILQ_FOREACH macro would be suitable here, except that +! * it doesn't allow unlinking the current element, which is +! * needed for cleanup_connection. + */ + for (conn = TAILQ_FIRST(&db_rep->connections); + conn != NULL; + conn = next) { + next = TAILQ_NEXT(conn, entries); +! if ((ret = __repmgr_conn_work(dbenv, +! conn, &reads, &writes, flow_control)) != 0) +! goto out; + } + + /* +*************** +*** 637,642 **** +--- 671,719 ---- + } + + static int ++ __repmgr_conn_work(dbenv, conn, reads, writes, flow_control) ++ DB_ENV *dbenv; ++ REPMGR_CONNECTION *conn; ++ fd_set *reads, *writes; ++ int flow_control; ++ { ++ int ret; ++ u_int fd; ++ ++ if (F_ISSET(conn, CONN_DEFUNCT)) { ++ /* ++ * Deferred clean-up, from an error that happened in another ++ * thread, while we were sleeping in select(). ++ */ ++ return (__repmgr_cleanup_connection(dbenv, conn)); ++ } ++ ++ ret = 0; ++ fd = (u_int)conn->fd; ++ ++ if (F_ISSET(conn, CONN_CONNECTING)) { ++ if (FD_ISSET(fd, reads) || FD_ISSET(fd, writes)) ++ ret = finish_connecting(dbenv, conn); ++ } else { ++ /* ++ * Here, the site is connected, and the FD_SET's are valid. ++ */ ++ if (FD_ISSET(fd, writes)) ++ ret = __repmgr_write_some(dbenv, conn); ++ ++ if (ret == 0 && !flow_control && FD_ISSET(fd, reads)) ++ ret = __repmgr_read_from_site(dbenv, conn); ++ } ++ ++ if (ret == DB_REP_UNAVAIL) { ++ if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) ++ return (ret); ++ ret = __repmgr_cleanup_connection(dbenv, conn); ++ } ++ return (ret); ++ } ++ ++ static int + finish_connecting(dbenv, conn) + DB_ENV *dbenv; + REPMGR_CONNECTION *conn; +*************** +*** 657,662 **** +--- 734,740 ---- + goto err_rpt; + } + ++ DB_ASSERT(dbenv, F_ISSET(conn, CONN_CONNECTING)); + F_CLR(conn, CONN_CONNECTING); + return (__repmgr_send_handshake(dbenv, conn)); + +*************** +*** 671,690 **** + "connecting to %s", __repmgr_format_site_loc(site, buffer)); + + /* If we've exhausted the list of possible addresses, give up. */ +! if (ADDR_LIST_NEXT(&site->net_addr) == NULL) + return (DB_REP_UNAVAIL); + + /* + * This is just like a little mini-"bust_connection", except that we + * don't reschedule for later, 'cuz we're just about to try again right +! * now. + * + * !!! + * Which means this must only be called on the select() thread, since + * only there are we allowed to actually close a connection. + */ + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); +! __repmgr_cleanup_connection(dbenv, conn); + ret = __repmgr_connect_site(dbenv, eid); + DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); + return (ret); +--- 749,773 ---- + "connecting to %s", __repmgr_format_site_loc(site, buffer)); + + /* If we've exhausted the list of possible addresses, give up. */ +! if (ADDR_LIST_NEXT(&site->net_addr) == NULL) { +! STAT(db_rep->region->mstat.st_connect_fail++); + return (DB_REP_UNAVAIL); ++ } + + /* + * This is just like a little mini-"bust_connection", except that we + * don't reschedule for later, 'cuz we're just about to try again right +! * now. (Note that we don't have to worry about message threads +! * blocking on a full output queue: that can't happen when we're only +! * just connecting.) + * + * !!! + * Which means this must only be called on the select() thread, since + * only there are we allowed to actually close a connection. + */ + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); +! if ((ret = __repmgr_cleanup_connection(dbenv, conn)) != 0) +! return (ret); + ret = __repmgr_connect_site(dbenv, eid); + DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); + return (ret); +*** repmgr/repmgr_sel.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_sel.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 36,45 **** + + /* + * PUBLIC: int __repmgr_accept __P((DB_ENV *)); +- * +- * !!! +- * Only ever called in the select() thread, since we may call +- * __repmgr_bust_connection(..., TRUE). + */ + int + __repmgr_accept(dbenv) +--- 36,41 ---- +*************** +*** 133,139 **** + case 0: + return (0); + case DB_REP_UNAVAIL: +! return (__repmgr_bust_connection(dbenv, conn, TRUE)); + default: + return (ret); + } +--- 129,135 ---- + case 0: + return (0); + case DB_REP_UNAVAIL: +! return (__repmgr_bust_connection(dbenv, conn)); + default: + return (ret); + } +*************** +*** 254,263 **** + * starting with the "current" element of its address list and trying as many + * addresses as necessary until the list is exhausted. + * +- * !!! +- * Only ever called in the select() thread, since we may call +- * __repmgr_bust_connection(..., TRUE). +- * + * PUBLIC: int __repmgr_connect_site __P((DB_ENV *, u_int eid)); + */ + int +--- 250,255 ---- +*************** +*** 332,338 **** + case 0: + break; + case DB_REP_UNAVAIL: +! return (__repmgr_bust_connection(dbenv, con, TRUE)); + default: + return (ret); + } +--- 324,330 ---- + case 0: + break; + case DB_REP_UNAVAIL: +! return (__repmgr_bust_connection(dbenv, con)); + default: + return (ret); + } +*************** +*** 437,443 **** + + DB_SET_DBT(rec, my_addr->host, strlen(my_addr->host) + 1); + +! return (__repmgr_send_one(dbenv, conn, REPMGR_HANDSHAKE, &cntrl, &rec)); + } + + /* +--- 429,443 ---- + + DB_SET_DBT(rec, my_addr->host, strlen(my_addr->host) + 1); + +! /* +! * It would of course be disastrous to block the select() thread, so +! * pass the "blockable" argument as FALSE. Fortunately blocking should +! * never be necessary here, because the hand-shake is always the first +! * thing we send. Which is a good thing, because it would be almost as +! * disastrous if we allowed ourselves to drop a handshake. +! */ +! return (__repmgr_send_one(dbenv, +! conn, REPMGR_HANDSHAKE, &cntrl, &rec, FALSE)); + } + + /* +*************** +*** 854,859 **** +--- 854,872 ---- + conn->out_queue_length--; + if (--msg->ref_count <= 0) + __os_free(dbenv, msg); ++ ++ /* ++ * We've achieved enough movement to free up at least ++ * one space in the outgoing queue. Wake any message ++ * threads that may be waiting for space. Clear the ++ * CONGESTED status so that when the queue reaches the ++ * high-water mark again, the filling thread will be ++ * allowed to try waiting again. ++ */ ++ F_CLR(conn, CONN_CONGESTED); ++ if (conn->blockers > 0 && ++ (ret = __repmgr_signal(&conn->drained)) != 0) ++ return (ret); + } + } + +*** repmgr/repmgr_util.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_util.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 103,108 **** +--- 103,113 ---- + db_rep = dbenv->rep_handle; + if ((ret = __os_malloc(dbenv, sizeof(REPMGR_CONNECTION), &c)) != 0) + return (ret); ++ if ((ret = __repmgr_alloc_cond(&c->drained)) != 0) { ++ __os_free(dbenv, c); ++ return (ret); ++ } ++ c->blockers = 0; + + c->fd = s; + c->flags = flags; +*** repmgr/repmgr_windows.c 2007-10-31 10:23:52.000000000 -0700 +--- repmgr/repmgr_windows.c 2007-10-31 10:23:53.000000000 -0700 +*************** +*** 11,16 **** +--- 11,19 ---- + #define __INCLUDE_NETWORKING 1 + #include "db_int.h" + ++ /* Convert time-out from microseconds to milliseconds, rounding up. */ ++ #define DB_TIMEOUT_TO_WINDOWS_TIMEOUT(t) (((t) + (US_PER_MS - 1)) / US_PER_MS) ++ + typedef struct __ack_waiter { + HANDLE event; + const DB_LSN *lsnp; +*************** +*** 120,136 **** + { + DB_REP *db_rep; + ACK_WAITER *me; +! DWORD ret; +! DWORD timeout; + + db_rep = dbenv->rep_handle; + + if ((ret = allocate_wait_slot(dbenv, &me)) != 0) + goto err; + +- /* convert time-out from microseconds to milliseconds, rounding up */ + timeout = db_rep->ack_timeout > 0 ? +! ((db_rep->ack_timeout + (US_PER_MS - 1)) / US_PER_MS) : INFINITE; + me->lsnp = lsnp; + if ((ret = SignalObjectAndWait(db_rep->mutex, me->event, timeout, + FALSE)) == WAIT_FAILED) { +--- 123,137 ---- + { + DB_REP *db_rep; + ACK_WAITER *me; +! DWORD ret, timeout; + + db_rep = dbenv->rep_handle; + + if ((ret = allocate_wait_slot(dbenv, &me)) != 0) + goto err; + + timeout = db_rep->ack_timeout > 0 ? +! DB_TIMEOUT_TO_WINDOWS_TIMEOUT(db_rep->ack_timeout) : INFINITE; + me->lsnp = lsnp; + if ((ret = SignalObjectAndWait(db_rep->mutex, me->event, timeout, + FALSE)) == WAIT_FAILED) { +*************** +*** 211,216 **** +--- 212,296 ---- + db_rep->waiters->first_free = slot; + } + ++ /* (See requirements described in repmgr_posix.c.) */ ++ int ++ __repmgr_await_drain(dbenv, conn, timeout) ++ DB_ENV *dbenv; ++ REPMGR_CONNECTION *conn; ++ db_timeout_t timeout; ++ { ++ DB_REP *db_rep; ++ db_timespec deadline, delta, now; ++ db_timeout_t t; ++ DWORD duration, ret; ++ int round_up; ++ ++ db_rep = dbenv->rep_handle; ++ ++ __os_gettime(dbenv, &deadline); ++ DB_TIMEOUT_TO_TIMESPEC(timeout, &delta); ++ timespecadd(&deadline, &delta); ++ ++ while (conn->out_queue_length >= OUT_QUEUE_LIMIT) { ++ if (!ResetEvent(conn->drained)) ++ return (GetLastError()); ++ ++ /* How long until the deadline? */ ++ __os_gettime(dbenv, &now); ++ if (timespeccmp(&now, &deadline, >=)) { ++ F_SET(conn, CONN_CONGESTED); ++ return (0); ++ } ++ delta = deadline; ++ timespecsub(&delta, &now); ++ round_up = TRUE; ++ DB_TIMESPEC_TO_TIMEOUT(t, &delta, round_up); ++ duration = DB_TIMEOUT_TO_WINDOWS_TIMEOUT(t); ++ ++ ret = SignalObjectAndWait(db_rep->mutex, ++ conn->drained, duration, FALSE); ++ LOCK_MUTEX(db_rep->mutex); ++ if (ret == WAIT_FAILED) ++ return (GetLastError()); ++ else if (ret == WAIT_TIMEOUT) { ++ F_SET(conn, CONN_CONGESTED); ++ return (0); ++ } else ++ DB_ASSERT(dbenv, ret == WAIT_OBJECT_0); ++ ++ if (db_rep->finished) ++ return (0); ++ if (F_ISSET(conn, CONN_DEFUNCT)) ++ return (DB_REP_UNAVAIL); ++ } ++ return (0); ++ } ++ ++ /* ++ * Creates a manual reset event, which is usually our best choice when we may ++ * have multiple threads waiting on a single event. ++ */ ++ int ++ __repmgr_alloc_cond(c) ++ cond_var_t *c; ++ { ++ HANDLE event; ++ ++ if ((event = CreateEvent(NULL, TRUE, FALSE, NULL)) == NULL) ++ return (GetLastError()); ++ *c = event; ++ return (0); ++ } ++ ++ int ++ __repmgr_free_cond(c) ++ cond_var_t *c; ++ { ++ if (CloseHandle(*c)) ++ return (0); ++ return (GetLastError()); ++ } ++ + /* + * Make resource allocation an all-or-nothing affair, outside of this and the + * close_sync function. db_rep->waiters should be non-NULL iff all of these +*************** +*** 488,493 **** +--- 568,576 ---- + * don't hurt anything flow-control-wise. + */ + TAILQ_FOREACH(conn, &db_rep->connections, entries) { ++ if (F_ISSET(conn, CONN_DEFUNCT)) ++ continue; ++ + if (F_ISSET(conn, CONN_CONNECTING) || + !STAILQ_EMPTY(&conn->outbound_queue) || + (!flow_control || !IS_VALID_EID(conn->eid))) { +*************** +*** 534,541 **** + conn != NULL; + conn = next) { + next = TAILQ_NEXT(conn, entries); +! if (F_ISSET(conn, CONN_DEFUNCT)) +! __repmgr_cleanup_connection(dbenv, conn); + } + + /* +--- 617,626 ---- + conn != NULL; + conn = next) { + next = TAILQ_NEXT(conn, entries); +! if (F_ISSET(conn, CONN_DEFUNCT) && +! (ret = __repmgr_cleanup_connection(dbenv, +! conn)) != 0) +! goto unlock; + } + + /* +*************** +*** 587,597 **** + return (ret); + } + +- /* +- * !!! +- * Only ever called on the select() thread, since we may call +- * __repmgr_bust_connection(..., TRUE). +- */ + static int + handle_completion(dbenv, conn) + DB_ENV *dbenv; +--- 672,677 ---- +*************** +*** 651,660 **** + } + } + +! return (0); +! +! err: if (ret == DB_REP_UNAVAIL) +! return (__repmgr_bust_connection(dbenv, conn, TRUE)); + return (ret); + } + +--- 731,742 ---- + } + } + +! err: +! if (ret == DB_REP_UNAVAIL) { +! if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) +! return (ret); +! ret = __repmgr_cleanup_connection(dbenv, conn); +! } + return (ret); + } + +*************** +*** 708,714 **** + } + + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); +! __repmgr_cleanup_connection(dbenv, conn); + ret = __repmgr_connect_site(dbenv, eid); + DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); + return (ret); +--- 790,797 ---- + } + + DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); +! if ((ret = __repmgr_cleanup_connection(dbenv, conn)) != 0) +! return (ret); + ret = __repmgr_connect_site(dbenv, eid); + DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); + return (ret); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Oct 1 12:31:33 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 01 Oct 2009 10:31:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[6636] csw/mgar/pkg/cups/branches/cups-1.4/Makefile Message-ID: Revision: 6636 http://gar.svn.sourceforge.net/gar/?rev=6636&view=rev Author: wahwah Date: 2009-10-01 10:31:33 +0000 (Thu, 01 Oct 2009) Log Message: ----------- cups: A better SAMPLECONF regex. Modified Paths: -------------- csw/mgar/pkg/cups/branches/cups-1.4/Makefile Modified: csw/mgar/pkg/cups/branches/cups-1.4/Makefile =================================================================== --- csw/mgar/pkg/cups/branches/cups-1.4/Makefile 2009-10-01 09:52:37 UTC (rev 6635) +++ csw/mgar/pkg/cups/branches/cups-1.4/Makefile 2009-10-01 10:31:33 UTC (rev 6636) @@ -140,7 +140,7 @@ SPKG_DESC_CSWcupsdev = CUPS header files # http://lists.opencsw.org/pipermail/maintainers/2009-September/004249.html -SAMPLECONF = $(sysconfdir)/cups/cupsd.conf.CSW +SAMPLECONF = $(sysconfdir)/cups/cupsd\.conf\.CSW INITSMF = $(sysconfdir)/init\.d/cswcups LD_OPTIONS = -R/opt/csw/lib/\$$ISALIST -R/opt/csw/lib This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 13:39:09 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 11:39:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[6637] csw/mgar/pkg Message-ID: Revision: 6637 http://gar.svn.sourceforge.net/gar/?rev=6637&view=rev Author: dmichelsen Date: 2009-10-01 11:39:07 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb45: Fix package names Added Paths: ----------- csw/mgar/pkg/bdb45/ csw/mgar/pkg/bdb45/trunk/Makefile csw/mgar/pkg/bdb45/trunk/files/ Property Changed: ---------------- csw/mgar/pkg/bdb45/trunk/ Property changes on: csw/mgar/pkg/bdb45/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v1 + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Copied: csw/mgar/pkg/bdb45/trunk/Makefile (from rev 6628, csw/mgar/pkg/bdb47/trunk/Makefile) =================================================================== --- csw/mgar/pkg/bdb45/trunk/Makefile (rev 0) +++ csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-01 11:39:07 UTC (rev 6637) @@ -0,0 +1,88 @@ +GARNAME = db +GARVERSION = 4.5.20 +CATEGORIES = lib + +DESCRIPTION = Berkeley DB 4.5 +define BLURB + Berkeley DB (libdb) is a programmatic toolkit that provides embedded database + support for both traditional and client/server applications. It includes + b+tree, queue, extended linear hashing, fixed, and variable-length record + access methods, transactions, locking, logging, shared memory caching and + database recovery. DB supports C, C++, Java, and Perl APIs. It is available + for a wide variety of UNIX platforms as well as Windows NT and Windows 95 + (MSVC 4, 5 and 6). +endef + +MASTER_SITES = http://download.oracle.com/berkeley-db/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + +WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix + +PATCHDIR = $(WORKSRC)/.. +PATCHDIRLEVEL = 0 +PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) + +BUILD64 = 1 +CONFIGURE_SCRIPTS = dist + +prefix = $(BUILD_PREFIX)/bdb45 +CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --enable-compat185 +CONFIGURE_ARGS += --enable-o_direct +CONFIGURE_ARGS += --enable-rpc +CONFIGURE_ARGS += --enable-cxx +CONFIGURE_ARGS += --enable-java + +# Exclude TCL support for 64 bit until we have a 64 bit TCL +CONFIGURE_ARGS-mm-32 = --enable-tcl --with-tcl=$(libpath) +CONFIGURE_ARGS += $(CONFIGURE_ARGS-mm-$(MEMORYMODEL)) + +# bdb tests are *very* time consuming +TEST_SCRIPTS = + +NO_ISAEXEC = 1 + +PACKAGES = CSWbdb45 CSWbdb45devel CSWbdb45doc + +CATALOGNAME_CSWbdb45 = berkeleydb45 +CATALOGNAME_CSWbdb45devel = berkeleydb45_devel +CATALOGNAME_CSWbdb45doc = berkeleydb45_doc + +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb45),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* + +ARCHALL_CSWbdbdoc = 1 + +SPKG_DESC_CSWbdb45 = BerkeleyDB 4.5 embedded database libraries and utilities +SPKG_DESC_CSWbdb45devel = BerkeleyDB 4.5 development support +SPKG_DESC_CSWbdb45doc = BerkeleyDB 4.5 documentation + +REQUIRED_PKGS_CSWbdb45devel = CSWbdb45 + +LICENSE = LICENSE + +PKGFILES_CSWbdb45doc = /opt/csw/share/doc/.* + +PKGFILES_CSWbdb45devel = $(PKGFILES_DEVEL) + +include gar/category.mk + +LIBS += -lnsl +export LIBS + +PATH := /usr/jdk1.6.0_07/bin:$(PATH) +export PATH + +configure-dist: + @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 13:40:17 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 11:40:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[6638] csw/mgar/pkg/bdb45/trunk Message-ID: Revision: 6638 http://gar.svn.sourceforge.net/gar/?rev=6638&view=rev Author: dmichelsen Date: 2009-10-01 11:40:12 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb45: Add missing files Added Paths: ----------- csw/mgar/pkg/bdb45/trunk/checksums csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.1 csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.2 Added: csw/mgar/pkg/bdb45/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb45/trunk/checksums (rev 0) +++ csw/mgar/pkg/bdb45/trunk/checksums 2009-10-01 11:40:12 UTC (rev 6638) @@ -0,0 +1,3 @@ +b0f1c777708cb8e9d37fb47e7ed3312d download/db-4.5.20.tar.gz +a571e239b9041d7990df287cbc59ad6f download/patch.4.5.20.1 +b7a7086a067ba116f5a8464362c9a9a7 download/patch.4.5.20.2 Added: csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.1 =================================================================== --- csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.1 (rev 0) +++ csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.1 2009-10-01 11:40:12 UTC (rev 6638) @@ -0,0 +1,37 @@ +*** sequence/sequence.c.orig 27 Sep 2006 14:56:17 -0000 12.39 +--- sequence/sequence.c 26 Oct 2006 07:36:05 -0000 +*************** +*** 228,233 **** +--- 228,236 ---- + seq->seq_data.ulen = seq->seq_data.size = sizeof(seq->seq_record); + seq->seq_rp = &seq->seq_record; + ++ if ((ret = __dbt_usercopy(dbenv, keyp)) != 0) ++ goto err; ++ + memset(&seq->seq_key, 0, sizeof(DBT)); + if ((ret = __os_malloc(dbenv, keyp->size, &seq->seq_key.data)) != 0) + goto err; +*************** +*** 365,370 **** +--- 368,374 ---- + ret = t_ret; + + ENV_LEAVE(dbenv, ip); ++ __dbt_userfree(dbenv, keyp, NULL, NULL); + return (ret); + } + +*************** +*** 764,769 **** +--- 768,777 ---- + DBT *key; + { + SEQ_ILLEGAL_BEFORE_OPEN(seq, "DB_SEQUENCE->get_key"); ++ ++ if (F_ISSET(key, DB_DBT_USERCOPY)) ++ return (__db_retcopy(seq->seq_dbp->dbenv, key, ++ seq->seq_key.data, seq->seq_key.size, NULL, 0)); + + key->data = seq->seq_key.data; + key->size = key->ulen = seq->seq_key.size; Added: csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.2 =================================================================== --- csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.2 (rev 0) +++ csw/mgar/pkg/bdb45/trunk/files/patch.4.5.20.2 2009-10-01 11:40:12 UTC (rev 6638) @@ -0,0 +1,66 @@ +*** rep/rep_method.c.orig Fri Oct 20 08:34:06 2006 +--- rep/rep_method.c Fri Oct 27 12:09:04 2006 +*************** +*** 526,535 **** + * will allow the client to either perform recovery or + * simply join in. + */ +! if (announce) + (void)__rep_send_message(dbenv, + DB_EID_BROADCAST, REP_NEWCLIENT, NULL, dbt, 0, 0); +! else + (void)__rep_send_message(dbenv, + DB_EID_BROADCAST, REP_ALIVE_REQ, NULL, NULL, 0, 0); + } +--- 526,537 ---- + * will allow the client to either perform recovery or + * simply join in. + */ +! if (announce) { +! if ((ret = __dbt_usercopy(dbenv, dbt)) != 0) +! goto err; + (void)__rep_send_message(dbenv, + DB_EID_BROADCAST, REP_NEWCLIENT, NULL, dbt, 0, 0); +! } else + (void)__rep_send_message(dbenv, + DB_EID_BROADCAST, REP_ALIVE_REQ, NULL, NULL, 0, 0); + } +*************** +*** 553,558 **** +--- 555,561 ---- + } + if (pending_event != DB_EVENT_NO_SUCH_EVENT) + DB_EVENT(dbenv, pending_event, NULL); ++ __dbt_userfree(dbenv, dbt, NULL, NULL); + return (ret); + } + +*** rep/rep_record.c.orig Fri Oct 20 08:34:06 2006 +--- rep/rep_record.c Mon Nov 13 10:46:29 2006 +*************** +*** 163,168 **** +--- 163,176 ---- + return (EINVAL); + } + ++ if ((ret = __dbt_usercopy(dbenv, control)) != 0 || ++ (ret = __dbt_usercopy(dbenv, rec)) != 0) { ++ __dbt_userfree(dbenv, control, rec, NULL); ++ __db_errx(dbenv, ++ "DB_ENV->rep_process_message: error retrieving DBT contents"); ++ return ret; ++ } ++ + ret = 0; + db_rep = dbenv->rep_handle; + rep = db_rep->region; +*************** +*** 621,626 **** +--- 629,635 ---- + *ret_lsnp = rp->lsn; + ret = DB_REP_NOTPERM; + } ++ __dbt_userfree(dbenv, control, rec, NULL); + return (ret); + } + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 14:59:27 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 12:59:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[6639] csw/mgar/pkg/bdb46/trunk/Makefile Message-ID: Revision: 6639 http://gar.svn.sourceforge.net/gar/?rev=6639&view=rev Author: dmichelsen Date: 2009-10-01 12:59:27 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb46: Fix ARCHALL for docs Modified Paths: -------------- csw/mgar/pkg/bdb46/trunk/Makefile Modified: csw/mgar/pkg/bdb46/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-01 11:40:12 UTC (rev 6638) +++ csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-01 12:59:27 UTC (rev 6639) @@ -61,7 +61,7 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -ARCHALL_CSWbdbdoc = 1 +ARCHALL_CSWbdb46doc = 1 SPKG_DESC_CSWbdb46 = BerkeleyDB 4.6 embedded database libraries and utilities SPKG_DESC_CSWbdb46devel = BerkeleyDB 4.6 development support This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 15:04:23 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 13:04:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[6640] csw/mgar/pkg/bdb47/trunk/Makefile Message-ID: Revision: 6640 http://gar.svn.sourceforge.net/gar/?rev=6640&view=rev Author: dmichelsen Date: 2009-10-01 13:04:23 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb47: Fix ARCHALL for docs Modified Paths: -------------- csw/mgar/pkg/bdb47/trunk/Makefile Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-01 12:59:27 UTC (rev 6639) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-01 13:04:23 UTC (rev 6640) @@ -61,7 +61,7 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -ARCHALL_CSWbdbdoc = 1 +ARCHALL_CSWbdb47doc = 1 SPKG_DESC_CSWbdb47 = BerkeleyDB 4.7 embedded database libraries and utilities SPKG_DESC_CSWbdb47devel = BerkeleyDB 4.7 development support This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 15:05:12 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 13:05:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[6641] csw/mgar/pkg/bdb45/trunk/Makefile Message-ID: Revision: 6641 http://gar.svn.sourceforge.net/gar/?rev=6641&view=rev Author: dmichelsen Date: 2009-10-01 13:05:12 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb45: Fix ARCHALL for docs Modified Paths: -------------- csw/mgar/pkg/bdb45/trunk/Makefile Modified: csw/mgar/pkg/bdb45/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-01 13:04:23 UTC (rev 6640) +++ csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-01 13:05:12 UTC (rev 6641) @@ -61,7 +61,7 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -ARCHALL_CSWbdbdoc = 1 +ARCHALL_CSWbdb45doc = 1 SPKG_DESC_CSWbdb45 = BerkeleyDB 4.5 embedded database libraries and utilities SPKG_DESC_CSWbdb45devel = BerkeleyDB 4.5 development support This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 1 15:08:36 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 01 Oct 2009 13:08:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[6642] csw/mgar/pkg/GeoIP/trunk/Makefile Message-ID: Revision: 6642 http://gar.svn.sourceforge.net/gar/?rev=6642&view=rev Author: bonivart Date: 2009-10-01 13:08:36 +0000 (Thu, 01 Oct 2009) Log Message: ----------- geoip: update to 1.4.6, initial commit Modified Paths: -------------- csw/mgar/pkg/GeoIP/trunk/Makefile Modified: csw/mgar/pkg/GeoIP/trunk/Makefile =================================================================== --- csw/mgar/pkg/GeoIP/trunk/Makefile 2009-10-01 13:05:12 UTC (rev 6641) +++ csw/mgar/pkg/GeoIP/trunk/Makefile 2009-10-01 13:08:36 UTC (rev 6642) @@ -15,34 +15,44 @@ REQUIRED_PKGS_CSWgeoipdevel = CSWgeoip CATALOGNAME_CSWgeoip = geoip CATALOGNAME_CSWgeoipdevel = geoip_devel +SPKG_DESC_CSWgeoip = $(DESCRIPTION) +SPKG_DESC_CSWgeoipdevel = GeoIP C API development support +PKGFILES_CSWgeoipdevel = $(PKGFILES_DEVEL) + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +GARCOMPILER = GCC4 +TEST_TARGET = check + +# Do not exclude static libs (needed for devel package) +MERGE_EXCLUDE_STATICLIBS = + CONFIGURE_ARGS = $(DIRPATHS) include gar/category.mk -pre-configure-modulated: - @echo " ==> Pre-configure for $(GARNAME) (custom)" - @( cd $(WORKSRC) ; \ - sed 's/-Wall//' Makefile.am > tmp.sed ; \ - mv tmp.sed Makefile.am ; \ - sed 's/-Wall//' Makefile.in > tmp.sed ; \ - mv tmp.sed Makefile.in ; \ - cd apps ; \ - sed 's/-Wall//' Makefile.am > tmp.sed ; \ - mv tmp.sed Makefile.am ; \ - sed 's/-Wall//' Makefile.in > tmp.sed ; \ - mv tmp.sed Makefile.in ; \ - cd ../libGeoIP ; \ - sed 's/-Wall//' Makefile.am > tmp.sed ; \ - mv tmp.sed Makefile.am ; \ - sed 's/-Wall//' Makefile.in > tmp.sed ; \ - mv tmp.sed Makefile.in ; \ - cd ../test ; \ - sed 's/-Wall//' Makefile.am > tmp.sed ; \ - mv tmp.sed Makefile.am ; \ - sed 's/-Wall//' Makefile.in > tmp.sed ; \ - mv tmp.sed Makefile.in ) - @$(MAKECOOKIE) +#pre-configure-modulated: +# @echo " ==> Pre-configure for $(GARNAME) (custom)" +# @( cd $(WORKSRC) ; \ +# sed 's/-Wall//' Makefile.am > tmp.sed ; \ +# mv tmp.sed Makefile.am ; \ +# sed 's/-Wall//' Makefile.in > tmp.sed ; \ +# mv tmp.sed Makefile.in ; \ +# cd apps ; \ +# sed 's/-Wall//' Makefile.am > tmp.sed ; \ +# mv tmp.sed Makefile.am ; \ +# sed 's/-Wall//' Makefile.in > tmp.sed ; \ +# mv tmp.sed Makefile.in ; \ +# cd ../libGeoIP ; \ +# sed 's/-Wall//' Makefile.am > tmp.sed ; \ +# mv tmp.sed Makefile.am ; \ +# sed 's/-Wall//' Makefile.in > tmp.sed ; \ +# mv tmp.sed Makefile.in ; \ +# cd ../test ; \ +# sed 's/-Wall//' Makefile.am > tmp.sed ; \ +# mv tmp.sed Makefile.am ; \ +# sed 's/-Wall//' Makefile.in > tmp.sed ; \ +# mv tmp.sed Makefile.in ) +# @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 15:10:43 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 13:10:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6643] csw/mgar/pkg/bdb47/trunk Message-ID: Revision: 6643 http://gar.svn.sourceforge.net/gar/?rev=6643&view=rev Author: dmichelsen Date: 2009-10-01 13:10:42 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb47: Fix patches Modified Paths: -------------- csw/mgar/pkg/bdb47/trunk/Makefile csw/mgar/pkg/bdb47/trunk/checksums Added Paths: ----------- csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.1 csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.2 csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.3 csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.4 Removed Paths: ------------- csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.1 csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.2 csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.3 csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.4 Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,8 +1,8 @@ GARNAME = db -GARVERSION = 4.6.21 +GARVERSION = 4.7.25 CATEGORIES = lib -DESCRIPTION = Berkeley DB 4.6 +DESCRIPTION = Berkeley DB 4.7 define BLURB Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes @@ -30,7 +30,7 @@ BUILD64 = 1 CONFIGURE_SCRIPTS = dist -prefix = $(BUILD_PREFIX)/bdb46 +prefix = $(BUILD_PREFIX)/bdb47 CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct Modified: csw/mgar/pkg/bdb47/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb47/trunk/checksums 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/checksums 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,5 +1,5 @@ -718082e7e35fc48478a2334b0bc4cd11 download/db-4.6.21.tar.gz -4878872edfc53c6ecb871b1062a4bdaf download/patch.4.6.21.1 -55074e53d3acae2dcbeae8322f96e522 download/patch.4.6.21.2 -7a6e11b54712caf752f9c4a52babe60c download/patch.4.6.21.3 -ae7d3d587355fe85b512ef09b9a77d19 download/patch.4.6.21.4 +ec2b87e833779681a0c3a814aa71359e download/db-4.7.25.tar.gz +5fdf101259e5164dea1c8c86214fde38 download/patch.4.7.25.1 +bd410a11c71fee52fddb6aa2d8d4f80c download/patch.4.7.25.2 +6fcd69f64f5b34bfe8f0a63cc2e402c1 download/patch.4.7.25.3 +c71830a1303cd34595ca655257196eec download/patch.4.7.25.4 Deleted: csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.1 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.1 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.1 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,90 +0,0 @@ -*** dbinc/mp.h 2007-09-28 01:28:25.000000000 +1000 ---- dbinc/mp.h 2008-02-14 01:22:09.000000000 +1100 -*************** -*** 639,644 **** ---- 639,647 ---- - */ - #define MP_TRUNC_RECOVER 0x01 - -+ /* Private flags to DB_MPOOLFILE->close. */ -+ #define DB_MPOOL_NOLOCK 0x002 /* Already have mpf locked. */ -+ - #if defined(__cplusplus) - } - #endif -*** mp/mp_fopen.c 2007-05-18 03:18:01.000000000 +1000 ---- mp/mp_fopen.c 2008-02-12 16:09:42.000000000 +1100 -*************** -*** 888,894 **** - * when we try to flush them. - */ - deleted = 0; -! MUTEX_LOCK(dbenv, mfp->mutex); - if (F_ISSET(dbmfp, MP_MULTIVERSION)) - --mfp->multiversion; - if (--mfp->mpf_cnt == 0 || LF_ISSET(DB_MPOOL_DISCARD)) { ---- 888,895 ---- - * when we try to flush them. - */ - deleted = 0; -! if (!LF_ISSET(DB_MPOOL_NOLOCK)) -! MUTEX_LOCK(dbenv, mfp->mutex); - if (F_ISSET(dbmfp, MP_MULTIVERSION)) - --mfp->multiversion; - if (--mfp->mpf_cnt == 0 || LF_ISSET(DB_MPOOL_DISCARD)) { -*************** -*** 909,921 **** - } - } - if (mfp->block_cnt == 0) { - if ((t_ret = - __memp_mf_discard(dbmp, mfp)) != 0 && ret == 0) - ret = t_ret; - deleted = 1; - } - } -! if (!deleted) - MUTEX_UNLOCK(dbenv, mfp->mutex); - - done: /* Discard the DB_MPOOLFILE structure. */ ---- 910,928 ---- - } - } - if (mfp->block_cnt == 0) { -+ /* -+ * We should never discard this mp file if our caller -+ * is holding the lock on it. See comment in -+ * __memp_sync_file. -+ */ -+ DB_ASSERT(dbenv, !LF_ISSET(DB_MPOOL_NOLOCK)); - if ((t_ret = - __memp_mf_discard(dbmp, mfp)) != 0 && ret == 0) - ret = t_ret; - deleted = 1; - } - } -! if (!deleted && !LF_ISSET(DB_MPOOL_NOLOCK)) - MUTEX_UNLOCK(dbenv, mfp->mutex); - - done: /* Discard the DB_MPOOLFILE structure. */ -*** mp/mp_sync.c 2007-06-02 04:32:44.000000000 +1000 ---- mp/mp_sync.c 2008-02-12 16:09:42.000000000 +1100 -*************** -*** 755,761 **** - * This is important since we are called with the hash bucket - * locked. The mfp will get freed via the cleanup pass. - */ -! if (dbmfp != NULL && (t_ret = __memp_fclose(dbmfp, 0)) != 0 && ret == 0) - ret = t_ret; - - --mfp->mpf_cnt; ---- 755,762 ---- - * This is important since we are called with the hash bucket - * locked. The mfp will get freed via the cleanup pass. - */ -! if (dbmfp != NULL && -! (t_ret = __memp_fclose(dbmfp, DB_MPOOL_NOLOCK)) != 0 && ret == 0) - ret = t_ret; - - --mfp->mpf_cnt; - Deleted: csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.2 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.2 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.2 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,27 +0,0 @@ -*** mp/mp_region.c 2007-05-18 03:18:01.000000000 +1000 ---- mp/mp_region.c 2008-06-24 13:15:56.000000000 +1000 -*************** -*** 249,256 **** - mtx_base = htab[0].mtx_hash; - } - - if (mtx_base != MUTEX_INVALID) -! mtx_base += reginfo_off * htab_buckets; - - /* Allocate hash table space and initialize it. */ - if ((ret = __env_alloc(infop, ---- 249,262 ---- - mtx_base = htab[0].mtx_hash; - } - -+ /* -+ * We preallocated all of the mutexes in a block, so for regions after -+ * the first, we skip mutexes in use in earlier regions. Each region -+ * has the same number of buckets and there are two mutexes per hash -+ * bucket (the bucket mutex and the I/O mutex). -+ */ - if (mtx_base != MUTEX_INVALID) -! mtx_base += reginfo_off * htab_buckets * 2; - - /* Allocate hash table space and initialize it. */ - if ((ret = __env_alloc(infop, Deleted: csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.3 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.3 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.3 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,74 +0,0 @@ -*** sequence/sequence.c ---- sequence/sequence.c -*************** -*** 196,202 **** - if ((ret = __db_get_flags(dbp, &tflags)) != 0) - goto err; - -! if (DB_IS_READONLY(dbp)) { - ret = __db_rdonly(dbp->dbenv, "DB_SEQUENCE->open"); - goto err; - } ---- 196,206 ---- - if ((ret = __db_get_flags(dbp, &tflags)) != 0) - goto err; - -! /* -! * We can let replication clients open sequences, but must -! * check later that they do not update them. -! */ -! if (F_ISSET(dbp, DB_AM_RDONLY)) { - ret = __db_rdonly(dbp->dbenv, "DB_SEQUENCE->open"); - goto err; - } -*************** -*** 252,257 **** ---- 256,266 ---- - if ((ret != DB_NOTFOUND && ret != DB_KEYEMPTY) || - !LF_ISSET(DB_CREATE)) - goto err; -+ if (IS_REP_CLIENT(dbenv) && -+ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { -+ ret = __db_rdonly(dbenv, "DB_SEQUENCE->open"); -+ goto err; -+ } - ret = 0; - - rp = &seq->seq_record; -*************** -*** 304,310 **** - */ - rp = seq->seq_data.data; - if (rp->seq_version == DB_SEQUENCE_OLDVER) { -! oldver: rp->seq_version = DB_SEQUENCE_VERSION; - if (__db_isbigendian()) { - if (IS_DB_AUTO_COMMIT(dbp, txn)) { - if ((ret = ---- 313,324 ---- - */ - rp = seq->seq_data.data; - if (rp->seq_version == DB_SEQUENCE_OLDVER) { -! oldver: if (IS_REP_CLIENT(dbenv) && -! !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { -! ret = __db_rdonly(dbenv, "DB_SEQUENCE->open"); -! goto err; -! } -! rp->seq_version = DB_SEQUENCE_VERSION; - if (__db_isbigendian()) { - if (IS_DB_AUTO_COMMIT(dbp, txn)) { - if ((ret = -*************** -*** 713,718 **** ---- 727,738 ---- - - MUTEX_LOCK(dbenv, seq->mtx_seq); - -+ if (handle_check && IS_REP_CLIENT(dbenv) && -+ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { -+ ret = __db_rdonly(dbenv, "DB_SEQUENCE->get"); -+ goto err; -+ } -+ - if (rp->seq_min + delta > rp->seq_max) { - __db_errx(dbenv, "Sequence overflow"); - ret = EINVAL; Deleted: csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.4 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.4 2009-10-01 13:08:36 UTC (rev 6642) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.6.21.4 2009-10-01 13:10:42 UTC (rev 6643) @@ -1,1414 +0,0 @@ -*** dbinc/repmgr.h 2007-10-31 10:23:52.000000000 -0700 ---- dbinc/repmgr.h 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 36,41 **** ---- 36,55 ---- - #endif - - /* -+ * The (arbitrary) maximum number of outgoing messages we're willing to hold, on -+ * a queue per connection, waiting for TCP buffer space to become available in -+ * the kernel. Rather than exceeding this limit, we simply discard additional -+ * messages (since this is always allowed by the replication protocol). -+ * As a special dispensation, if a message is destined for a specific remote -+ * site (i.e., it's not a broadcast), then we first try blocking the sending -+ * thread, waiting for space to become available (though we only wait a limited -+ * time). This is so as to be able to handle the immediate flood of (a -+ * potentially large number of) outgoing messages that replication generates, in -+ * a tight loop, when handling PAGE_REQ, LOG_REQ and ALL_REQ requests. -+ */ -+ #define OUT_QUEUE_LIMIT 10 -+ -+ /* - * The system value is available from sysconf(_SC_HOST_NAME_MAX). - * Historically, the maximum host name was 256. - */ -*************** -*** 47,52 **** ---- 61,71 ---- - #define MAX_SITE_LOC_STRING (MAXHOSTNAMELEN+20) - typedef char SITE_STRING_BUFFER[MAX_SITE_LOC_STRING+1]; - -+ /* Default timeout values, in seconds. */ -+ #define DB_REPMGR_DEFAULT_ACK_TIMEOUT (1 * US_PER_SEC) -+ #define DB_REPMGR_DEFAULT_CONNECTION_RETRY (30 * US_PER_SEC) -+ #define DB_REPMGR_DEFAULT_ELECTION_RETRY (10 * US_PER_SEC) -+ - struct __repmgr_connection; - typedef struct __repmgr_connection REPMGR_CONNECTION; - struct __repmgr_queue; typedef struct __repmgr_queue REPMGR_QUEUE; -*************** -*** 171,178 **** - #ifdef DB_WIN32 - WSAEVENT event_object; - #endif -! #define CONN_CONNECTING 0x01 /* nonblocking connect in progress */ -! #define CONN_DEFUNCT 0x02 /* socket close pending */ - u_int32_t flags; - - /* ---- 190,198 ---- - #ifdef DB_WIN32 - WSAEVENT event_object; - #endif -! #define CONN_CONGESTED 0x01 /* msg thread wait has exceeded timeout */ -! #define CONN_CONNECTING 0x02 /* nonblocking connect in progress */ -! #define CONN_DEFUNCT 0x04 /* socket close pending */ - u_int32_t flags; - - /* -*************** -*** 180,189 **** - * send() function's thread. But if TCP doesn't have enough network - * buffer space for us when we first try it, we instead allocate some - * memory, and copy the message, and then send it as space becomes -! * available in our main select() thread. - */ - OUT_Q_HEADER outbound_queue; - int out_queue_length; - - /* - * Input: while we're reading a message, we keep track of what phase ---- 200,215 ---- - * send() function's thread. But if TCP doesn't have enough network - * buffer space for us when we first try it, we instead allocate some - * memory, and copy the message, and then send it as space becomes -! * available in our main select() thread. In some cases, if the queue -! * gets too long we wait until it's drained, and then append to it. -! * This condition variable's associated mutex is the normal per-repmgr -! * db_rep->mutex, because that mutex is always held anyway whenever the -! * output queue is consulted. - */ - OUT_Q_HEADER outbound_queue; - int out_queue_length; -+ cond_var_t drained; -+ int blockers; /* ref count of msg threads waiting on us */ - - /* - * Input: while we're reading a message, we keep track of what phase -*** dbinc_auto/int_def.in 2007-10-31 10:23:52.000000000 -0700 ---- dbinc_auto/int_def.in 2007-10-31 10:23:52.000000000 -0700 -*************** -*** 1420,1425 **** ---- 1420,1428 ---- - #define __repmgr_wake_waiting_senders __repmgr_wake_waiting_senders at DB_VERSION_UNIQUE_NAME@ - #define __repmgr_await_ack __repmgr_await_ack at DB_VERSION_UNIQUE_NAME@ - #define __repmgr_compute_wait_deadline __repmgr_compute_wait_deadline at DB_VERSION_UNIQUE_NAME@ -+ #define __repmgr_await_drain __repmgr_await_drain at DB_VERSION_UNIQUE_NAME@ -+ #define __repmgr_alloc_cond __repmgr_alloc_cond at DB_VERSION_UNIQUE_NAME@ -+ #define __repmgr_free_cond __repmgr_free_cond at DB_VERSION_UNIQUE_NAME@ - #define __repmgr_init_sync __repmgr_init_sync at DB_VERSION_UNIQUE_NAME@ - #define __repmgr_close_sync __repmgr_close_sync at DB_VERSION_UNIQUE_NAME@ - #define __repmgr_net_init __repmgr_net_init at DB_VERSION_UNIQUE_NAME@ -*** dbinc_auto/repmgr_ext.h 2007-10-31 10:23:52.000000000 -0700 ---- dbinc_auto/repmgr_ext.h 2007-10-31 10:23:52.000000000 -0700 -*************** -*** 21,30 **** - int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); - void __repmgr_stash_generation __P((DB_ENV *)); - int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); -! int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, u_int, const DBT *, const DBT *)); - int __repmgr_is_permanent __P((DB_ENV *, const DB_LSN *)); -! int __repmgr_bust_connection __P((DB_ENV *, REPMGR_CONNECTION *, int)); -! void __repmgr_cleanup_connection __P((DB_ENV *, REPMGR_CONNECTION *)); - int __repmgr_find_site __P((DB_ENV *, const char *, u_int)); - int __repmgr_pack_netaddr __P((DB_ENV *, const char *, u_int, ADDRINFO *, repmgr_netaddr_t *)); - int __repmgr_getaddr __P((DB_ENV *, const char *, u_int, int, ADDRINFO **)); ---- 21,30 ---- - int __repmgr_handle_event __P((DB_ENV *, u_int32_t, void *)); - void __repmgr_stash_generation __P((DB_ENV *)); - int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, const DB_LSN *, int, u_int32_t)); -! int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, u_int, const DBT *, const DBT *, int)); - int __repmgr_is_permanent __P((DB_ENV *, const DB_LSN *)); -! int __repmgr_bust_connection __P((DB_ENV *, REPMGR_CONNECTION *)); -! int __repmgr_cleanup_connection __P((DB_ENV *, REPMGR_CONNECTION *)); - int __repmgr_find_site __P((DB_ENV *, const char *, u_int)); - int __repmgr_pack_netaddr __P((DB_ENV *, const char *, u_int, ADDRINFO *, repmgr_netaddr_t *)); - int __repmgr_getaddr __P((DB_ENV *, const char *, u_int, int, ADDRINFO **)); -*************** -*** 39,44 **** ---- 39,47 ---- - int __repmgr_wake_waiting_senders __P((DB_ENV *)); - int __repmgr_await_ack __P((DB_ENV *, const DB_LSN *)); - void __repmgr_compute_wait_deadline __P((DB_ENV*, struct timespec *, db_timeout_t)); -+ int __repmgr_await_drain __P((DB_ENV *, REPMGR_CONNECTION *, db_timeout_t)); -+ int __repmgr_alloc_cond __P((cond_var_t *)); -+ int __repmgr_free_cond __P((cond_var_t *)); - int __repmgr_init_sync __P((DB_ENV *, DB_REP *)); - int __repmgr_close_sync __P((DB_ENV *)); - int __repmgr_net_init __P((DB_ENV *, DB_REP *)); -*** repmgr/repmgr_method.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_method.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 196,204 **** - int ret; - - /* Set some default values. */ -! db_rep->ack_timeout = 1 * US_PER_SEC; /* 1 second */ -! db_rep->connection_retry_wait = 30 * US_PER_SEC; /* 30 seconds */ -! db_rep->election_retry_wait = 10 * US_PER_SEC; /* 10 seconds */ - db_rep->config_nsites = 0; - db_rep->peer = DB_EID_INVALID; - db_rep->perm_policy = DB_REPMGR_ACKS_QUORUM; ---- 196,204 ---- - int ret; - - /* Set some default values. */ -! db_rep->ack_timeout = DB_REPMGR_DEFAULT_ACK_TIMEOUT; -! db_rep->connection_retry_wait = DB_REPMGR_DEFAULT_CONNECTION_RETRY; -! db_rep->election_retry_wait = DB_REPMGR_DEFAULT_ELECTION_RETRY; - db_rep->config_nsites = 0; - db_rep->peer = DB_EID_INVALID; - db_rep->perm_policy = DB_REPMGR_ACKS_QUORUM; -*************** -*** 238,243 **** ---- 238,244 ---- - DB_ENV *dbenv; - { - DB_REP *db_rep; -+ REPMGR_CONNECTION *conn; - int ret; - - db_rep = dbenv->rep_handle; -*************** -*** 254,259 **** ---- 255,266 ---- - - if ((ret = __repmgr_signal(&db_rep->queue_nonempty)) != 0) - goto unlock; -+ -+ TAILQ_FOREACH(conn, &db_rep->connections, entries) { -+ if (conn->blockers > 0 && -+ ((ret = __repmgr_signal(&conn->drained)) != 0)) -+ goto unlock; -+ } - UNLOCK_MUTEX(db_rep->mutex); - - return (__repmgr_wake_main_thread(dbenv)); -*** repmgr/repmgr_msg.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_msg.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 183,192 **** - - /* - * Acknowledges a message. -- * -- * !!! -- * Note that this cannot be called from the select() thread, in case we call -- * __repmgr_bust_connection(..., FALSE). - */ - static int - ack_message(dbenv, generation, lsn) ---- 183,188 ---- -*************** -*** 227,235 **** - rec2.size = 0; - - conn = site->ref.conn; - if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_ACK, -! &control2, &rec2)) == DB_REP_UNAVAIL) -! ret = __repmgr_bust_connection(dbenv, conn, FALSE); - } - - UNLOCK_MUTEX(db_rep->mutex); ---- 223,236 ---- - rec2.size = 0; - - conn = site->ref.conn; -+ /* -+ * It's hard to imagine anyone would care about a lost ack if -+ * the path to the master is so congested as to need blocking; -+ * so pass "blockable" argument as FALSE. -+ */ - if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_ACK, -! &control2, &rec2, FALSE)) == DB_REP_UNAVAIL) -! ret = __repmgr_bust_connection(dbenv, conn); - } - - UNLOCK_MUTEX(db_rep->mutex); -*** repmgr/repmgr_net.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_net.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 63,69 **** - static void setup_sending_msg - __P((struct sending_msg *, u_int, const DBT *, const DBT *)); - static int __repmgr_send_internal -! __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *)); - static int enqueue_msg - __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, size_t)); - static int flatten __P((DB_ENV *, struct sending_msg *)); ---- 63,69 ---- - static void setup_sending_msg - __P((struct sending_msg *, u_int, const DBT *, const DBT *)); - static int __repmgr_send_internal -! __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, int)); - static int enqueue_msg - __P((DB_ENV *, REPMGR_CONNECTION *, struct sending_msg *, size_t)); - static int flatten __P((DB_ENV *, struct sending_msg *)); -*************** -*** 73,85 **** - * __repmgr_send -- - * The send function for DB_ENV->rep_set_transport. - * -- * !!! -- * This is only ever called as the replication transport call-back, which means -- * it's either on one of our message processing threads or an application -- * thread. It mustn't be called from the select() thread, because we might call -- * __repmgr_bust_connection(..., FALSE) here, and that's not allowed in the -- * select() thread. -- * - * PUBLIC: int __repmgr_send __P((DB_ENV *, const DBT *, const DBT *, - * PUBLIC: const DB_LSN *, int, u_int32_t)); - */ ---- 73,78 ---- -*************** -*** 126,134 **** - } - - conn = site->ref.conn; - if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_REP_MESSAGE, -! control, rec)) == DB_REP_UNAVAIL && -! (t_ret = __repmgr_bust_connection(dbenv, conn, FALSE)) != 0) - ret = t_ret; - if (ret != 0) - goto out; ---- 119,128 ---- - } - - conn = site->ref.conn; -+ /* Pass the "blockable" argument as TRUE. */ - if ((ret = __repmgr_send_one(dbenv, conn, REPMGR_REP_MESSAGE, -! control, rec, TRUE)) == DB_REP_UNAVAIL && -! (t_ret = __repmgr_bust_connection(dbenv, conn)) != 0) - ret = t_ret; - if (ret != 0) - goto out; -*************** -*** 222,228 **** - if (site->state != SITE_CONNECTED) - return (NULL); - -! if (F_ISSET(site->ref.conn, CONN_CONNECTING)) - return (NULL); - return (site); - } ---- 216,222 ---- - if (site->state != SITE_CONNECTED) - return (NULL); - -! if (F_ISSET(site->ref.conn, CONN_CONNECTING|CONN_DEFUNCT)) - return (NULL); - return (site); - } -*************** -*** 235,244 **** - * - * !!! - * Caller must hold dbenv->mutex. -- * -- * !!! -- * Note that this cannot be called from the select() thread, in case we call -- * __repmgr_bust_connection(..., FALSE). - */ - static int - __repmgr_send_broadcast(dbenv, control, rec, nsitesp, npeersp) ---- 229,234 ---- -*************** -*** 268,281 **** - !IS_VALID_EID(conn->eid)) - continue; - -! if ((ret = __repmgr_send_internal(dbenv, conn, &msg)) == 0) { - site = SITE_FROM_EID(conn->eid); - nsites++; - if (site->priority > 0) - npeers++; - } else if (ret == DB_REP_UNAVAIL) { -! if ((ret = __repmgr_bust_connection( -! dbenv, conn, FALSE)) != 0) - return (ret); - } else - return (ret); ---- 258,277 ---- - !IS_VALID_EID(conn->eid)) - continue; - -! /* -! * Broadcast messages are either application threads committing -! * transactions, or replication status message that we can -! * afford to lose. So don't allow blocking for them (pass -! * "blockable" argument as FALSE). -! */ -! if ((ret = __repmgr_send_internal(dbenv, -! conn, &msg, FALSE)) == 0) { - site = SITE_FROM_EID(conn->eid); - nsites++; - if (site->priority > 0) - npeers++; - } else if (ret == DB_REP_UNAVAIL) { -! if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) - return (ret); - } else - return (ret); -*************** -*** 301,339 **** - * intersperse writes that are part of two single messages. - * - * PUBLIC: int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, -! * PUBLIC: u_int, const DBT *, const DBT *)); - */ - int -! __repmgr_send_one(dbenv, conn, msg_type, control, rec) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; - u_int msg_type; - const DBT *control, *rec; - { - struct sending_msg msg; - - setup_sending_msg(&msg, msg_type, control, rec); -! return (__repmgr_send_internal(dbenv, conn, &msg)); - } - - /* - * Attempts a "best effort" to send a message on the given site. If there is an -! * excessive backlog of message already queued on the connection, we simply drop -! * this message, and still return 0 even in this case. - */ - static int -! __repmgr_send_internal(dbenv, conn, msg) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; - struct sending_msg *msg; - { -! #define OUT_QUEUE_LIMIT 10 /* arbitrary, for now */ - REPMGR_IOVECS iovecs; - SITE_STRING_BUFFER buffer; - int ret; - size_t nw; - size_t total_written; - - DB_ASSERT(dbenv, !F_ISSET(conn, CONN_CONNECTING)); - if (!STAILQ_EMPTY(&conn->outbound_queue)) { - /* ---- 297,355 ---- - * intersperse writes that are part of two single messages. - * - * PUBLIC: int __repmgr_send_one __P((DB_ENV *, REPMGR_CONNECTION *, -! * PUBLIC: u_int, const DBT *, const DBT *, int)); - */ - int -! __repmgr_send_one(dbenv, conn, msg_type, control, rec, blockable) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; - u_int msg_type; - const DBT *control, *rec; -+ int blockable; - { - struct sending_msg msg; - - setup_sending_msg(&msg, msg_type, control, rec); -! return (__repmgr_send_internal(dbenv, conn, &msg, blockable)); - } - - /* - * Attempts a "best effort" to send a message on the given site. If there is an -! * excessive backlog of message already queued on the connection, what shall we -! * do? If the caller doesn't mind blocking, we'll wait (a limited amount of -! * time) for the queue to drain. Otherwise we'll simply drop the message. This -! * is always allowed by the replication protocol. But in the case of a -! * multi-message response to a request like PAGE_REQ, LOG_REQ or ALL_REQ we -! * almost always get a flood of messages that instantly fills our queue, so -! * blocking improves performance (by avoiding the need for the client to -! * re-request). -! * -! * How long shall we wait? We could of course create a new timeout -! * configuration type, so that the application could set it directly. But that -! * would start to overwhelm the user with too many choices to think about. We -! * already have an ACK timeout, which is the user's estimate of how long it -! * should take to send a message to the client, have it be processed, and return -! * a message back to us. We multiply that by the queue size, because that's how -! * many messages have to be swallowed up by the client before we're able to -! * start sending again (at least to a rough approximation). - */ - static int -! __repmgr_send_internal(dbenv, conn, msg, blockable) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; - struct sending_msg *msg; -+ int blockable; - { -! DB_REP *db_rep; - REPMGR_IOVECS iovecs; - SITE_STRING_BUFFER buffer; -+ db_timeout_t drain_to; - int ret; - size_t nw; - size_t total_written; - -+ db_rep = dbenv->rep_handle; -+ - DB_ASSERT(dbenv, !F_ISSET(conn, CONN_CONNECTING)); - if (!STAILQ_EMPTY(&conn->outbound_queue)) { - /* -*************** -*** 344,358 **** - RPRINT(dbenv, (dbenv, "msg to %s to be queued", - __repmgr_format_eid_loc(dbenv->rep_handle, - conn->eid, buffer))); - if (conn->out_queue_length < OUT_QUEUE_LIMIT) - return (enqueue_msg(dbenv, conn, msg, 0)); - else { - RPRINT(dbenv, (dbenv, "queue limit exceeded")); - STAT(dbenv->rep_handle-> - region->mstat.st_msgs_dropped++); -! return (0); - } - } - - /* - * Send as much data to the site as we can, without blocking. Keep ---- 360,393 ---- - RPRINT(dbenv, (dbenv, "msg to %s to be queued", - __repmgr_format_eid_loc(dbenv->rep_handle, - conn->eid, buffer))); -+ if (conn->out_queue_length >= OUT_QUEUE_LIMIT && -+ blockable && !F_ISSET(conn, CONN_CONGESTED)) { -+ RPRINT(dbenv, (dbenv, -+ "block msg thread, await queue space")); -+ -+ if ((drain_to = db_rep->ack_timeout) == 0) -+ drain_to = DB_REPMGR_DEFAULT_ACK_TIMEOUT; -+ conn->blockers++; -+ ret = __repmgr_await_drain(dbenv, -+ conn, drain_to * OUT_QUEUE_LIMIT); -+ conn->blockers--; -+ if (db_rep->finished) -+ return (DB_TIMEOUT); -+ if (ret != 0) -+ return (ret); -+ if (STAILQ_EMPTY(&conn->outbound_queue)) -+ goto empty; -+ } - if (conn->out_queue_length < OUT_QUEUE_LIMIT) - return (enqueue_msg(dbenv, conn, msg, 0)); - else { - RPRINT(dbenv, (dbenv, "queue limit exceeded")); - STAT(dbenv->rep_handle-> - region->mstat.st_msgs_dropped++); -! return (blockable ? DB_TIMEOUT : 0); - } - } -+ empty: - - /* - * Send as much data to the site as we can, without blocking. Keep -*************** -*** 498,521 **** - - /* - * Abandons a connection, to recover from an error. Upon entry the conn struct -! * must be on the connections list. -! * -! * If the 'do_close' flag is true, we do the whole job; the clean-up includes -! * removing the struct from the list and freeing all its memory, so upon return -! * the caller must not refer to it any further. Otherwise, we merely mark the -! * connection for clean-up later by the main thread. - * - * PUBLIC: int __repmgr_bust_connection __P((DB_ENV *, -! * PUBLIC: REPMGR_CONNECTION *, int)); - * - * !!! - * Caller holds mutex. - */ - int -! __repmgr_bust_connection(dbenv, conn, do_close) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; -- int do_close; - { - DB_REP *db_rep; - int connecting, ret, eid; ---- 533,553 ---- - - /* - * Abandons a connection, to recover from an error. Upon entry the conn struct -! * must be on the connections list. For now, just mark it as unusable; it will -! * be fully cleaned up in the top-level select thread, as soon as possible. - * - * PUBLIC: int __repmgr_bust_connection __P((DB_ENV *, -! * PUBLIC: REPMGR_CONNECTION *)); - * - * !!! - * Caller holds mutex. -+ * -+ * Must be idempotent - */ - int -! __repmgr_bust_connection(dbenv, conn) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; - { - DB_REP *db_rep; - int connecting, ret, eid; -*************** -*** 526,537 **** - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); - eid = conn->eid; - connecting = F_ISSET(conn, CONN_CONNECTING); -! if (do_close) -! __repmgr_cleanup_connection(dbenv, conn); -! else { -! F_SET(conn, CONN_DEFUNCT); -! conn->eid = -1; -! } - - /* - * When we first accepted the incoming connection, we set conn->eid to ---- 558,566 ---- - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); - eid = conn->eid; - connecting = F_ISSET(conn, CONN_CONNECTING); -! -! F_SET(conn, CONN_DEFUNCT); -! conn->eid = -1; - - /* - * When we first accepted the incoming connection, we set conn->eid to -*************** -*** 557,563 **** - dbenv, ELECT_FAILURE_ELECTION)) != 0) - return (ret); - } -! } else if (!do_close) { - /* - * One way or another, make sure the main thread is poked, so - * that we do the deferred clean-up. ---- 586,592 ---- - dbenv, ELECT_FAILURE_ELECTION)) != 0) - return (ret); - } -! } else { - /* - * One way or another, make sure the main thread is poked, so - * that we do the deferred clean-up. -*************** -*** 568,577 **** - } - - /* -! * PUBLIC: void __repmgr_cleanup_connection - * PUBLIC: __P((DB_ENV *, REPMGR_CONNECTION *)); - */ -! void - __repmgr_cleanup_connection(dbenv, conn) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; ---- 597,610 ---- - } - - /* -! * PUBLIC: int __repmgr_cleanup_connection - * PUBLIC: __P((DB_ENV *, REPMGR_CONNECTION *)); -+ * -+ * !!! -+ * Idempotent. This can be called repeatedly as blocking message threads (of -+ * which there could be multiples) wake up in case of error on the connection. - */ -! int - __repmgr_cleanup_connection(dbenv, conn) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; -*************** -*** 580,596 **** - QUEUED_OUTPUT *out; - REPMGR_FLAT *msg; - DBT *dbt; - - db_rep = dbenv->rep_handle; - -! TAILQ_REMOVE(&db_rep->connections, conn, entries); - if (conn->fd != INVALID_SOCKET) { -! (void)closesocket(conn->fd); - #ifdef DB_WIN32 -! (void)WSACloseEvent(conn->event_object); - #endif - } - - /* - * Deallocate any input and output buffers we may have. - */ ---- 613,643 ---- - QUEUED_OUTPUT *out; - REPMGR_FLAT *msg; - DBT *dbt; -+ int ret; - - db_rep = dbenv->rep_handle; - -! DB_ASSERT(dbenv, F_ISSET(conn, CONN_DEFUNCT) || db_rep->finished); -! - if (conn->fd != INVALID_SOCKET) { -! ret = closesocket(conn->fd); -! conn->fd = INVALID_SOCKET; -! if (ret == SOCKET_ERROR) { -! ret = net_errno; -! __db_err(dbenv, ret, "closing socket"); -! } - #ifdef DB_WIN32 -! if (!WSACloseEvent(conn->event_object) && ret != 0) -! ret = net_errno; - #endif -+ if (ret != 0) -+ return (ret); - } - -+ if (conn->blockers > 0) -+ return (__repmgr_signal(&conn->drained)); -+ -+ TAILQ_REMOVE(&db_rep->connections, conn, entries); - /* - * Deallocate any input and output buffers we may have. - */ -*************** -*** 614,620 **** ---- 661,669 ---- - __os_free(dbenv, out); - } - -+ ret = __repmgr_free_cond(&conn->drained); - __os_free(dbenv, conn); -+ return (ret); - } - - static int -*************** -*** 1063,1069 **** - - while (!TAILQ_EMPTY(&db_rep->connections)) { - conn = TAILQ_FIRST(&db_rep->connections); -! __repmgr_cleanup_connection(dbenv, conn); - } - - for (i = 0; i < db_rep->site_cnt; i++) { ---- 1112,1118 ---- - - while (!TAILQ_EMPTY(&db_rep->connections)) { - conn = TAILQ_FIRST(&db_rep->connections); -! (void)__repmgr_cleanup_connection(dbenv, conn); - } - - for (i = 0; i < db_rep->site_cnt; i++) { -*** repmgr/repmgr_posix.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_posix.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 21,26 **** ---- 21,28 ---- - size_t __repmgr_guesstimated_max = (128 * 1024); - #endif - -+ static int __repmgr_conn_work __P((DB_ENV *, -+ REPMGR_CONNECTION *, fd_set *, fd_set *, int)); - static int finish_connecting __P((DB_ENV *, REPMGR_CONNECTION *)); - - /* -*************** -*** 189,194 **** ---- 191,284 ---- - } - - /* -+ * PUBLIC: int __repmgr_await_drain __P((DB_ENV *, -+ * PUBLIC: REPMGR_CONNECTION *, db_timeout_t)); -+ * -+ * Waits for space to become available on the connection's output queue. -+ * Various ways we can exit: -+ * -+ * 1. queue becomes non-full -+ * 2. exceed time limit -+ * 3. connection becomes defunct (due to error in another thread) -+ * 4. repmgr is shutting down -+ * 5. any unexpected system resource failure -+ * -+ * In cases #3 and #5 we return an error code. Caller is responsible for -+ * distinguishing the remaining cases if desired. -+ * -+ * !!! -+ * Caller must hold repmgr->mutex. -+ */ -+ int -+ __repmgr_await_drain(dbenv, conn, timeout) -+ DB_ENV *dbenv; -+ REPMGR_CONNECTION *conn; -+ db_timeout_t timeout; -+ { -+ DB_REP *db_rep; -+ struct timespec deadline; -+ int ret; -+ -+ db_rep = dbenv->rep_handle; -+ -+ __repmgr_compute_wait_deadline(dbenv, &deadline, timeout); -+ -+ ret = 0; -+ while (conn->out_queue_length >= OUT_QUEUE_LIMIT) { -+ ret = pthread_cond_timedwait(&conn->drained, -+ &db_rep->mutex, &deadline); -+ switch (ret) { -+ case 0: -+ if (db_rep->finished) -+ goto out; /* #4. */ -+ /* -+ * Another thread could have stumbled into an error on -+ * the socket while we were waiting. -+ */ -+ if (F_ISSET(conn, CONN_DEFUNCT)) { -+ ret = DB_REP_UNAVAIL; /* #3. */ -+ goto out; -+ } -+ break; -+ case ETIMEDOUT: -+ F_SET(conn, CONN_CONGESTED); -+ ret = 0; -+ goto out; /* #2. */ -+ default: -+ goto out; /* #5. */ -+ } -+ } -+ /* #1. */ -+ -+ out: -+ return (ret); -+ } -+ -+ /* -+ * PUBLIC: int __repmgr_alloc_cond __P((cond_var_t *)); -+ * -+ * Initialize a condition variable (in allocated space). -+ */ -+ int -+ __repmgr_alloc_cond(c) -+ cond_var_t *c; -+ { -+ return (pthread_cond_init(c, NULL)); -+ } -+ -+ /* -+ * PUBLIC: int __repmgr_free_cond __P((cond_var_t *)); -+ * -+ * Clean up a previously initialized condition variable. -+ */ -+ int -+ __repmgr_free_cond(c) -+ cond_var_t *c; -+ { -+ return (pthread_cond_destroy(c)); -+ } -+ -+ /* - * PUBLIC: int __repmgr_init_sync __P((DB_ENV *, DB_REP *)); - * - * Allocate/initialize all data necessary for thread synchronization. This -*************** -*** 443,449 **** - REPMGR_RETRY *retry; - db_timespec timeout; - fd_set reads, writes; -! int ret, flow_control, maxfd, nready; - u_int8_t buf[10]; /* arbitrary size */ - - flow_control = FALSE; ---- 533,539 ---- - REPMGR_RETRY *retry; - db_timespec timeout; - fd_set reads, writes; -! int ret, flow_control, maxfd; - u_int8_t buf[10]; /* arbitrary size */ - - flow_control = FALSE; -*************** -*** 477,482 **** ---- 567,575 ---- - * each one. - */ - TAILQ_FOREACH(conn, &db_rep->connections, entries) { -+ if (F_ISSET(conn, CONN_DEFUNCT)) -+ continue; -+ - if (F_ISSET(conn, CONN_CONNECTING)) { - FD_SET((u_int)conn->fd, &reads); - FD_SET((u_int)conn->fd, &writes); -*************** -*** 533,616 **** - return (ret); - } - } -- nready = ret; -- - LOCK_MUTEX(db_rep->mutex); - -- /* -- * The first priority thing we must do is to clean up any -- * pending defunct connections. Otherwise, if they have any -- * lingering pending input, we get very confused if we try to -- * process it. -- * -- * The TAILQ_FOREACH macro would be suitable here, except that -- * it doesn't allow unlinking the current element, which is -- * needed for cleanup_connection. -- */ -- for (conn = TAILQ_FIRST(&db_rep->connections); -- conn != NULL; -- conn = next) { -- next = TAILQ_NEXT(conn, entries); -- if (F_ISSET(conn, CONN_DEFUNCT)) -- __repmgr_cleanup_connection(dbenv, conn); -- } -- - if ((ret = __repmgr_retry_connections(dbenv)) != 0) - goto out; -- if (nready == 0) -- continue; - - /* -! * Traverse the linked list. (Again, like TAILQ_FOREACH, except -! * that we need the ability to unlink an element along the way.) - */ - for (conn = TAILQ_FIRST(&db_rep->connections); - conn != NULL; - conn = next) { - next = TAILQ_NEXT(conn, entries); -! if (F_ISSET(conn, CONN_CONNECTING)) { -! if (FD_ISSET((u_int)conn->fd, &reads) || -! FD_ISSET((u_int)conn->fd, &writes)) { -! if ((ret = finish_connecting(dbenv, -! conn)) == DB_REP_UNAVAIL) { -! if ((ret = -! __repmgr_bust_connection( -! dbenv, conn, TRUE)) != 0) -! goto out; -! } else if (ret != 0) -! goto out; -! } -! continue; -! } -! -! /* -! * Here, the site is connected, and the FD_SET's are -! * valid. -! */ -! if (FD_ISSET((u_int)conn->fd, &writes)) { -! if ((ret = __repmgr_write_some( -! dbenv, conn)) == DB_REP_UNAVAIL) { -! if ((ret = -! __repmgr_bust_connection(dbenv, -! conn, TRUE)) != 0) -! goto out; -! continue; -! } else if (ret != 0) -! goto out; -! } -! -! if (!flow_control && -! FD_ISSET((u_int)conn->fd, &reads)) { -! if ((ret = __repmgr_read_from_site(dbenv, conn)) -! == DB_REP_UNAVAIL) { -! if ((ret = -! __repmgr_bust_connection(dbenv, -! conn, TRUE)) != 0) -! goto out; -! continue; -! } else if (ret != 0) -! goto out; -! } - } - - /* ---- 626,650 ---- - return (ret); - } - } - LOCK_MUTEX(db_rep->mutex); - - if ((ret = __repmgr_retry_connections(dbenv)) != 0) - goto out; - - /* -! * Examine each connection, to see what work needs to be done. -! * -! * The TAILQ_FOREACH macro would be suitable here, except that -! * it doesn't allow unlinking the current element, which is -! * needed for cleanup_connection. - */ - for (conn = TAILQ_FIRST(&db_rep->connections); - conn != NULL; - conn = next) { - next = TAILQ_NEXT(conn, entries); -! if ((ret = __repmgr_conn_work(dbenv, -! conn, &reads, &writes, flow_control)) != 0) -! goto out; - } - - /* -*************** -*** 637,642 **** ---- 671,719 ---- - } - - static int -+ __repmgr_conn_work(dbenv, conn, reads, writes, flow_control) -+ DB_ENV *dbenv; -+ REPMGR_CONNECTION *conn; -+ fd_set *reads, *writes; -+ int flow_control; -+ { -+ int ret; -+ u_int fd; -+ -+ if (F_ISSET(conn, CONN_DEFUNCT)) { -+ /* -+ * Deferred clean-up, from an error that happened in another -+ * thread, while we were sleeping in select(). -+ */ -+ return (__repmgr_cleanup_connection(dbenv, conn)); -+ } -+ -+ ret = 0; -+ fd = (u_int)conn->fd; -+ -+ if (F_ISSET(conn, CONN_CONNECTING)) { -+ if (FD_ISSET(fd, reads) || FD_ISSET(fd, writes)) -+ ret = finish_connecting(dbenv, conn); -+ } else { -+ /* -+ * Here, the site is connected, and the FD_SET's are valid. -+ */ -+ if (FD_ISSET(fd, writes)) -+ ret = __repmgr_write_some(dbenv, conn); -+ -+ if (ret == 0 && !flow_control && FD_ISSET(fd, reads)) -+ ret = __repmgr_read_from_site(dbenv, conn); -+ } -+ -+ if (ret == DB_REP_UNAVAIL) { -+ if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) -+ return (ret); -+ ret = __repmgr_cleanup_connection(dbenv, conn); -+ } -+ return (ret); -+ } -+ -+ static int - finish_connecting(dbenv, conn) - DB_ENV *dbenv; - REPMGR_CONNECTION *conn; -*************** -*** 657,662 **** ---- 734,740 ---- - goto err_rpt; - } - -+ DB_ASSERT(dbenv, F_ISSET(conn, CONN_CONNECTING)); - F_CLR(conn, CONN_CONNECTING); - return (__repmgr_send_handshake(dbenv, conn)); - -*************** -*** 671,690 **** - "connecting to %s", __repmgr_format_site_loc(site, buffer)); - - /* If we've exhausted the list of possible addresses, give up. */ -! if (ADDR_LIST_NEXT(&site->net_addr) == NULL) - return (DB_REP_UNAVAIL); - - /* - * This is just like a little mini-"bust_connection", except that we - * don't reschedule for later, 'cuz we're just about to try again right -! * now. - * - * !!! - * Which means this must only be called on the select() thread, since - * only there are we allowed to actually close a connection. - */ - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); -! __repmgr_cleanup_connection(dbenv, conn); - ret = __repmgr_connect_site(dbenv, eid); - DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); - return (ret); ---- 749,773 ---- - "connecting to %s", __repmgr_format_site_loc(site, buffer)); - - /* If we've exhausted the list of possible addresses, give up. */ -! if (ADDR_LIST_NEXT(&site->net_addr) == NULL) { -! STAT(db_rep->region->mstat.st_connect_fail++); - return (DB_REP_UNAVAIL); -+ } - - /* - * This is just like a little mini-"bust_connection", except that we - * don't reschedule for later, 'cuz we're just about to try again right -! * now. (Note that we don't have to worry about message threads -! * blocking on a full output queue: that can't happen when we're only -! * just connecting.) - * - * !!! - * Which means this must only be called on the select() thread, since - * only there are we allowed to actually close a connection. - */ - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); -! if ((ret = __repmgr_cleanup_connection(dbenv, conn)) != 0) -! return (ret); - ret = __repmgr_connect_site(dbenv, eid); - DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); - return (ret); -*** repmgr/repmgr_sel.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_sel.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 36,45 **** - - /* - * PUBLIC: int __repmgr_accept __P((DB_ENV *)); -- * -- * !!! -- * Only ever called in the select() thread, since we may call -- * __repmgr_bust_connection(..., TRUE). - */ - int - __repmgr_accept(dbenv) ---- 36,41 ---- -*************** -*** 133,139 **** - case 0: - return (0); - case DB_REP_UNAVAIL: -! return (__repmgr_bust_connection(dbenv, conn, TRUE)); - default: - return (ret); - } ---- 129,135 ---- - case 0: - return (0); - case DB_REP_UNAVAIL: -! return (__repmgr_bust_connection(dbenv, conn)); - default: - return (ret); - } -*************** -*** 254,263 **** - * starting with the "current" element of its address list and trying as many - * addresses as necessary until the list is exhausted. - * -- * !!! -- * Only ever called in the select() thread, since we may call -- * __repmgr_bust_connection(..., TRUE). -- * - * PUBLIC: int __repmgr_connect_site __P((DB_ENV *, u_int eid)); - */ - int ---- 250,255 ---- -*************** -*** 332,338 **** - case 0: - break; - case DB_REP_UNAVAIL: -! return (__repmgr_bust_connection(dbenv, con, TRUE)); - default: - return (ret); - } ---- 324,330 ---- - case 0: - break; - case DB_REP_UNAVAIL: -! return (__repmgr_bust_connection(dbenv, con)); - default: - return (ret); - } -*************** -*** 437,443 **** - - DB_SET_DBT(rec, my_addr->host, strlen(my_addr->host) + 1); - -! return (__repmgr_send_one(dbenv, conn, REPMGR_HANDSHAKE, &cntrl, &rec)); - } - - /* ---- 429,443 ---- - - DB_SET_DBT(rec, my_addr->host, strlen(my_addr->host) + 1); - -! /* -! * It would of course be disastrous to block the select() thread, so -! * pass the "blockable" argument as FALSE. Fortunately blocking should -! * never be necessary here, because the hand-shake is always the first -! * thing we send. Which is a good thing, because it would be almost as -! * disastrous if we allowed ourselves to drop a handshake. -! */ -! return (__repmgr_send_one(dbenv, -! conn, REPMGR_HANDSHAKE, &cntrl, &rec, FALSE)); - } - - /* -*************** -*** 854,859 **** ---- 854,872 ---- - conn->out_queue_length--; - if (--msg->ref_count <= 0) - __os_free(dbenv, msg); -+ -+ /* -+ * We've achieved enough movement to free up at least -+ * one space in the outgoing queue. Wake any message -+ * threads that may be waiting for space. Clear the -+ * CONGESTED status so that when the queue reaches the -+ * high-water mark again, the filling thread will be -+ * allowed to try waiting again. -+ */ -+ F_CLR(conn, CONN_CONGESTED); -+ if (conn->blockers > 0 && -+ (ret = __repmgr_signal(&conn->drained)) != 0) -+ return (ret); - } - } - -*** repmgr/repmgr_util.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_util.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 103,108 **** ---- 103,113 ---- - db_rep = dbenv->rep_handle; - if ((ret = __os_malloc(dbenv, sizeof(REPMGR_CONNECTION), &c)) != 0) - return (ret); -+ if ((ret = __repmgr_alloc_cond(&c->drained)) != 0) { -+ __os_free(dbenv, c); -+ return (ret); -+ } -+ c->blockers = 0; - - c->fd = s; - c->flags = flags; -*** repmgr/repmgr_windows.c 2007-10-31 10:23:52.000000000 -0700 ---- repmgr/repmgr_windows.c 2007-10-31 10:23:53.000000000 -0700 -*************** -*** 11,16 **** ---- 11,19 ---- - #define __INCLUDE_NETWORKING 1 - #include "db_int.h" - -+ /* Convert time-out from microseconds to milliseconds, rounding up. */ -+ #define DB_TIMEOUT_TO_WINDOWS_TIMEOUT(t) (((t) + (US_PER_MS - 1)) / US_PER_MS) -+ - typedef struct __ack_waiter { - HANDLE event; - const DB_LSN *lsnp; -*************** -*** 120,136 **** - { - DB_REP *db_rep; - ACK_WAITER *me; -! DWORD ret; -! DWORD timeout; - - db_rep = dbenv->rep_handle; - - if ((ret = allocate_wait_slot(dbenv, &me)) != 0) - goto err; - -- /* convert time-out from microseconds to milliseconds, rounding up */ - timeout = db_rep->ack_timeout > 0 ? -! ((db_rep->ack_timeout + (US_PER_MS - 1)) / US_PER_MS) : INFINITE; - me->lsnp = lsnp; - if ((ret = SignalObjectAndWait(db_rep->mutex, me->event, timeout, - FALSE)) == WAIT_FAILED) { ---- 123,137 ---- - { - DB_REP *db_rep; - ACK_WAITER *me; -! DWORD ret, timeout; - - db_rep = dbenv->rep_handle; - - if ((ret = allocate_wait_slot(dbenv, &me)) != 0) - goto err; - - timeout = db_rep->ack_timeout > 0 ? -! DB_TIMEOUT_TO_WINDOWS_TIMEOUT(db_rep->ack_timeout) : INFINITE; - me->lsnp = lsnp; - if ((ret = SignalObjectAndWait(db_rep->mutex, me->event, timeout, - FALSE)) == WAIT_FAILED) { -*************** -*** 211,216 **** ---- 212,296 ---- - db_rep->waiters->first_free = slot; - } - -+ /* (See requirements described in repmgr_posix.c.) */ -+ int -+ __repmgr_await_drain(dbenv, conn, timeout) -+ DB_ENV *dbenv; -+ REPMGR_CONNECTION *conn; -+ db_timeout_t timeout; -+ { -+ DB_REP *db_rep; -+ db_timespec deadline, delta, now; -+ db_timeout_t t; -+ DWORD duration, ret; -+ int round_up; -+ -+ db_rep = dbenv->rep_handle; -+ -+ __os_gettime(dbenv, &deadline); -+ DB_TIMEOUT_TO_TIMESPEC(timeout, &delta); -+ timespecadd(&deadline, &delta); -+ -+ while (conn->out_queue_length >= OUT_QUEUE_LIMIT) { -+ if (!ResetEvent(conn->drained)) -+ return (GetLastError()); -+ -+ /* How long until the deadline? */ -+ __os_gettime(dbenv, &now); -+ if (timespeccmp(&now, &deadline, >=)) { -+ F_SET(conn, CONN_CONGESTED); -+ return (0); -+ } -+ delta = deadline; -+ timespecsub(&delta, &now); -+ round_up = TRUE; -+ DB_TIMESPEC_TO_TIMEOUT(t, &delta, round_up); -+ duration = DB_TIMEOUT_TO_WINDOWS_TIMEOUT(t); -+ -+ ret = SignalObjectAndWait(db_rep->mutex, -+ conn->drained, duration, FALSE); -+ LOCK_MUTEX(db_rep->mutex); -+ if (ret == WAIT_FAILED) -+ return (GetLastError()); -+ else if (ret == WAIT_TIMEOUT) { -+ F_SET(conn, CONN_CONGESTED); -+ return (0); -+ } else -+ DB_ASSERT(dbenv, ret == WAIT_OBJECT_0); -+ -+ if (db_rep->finished) -+ return (0); -+ if (F_ISSET(conn, CONN_DEFUNCT)) -+ return (DB_REP_UNAVAIL); -+ } -+ return (0); -+ } -+ -+ /* -+ * Creates a manual reset event, which is usually our best choice when we may -+ * have multiple threads waiting on a single event. -+ */ -+ int -+ __repmgr_alloc_cond(c) -+ cond_var_t *c; -+ { -+ HANDLE event; -+ -+ if ((event = CreateEvent(NULL, TRUE, FALSE, NULL)) == NULL) -+ return (GetLastError()); -+ *c = event; -+ return (0); -+ } -+ -+ int -+ __repmgr_free_cond(c) -+ cond_var_t *c; -+ { -+ if (CloseHandle(*c)) -+ return (0); -+ return (GetLastError()); -+ } -+ - /* - * Make resource allocation an all-or-nothing affair, outside of this and the - * close_sync function. db_rep->waiters should be non-NULL iff all of these -*************** -*** 488,493 **** ---- 568,576 ---- - * don't hurt anything flow-control-wise. - */ - TAILQ_FOREACH(conn, &db_rep->connections, entries) { -+ if (F_ISSET(conn, CONN_DEFUNCT)) -+ continue; -+ - if (F_ISSET(conn, CONN_CONNECTING) || - !STAILQ_EMPTY(&conn->outbound_queue) || - (!flow_control || !IS_VALID_EID(conn->eid))) { -*************** -*** 534,541 **** - conn != NULL; - conn = next) { - next = TAILQ_NEXT(conn, entries); -! if (F_ISSET(conn, CONN_DEFUNCT)) -! __repmgr_cleanup_connection(dbenv, conn); - } - - /* ---- 617,626 ---- - conn != NULL; - conn = next) { - next = TAILQ_NEXT(conn, entries); -! if (F_ISSET(conn, CONN_DEFUNCT) && -! (ret = __repmgr_cleanup_connection(dbenv, -! conn)) != 0) -! goto unlock; - } - - /* -*************** -*** 587,597 **** - return (ret); - } - -- /* -- * !!! -- * Only ever called on the select() thread, since we may call -- * __repmgr_bust_connection(..., TRUE). -- */ - static int - handle_completion(dbenv, conn) - DB_ENV *dbenv; ---- 672,677 ---- -*************** -*** 651,660 **** - } - } - -! return (0); -! -! err: if (ret == DB_REP_UNAVAIL) -! return (__repmgr_bust_connection(dbenv, conn, TRUE)); - return (ret); - } - ---- 731,742 ---- - } - } - -! err: -! if (ret == DB_REP_UNAVAIL) { -! if ((ret = __repmgr_bust_connection(dbenv, conn)) != 0) -! return (ret); -! ret = __repmgr_cleanup_connection(dbenv, conn); -! } - return (ret); - } - -*************** -*** 708,714 **** - } - - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); -! __repmgr_cleanup_connection(dbenv, conn); - ret = __repmgr_connect_site(dbenv, eid); - DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); - return (ret); ---- 790,797 ---- - } - - DB_ASSERT(dbenv, !TAILQ_EMPTY(&db_rep->connections)); -! if ((ret = __repmgr_cleanup_connection(dbenv, conn)) != 0) -! return (ret); - ret = __repmgr_connect_site(dbenv, eid); - DB_ASSERT(dbenv, ret != DB_REP_UNAVAIL); - return (ret); Added: csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.1 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.1 (rev 0) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.1 2009-10-01 13:10:42 UTC (rev 6643) @@ -0,0 +1,75 @@ +*** sequence/sequence.c.orig 2008-05-05 13:25:09.000000000 -0700 +--- sequence/sequence.c 2008-08-15 09:58:46.000000000 -0700 +*************** +*** 187,193 **** + if ((ret = __db_get_flags(dbp, &tflags)) != 0) + goto err; + +! if (DB_IS_READONLY(dbp)) { + ret = __db_rdonly(dbp->env, "DB_SEQUENCE->open"); + goto err; + } +--- 187,197 ---- + if ((ret = __db_get_flags(dbp, &tflags)) != 0) + goto err; + +! /* +! * We can let replication clients open sequences, but must +! * check later that they do not update them. +! */ +! if (F_ISSET(dbp, DB_AM_RDONLY)) { + ret = __db_rdonly(dbp->env, "DB_SEQUENCE->open"); + goto err; + } +*************** +*** 244,249 **** +--- 248,258 ---- + if ((ret != DB_NOTFOUND && ret != DB_KEYEMPTY) || + !LF_ISSET(DB_CREATE)) + goto err; ++ if (IS_REP_CLIENT(env) && ++ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { ++ ret = __db_rdonly(env, "DB_SEQUENCE->open"); ++ goto err; ++ } + ret = 0; + + rp = &seq->seq_record; +*************** +*** 296,302 **** + */ + rp = seq->seq_data.data; + if (rp->seq_version == DB_SEQUENCE_OLDVER) { +! oldver: rp->seq_version = DB_SEQUENCE_VERSION; + if (!F_ISSET(env, ENV_LITTLEENDIAN)) { + if (IS_DB_AUTO_COMMIT(dbp, txn)) { + if ((ret = +--- 305,316 ---- + */ + rp = seq->seq_data.data; + if (rp->seq_version == DB_SEQUENCE_OLDVER) { +! oldver: if (IS_REP_CLIENT(env) && +! !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { +! ret = __db_rdonly(env, "DB_SEQUENCE->open"); +! goto err; +! } +! rp->seq_version = DB_SEQUENCE_VERSION; + if (!F_ISSET(env, ENV_LITTLEENDIAN)) { + if (IS_DB_AUTO_COMMIT(dbp, txn)) { + if ((ret = +*************** +*** 707,712 **** +--- 721,733 ---- + + MUTEX_LOCK(env, seq->mtx_seq); + ++ if (handle_check && IS_REP_CLIENT(env) && ++ !F_ISSET(dbp, DB_AM_NOT_DURABLE)) { ++ ret = __db_rdonly(env, "DB_SEQUENCE->get"); ++ goto err; ++ } ++ ++ + if (rp->seq_min + delta > rp->seq_max) { + __db_errx(env, "Sequence overflow"); + ret = EINVAL; Added: csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.2 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.2 (rev 0) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.2 2009-10-01 13:10:42 UTC (rev 6643) @@ -0,0 +1,71 @@ +Index: lock/lock.c +=================================================================== +RCS file: /a/CVSROOT/db/lock/lock.c,v +retrieving revision 12.61 +diff -c -r12.61 lock.c +*** lock/lock.c 22 Jul 2008 12:08:53 -0000 12.61 +--- lock/lock.c 19 Aug 2008 17:28:24 -0000 +*************** +*** 1278,1287 **** + SH_TAILQ_REMOVE( + <->obj_tab[obj_ndx], sh_obj, links, __db_lockobj); + if (sh_obj->lockobj.size > sizeof(sh_obj->objdata)) { +! LOCK_REGION_LOCK(env); + __env_alloc_free(<->reginfo, + SH_DBT_PTR(&sh_obj->lockobj)); +! LOCK_REGION_UNLOCK(env); + } + SH_TAILQ_INSERT_HEAD( + &FREE_OBJS(lt, part_id), sh_obj, links, __db_lockobj); +--- 1278,1289 ---- + SH_TAILQ_REMOVE( + <->obj_tab[obj_ndx], sh_obj, links, __db_lockobj); + if (sh_obj->lockobj.size > sizeof(sh_obj->objdata)) { +! if (region->part_t_size != 1) +! LOCK_REGION_LOCK(env); + __env_alloc_free(<->reginfo, + SH_DBT_PTR(&sh_obj->lockobj)); +! if (region->part_t_size != 1) +! LOCK_REGION_UNLOCK(env); + } + SH_TAILQ_INSERT_HEAD( + &FREE_OBJS(lt, part_id), sh_obj, links, __db_lockobj); +*************** +*** 1470,1484 **** + if (obj->size <= sizeof(sh_obj->objdata)) + p = sh_obj->objdata; + else { +! LOCK_REGION_LOCK(env); + if ((ret = + __env_alloc(<->reginfo, obj->size, &p)) != 0) { + __db_errx(env, + "No space for lock object storage"); +! LOCK_REGION_UNLOCK(env); + goto err; + } +! LOCK_REGION_UNLOCK(env); + } + + memcpy(p, obj->data, obj->size); +--- 1472,1492 ---- + if (obj->size <= sizeof(sh_obj->objdata)) + p = sh_obj->objdata; + else { +! /* +! * If we have only one partition, the region is locked. +! */ +! if (region->part_t_size != 1) +! LOCK_REGION_LOCK(env); + if ((ret = + __env_alloc(<->reginfo, obj->size, &p)) != 0) { + __db_errx(env, + "No space for lock object storage"); +! if (region->part_t_size != 1) +! LOCK_REGION_UNLOCK(env); + goto err; + } +! if (region->part_t_size != 1) +! LOCK_REGION_UNLOCK(env); + } + + memcpy(p, obj->data, obj->size); Added: csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.3 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.3 (rev 0) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.3 2009-10-01 13:10:42 UTC (rev 6643) @@ -0,0 +1,314 @@ +*** lock/lock_deadlock.c 2008-03-11 00:31:33.000000000 +1100 +--- lock/lock_deadlock.c 2008-12-16 21:54:18.000000000 +1100 +*************** +*** 121,127 **** + DB_LOCKTAB *lt; + db_timespec now; + locker_info *idmap; +! u_int32_t *bitmap, *copymap, **deadp, **free_me, *tmpmap; + u_int32_t i, cid, keeper, killid, limit, nalloc, nlockers; + u_int32_t lock_max, txn_max; + int ret, status; +--- 121,127 ---- + DB_LOCKTAB *lt; + db_timespec now; + locker_info *idmap; +! u_int32_t *bitmap, *copymap, **deadp, **deadlist, *tmpmap; + u_int32_t i, cid, keeper, killid, limit, nalloc, nlockers; + u_int32_t lock_max, txn_max; + int ret, status; +*************** +*** 133,139 **** + if (IS_REP_CLIENT(env)) + atype = DB_LOCK_MINWRITE; + +! free_me = NULL; + + lt = env->lk_handle; + if (rejectp != NULL) +--- 133,140 ---- + if (IS_REP_CLIENT(env)) + atype = DB_LOCK_MINWRITE; + +! copymap = tmpmap = NULL; +! deadlist = NULL; + + lt = env->lk_handle; + if (rejectp != NULL) +*************** +*** 179,189 **** + memcpy(copymap, bitmap, nlockers * sizeof(u_int32_t) * nalloc); + + if ((ret = __os_calloc(env, sizeof(u_int32_t), nalloc, &tmpmap)) != 0) +! goto err1; + + /* Find a deadlock. */ + if ((ret = +! __dd_find(env, bitmap, idmap, nlockers, nalloc, &deadp)) != 0) + return (ret); + + /* +--- 180,190 ---- + memcpy(copymap, bitmap, nlockers * sizeof(u_int32_t) * nalloc); + + if ((ret = __os_calloc(env, sizeof(u_int32_t), nalloc, &tmpmap)) != 0) +! goto err; + + /* Find a deadlock. */ + if ((ret = +! __dd_find(env, bitmap, idmap, nlockers, nalloc, &deadlist)) != 0) + return (ret); + + /* +*************** +*** 204,211 **** + txn_max = TXN_MAXIMUM; + + killid = BAD_KILLID; +! free_me = deadp; +! for (; *deadp != NULL; deadp++) { + if (rejectp != NULL) + ++*rejectp; + killid = (u_int32_t)(*deadp - bitmap) / nalloc; +--- 205,211 ---- + txn_max = TXN_MAXIMUM; + + killid = BAD_KILLID; +! for (deadp = deadlist; *deadp != NULL; deadp++) { + if (rejectp != NULL) + ++*rejectp; + killid = (u_int32_t)(*deadp - bitmap) / nalloc; +*************** +*** 342,352 **** + __db_msg(env, + "Aborting locker %lx", (u_long)idmap[killid].id); + } +! __os_free(env, tmpmap); +! err1: __os_free(env, copymap); +! +! err: if (free_me != NULL) +! __os_free(env, free_me); + __os_free(env, bitmap); + __os_free(env, idmap); + +--- 342,353 ---- + __db_msg(env, + "Aborting locker %lx", (u_long)idmap[killid].id); + } +! err: if(copymap != NULL) +! __os_free(env, copymap); +! if (deadlist != NULL) +! __os_free(env, deadlist); +! if(tmpmap != NULL) +! __os_free(env, tmpmap); + __os_free(env, bitmap); + __os_free(env, idmap); + +*************** +*** 360,365 **** +--- 361,377 ---- + + #define DD_INVALID_ID ((u_int32_t) -1) + ++ /* ++ * __dd_build -- ++ * Build the lock dependency bit maps. ++ * Notes on syncronization: ++ * LOCK_SYSTEM_LOCK is used to hold objects locked when we have ++ * a single partition. ++ * LOCK_LOCKERS is held while we are walking the lockers list and ++ * to single thread the use of lockerp->dd_id. ++ * LOCK_DD protects the DD list of objects. ++ */ ++ + static int + __dd_build(env, atype, bmp, nlockers, allocp, idmap, rejectp) + ENV *env; +*************** +*** 393,398 **** +--- 405,411 ---- + * In particular we do not build the conflict array and our caller + * needs to expect this. + */ ++ LOCK_SYSTEM_LOCK(lt, region); + if (atype == DB_LOCK_EXPIRE) { + skip: LOCK_DD(env, region); + op = SH_TAILQ_FIRST(®ion->dd_objs, __db_lockobj); +*************** +*** 430,446 **** + OBJECT_UNLOCK(lt, region, indx); + } + UNLOCK_DD(env, region); + goto done; + } + + /* +! * We'll check how many lockers there are, add a few more in for +! * good measure and then allocate all the structures. Then we'll +! * verify that we have enough room when we go back in and get the +! * mutex the second time. + */ +! retry: count = region->stat.st_nlockers; + if (count == 0) { + *nlockers = 0; + return (0); + } +--- 443,460 ---- + OBJECT_UNLOCK(lt, region, indx); + } + UNLOCK_DD(env, region); ++ LOCK_SYSTEM_UNLOCK(lt, region); + goto done; + } + + /* +! * Allocate after locking the region +! * to make sure the structures are large enough. + */ +! LOCK_LOCKERS(env, region); +! count = region->stat.st_nlockers; + if (count == 0) { ++ UNLOCK_LOCKERS(env, region); + *nlockers = 0; + return (0); + } +*************** +*** 448,497 **** + if (FLD_ISSET(env->dbenv->verbose, DB_VERB_DEADLOCK)) + __db_msg(env, "%lu lockers", (u_long)count); + +- count += 20; + nentries = (u_int32_t)DB_ALIGN(count, 32) / 32; + +! /* +! * Allocate enough space for a count by count bitmap matrix. +! * +! * XXX +! * We can probably save the malloc's between iterations just +! * reallocing if necessary because count grew by too much. +! */ + if ((ret = __os_calloc(env, (size_t)count, +! sizeof(u_int32_t) * nentries, &bitmap)) != 0) + return (ret); + + if ((ret = __os_calloc(env, + sizeof(u_int32_t), nentries, &tmpmap)) != 0) { + __os_free(env, bitmap); + return (ret); + } + + if ((ret = __os_calloc(env, + (size_t)count, sizeof(locker_info), &id_array)) != 0) { + __os_free(env, bitmap); + __os_free(env, tmpmap); + return (ret); + } + + /* +- * Now go back in and actually fill in the matrix. +- */ +- if (region->stat.st_nlockers > count) { +- __os_free(env, bitmap); +- __os_free(env, tmpmap); +- __os_free(env, id_array); +- goto retry; +- } +- +- /* + * First we go through and assign each locker a deadlock detector id. + */ + id = 0; +- LOCK_LOCKERS(env, region); + SH_TAILQ_FOREACH(lip, ®ion->lockers, ulinks, __db_locker) { + if (lip->master_locker == INVALID_ROFF) { + lip->dd_id = id++; + id_array[lip->dd_id].id = lip->id; + switch (atype) { +--- 462,498 ---- + if (FLD_ISSET(env->dbenv->verbose, DB_VERB_DEADLOCK)) + __db_msg(env, "%lu lockers", (u_long)count); + + nentries = (u_int32_t)DB_ALIGN(count, 32) / 32; + +! /* Allocate enough space for a count by count bitmap matrix. */ + if ((ret = __os_calloc(env, (size_t)count, +! sizeof(u_int32_t) * nentries, &bitmap)) != 0) { +! UNLOCK_LOCKERS(env, region); + return (ret); ++ } + + if ((ret = __os_calloc(env, + sizeof(u_int32_t), nentries, &tmpmap)) != 0) { ++ UNLOCK_LOCKERS(env, region); + __os_free(env, bitmap); + return (ret); + } + + if ((ret = __os_calloc(env, + (size_t)count, sizeof(locker_info), &id_array)) != 0) { ++ UNLOCK_LOCKERS(env, region); + __os_free(env, bitmap); + __os_free(env, tmpmap); + return (ret); + } + + /* + * First we go through and assign each locker a deadlock detector id. + */ + id = 0; + SH_TAILQ_FOREACH(lip, ®ion->lockers, ulinks, __db_locker) { + if (lip->master_locker == INVALID_ROFF) { ++ DB_ASSERT(env, id < count); + lip->dd_id = id++; + id_array[lip->dd_id].id = lip->id; + switch (atype) { +*************** +*** 510,516 **** + lip->dd_id = DD_INVALID_ID; + + } +- UNLOCK_LOCKERS(env, region); + + /* + * We only need consider objects that have waiters, so we use +--- 511,516 ---- +*************** +*** 669,675 **** + * status after building the bit maps so that we will not detect + * a blocked transaction without noting that it is already aborting. + */ +- LOCK_LOCKERS(env, region); + for (id = 0; id < count; id++) { + if (!id_array[id].valid) + continue; +--- 669,674 ---- +*************** +*** 738,743 **** +--- 737,743 ---- + id_array[id].in_abort = 1; + } + UNLOCK_LOCKERS(env, region); ++ LOCK_SYSTEM_UNLOCK(lt, region); + + /* + * Now we can release everything except the bitmap matrix that we +*************** +*** 839,844 **** +--- 839,845 ---- + ret = 0; + + /* We must lock so this locker cannot go away while we abort it. */ ++ LOCK_SYSTEM_LOCK(lt, region); + LOCK_LOCKERS(env, region); + + /* +*************** +*** 895,900 **** +--- 896,902 ---- + done: OBJECT_UNLOCK(lt, region, info->last_ndx); + err: + out: UNLOCK_LOCKERS(env, region); ++ LOCK_SYSTEM_UNLOCK(lt, region); + return (ret); + } + Added: csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.4 =================================================================== --- csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.4 (rev 0) +++ csw/mgar/pkg/bdb47/trunk/files/patch.4.7.25.4 2009-10-01 13:10:42 UTC (rev 6643) @@ -0,0 +1,183 @@ +*** dbinc/repmgr.h.orig 2009-05-04 10:33:55.000000000 -0400 +--- dbinc/repmgr.h 2009-05-04 10:27:26.000000000 -0400 +*************** +*** 374,379 **** +--- 374,380 ---- + #define SITE_FROM_EID(eid) (&db_rep->sites[eid]) + #define EID_FROM_SITE(s) ((int)((s) - (&db_rep->sites[0]))) + #define IS_VALID_EID(e) ((e) >= 0) ++ #define IS_KNOWN_REMOTE_SITE(e) ((e) >= 0 && ((u_int)(e)) < db_rep->site_cnt) + #define SELF_EID INT_MAX + + #define IS_PEER_POLICY(p) ((p) == DB_REPMGR_ACKS_ALL_PEERS || \ +*** rep/rep_elect.c.orig 2009-05-04 10:35:50.000000000 -0400 +--- rep/rep_elect.c 2009-05-04 10:31:24.000000000 -0400 +*************** +*** 33,39 **** + static int __rep_fire_elected __P((ENV *, REP *, u_int32_t)); + static void __rep_elect_master __P((ENV *, REP *)); + static int __rep_tally __P((ENV *, REP *, int, u_int32_t *, u_int32_t, roff_t)); +! static int __rep_wait __P((ENV *, db_timeout_t *, int *, int, u_int32_t)); + + /* + * __rep_elect -- +--- 33,39 ---- + static int __rep_fire_elected __P((ENV *, REP *, u_int32_t)); + static void __rep_elect_master __P((ENV *, REP *)); + static int __rep_tally __P((ENV *, REP *, int, u_int32_t *, u_int32_t, roff_t)); +! static int __rep_wait __P((ENV *, db_timeout_t *, int, u_int32_t)); + + /* + * __rep_elect -- +*************** +*** 55,61 **** + ENV *env; + LOG *lp; + REP *rep; +! int done, eid, elected, full_elect, locked, in_progress, need_req; + int ret, send_vote, t_ret; + u_int32_t ack, ctlflags, egen, nsites, orig_tally, priority, realpri; + u_int32_t tiebreaker; +--- 55,61 ---- + ENV *env; + LOG *lp; + REP *rep; +! int done, elected, full_elect, locked, in_progress, need_req; + int ret, send_vote, t_ret; + u_int32_t ack, ctlflags, egen, nsites, orig_tally, priority, realpri; + u_int32_t tiebreaker; +*************** +*** 181,188 **** + REP_SYSTEM_UNLOCK(env); + (void)__rep_send_message(env, DB_EID_BROADCAST, + REP_MASTER_REQ, NULL, NULL, 0, 0); +! ret = __rep_wait(env, &to, &eid, +! 0, REP_F_EPHASE0); + REP_SYSTEM_LOCK(env); + F_CLR(rep, REP_F_EPHASE0); + switch (ret) { +--- 181,187 ---- + REP_SYSTEM_UNLOCK(env); + (void)__rep_send_message(env, DB_EID_BROADCAST, + REP_MASTER_REQ, NULL, NULL, 0, 0); +! ret = __rep_wait(env, &to, 0, REP_F_EPHASE0); + REP_SYSTEM_LOCK(env); + F_CLR(rep, REP_F_EPHASE0); + switch (ret) { +*************** +*** 286,296 **** + REP_SYSTEM_LOCK(env); + goto vote; + } +! ret = __rep_wait(env, &to, &eid, full_elect, REP_F_EPHASE1); + switch (ret) { + case 0: + /* Check if election complete or phase complete. */ +! if (eid != DB_EID_INVALID && !IN_ELECTION(rep)) { + RPRINT(env, DB_VERB_REP_ELECT, + (env, "Ended election phase 1")); + goto edone; +--- 285,295 ---- + REP_SYSTEM_LOCK(env); + goto vote; + } +! ret = __rep_wait(env, &to, full_elect, REP_F_EPHASE1); + switch (ret) { + case 0: + /* Check if election complete or phase complete. */ +! if (!IN_ELECTION(rep)) { + RPRINT(env, DB_VERB_REP_ELECT, + (env, "Ended election phase 1")); + goto edone; +*************** +*** 398,412 **** + REP_SYSTEM_LOCK(env); + goto i_won; + } +! ret = __rep_wait(env, &to, &eid, full_elect, REP_F_EPHASE2); + RPRINT(env, DB_VERB_REP_ELECT, + (env, "Ended election phase 2 %d", ret)); + switch (ret) { + case 0: +! if (eid != DB_EID_INVALID) +! goto edone; +! ret = DB_REP_UNAVAIL; +! break; + case DB_REP_EGENCHG: + if (to > timeout) + to = timeout; +--- 397,408 ---- + REP_SYSTEM_LOCK(env); + goto i_won; + } +! ret = __rep_wait(env, &to, full_elect, REP_F_EPHASE2); + RPRINT(env, DB_VERB_REP_ELECT, + (env, "Ended election phase 2 %d", ret)); + switch (ret) { + case 0: +! goto edone; + case DB_REP_EGENCHG: + if (to > timeout) + to = timeout; +*************** +*** 1050,1062 **** + ENV *env; + REP *rep; + { +- /* +- * We often come through here twice, sometimes even more. We mustn't +- * let the redundant calls affect stats counting. But rep_elect relies +- * on this first part for setting eidp. +- */ +- rep->master_id = rep->eid; +- + if (F_ISSET(rep, REP_F_MASTERELECT | REP_F_MASTER)) { + /* We've been through here already; avoid double counting. */ + return; +--- 1046,1051 ---- +*************** +*** 1093,1102 **** + (timeout > 5000000) ? 500000 : ((timeout >= 10) ? timeout / 10 : 1); + + static int +! __rep_wait(env, timeoutp, eidp, full_elect, flags) + ENV *env; + db_timeout_t *timeoutp; +! int *eidp, full_elect; + u_int32_t flags; + { + DB_REP *db_rep; +--- 1082,1091 ---- + (timeout > 5000000) ? 500000 : ((timeout >= 10) ? timeout / 10 : 1); + + static int +! __rep_wait(env, timeoutp, full_elect, flags) + ENV *env; + db_timeout_t *timeoutp; +! int full_elect; + u_int32_t flags; + { + DB_REP *db_rep; +*************** +*** 1174,1180 **** + F_CLR(rep, REP_F_EGENUPDATE); + ret = DB_REP_EGENCHG; + } else if (phase_over) { +- *eidp = rep->master_id; + done = 1; + ret = 0; + } +--- 1163,1168 ---- +*** repmgr/repmgr_net.c.orig 2009-05-04 10:34:46.000000000 -0400 +--- repmgr/repmgr_net.c 2009-05-04 10:27:26.000000000 -0400 +*************** +*** 100,105 **** +--- 100,107 ---- + control, rec, &nsites_sent, &npeers_sent)) != 0) + goto out; + } else { ++ DB_ASSERT(env, IS_KNOWN_REMOTE_SITE(eid)); ++ + /* + * If this is a request that can be sent anywhere, then see if + * we can send it to our peer (to save load on the master), but This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 15:16:29 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 13:16:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[6644] csw/mgar/pkg Message-ID: Revision: 6644 http://gar.svn.sourceforge.net/gar/?rev=6644&view=rev Author: dmichelsen Date: 2009-10-01 13:16:29 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb33: Initial commit Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile csw/mgar/pkg/bdb33/trunk/checksums Added Paths: ----------- csw/mgar/pkg/bdb33/ csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.1 csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.2 csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool Removed Paths: ------------- csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.1.diff csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.2.diff csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.3.diff csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.4.diff csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.5.diff csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool.diff Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb42/trunk/Makefile 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,5 +1,5 @@ GARNAME = db -GARVERSION = 4.2.52 +GARVERSION = 3.3.11 CATEGORIES = lib DESCRIPTION = embedded database libraries and utilities @@ -16,7 +16,7 @@ MASTER_SITES = http://download.oracle.com/berkeley-db/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -PACKAGES = CSWbdb42 CSWbdb42-devel CSWbdb42-doc +PACKAGES = CSWbdb33 CSWbdb33-devel CSWbdb33-doc # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz @@ -27,13 +27,13 @@ PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 -PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*.diff)) +PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) BUILD64 = 1 CONFIGURE_SCRIPTS = dist -prefix = $(BUILD_PREFIX)/bdb42 +prefix = $(BUILD_PREFIX)/bdb33 docdir = $(BUILD_PREFIX)/share/doc CONFIGURE_ARGS = $(DIRPATHS) @@ -50,38 +50,38 @@ CONFIGURE_ARGS += --with-tcl=$(libdir) endif -FIXCONFIG_DIRS = $(DESTDIR)$(prefix)/bdb42/lib +FIXCONFIG_DIRS = $(DESTDIR)$(prefix)/bdb33/lib # bdb tests are *very* time consuming TEST_SCRIPTS = NO_ISAEXEC = 1 -PACKAGES = CSWbdb42 CSWbdb42-devel CSWbdb42-doc +PACKAGES = CSWbdb33 CSWbdb33-devel CSWbdb33-doc -CATALOGNAME_CSWbdb42 = berkeleydb42 -CATALOGNAME_CSWbdb42-devel = berkeleydb42_devel -CATALOGNAME_CSWbdb42-doc = berkeleydb42_doc +CATALOGNAME_CSWbdb33 = berkeleydb33 +CATALOGNAME_CSWbdb33-devel = berkeleydb33_devel +CATALOGNAME_CSWbdb33-doc = berkeleydb33_doc -ARCHALL_CSWbdb42-doc = 1 +ARCHALL_CSWbdb33-doc = 1 -SPKG_DESC_CSWbdb42 = BerkeleyDB 4.2 embedded database libraries and utilities -SPKG_DESC_CSWbdb42-devel = BerkeleyDB 4.2 development support -SPKG_DESC_CSWbdb42-doc = BerkeleyDB 4.2 documentation +SPKG_DESC_CSWbdb33 = BerkeleyDB 3.3 embedded database libraries and utilities +SPKG_DESC_CSWbdb33-devel = BerkeleyDB 3.3 development support +SPKG_DESC_CSWbdb33-doc = BerkeleyDB 3.3 documentation -REQUIRED_PKGS_CSWbdb42-devel = CSWbdb42 -INCOMPATIBLE_PKGS_CSWbdb42-doc = CSWbdb42doc +REQUIRED_PKGS_CSWbdb33-devel = CSWbdb33 +INCOMPATIBLE_PKGS_CSWbdb33-doc = CSWbdb33doc LICENSE = LICENSE # Leave the docs where they are for now -#EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb42/,p" -#EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb42/,p" +#EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" +#EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" -#PKGFILES_CSWbdb42-doc = $(PKGFILES_DOC) -PKGFILES_CSWbdb42-doc = $(prefix)/docs/.* +#PKGFILES_CSWbdb33-doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb33-doc = $(prefix)/docs/.* -PKGFILES_CSWbdb42-devel = $(PKGFILES_DEVEL) +PKGFILES_CSWbdb33-devel = $(PKGFILES_DEVEL) include gar/category.mk Modified: csw/mgar/pkg/bdb33/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb42/trunk/checksums 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/checksums 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,7 +1,4 @@ -8b5cff6eb83972afdd8e0b821703c33c download/db-4.2.52.tar.gz -1227f5f9ff43d48b5b1759e113a1c2d7 download/patch.4.2.52.1.diff -3da7efd8d29919a9113e2f6f5166f5b7 download/patch.4.2.52.2.diff -0bf9ebbe852652bed433e522928d40ec download/patch.4.2.52.3.diff -9cfeff4dce0c11372c0b04b134f8faef download/patch.4.2.52.4.diff -99836f962361da8936219cc193edc7ed download/patch.4.2.52.5.diff -d49545b2691c511276b73bb6c3ec64c3 download/patch.64bit-libtool.diff +b6ae24fa55713f17a9ac3219d987722c download/db-3.3.11.tar.gz +a6c5fc6387c57361fbdf29ca63b597c3 download/patch.3.3.11.1 +fca939f74fc6555e1319626ceca35b33 download/patch.3.3.11.2 +d49545b2691c511276b73bb6c3ec64c3 download/patch.64bit-libtool Added: csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.1 =================================================================== --- csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.1 (rev 0) +++ csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.1 2009-10-01 13:16:29 UTC (rev 6644) @@ -0,0 +1,96 @@ +*** db185/db185.c 2001/04/10 20:43:53 11.18 +--- db185/db185.c 2001/07/30 14:12:47 +*************** +*** 40,47 **** +--- 40,52 ---- + + /* + * EXTERN: #define dbopen __db185_open ++ * EXTERN: #ifdef _DB185_INT_H_ + * EXTERN: DB185 *__db185_open + * EXTERN: __P((const char *, int, int, DBTYPE, const void *)); ++ * EXTERN: #else ++ * EXTERN: DB *__db185_open ++ * EXTERN: __P((const char *, int, int, DBTYPE, const void *)); ++ * EXTERN: #endif + */ + DB185 * + __db185_open(file, oflags, mode, type, openinfo) +*** db185/db185_int.in 2001/04/10 20:43:54 11.9 +--- db185/db185_int.in 2001/07/30 14:12:47 +*************** +*** 39,46 **** + * $Id: patch.3.3.11.1,v 1.1 2003/01/10 13:43:30 mao Exp $ + */ + +! #ifndef _DB_185_H_ +! #define _DB_185_H_ + + /* Routine flags. */ + #define R_CURSOR 1 /* del, put, seq */ +--- 39,46 ---- + * $Id: patch.3.3.11.1,v 1.1 2003/01/10 13:43:30 mao Exp $ + */ + +! #ifndef _DB185_INT_H_ +! #define _DB185_INT_H_ + + /* Routine flags. */ + #define R_CURSOR 1 /* del, put, seq */ +*** include_auto/db185_ext.in 2001/04/10 20:44:20 1.1 +--- include_auto/db185_ext.in 2001/07/30 14:12:48 +*************** +*** 3,11 **** + extern "C" { + #endif + #define dbopen __db185_open + DB185 *__db185_open __P((const char *, int, int, DBTYPE, const void *)); + #if defined(__cplusplus) + } + #endif + +! #endif /* !_DB_185_H_ */ +--- 3,15 ---- + extern "C" { + #endif + #define dbopen __db185_open ++ #ifdef _DB185_INT_H_ + DB185 *__db185_open __P((const char *, int, int, DBTYPE, const void *)); ++ #else ++ DB *__db185_open __P((const char *, int, int, DBTYPE, const void *)); ++ #endif + #if defined(__cplusplus) + } + #endif + +! #endif /* _DB_185_H_ or _DB185_INT_H_ */ +*** include_auto/db185_uext.in 2001/04/10 20:44:20 1.1 +--- include_auto/db185_uext.in 2001/07/30 14:12:48 +*************** +*** 3,12 **** + extern "C" { + #endif + #define dbopen __db185_open at DB_VERSION_UNIQUE_NAME@ + #define __db185_open __db185_open at DB_VERSION_UNIQUE_NAME@ + DB185 *__db185_open __P((const char *, int, int, DBTYPE, const void *)); + #if defined(__cplusplus) + } + #endif + +! #endif /* !_DB_185_H_ */ +--- 3,17 ---- + extern "C" { + #endif + #define dbopen __db185_open at DB_VERSION_UNIQUE_NAME@ ++ #ifdef _DB185_INT_H_ + #define __db185_open __db185_open at DB_VERSION_UNIQUE_NAME@ + DB185 *__db185_open __P((const char *, int, int, DBTYPE, const void *)); ++ #else ++ #define __db185_open __db185_open at DB_VERSION_UNIQUE_NAME@ ++ DB *__db185_open __P((const char *, int, int, DBTYPE, const void *)); ++ #endif + #if defined(__cplusplus) + } + #endif + +! #endif /* _DB_185_H_ or _DB185_INT_H_ */ Added: csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.2 =================================================================== --- csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.2 (rev 0) +++ csw/mgar/pkg/bdb33/trunk/files/patch.3.3.11.2 2009-10-01 13:16:29 UTC (rev 6644) @@ -0,0 +1,15 @@ +*** build_vxworks/db.h.orig Mon Jul 30 09:49:54 2001 +--- build_vxworks/db.h Wed Dec 31 19:00:00 1969 +*************** +*** 32,37 **** +--- 32,41 ---- + extern "C" { + #endif + ++ #ifndef HAVE_VXWORKS ++ #define HAVE_VXWORKS 1 ++ #endif ++ + /* + * XXX + * Handle function prototypes and the keyword "const". This steps on name Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.1.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.1.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,36 +0,0 @@ -*** mp/mp_fget.c.orig 25 Sep 2003 02:15:16 -0000 11.81 ---- mp/mp_fget.c 9 Dec 2003 19:06:28 -0000 11.82 -*************** -*** 440,446 **** - c_mp->stat.st_pages--; - alloc_bhp = NULL; - R_UNLOCK(dbenv, &dbmp->reginfo[n_cache]); -- MUTEX_LOCK(dbenv, &hp->hash_mutex); - - /* - * We can't use the page we found in the pool if DB_MPOOL_NEW ---- 440,445 ---- -*************** -*** 455,460 **** ---- 454,462 ---- - b_incr = 0; - goto alloc; - } -+ -+ /* We can use the page -- get the bucket lock. */ -+ MUTEX_LOCK(dbenv, &hp->hash_mutex); - break; - case SECOND_MISS: - /* -*** mp/mp_fput.c.orig 30 Sep 2003 17:12:00 -0000 11.48 ---- mp/mp_fput.c 13 Dec 2003 00:08:29 -0000 11.49 -*************** -*** 285,290 **** ---- 285,291 ---- - bhp != NULL; bhp = SH_TAILQ_NEXT(bhp, hq, __bh)) - if (bhp->priority != UINT32_T_MAX && - bhp->priority > MPOOL_BASE_DECREMENT) -+ bhp->priority -= MPOOL_BASE_DECREMENT; - MUTEX_UNLOCK(dbenv, &hp->hash_mutex); - } - } Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.2.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.2.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,45 +0,0 @@ -*** lock/lock.c.save 2004-01-30 10:48:33.000000000 -0800 ---- lock/lock.c 2004-01-30 10:55:58.000000000 -0800 -*************** -*** 2216,2226 **** - dp = (u_int8_t *)dp + \ - sizeof(db_pgno_t); \ - } while (0) -! #define COPY_OBJ(dp, obj) do { \ -! memcpy(dp, obj->data, obj->size); \ -! dp = (u_int8_t *)dp + \ -! ALIGN(obj->size, \ -! sizeof(u_int32_t)); \ - } while (0) - - #define GET_COUNT(dp, count) do { \ ---- 2216,2227 ---- - dp = (u_int8_t *)dp + \ - sizeof(db_pgno_t); \ - } while (0) -! #define COPY_OBJ(dp, obj) do { \ -! memcpy(dp, \ -! (obj)->data, (obj)->size); \ -! dp = (u_int8_t *)dp + \ -! ALIGN((obj)->size, \ -! sizeof(u_int32_t)); \ - } while (0) - - #define GET_COUNT(dp, count) do { \ -*************** -*** 2339,2345 **** - for (i = 0; i < nlocks; i = j) { - PUT_PCOUNT(dp, obj[i].ulen); - PUT_SIZE(dp, obj[i].size); -! COPY_OBJ(dp, obj); - lock = (DB_LOCK_ILOCK *)obj[i].data; - for (j = i + 1; j <= i + obj[i].ulen; j++) { - lock = (DB_LOCK_ILOCK *)obj[j].data; ---- 2340,2346 ---- - for (i = 0; i < nlocks; i = j) { - PUT_PCOUNT(dp, obj[i].ulen); - PUT_SIZE(dp, obj[i].size); -! COPY_OBJ(dp, &obj[i]); - lock = (DB_LOCK_ILOCK *)obj[i].data; - for (j = i + 1; j <= i + obj[i].ulen; j++) { - lock = (DB_LOCK_ILOCK *)obj[j].data; Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.3.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.3.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,247 +0,0 @@ ---- java/src/com/sleepycat/db/DbEnv.java 2003-12-03 16:26:27.000000000 -0500 -+++ java/src/com/sleepycat/db/DbEnv.java 2004-03-18 15:15:42.000000000 -0500 -@@ -61,7 +61,7 @@ - // Internally, the JNI layer creates a global reference to each DbEnv, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object dbenv_ref; -+ private long dbenv_ref; - private DbAppDispatch app_dispatch_handler; - private DbEnvFeedbackHandler env_feedback_handler; - private DbErrorHandler error_handler; -@@ -94,7 +94,7 @@ - void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(dbenv_ref); -- dbenv_ref = null; -+ dbenv_ref = 0L; - } - - ---- java/src/com/sleepycat/db/Db.java 2003-12-03 16:26:25.000000000 -0500 -+++ java/src/com/sleepycat/db/Db.java 2004-03-18 15:15:55.000000000 -0500 -@@ -57,7 +57,7 @@ - // Internally, the JNI layer creates a global reference to each Db, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object db_ref; -+ private long db_ref; - private DbEnv dbenv; - private boolean private_dbenv; - private DbAppendRecno append_recno_handler; -@@ -84,7 +84,7 @@ - private void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(db_ref); -- db_ref = null; -+ db_ref = 0L; - if (private_dbenv) { - dbenv.cleanup(); - } ---- java/src/com/sleepycat/db/db_java.java 2003-12-03 16:10:54.000000000 -0500 -+++ java/src/com/sleepycat/db/db_java.java 2004-03-18 15:17:24.000000000 -0500 -@@ -14,15 +14,15 @@ - db_javaJNI.DbEnv_lock_vec(DbEnv.getCPtr(dbenv), locker, flags, list, offset, nlist); - } - -- static Object initDbEnvRef0(DbEnv self, Object handle) { -+ static long initDbEnvRef0(DbEnv self, Object handle) { - return db_javaJNI.initDbEnvRef0(DbEnv.getCPtr(self), handle); - } - -- static Object initDbRef0(Db self, Object handle) { -+ static long initDbRef0(Db self, Object handle) { - return db_javaJNI.initDbRef0(Db.getCPtr(self), handle); - } - -- static void deleteRef0(Object ref) { -+ static void deleteRef0(long ref) { - db_javaJNI.deleteRef0(ref); - } - ---- java/src/com/sleepycat/db/db_javaJNI.java 2003-12-03 16:10:55.000000000 -0500 -+++ java/src/com/sleepycat/db/db_javaJNI.java 2004-03-18 15:16:18.000000000 -0500 -@@ -45,9 +45,9 @@ - static native final void initialize(); - - public final static native void DbEnv_lock_vec(long jarg1, int jarg2, int jarg3, DbLockRequest[] jarg4, int jarg5, int jarg6) throws DbException; -- final static native Object initDbEnvRef0(long jarg1, Object jarg2); -- final static native Object initDbRef0(long jarg1, Object jarg2); -- final static native void deleteRef0(Object jarg1); -+ final static native long initDbEnvRef0(long jarg1, Object jarg2); -+ final static native long initDbRef0(long jarg1, Object jarg2); -+ final static native void deleteRef0(long jarg1); - final static native long getDbEnv0(long jarg1); - public final static native long new_Db(long jarg1, int jarg2) throws DbException; - public final static native void Db_associate(long jarg1, long jarg2, long jarg3, DbSecondaryKeyCreate jarg4, int jarg5) throws DbException; ---- libdb_java/db_java.i 2003-11-17 15:00:52.000000000 -0500 -+++ libdb_java/db_java.i 2004-03-18 09:21:14.000000000 -0500 -@@ -53,7 +53,7 @@ - // Internally, the JNI layer creates a global reference to each DbEnv, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object dbenv_ref; -+ private long dbenv_ref; - private DbAppDispatch app_dispatch_handler; - private DbEnvFeedbackHandler env_feedback_handler; - private DbErrorHandler error_handler; -@@ -76,7 +76,7 @@ - void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(dbenv_ref); -- dbenv_ref = null; -+ dbenv_ref = 0L; - } - - public synchronized void close(int flags) throws DbException { -@@ -220,7 +220,7 @@ - // Internally, the JNI layer creates a global reference to each Db, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object db_ref; -+ private long db_ref; - private DbEnv dbenv; - private boolean private_dbenv; - private DbAppendRecno append_recno_handler; -@@ -245,7 +245,7 @@ - private void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(db_ref); -- db_ref = null; -+ db_ref = 0L; - if (private_dbenv) - dbenv.cleanup(); - dbenv = null; -@@ -503,46 +503,42 @@ - } - %} - --%native(initDbEnvRef0) jobject initDbEnvRef0(DB_ENV *self, void *handle); --%native(initDbRef0) jobject initDbRef0(DB *self, void *handle); --%native(deleteRef0) void deleteRef0(jobject ref); -+%native(initDbEnvRef0) jlong initDbEnvRef0(DB_ENV *self, void *handle); -+%native(initDbRef0) jlong initDbRef0(DB *self, void *handle); -+%native(deleteRef0) void deleteRef0(jlong ref); - %native(getDbEnv0) DB_ENV *getDbEnv0(DB *self); - - %{ --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB_ENV *self = *(DB_ENV **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); - self->set_errpfx(self, (const char*)self); -- return (jobject)DB_ENV_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); -+ return (ret); - } - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB *self = *(DB **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); -- return (jobject)DB_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_INTERNAL(self); -+ return (ret); - } - - JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( -- JNIEnv *jenv, jclass jcls, jobject jref) { -- COMPQUIET(jcls, NULL); -- -- if (jref != NULL) -- (*jenv)->DeleteGlobalRef(jenv, jref); --} -- --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1) { -- DB *self = *(DB **)&jarg1; -+ jobject jref = *(jobject *)&jarg1; - COMPQUIET(jcls, NULL); -- COMPQUIET(jenv, NULL); - -- return (jobject)DB_INTERNAL(self); -+ if (jref != 0L) -+ (*jenv)->DeleteGlobalRef(jenv, jref); - } - - JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( -@@ -554,7 +550,7 @@ - COMPQUIET(jcls, NULL); - - *(DB_ENV **)&env_cptr = self->dbenv; -- return env_cptr; -+ return (env_cptr); - } - - JNIEXPORT jboolean JNICALL ---- libdb_java/db_java_wrap.c 2003-12-03 16:10:36.000000000 -0500 -+++ libdb_java/db_java_wrap.c 2004-03-18 12:18:58.000000000 -0500 -@@ -1192,40 +1192,36 @@ - } - - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB_ENV *self = *(DB_ENV **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); - self->set_errpfx(self, (const char*)self); -- return (jobject)DB_ENV_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); -+ return (ret); - } - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB *self = *(DB **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); -- return (jobject)DB_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_INTERNAL(self); -+ return (ret); - } - - JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( -- JNIEnv *jenv, jclass jcls, jobject jref) { -- COMPQUIET(jcls, NULL); -- -- if (jref != NULL) -- (*jenv)->DeleteGlobalRef(jenv, jref); --} -- --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1) { -- DB *self = *(DB **)&jarg1; -+ jobject jref = *(jobject *)&jarg1; - COMPQUIET(jcls, NULL); -- COMPQUIET(jenv, NULL); - -- return (jobject)DB_INTERNAL(self); -+ if (jref != 0L) -+ (*jenv)->DeleteGlobalRef(jenv, jref); - } - - JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( -@@ -1237,7 +1233,7 @@ - COMPQUIET(jcls, NULL); - - *(DB_ENV **)&env_cptr = self->dbenv; -- return env_cptr; -+ return (env_cptr); - } - - JNIEXPORT jboolean JNICALL Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.4.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.4.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,36 +0,0 @@ -*** btree/bt_rec.c.orig Tue Mar 22 09:41:49 2005 ---- btree/bt_rec.c Tue Mar 22 09:42:11 2005 -*************** -*** 222,228 **** - * previous-page pointer updated to our new page. The next - * page must exist because we're redoing the operation. - */ -! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - ret = __db_pgerr(file_dbp, argp->npgno, ret); ---- 222,228 ---- - * previous-page pointer updated to our new page. The next - * page must exist because we're redoing the operation. - */ -! if (!rootsplit && argp->npgno != PGNO_INVALID) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - ret = __db_pgerr(file_dbp, argp->npgno, ret); -*************** -*** 294,300 **** - * possible that the next-page never existed, we ignore it as - * if there's nothing to undo. - */ -! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - np = NULL; ---- 294,300 ---- - * possible that the next-page never existed, we ignore it as - * if there's nothing to undo. - */ -! if (!rootsplit && argp->npgno != PGNO_INVALID) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - np = NULL; Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.5.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.4.2.52.5.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,24 +0,0 @@ -*** mp/mp_fget.c.orig 2003-09-25 08:29:02.000000000 -0700 ---- mp/mp_fget.c 2006-05-26 14:58:02.246963204 -0700 -*************** -*** 553,560 **** - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_T_MAX; -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); - hp->hash_priority = - SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; - } ---- 553,563 ---- - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_T_MAX; -! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != -! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); -! } - hp->hash_priority = - SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; - } Copied: csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff) =================================================================== --- csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool (rev 0) +++ csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool 2009-10-01 13:16:29 UTC (rev 6644) @@ -0,0 +1,22 @@ +diff -Naur db-4.2.52.orig/dist/ltmain.sh db-4.2.52.patched/dist/ltmain.sh +--- dist/ltmain.sh 2003-04-26 19:45:37.000000000 +0200 ++++ dist/ltmain.sh 2009-09-30 15:15:43.792423773 +0200 +@@ -1298,7 +1298,7 @@ + # but this is not reliable with gcc because gcc may use -mfoo to + # select a different linker, different libraries, etc, while + # -Wl,-mfoo simply passes -mfoo to the linker. +- -m*) ++ -m*|-xarch=*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` +@@ -1309,9 +1309,7 @@ + esac + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" +- if test "$with_gcc" = "yes" ; then + compiler_flags="$compiler_flags $arg" +- fi + continue + ;; + Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff 2009-09-30 15:07:42 UTC (rev 6625) +++ csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool.diff 2009-10-01 13:16:29 UTC (rev 6644) @@ -1,22 +0,0 @@ -diff -Naur db-4.2.52.orig/dist/ltmain.sh db-4.2.52.patched/dist/ltmain.sh ---- dist/ltmain.sh 2003-04-26 19:45:37.000000000 +0200 -+++ dist/ltmain.sh 2009-09-30 15:15:43.792423773 +0200 -@@ -1298,7 +1298,7 @@ - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. -- -m*) -+ -m*|-xarch=*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -@@ -1309,9 +1309,7 @@ - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" -- if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" -- fi - continue - ;; - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 16:19:40 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 14:19:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[6645] csw/mgar/pkg/bdb33/trunk Message-ID: Revision: 6645 http://gar.svn.sourceforge.net/gar/?rev=6645&view=rev Author: dmichelsen Date: 2009-10-01 14:19:31 +0000 (Thu, 01 Oct 2009) Log Message: ----------- bdb33: Fix installation Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile csw/mgar/pkg/bdb33/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-01 13:16:29 UTC (rev 6644) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-01 14:19:31 UTC (rev 6645) @@ -29,7 +29,7 @@ PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) -BUILD64 = 1 +#BUILD64 = 1 CONFIGURE_SCRIPTS = dist @@ -74,6 +74,8 @@ LICENSE = LICENSE +INSTALL_OVERRIDE_DIRS = prefix exec_prefix bindir includedir libdir + # Leave the docs where they are for now #EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" #EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" Modified: csw/mgar/pkg/bdb33/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb33/trunk/checksums 2009-10-01 13:16:29 UTC (rev 6644) +++ csw/mgar/pkg/bdb33/trunk/checksums 2009-10-01 14:19:31 UTC (rev 6645) @@ -1,4 +1,3 @@ b6ae24fa55713f17a9ac3219d987722c download/db-3.3.11.tar.gz a6c5fc6387c57361fbdf29ca63b597c3 download/patch.3.3.11.1 fca939f74fc6555e1319626ceca35b33 download/patch.3.3.11.2 -d49545b2691c511276b73bb6c3ec64c3 download/patch.64bit-libtool Deleted: csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool =================================================================== --- csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool 2009-10-01 13:16:29 UTC (rev 6644) +++ csw/mgar/pkg/bdb33/trunk/files/patch.64bit-libtool 2009-10-01 14:19:31 UTC (rev 6645) @@ -1,22 +0,0 @@ -diff -Naur db-4.2.52.orig/dist/ltmain.sh db-4.2.52.patched/dist/ltmain.sh ---- dist/ltmain.sh 2003-04-26 19:45:37.000000000 +0200 -+++ dist/ltmain.sh 2009-09-30 15:15:43.792423773 +0200 -@@ -1298,7 +1298,7 @@ - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. -- -m*) -+ -m*|-xarch=*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -@@ -1309,9 +1309,7 @@ - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" -- if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" -- fi - continue - ;; - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 1 18:55:35 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 01 Oct 2009 16:55:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[6646] csw/mgar/pkg/pkgutil/trunk Message-ID: Revision: 6646 http://gar.svn.sourceforge.net/gar/?rev=6646&view=rev Author: bonivart Date: 2009-10-01 16:55:33 +0000 (Thu, 01 Oct 2009) Log Message: ----------- pkgutil: split work Modified Paths: -------------- csw/mgar/pkg/pkgutil/trunk/Makefile csw/mgar/pkg/pkgutil/trunk/checksums csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.prototype Modified: csw/mgar/pkg/pkgutil/trunk/Makefile =================================================================== --- csw/mgar/pkg/pkgutil/trunk/Makefile 2009-10-01 14:19:31 UTC (rev 6645) +++ csw/mgar/pkg/pkgutil/trunk/Makefile 2009-10-01 16:55:33 UTC (rev 6646) @@ -12,15 +12,15 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(GARNAME)-$(GARVERSION).zip -#DISTFILES += $(call admfiles,CSWpkgutil,prototype postinstall preremove) -DISTFILES += $(call admfiles,CSWpkgutil,postinstall preremove) +DISTFILES += $(call admfiles,CSWpkgutil,prototype postinstall preremove) +#DISTFILES += $(call admfiles,CSWpkgutil,postinstall preremove) PACKAGES = CSWpkgutil CSWpkgutilplus SPKG_DESC_CSWpkgutil = $(DESCRIPTION) SPKG_DESC_CSWpkgutilplus = Extends pkgutil functionality -REQUIRED_PKGS_CSWpkgutilplus = CSWperl CSWgnupg +REQUIRED_PKGS_CSWpkgutilplus = CSWperl CSWgnupg CSWpkgutil PKGFILES_CSWpkgutilplus = .*bldcat.* PKGFILES_CSWpkgutilplus += .*chkcat.* @@ -46,6 +46,7 @@ @ginstall -d $(DESTDIR)$(sysconfdir) @ginstall -d $(DESTDIR)/opt/csw/libexec/$(GARNAME) @ginstall -d $(DESTDIR)$(docdir)/$(GARNAME) + @ginstall -d $(DESTDIR)$(docdir)/$(GARNAME)plus @ginstall -d $(DESTDIR)$(mandir)/man1 # @ginstall -d $(DESTDIR)/usr/sadm/install/scripts @ginstall -d $(DESTDIR)/var/opt/csw/$(GARNAME)/packages @@ -57,6 +58,7 @@ @cp $(WORKSRC)/chkcat $(DESTDIR)$(bindir) @cp $(WORKSRC)/readme $(DESTDIR)$(docdir)/$(GARNAME)/ @cp $(WORKSRC)/license $(DESTDIR)$(docdir)/$(GARNAME)/ + @cp $(WORKSRC)/license $(DESTDIR)$(docdir)/$(GARNAME)plus/ # @cp $(FILEDIR)/CSWpkgutil.i.cswpkgutil $(DESTDIR)/usr/sadm/install/scripts/i.cswpkgutil # @cp $(FILEDIR)/CSWpkgutil.r.cswpkgutil $(DESTDIR)/usr/sadm/install/scripts/r.cswpkgutil @cp $(WORKSRC)/admin $(DESTDIR)/var/opt/csw/$(GARNAME)/admin.CSW Modified: csw/mgar/pkg/pkgutil/trunk/checksums =================================================================== --- csw/mgar/pkg/pkgutil/trunk/checksums 2009-10-01 14:19:31 UTC (rev 6645) +++ csw/mgar/pkg/pkgutil/trunk/checksums 2009-10-01 16:55:33 UTC (rev 6646) @@ -1,5 +1,5 @@ a16c6f81bc537d6172fd65d8da1aeecc download/CSWpkgutil.gspec e1407c24d47306dbc4cea22dcb291f1d download/CSWpkgutil.postinstall 2fb6c94a2d212f08b71d462082a2d31a download/CSWpkgutil.preremove -4ef9d7ba62987112987311d96e249e3e download/CSWpkgutil.prototype +951b11e347d6f3f49cc8617ecab4ad62 download/CSWpkgutil.prototype 11c02a77d18f1fc11f23679b1b06efa8 download/pkgutil-1.7.zip Modified: csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.prototype =================================================================== --- csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.prototype 2009-10-01 14:19:31 UTC (rev 6645) +++ csw/mgar/pkg/pkgutil/trunk/files/CSWpkgutil.prototype 2009-10-01 16:55:33 UTC (rev 6646) @@ -7,8 +7,6 @@ d none /opt/csw 0755 root bin d none /opt/csw/bin 0755 root bin f none /opt/csw/bin/pkgutil 755 root bin -f none /opt/csw/bin/bldcat 755 root bin -f none /opt/csw/bin/chkcat 755 root bin d none /opt/csw/etc 0755 root bin f none /opt/csw/etc/pkgutil.conf.CSW 644 root bin d none /opt/csw/libexec 0755 root bin @@ -22,8 +20,6 @@ d none /opt/csw/share/man 0755 root bin d none /opt/csw/share/man/man1 0755 root bin f none /opt/csw/share/man/man1/pkgutil.1 644 root bin -f none /opt/csw/share/man/man1/bldcat.1 644 root bin -f none /opt/csw/share/man/man1/chkcat.1 644 root bin d none /var/opt/csw 0755 root bin d none /var/opt/csw/pkgutil 0755 root bin f none /var/opt/csw/pkgutil/admin.CSW 644 root bin This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 20:34:10 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 18:34:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[6647] csw/mgar/pkg/cswutils/trunk/Makefile Message-ID: Revision: 6647 http://gar.svn.sourceforge.net/gar/?rev=6647&view=rev Author: dmichelsen Date: 2009-10-01 18:34:10 +0000 (Thu, 01 Oct 2009) Log Message: ----------- cswutils: Adjust binary name Modified Paths: -------------- csw/mgar/pkg/cswutils/trunk/Makefile Modified: csw/mgar/pkg/cswutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-01 16:55:33 UTC (rev 6646) +++ csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-01 18:34:10 UTC (rev 6647) @@ -66,5 +66,5 @@ $(DESTDIR)$(libdir)/opencsw/compare_pkgs.py @ginstall $(WORKSRC)/opencsw_lib.py-r$(SVN_REV) \ $(DESTDIR)$(libdir)/opencsw/opencsw_lib.py - @ln -s ../lib/opencsw/compare_pkgs.py $(DESTDIR)$(bindir)/csw-pkg-diff + @ln -s ../lib/opencsw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 21:24:43 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 19:24:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6648] csw/mgar/pkg/libpcap/trunk/Makefile Message-ID: Revision: 6648 http://gar.svn.sourceforge.net/gar/?rev=6648&view=rev Author: dmichelsen Date: 2009-10-01 19:24:43 +0000 (Thu, 01 Oct 2009) Log Message: ----------- libpcap: Remove specias ISAs and add link to generic shared lib Modified Paths: -------------- csw/mgar/pkg/libpcap/trunk/Makefile Modified: csw/mgar/pkg/libpcap/trunk/Makefile =================================================================== --- csw/mgar/pkg/libpcap/trunk/Makefile 2009-10-01 18:34:10 UTC (rev 6647) +++ csw/mgar/pkg/libpcap/trunk/Makefile 2009-10-01 19:24:43 UTC (rev 6648) @@ -29,8 +29,8 @@ BUILD64 = 1 -EXTRA_BUILD_ISAS_sparc = sparcv8plus sparcv8plus+vis -EXTRA_BUILD_ISAS_i386 = pentium pentium_pro+mmx +EXTRA_BUILD_ISAS_sparc = sparcv8plus +EXTRA_BUILD_ISAS_i386 = pentium TEST_TARGET = check @@ -51,10 +51,12 @@ TEST_SCRIPTS = MERGE_DIRS_isa-sparcv8plus = $(libdir) -MERGE_DIRS_isa-sparcv8plus+vis = $(libdir) MERGE_DIRS_isa-pentium = $(libdir) -MERGE_DIRS_isa-pentium_pro+mmx = $(libdir) PKGFILES_CSWlibpcapdevel = $(PKGFILES_DEVEL) include gar/category.mk + +post-install-modulated: + ln -s libpcap.so.1.0.0 $(DESTDIR)$(libdir)/libpcap.so + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 21:25:35 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 19:25:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[6649] csw/mgar/pkg/libpcap/trunk/Makefile Message-ID: Revision: 6649 http://gar.svn.sourceforge.net/gar/?rev=6649&view=rev Author: dmichelsen Date: 2009-10-01 19:25:35 +0000 (Thu, 01 Oct 2009) Log Message: ----------- libpcap: Add dependency Modified Paths: -------------- csw/mgar/pkg/libpcap/trunk/Makefile Modified: csw/mgar/pkg/libpcap/trunk/Makefile =================================================================== --- csw/mgar/pkg/libpcap/trunk/Makefile 2009-10-01 19:24:43 UTC (rev 6648) +++ csw/mgar/pkg/libpcap/trunk/Makefile 2009-10-01 19:25:35 UTC (rev 6649) @@ -55,6 +55,8 @@ PKGFILES_CSWlibpcapdevel = $(PKGFILES_DEVEL) +REQUIRED_PKGS_CSWlibpcapdevel = CSWlibpcap + include gar/category.mk post-install-modulated: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 1 21:37:14 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 01 Oct 2009 19:37:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[6650] csw/mgar/pkg/tcpdump/trunk/Makefile Message-ID: Revision: 6650 http://gar.svn.sourceforge.net/gar/?rev=6650&view=rev Author: dmichelsen Date: 2009-10-01 19:37:14 +0000 (Thu, 01 Oct 2009) Log Message: ----------- tcpdump: Skip versioned tcpdump binary Modified Paths: -------------- csw/mgar/pkg/tcpdump/trunk/Makefile Modified: csw/mgar/pkg/tcpdump/trunk/Makefile =================================================================== --- csw/mgar/pkg/tcpdump/trunk/Makefile 2009-10-01 19:25:35 UTC (rev 6649) +++ csw/mgar/pkg/tcpdump/trunk/Makefile 2009-10-01 19:37:14 UTC (rev 6650) @@ -19,15 +19,12 @@ SPKG_SOURCEURL = http://www.tcpdump.org/ -# Shared libraries patch -#PATCHFILES = solib.diff - # No test target for libpcap TEST_SCRIPTS = CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-ipv6 -#INSTALL_OVERRIDE_DIRS = prefix exec_prefix includedir libdir mandir +EXTRA_MERGE_EXCLUDE_FILES = $(sbindir)/tcpdump\..* include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 1 22:58:58 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 01 Oct 2009 20:58:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[6651] csw/mgar/pkg/geolitedb/trunk Message-ID: Revision: 6651 http://gar.svn.sourceforge.net/gar/?rev=6651&view=rev Author: bonivart Date: 2009-10-01 20:58:55 +0000 (Thu, 01 Oct 2009) Log Message: ----------- geolitedb: update db Modified Paths: -------------- csw/mgar/pkg/geolitedb/trunk/Makefile csw/mgar/pkg/geolitedb/trunk/checksums Modified: csw/mgar/pkg/geolitedb/trunk/Makefile =================================================================== --- csw/mgar/pkg/geolitedb/trunk/Makefile 2009-10-01 19:37:14 UTC (rev 6650) +++ csw/mgar/pkg/geolitedb/trunk/Makefile 2009-10-01 20:58:55 UTC (rev 6651) @@ -1,5 +1,5 @@ GARNAME = geolitedb -GARVERSION = 090422 +GARVERSION = 091001 CATEGORIES = net DESCRIPTION = geolite country database Modified: csw/mgar/pkg/geolitedb/trunk/checksums =================================================================== --- csw/mgar/pkg/geolitedb/trunk/checksums 2009-10-01 19:37:14 UTC (rev 6650) +++ csw/mgar/pkg/geolitedb/trunk/checksums 2009-10-01 20:58:55 UTC (rev 6651) @@ -1,2 +1,2 @@ -cd8d7820bebbb6f274fa426c12485f9e download/GeoIP.dat.gz ed834df1fb6cb5056f5310b98fc71811 download/COPYING +a8430b5dc9dee5ff81ac3ff1745097c6 download/GeoIP.dat.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 1 23:26:22 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 01 Oct 2009 21:26:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[6652] csw/mgar/pkg/GeoIP/trunk/Makefile Message-ID: Revision: 6652 http://gar.svn.sourceforge.net/gar/?rev=6652&view=rev Author: bonivart Date: 2009-10-01 21:26:22 +0000 (Thu, 01 Oct 2009) Log Message: ----------- geoip: update to 1.4.6 Modified Paths: -------------- csw/mgar/pkg/GeoIP/trunk/Makefile Modified: csw/mgar/pkg/GeoIP/trunk/Makefile =================================================================== --- csw/mgar/pkg/GeoIP/trunk/Makefile 2009-10-01 20:58:55 UTC (rev 6651) +++ csw/mgar/pkg/GeoIP/trunk/Makefile 2009-10-01 21:26:22 UTC (rev 6652) @@ -11,48 +11,27 @@ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz PACKAGES = CSWgeoip CSWgeoipdevel -REQUIRED_PKGS_CSWgeoip = CSWgeolitedb CSWzlib +REQUIRED_PKGS_CSWgeoip = CSWgeolitedb CSWzlib CSWgcc3corert REQUIRED_PKGS_CSWgeoipdevel = CSWgeoip CATALOGNAME_CSWgeoip = geoip CATALOGNAME_CSWgeoipdevel = geoip_devel SPKG_DESC_CSWgeoip = $(DESCRIPTION) SPKG_DESC_CSWgeoipdevel = GeoIP C API development support -PKGFILES_CSWgeoipdevel = $(PKGFILES_DEVEL) - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz GARCOMPILER = GCC4 TEST_TARGET = check +PKGFILES_CSWgeoipdevel = $(PKGFILES_DEVEL) + +EXTRA_MERGE_EXCLUDE_FILES = .*GeoIP.dat$ + # Do not exclude static libs (needed for devel package) MERGE_EXCLUDE_STATICLIBS = CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --sysconfdir=/etc/opt/csw include gar/category.mk - -#pre-configure-modulated: -# @echo " ==> Pre-configure for $(GARNAME) (custom)" -# @( cd $(WORKSRC) ; \ -# sed 's/-Wall//' Makefile.am > tmp.sed ; \ -# mv tmp.sed Makefile.am ; \ -# sed 's/-Wall//' Makefile.in > tmp.sed ; \ -# mv tmp.sed Makefile.in ; \ -# cd apps ; \ -# sed 's/-Wall//' Makefile.am > tmp.sed ; \ -# mv tmp.sed Makefile.am ; \ -# sed 's/-Wall//' Makefile.in > tmp.sed ; \ -# mv tmp.sed Makefile.in ; \ -# cd ../libGeoIP ; \ -# sed 's/-Wall//' Makefile.am > tmp.sed ; \ -# mv tmp.sed Makefile.am ; \ -# sed 's/-Wall//' Makefile.in > tmp.sed ; \ -# mv tmp.sed Makefile.in ; \ -# cd ../test ; \ -# sed 's/-Wall//' Makefile.am > tmp.sed ; \ -# mv tmp.sed Makefile.am ; \ -# sed 's/-Wall//' Makefile.in > tmp.sed ; \ -# mv tmp.sed Makefile.in ) -# @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Oct 2 10:30:21 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 02 Oct 2009 08:30:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[6653] csw/mgar/pkg Message-ID: Revision: 6653 http://gar.svn.sourceforge.net/gar/?rev=6653&view=rev Author: bonivart Date: 2009-10-02 08:30:19 +0000 (Fri, 02 Oct 2009) Log Message: ----------- nicstat: initial commit Added Paths: ----------- csw/mgar/pkg/nicstat/ csw/mgar/pkg/nicstat/branches/ csw/mgar/pkg/nicstat/tags/ csw/mgar/pkg/nicstat/trunk/ csw/mgar/pkg/nicstat/trunk/Makefile csw/mgar/pkg/nicstat/trunk/checksums csw/mgar/pkg/nicstat/trunk/files/ Property changes on: csw/mgar/pkg/nicstat/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/nicstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/nicstat/trunk/Makefile (rev 0) +++ csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 08:30:19 UTC (rev 6653) @@ -0,0 +1,42 @@ +GARNAME = nicstat +GARVERSION = 1.20 +CATEGORIES = net + +DESCRIPTION = Network monitoring tool +define BLURB + Network monitoring tool +endef + +MASTER_SITES = http://blogs.sun.com/roller/resources/timc/nicstat/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +SPKG_SOURCEURL = http://blogs.sun.com/timc/entry/nicstat_the_solaris_and_linux + +LICENSE = LICENSE.txt + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +CONFIGURE_ARGS = $(DIRPATHS) + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = custom +TEST_SCRIPTS = +INSTALL_SCRIPTS = custom + +WORKSRC = $(WORKDIR) + +include gar/category.mk + +build-custom: + @echo " ==> Build $(GARNAME) (custom)" + @( cd $(WORKSRC) ; \ + cp Makefile.Solaris Makefile ; \ + gmake ) + @$(MAKECOOKIE) + +install-custom: + @echo " ==> Install $(GARNAME) (custom)" + ( cd $(WORKSRC) ; \ + gmake BASEDIR=$(DESTDIR)/opt/csw install ) + @$(MAKECOOKIE) Added: csw/mgar/pkg/nicstat/trunk/checksums =================================================================== --- csw/mgar/pkg/nicstat/trunk/checksums (rev 0) +++ csw/mgar/pkg/nicstat/trunk/checksums 2009-10-02 08:30:19 UTC (rev 6653) @@ -0,0 +1 @@ +9cf3090944d01d6ad3c7cc9762207fea download/nicstat-1.20.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 10:42:18 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 08:42:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[6654] csw/mgar/pkg/cswutils/trunk/Makefile Message-ID: Revision: 6654 http://gar.svn.sourceforge.net/gar/?rev=6654&view=rev Author: dmichelsen Date: 2009-10-02 08:42:18 +0000 (Fri, 02 Oct 2009) Log Message: ----------- cswutils: Relocate lib to /opt/csw/lib/python/opencsw Modified Paths: -------------- csw/mgar/pkg/cswutils/trunk/Makefile Modified: csw/mgar/pkg/cswutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-02 08:30:19 UTC (rev 6653) +++ csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-02 08:42:18 UTC (rev 6654) @@ -61,10 +61,10 @@ @ginstall $(WORKSRC)/checkpkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall $(WORKSRC)/createpkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall $(WORKSRC)/stagepkg.8 $(DESTDIR)$(mandir)/man8/ - @ginstall -d $(DESTDIR)$(libdir)/opencsw + @ginstall -d $(DESTDIR)$(libdir)/python/opencsw @ginstall $(WORKSRC)/compare_pkgs.py-r$(SVN_REV) \ - $(DESTDIR)$(libdir)/opencsw/compare_pkgs.py + $(DESTDIR)$(libdir)/python/opencsw/compare_pkgs.py @ginstall $(WORKSRC)/opencsw_lib.py-r$(SVN_REV) \ - $(DESTDIR)$(libdir)/opencsw/opencsw_lib.py - @ln -s ../lib/opencsw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg + $(DESTDIR)$(libdir)/python/opencsw/opencsw_lib.py + @ln -s ../lib/python/opencsw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Oct 2 11:18:41 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 02 Oct 2009 09:18:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[6655] csw/mgar/pkg/nicstat/trunk/Makefile Message-ID: Revision: 6655 http://gar.svn.sourceforge.net/gar/?rev=6655&view=rev Author: bonivart Date: 2009-10-02 09:18:41 +0000 (Fri, 02 Oct 2009) Log Message: ----------- nicstat: some fixes Modified Paths: -------------- csw/mgar/pkg/nicstat/trunk/Makefile Modified: csw/mgar/pkg/nicstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 08:42:18 UTC (rev 6654) +++ csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 09:18:41 UTC (rev 6655) @@ -26,17 +26,24 @@ WORKSRC = $(WORKDIR) +ifeq ($(shell uname -p), sparc) + MYARCH = -xarch=v8 +else + MYARCH = +endif + include gar/category.mk build-custom: @echo " ==> Build $(GARNAME) (custom)" @( cd $(WORKSRC) ; \ - cp Makefile.Solaris Makefile ; \ + sed "s/CFLAGS =/CFLAGS = $(MYARCH) /" Makefile.Solaris > Makefile ; \ gmake ) @$(MAKECOOKIE) install-custom: @echo " ==> Install $(GARNAME) (custom)" - ( cd $(WORKSRC) ; \ + @( cd $(WORKSRC) ; \ gmake BASEDIR=$(DESTDIR)/opt/csw install ) + @cp $(WORKSRC)/enicstat $(DESTDIR)$(bindir) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 11:27:59 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 09:27:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6656] csw/mgar/pkg/bdb3/trunk Message-ID: Revision: 6656 http://gar.svn.sourceforge.net/gar/?rev=6656&view=rev Author: dmichelsen Date: 2009-10-02 09:27:59 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb3: Make package stub to CSWbdb33 Modified Paths: -------------- csw/mgar/pkg/bdb3/trunk/Makefile csw/mgar/pkg/bdb3/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/bdb3/trunk/files/ Modified: csw/mgar/pkg/bdb3/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb3/trunk/Makefile 2009-10-02 09:18:41 UTC (rev 6655) +++ csw/mgar/pkg/bdb3/trunk/Makefile 2009-10-02 09:27:59 UTC (rev 6656) @@ -2,7 +2,7 @@ GARVERSION = 3.3.11 CATEGORIES = lib -DESCRIPTION = BerkeleyDB 3 +DESCRIPTION = Stub package as contents moved to CSWbdb33 define BLURB Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes @@ -13,40 +13,20 @@ (MSVC 4, 5 and 6). endef -MASTER_SITES = http://download.oracle.com/berkeley-db/ -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz - -# We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz - -# See http://www.sleepycat.com/update/4.1.25/patch.4.1.25.html -PATCHFILES = patch.$(GARVERSION).1 patch.$(GARVERSION).2 -PATCHDIRLEVEL = 0 - -LICENSE = LICENSE - PACKAGES = CSWbdb3 CATALOGNAME = berkeleydb3 -CONFIGURE_SCRIPTS = $(WORKSRC)/dist/configure -BUILD_SCRIPTS = $(WORKSRC)/dist/Makefile -INSTALL_SCRIPTS = $(WORKSRC)/dist/Makefile +REQUIRED_PKGS = CSWbdb33 +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = +INSTALL_SCRIPTS = custom + TEST_SCRIPTS = -#NODIRPATHS = --prefix -CONFIGURE_ARGS = --prefix $(prefix) $(DIRPATHS) -CONFIGURE_ARGS += --enable-compat185 -CONFIGURE_ARGS += --enable-rpc -CONFIGURE_ARGS += --enable-cxx -CONFIGURE_ARGS += --enable-java -CONFIGURE_ARGS += --enable-tcl -CONFIGURE_ARGS += --with-tcl=$(libdir) - -# The Makefile is too dumb for DESTDIR -INSTALL_OVERRIDE_DIRS = prefix exec_prefix bindir includedir libdir docdir - -# Include only the library and nothing else -EXTRA_PAX_ARGS = -s ",^\.\($(libdir)/libdb-3.3.so\)$$,\1," -s ",\..*,," - include gar/category.mk + +install-custom: + ginstall -d $(DESTDIR)$(libdir) + ln -s ../bdb33/lib/libdb-3.3.so $(DESTDIR)$(libdir) + @$(MAKECOOKIE) Modified: csw/mgar/pkg/bdb3/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb3/trunk/checksums 2009-10-02 09:18:41 UTC (rev 6655) +++ csw/mgar/pkg/bdb3/trunk/checksums 2009-10-02 09:27:59 UTC (rev 6656) @@ -1,3 +0,0 @@ -b6ae24fa55713f17a9ac3219d987722c download/db-3.3.11.tar.gz -a6c5fc6387c57361fbdf29ca63b597c3 download/patch.3.3.11.1 -fca939f74fc6555e1319626ceca35b33 download/patch.3.3.11.2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 11:28:43 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 09:28:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6657] csw/mgar/pkg/bdb3/trunk/Makefile Message-ID: Revision: 6657 http://gar.svn.sourceforge.net/gar/?rev=6657&view=rev Author: dmichelsen Date: 2009-10-02 09:28:43 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb3: Make stub ARCHALL=1 Modified Paths: -------------- csw/mgar/pkg/bdb3/trunk/Makefile Modified: csw/mgar/pkg/bdb3/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb3/trunk/Makefile 2009-10-02 09:27:59 UTC (rev 6656) +++ csw/mgar/pkg/bdb3/trunk/Makefile 2009-10-02 09:28:43 UTC (rev 6657) @@ -16,6 +16,7 @@ PACKAGES = CSWbdb3 CATALOGNAME = berkeleydb3 +ARCHALL = 1 REQUIRED_PKGS = CSWbdb33 CONFIGURE_SCRIPTS = This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 11:33:12 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 09:33:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[6658] csw/mgar/pkg/bdb4 Message-ID: Revision: 6658 http://gar.svn.sourceforge.net/gar/?rev=6658&view=rev Author: dmichelsen Date: 2009-10-02 09:33:12 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb4: Make package a stub to CSWbdb42 Added Paths: ----------- csw/mgar/pkg/bdb4/tags/legacy-4.1.25/ csw/mgar/pkg/bdb4/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/bdb4/trunk/Makefile csw/mgar/pkg/bdb4/trunk/legacy/ Deleted: csw/mgar/pkg/bdb4/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb4/trunk/Makefile 2009-10-02 09:28:43 UTC (rev 6657) +++ csw/mgar/pkg/bdb4/trunk/Makefile 2009-10-02 09:33:12 UTC (rev 6658) @@ -1,88 +0,0 @@ -GARNAME = db -GARVERSION = 4.2.52 -CATEGORIES = lib - -DESCRIPTION = This is a stub to BerkeleyDB 4.7 libraries from CSWbdb -define BLURB - Berkeley DB (libdb) is a programmatic toolkit that provides embedded database - support for both traditional and client/server applications. It includes - b+tree, queue, extended linear hashing, fixed, and variable-length record - access methods, transactions, locking, logging, shared memory caching and - database recovery. DB supports C, C++, Java, and Perl APIs. It is available - for a wide variety of UNIX platforms as well as Windows NT and Windows 95 - (MSVC 4, 5 and 6). -endef - - -REQUIRED_PKGS = CSWbdb - -PACKAGES = CSWbdb4 -CATALOGNAME = berkeleydb4 - -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - -CONFIGURE_SCRIPTS = -BUILD_SCRIPTS = -INSTALL_SCRIPTS = custom-$(GARCH) custom-all -TEST_SCRIPTS = - -ENABLE_CHECK = 0 - -include gar/category.mk - -install-custom-sparc: - ginstall -d $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 - ginstall -d $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s . sparcv8 - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s sparcv9 64 - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/db.jar db.jar - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb-4.so libdb-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb-4.so libdb-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb.so libdb.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_cxx-4.so libdb_cxx-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_cxx-4.so libdb_cxx-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_cxx.so libdb_cxx.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_java-4.so libdb_java-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_java-4.so libdb_java-4.2_g.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_java-4.so libdb_java-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib/sparcv9 && gln -s $(libdir)/sparcv9/libdb_java.so libdb_java.so - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_archive db_archive - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_checkpoint db_checkpoint - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_deadlock db_deadlock - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_dump db_dump - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_load db_load - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_printlog db_printlog - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_recover db_recover - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_stat db_stat - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_upgrade db_upgrade - cd $(DESTDIR)$(prefix)/bdb4/bin/sparcv9 && gln -s $(bindir)/sparcv9/db_verify db_verify - -install-custom-i386: - ginstall -d $(DESTDIR)$(prefix)/bdb4/lib - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s . i386 - -install-custom-all: - ginstall -d $(DESTDIR)$(prefix)/bdb4/lib - ginstall -d $(DESTDIR)$(prefix)/bdb4/bin - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s . 32 - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/db.jar db.jar - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb-4.so libdb-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb-4.so libdb-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb.so libdb.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_cxx-4.so libdb_cxx-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_cxx-4.so libdb_cxx-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_cxx.so libdb_cxx.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_java-4.so libdb_java-4.2.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_java-4.so libdb_java-4.2_g.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_java-4.so libdb_java-4.so - cd $(DESTDIR)$(prefix)/bdb4/lib && gln -s $(libdir)/libdb_java.so libdb_java.so - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_archive db_archive - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_checkpoint db_checkpoint - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_deadlock db_deadlock - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_dump db_dump - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_load db_load - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_printlog db_printlog - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_recover db_recover - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_stat db_stat - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_upgrade db_upgrade - cd $(DESTDIR)$(prefix)/bdb4/bin && gln -s $(bindir)/db_verify db_verify Copied: csw/mgar/pkg/bdb4/trunk/Makefile (from rev 6657, csw/mgar/pkg/bdb3/trunk/Makefile) =================================================================== --- csw/mgar/pkg/bdb4/trunk/Makefile (rev 0) +++ csw/mgar/pkg/bdb4/trunk/Makefile 2009-10-02 09:33:12 UTC (rev 6658) @@ -0,0 +1,33 @@ +GARNAME = db +GARVERSION = 4.2.52 +CATEGORIES = lib + +DESCRIPTION = Stub package as contents moved to CSWbdb42 +define BLURB + Berkeley DB (libdb) is a programmatic toolkit that provides embedded database + support for both traditional and client/server applications. It includes + b+tree, queue, extended linear hashing, fixed, and variable-length record + access methods, transactions, locking, logging, shared memory caching and + database recovery. DB supports C, C++, Java, and Perl APIs. It is available + for a wide variety of UNIX platforms as well as Windows NT and Windows 95 + (MSVC 4, 5 and 6). +endef + +PACKAGES = CSWbdb4 +CATALOGNAME = berkeleydb4 + +ARCHALL = 1 +REQUIRED_PKGS = CSWbdb42 + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = +INSTALL_SCRIPTS = custom + +TEST_SCRIPTS = + +include gar/category.mk + +install-custom: + ginstall -d $(DESTDIR)$(prefix) + ln -s bdb42 $(DESTDIR)$(prefix)/bdb4 + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 11:37:43 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 09:37:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6659] csw/mgar/pkg/bdb/trunk Message-ID: Revision: 6659 http://gar.svn.sourceforge.net/gar/?rev=6659&view=rev Author: dmichelsen Date: 2009-10-02 09:37:43 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb: Make package a stub to CSWbdb47 Added Paths: ----------- csw/mgar/pkg/bdb/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/bdb/trunk/Makefile Deleted: csw/mgar/pkg/bdb/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb/trunk/Makefile 2009-10-02 09:33:12 UTC (rev 6658) +++ csw/mgar/pkg/bdb/trunk/Makefile 2009-10-02 09:37:43 UTC (rev 6659) @@ -1,90 +0,0 @@ -GARNAME = db -GARVERSION = 4.7.25 -CATEGORIES = lib - -DESCRIPTION = Berkeley DB 4.7 -define BLURB - Berkeley DB (libdb) is a programmatic toolkit that provides embedded database - support for both traditional and client/server applications. It includes - b+tree, queue, extended linear hashing, fixed, and variable-length record - access methods, transactions, locking, logging, shared memory caching and - database recovery. DB supports C, C++, Java, and Perl APIs. It is available - for a wide variety of UNIX platforms as well as Windows NT and Windows 95 - (MSVC 4, 5 and 6). -endef - -MASTER_SITES = http://download.oracle.com/berkeley-db/ -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz - -# We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz - -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - -WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix - -PATCHDIR = $(WORKSRC)/.. -PATCHDIRLEVEL = 0 -PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) - -BUILD64 = 1 -CONFIGURE_SCRIPTS = dist - -#prefix = $(BUILD_PREFIX)/bdb47 -CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --enable-compat185 -CONFIGURE_ARGS += --enable-o_direct -CONFIGURE_ARGS += --enable-rpc -CONFIGURE_ARGS += --enable-cxx -CONFIGURE_ARGS += --enable-java - -# Exclude TCL support for 64 bit until we have a 64 bit TCL -ifeq ($(MEMORYMODEL),32) -CONFIGURE_ARGS += --enable-tcl -CONFIGURE_ARGS += --with-tcl=$(libdir) -endif - -# bdb tests are *very* time consuming -TEST_SCRIPTS = - -NO_ISAEXEC = 1 - -PACKAGES = CSWbdb CSWbdbdevel CSWbdbdoc - -CATALOGNAME_CSWbdb = berkeleydb -CATALOGNAME_CSWbdbdevel = berkeleydb_devel -CATALOGNAME_CSWbdbdoc = berkeleydb_doc - -# Remove the license from share/doc/berkeleydb/license/.* -# because GAR expects license to be a file instead of a directory -EXTRA_MERGE_EXCLUDE_FILES = .*/license.* - -EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* - -ARCHALL_CSWbdbdoc = 1 - -SPKG_DESC_CSWbdb = BerkeleyDB 4.7 embedded database libraries and utilities -SPKG_DESC_CSWbdbdevel = BerkeleyDB 4.7 development support -SPKG_DESC_CSWbdbdoc = BerkeleyDB 4.7 documentation - -REQUIRED_PKGS_CSWbdbdevel = CSWbdb - -LICENSE = LICENSE - -PKGFILES_CSWbdbdoc = $(PKGFILES_DOC) - -PKGFILES_CSWbdbdevel = $(PKGFILES_DEVEL) - -include gar/category.mk - -LIBS += -lnsl -export LIBS - -PATH := /usr/jdk1.6.0_07/bin:$(PATH) -export PATH - -configure-dist: - @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) - @$(MAKECOOKIE) Copied: csw/mgar/pkg/bdb/trunk/Makefile (from rev 6657, csw/mgar/pkg/bdb3/trunk/Makefile) =================================================================== --- csw/mgar/pkg/bdb/trunk/Makefile (rev 0) +++ csw/mgar/pkg/bdb/trunk/Makefile 2009-10-02 09:37:43 UTC (rev 6659) @@ -0,0 +1,34 @@ +GARNAME = db +GARVERSION = 4.7.25 +CATEGORIES = lib + +DESCRIPTION = Stub package as contents moved to CSWbdb47 +define BLURB + Berkeley DB (libdb) is a programmatic toolkit that provides embedded database + support for both traditional and client/server applications. It includes + b+tree, queue, extended linear hashing, fixed, and variable-length record + access methods, transactions, locking, logging, shared memory caching and + database recovery. DB supports C, C++, Java, and Perl APIs. It is available + for a wide variety of UNIX platforms as well as Windows NT and Windows 95 + (MSVC 4, 5 and 6). +endef + +PACKAGES = CSWbdb +CATALOGNAME = berkeleydb + +REQUIRED_PKGS = CSWbdb47 + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = +INSTALL_SCRIPTS = custom + +TEST_SCRIPTS = + +include gar/category.mk + +install-custom: + ginstall -d $(DESTDIR)$(libdir) + ln -s ../bdb47/lib/libdb-4.7.so $(DESTDIR)$(libdir) + ginstall -d $(DESTDIR)$(libdir)/$(ISA_DEFAULT64) + ln -s ../../bdb47/lib/$(ISA_DEFAULT64)/libdb-4.7.so $(DESTDIR)$(libdir)/$(ISA_DEFAULT64) + @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Oct 2 12:44:42 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 02 Oct 2009 10:44:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[6660] csw/mgar/pkg/nicstat/trunk/Makefile Message-ID: Revision: 6660 http://gar.svn.sourceforge.net/gar/?rev=6660&view=rev Author: bonivart Date: 2009-10-02 10:44:37 +0000 (Fri, 02 Oct 2009) Log Message: ----------- nicstat: more fixes Modified Paths: -------------- csw/mgar/pkg/nicstat/trunk/Makefile Modified: csw/mgar/pkg/nicstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 09:37:43 UTC (rev 6659) +++ csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 10:44:37 UTC (rev 6660) @@ -43,7 +43,10 @@ install-custom: @echo " ==> Install $(GARNAME) (custom)" - @( cd $(WORKSRC) ; \ - gmake BASEDIR=$(DESTDIR)/opt/csw install ) + @ginstall -d $(DESTDIR)$(bindir) + @cp $(WORKSRC)/nicstat $(DESTDIR)$(bindir) @cp $(WORKSRC)/enicstat $(DESTDIR)$(bindir) + @chmod 755 $(DESTDIR)$(bindir)/?nicstat + @ginstall -d $(DESTDIR)$(mandir)/man1 + @cp $(WORKSRC)/nicstat.1 $(DESTDIR)$(mandir)/man1 @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Oct 2 13:00:33 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 02 Oct 2009 11:00:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[6661] csw/mgar/pkg/nicstat/trunk/Makefile Message-ID: Revision: 6661 http://gar.svn.sourceforge.net/gar/?rev=6661&view=rev Author: bonivart Date: 2009-10-02 11:00:27 +0000 (Fri, 02 Oct 2009) Log Message: ----------- nicstat: remove enicstat Modified Paths: -------------- csw/mgar/pkg/nicstat/trunk/Makefile Modified: csw/mgar/pkg/nicstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 10:44:37 UTC (rev 6660) +++ csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 11:00:27 UTC (rev 6661) @@ -45,7 +45,6 @@ @echo " ==> Install $(GARNAME) (custom)" @ginstall -d $(DESTDIR)$(bindir) @cp $(WORKSRC)/nicstat $(DESTDIR)$(bindir) - @cp $(WORKSRC)/enicstat $(DESTDIR)$(bindir) @chmod 755 $(DESTDIR)$(bindir)/?nicstat @ginstall -d $(DESTDIR)$(mandir)/man1 @cp $(WORKSRC)/nicstat.1 $(DESTDIR)$(mandir)/man1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Fri Oct 2 13:04:44 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Fri, 02 Oct 2009 11:04:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[6662] csw/mgar/pkg/nicstat/trunk/Makefile Message-ID: Revision: 6662 http://gar.svn.sourceforge.net/gar/?rev=6662&view=rev Author: bonivart Date: 2009-10-02 11:04:40 +0000 (Fri, 02 Oct 2009) Log Message: ----------- nicstat: one more fix Modified Paths: -------------- csw/mgar/pkg/nicstat/trunk/Makefile Modified: csw/mgar/pkg/nicstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 11:00:27 UTC (rev 6661) +++ csw/mgar/pkg/nicstat/trunk/Makefile 2009-10-02 11:04:40 UTC (rev 6662) @@ -45,7 +45,6 @@ @echo " ==> Install $(GARNAME) (custom)" @ginstall -d $(DESTDIR)$(bindir) @cp $(WORKSRC)/nicstat $(DESTDIR)$(bindir) - @chmod 755 $(DESTDIR)$(bindir)/?nicstat @ginstall -d $(DESTDIR)$(mandir)/man1 @cp $(WORKSRC)/nicstat.1 $(DESTDIR)$(mandir)/man1 @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 2 14:00:32 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 02 Oct 2009 12:00:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[6663] csw/mgar/pkg/puppet/trunk Message-ID: Revision: 6663 http://gar.svn.sourceforge.net/gar/?rev=6663&view=rev Author: wahwah Date: 2009-10-02 12:00:32 +0000 (Fri, 02 Oct 2009) Log Message: ----------- puppet: support for pkgutil Modified Paths: -------------- csw/mgar/pkg/puppet/trunk/Makefile csw/mgar/pkg/puppet/trunk/checksums Added Paths: ----------- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch Modified: csw/mgar/pkg/puppet/trunk/Makefile =================================================================== --- csw/mgar/pkg/puppet/trunk/Makefile 2009-10-02 11:04:40 UTC (rev 6662) +++ csw/mgar/pkg/puppet/trunk/Makefile 2009-10-02 12:00:32 UTC (rev 6663) @@ -52,6 +52,9 @@ TEST_SCRIPTS = INSTALL_SCRIPTS = puppet +PATCHFILES = 0001-pkgutil-provider.patch +PATCHFILES += 0002-pkgutil-specific-command-line-opts.patch + include gar/category.mk install-puppet: Modified: csw/mgar/pkg/puppet/trunk/checksums =================================================================== --- csw/mgar/pkg/puppet/trunk/checksums 2009-10-02 11:04:40 UTC (rev 6662) +++ csw/mgar/pkg/puppet/trunk/checksums 2009-10-02 12:00:32 UTC (rev 6663) @@ -1,4 +1,6 @@ -7331526709cf8cbce59421157068c184 download/cswpuppetd -066f9053e1342b19cf83f3f78ce2259c download/cswpuppetmasterd +cbf89ddcce76bfbce3b92aa4599f4e4c download/0001-pkgutil-provider.patch +4bf70f19b9a69bf00590d0e639f4e344 download/0002-pkgutil-specific-command-line-opts.patch +71174fc47265e5c81a0e32366563e5e4 download/cswpuppetd +fd5e49b7d2b7d288d5beb224d0cfa855 download/cswpuppetmasterd 3ab0d4f9801075bc78b68b766b496fc7 download/cswusergroup 288d46dee00acad64d0f3ecc6d8ba6fa download/puppet-0.24.8.tgz Added: csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch (rev 0) +++ csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch 2009-10-02 12:00:32 UTC (rev 6663) @@ -0,0 +1,131 @@ +From e1c96e313d15f21857a2dd098534de374e8f765d Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= +Date: Fri, 2 Oct 2009 11:46:59 +0100 +Subject: [PATCH 1/2] pkgutil provider + +--- + lib/puppet/provider/package/pkgutil.rb | 112 ++++++++++++++++++++++++++++++++ + 1 files changed, 112 insertions(+), 0 deletions(-) + create mode 100755 lib/puppet/provider/package/pkgutil.rb + +diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb +new file mode 100755 +index 0000000..9242cb1 +--- /dev/null ++++ b/lib/puppet/provider/package/pkgutil.rb +@@ -0,0 +1,112 @@ ++# Packaging using Blastwave's pkgutil program. ++Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun do ++ desc "Package management using ``pkgutil`` command on Solaris." ++ pkgutil = "pkgutil" ++ if FileTest.executable?("/opt/csw/bin/pkgutil") ++ pkgutil = "/opt/csw/bin/pkgutil" ++ end ++ ++ confine :operatingsystem => :solaris ++ ++ commands :pkgutil => pkgutil ++ ++ # This is so stupid, but then, so is blastwave. ++ ENV["PAGER"] = "/usr/bin/cat" ++ ++ def self.extended(mod) ++ unless command(:pkgutil) != "pkgutil" ++ raise Puppet::Error, ++ "The pkgutil command is missing; blastwave packaging unavailable" ++ end ++ end ++ ++ def self.instances(hash = {}) ++ blastlist(hash).collect do |bhash| ++ bhash.delete(:avail) ++ new(bhash) ++ end ++ end ++ ++ # Turn our blastwave listing into a bunch of hashes. ++ def self.blastlist(hash) ++ command = ["-c"] ++ ++ if hash[:justme] ++ command << hash[:justme] ++ end ++ ++ output = pkgutil command ++ ++ list = output.split("\n").collect do |line| ++ next if line =~ /^#/ ++ next if line =~ /^WARNING/ ++ next if line =~ /localrev\s+remoterev/ ++ ++ blastsplit(line) ++ end.reject { |h| h.nil? } ++ ++ if hash[:justme] ++ return list[0] ++ else ++ list.reject! { |h| ++ h[:ensure] == :absent ++ } ++ return list ++ end ++ ++ end ++ ++ # Split the different lines into hashes. ++ def self.blastsplit(line) ++ if line =~ /\s*(\S+)\s+((\[Not installed\])|(\S+))\s+(\S+)/ ++ hash = {} ++ hash[:name] = $1 ++ hash[:ensure] = if $2 == "[Not installed]" ++ :absent ++ else ++ $2 ++ end ++ hash[:avail] = $5 ++ ++ if hash[:avail] == "SAME" ++ hash[:avail] = hash[:ensure] ++ end ++ ++ # Use the name method, so it works with subclasses. ++ hash[:provider] = self.name ++ ++ return hash ++ else ++ Puppet.warning "Cannot match %s" % line ++ return nil ++ end ++ end ++ ++ def install ++ pkgutil "-y", :install, @resource[:name] ++ end ++ ++ # Retrieve the version from the current package file. ++ def latest ++ hash = self.class.blastlist(:justme => @resource[:name]) ++ hash[:avail] ++ end ++ ++ def query ++ if hash = self.class.blastlist(:justme => @resource[:name]) ++ hash ++ else ++ {:ensure => :absent} ++ end ++ end ++ ++ # Remove the old package, and install the new one ++ def update ++ pkgutil "-y", :upgrade, @resource[:name] ++ end ++ ++ def uninstall ++ pkgutil "-y", :remove, @resource[:name] ++ end ++end ++ +-- +1.6.3.2 + Added: csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch (rev 0) +++ csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch 2009-10-02 12:00:32 UTC (rev 6663) @@ -0,0 +1,39 @@ +From ff82126b6566776f7b988a84c00c7552edde9db1 Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= +Date: Fri, 2 Oct 2009 12:27:44 +0100 +Subject: [PATCH 2/2] pkgutil-specific command line opts + +--- + lib/puppet/provider/package/pkgutil.rb | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb +index 9242cb1..8d8551b 100755 +--- a/lib/puppet/provider/package/pkgutil.rb ++++ b/lib/puppet/provider/package/pkgutil.rb +@@ -83,7 +83,7 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d + end + + def install +- pkgutil "-y", :install, @resource[:name] ++ pkgutil "-y", "--install", @resource[:name] + end + + # Retrieve the version from the current package file. +@@ -102,11 +102,11 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d + + # Remove the old package, and install the new one + def update +- pkgutil "-y", :upgrade, @resource[:name] ++ pkgutil "-y", "--upgrade", @resource[:name] + end + + def uninstall +- pkgutil "-y", :remove, @resource[:name] ++ pkgutil "-y", "--remove", @resource[:name] + end + end + +-- +1.6.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 2 14:09:39 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 02 Oct 2009 12:09:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[6664] csw/mgar/pkg/puppet/trunk Message-ID: Revision: 6664 http://gar.svn.sourceforge.net/gar/?rev=6664&view=rev Author: wahwah Date: 2009-10-02 12:09:39 +0000 (Fri, 02 Oct 2009) Log Message: ----------- puppet: Using one patch instead of two for pkgutil support Modified Paths: -------------- csw/mgar/pkg/puppet/trunk/Makefile csw/mgar/pkg/puppet/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch Modified: csw/mgar/pkg/puppet/trunk/Makefile =================================================================== --- csw/mgar/pkg/puppet/trunk/Makefile 2009-10-02 12:00:32 UTC (rev 6663) +++ csw/mgar/pkg/puppet/trunk/Makefile 2009-10-02 12:09:39 UTC (rev 6664) @@ -52,8 +52,7 @@ TEST_SCRIPTS = INSTALL_SCRIPTS = puppet -PATCHFILES = 0001-pkgutil-provider.patch -PATCHFILES += 0002-pkgutil-specific-command-line-opts.patch +PATCHFILES = 0001-pkgutil-support.patch include gar/category.mk Modified: csw/mgar/pkg/puppet/trunk/checksums =================================================================== --- csw/mgar/pkg/puppet/trunk/checksums 2009-10-02 12:00:32 UTC (rev 6663) +++ csw/mgar/pkg/puppet/trunk/checksums 2009-10-02 12:09:39 UTC (rev 6664) @@ -1,5 +1,4 @@ -cbf89ddcce76bfbce3b92aa4599f4e4c download/0001-pkgutil-provider.patch -4bf70f19b9a69bf00590d0e639f4e344 download/0002-pkgutil-specific-command-line-opts.patch +abaa404420106f9f28e9e1218b4e365b download/0001-pkgutil-support.patch 71174fc47265e5c81a0e32366563e5e4 download/cswpuppetd fd5e49b7d2b7d288d5beb224d0cfa855 download/cswpuppetmasterd 3ab0d4f9801075bc78b68b766b496fc7 download/cswusergroup Deleted: csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch 2009-10-02 12:00:32 UTC (rev 6663) +++ csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-provider.patch 2009-10-02 12:09:39 UTC (rev 6664) @@ -1,131 +0,0 @@ -From e1c96e313d15f21857a2dd098534de374e8f765d Mon Sep 17 00:00:00 2001 -From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= -Date: Fri, 2 Oct 2009 11:46:59 +0100 -Subject: [PATCH 1/2] pkgutil provider - ---- - lib/puppet/provider/package/pkgutil.rb | 112 ++++++++++++++++++++++++++++++++ - 1 files changed, 112 insertions(+), 0 deletions(-) - create mode 100755 lib/puppet/provider/package/pkgutil.rb - -diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb -new file mode 100755 -index 0000000..9242cb1 ---- /dev/null -+++ b/lib/puppet/provider/package/pkgutil.rb -@@ -0,0 +1,112 @@ -+# Packaging using Blastwave's pkgutil program. -+Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun do -+ desc "Package management using ``pkgutil`` command on Solaris." -+ pkgutil = "pkgutil" -+ if FileTest.executable?("/opt/csw/bin/pkgutil") -+ pkgutil = "/opt/csw/bin/pkgutil" -+ end -+ -+ confine :operatingsystem => :solaris -+ -+ commands :pkgutil => pkgutil -+ -+ # This is so stupid, but then, so is blastwave. -+ ENV["PAGER"] = "/usr/bin/cat" -+ -+ def self.extended(mod) -+ unless command(:pkgutil) != "pkgutil" -+ raise Puppet::Error, -+ "The pkgutil command is missing; blastwave packaging unavailable" -+ end -+ end -+ -+ def self.instances(hash = {}) -+ blastlist(hash).collect do |bhash| -+ bhash.delete(:avail) -+ new(bhash) -+ end -+ end -+ -+ # Turn our blastwave listing into a bunch of hashes. -+ def self.blastlist(hash) -+ command = ["-c"] -+ -+ if hash[:justme] -+ command << hash[:justme] -+ end -+ -+ output = pkgutil command -+ -+ list = output.split("\n").collect do |line| -+ next if line =~ /^#/ -+ next if line =~ /^WARNING/ -+ next if line =~ /localrev\s+remoterev/ -+ -+ blastsplit(line) -+ end.reject { |h| h.nil? } -+ -+ if hash[:justme] -+ return list[0] -+ else -+ list.reject! { |h| -+ h[:ensure] == :absent -+ } -+ return list -+ end -+ -+ end -+ -+ # Split the different lines into hashes. -+ def self.blastsplit(line) -+ if line =~ /\s*(\S+)\s+((\[Not installed\])|(\S+))\s+(\S+)/ -+ hash = {} -+ hash[:name] = $1 -+ hash[:ensure] = if $2 == "[Not installed]" -+ :absent -+ else -+ $2 -+ end -+ hash[:avail] = $5 -+ -+ if hash[:avail] == "SAME" -+ hash[:avail] = hash[:ensure] -+ end -+ -+ # Use the name method, so it works with subclasses. -+ hash[:provider] = self.name -+ -+ return hash -+ else -+ Puppet.warning "Cannot match %s" % line -+ return nil -+ end -+ end -+ -+ def install -+ pkgutil "-y", :install, @resource[:name] -+ end -+ -+ # Retrieve the version from the current package file. -+ def latest -+ hash = self.class.blastlist(:justme => @resource[:name]) -+ hash[:avail] -+ end -+ -+ def query -+ if hash = self.class.blastlist(:justme => @resource[:name]) -+ hash -+ else -+ {:ensure => :absent} -+ end -+ end -+ -+ # Remove the old package, and install the new one -+ def update -+ pkgutil "-y", :upgrade, @resource[:name] -+ end -+ -+ def uninstall -+ pkgutil "-y", :remove, @resource[:name] -+ end -+end -+ --- -1.6.3.2 - Deleted: csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch 2009-10-02 12:00:32 UTC (rev 6663) +++ csw/mgar/pkg/puppet/trunk/files/0002-pkgutil-specific-command-line-opts.patch 2009-10-02 12:09:39 UTC (rev 6664) @@ -1,39 +0,0 @@ -From ff82126b6566776f7b988a84c00c7552edde9db1 Mon Sep 17 00:00:00 2001 -From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= -Date: Fri, 2 Oct 2009 12:27:44 +0100 -Subject: [PATCH 2/2] pkgutil-specific command line opts - ---- - lib/puppet/provider/package/pkgutil.rb | 6 +++--- - 1 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb -index 9242cb1..8d8551b 100755 ---- a/lib/puppet/provider/package/pkgutil.rb -+++ b/lib/puppet/provider/package/pkgutil.rb -@@ -83,7 +83,7 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d - end - - def install -- pkgutil "-y", :install, @resource[:name] -+ pkgutil "-y", "--install", @resource[:name] - end - - # Retrieve the version from the current package file. -@@ -102,11 +102,11 @@ Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun d - - # Remove the old package, and install the new one - def update -- pkgutil "-y", :upgrade, @resource[:name] -+ pkgutil "-y", "--upgrade", @resource[:name] - end - - def uninstall -- pkgutil "-y", :remove, @resource[:name] -+ pkgutil "-y", "--remove", @resource[:name] - end - end - --- -1.6.3.2 - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 2 14:10:14 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Fri, 02 Oct 2009 12:10:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[6665] csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-support .patch Message-ID: Revision: 6665 http://gar.svn.sourceforge.net/gar/?rev=6665&view=rev Author: wahwah Date: 2009-10-02 12:10:14 +0000 (Fri, 02 Oct 2009) Log Message: ----------- puppet: Adding the pkgutil support patch Added Paths: ----------- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-support.patch Added: csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-support.patch =================================================================== --- csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-support.patch (rev 0) +++ csw/mgar/pkg/puppet/trunk/files/0001-pkgutil-support.patch 2009-10-02 12:10:14 UTC (rev 6665) @@ -0,0 +1,130 @@ +From a910ce5c5ea0b626fc6676254d8fc00bd0b7325a Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= +Date: Fri, 2 Oct 2009 13:08:19 +0100 +Subject: [PATCH] pkgutil support + +--- + lib/puppet/provider/package/pkgutil.rb | 111 ++++++++++++++++++++++++++++++++ + 1 files changed, 111 insertions(+), 0 deletions(-) + create mode 100755 lib/puppet/provider/package/pkgutil.rb + +diff --git a/lib/puppet/provider/package/pkgutil.rb b/lib/puppet/provider/package/pkgutil.rb +new file mode 100755 +index 0000000..cde7482 +--- /dev/null ++++ b/lib/puppet/provider/package/pkgutil.rb +@@ -0,0 +1,111 @@ ++# Packaging using pkgutil from http://pkgutil.wikidot.com/ ++Puppet::Type.type(:package).provide :pkgutil, :parent => :sun, :source => :sun do ++ desc "Package management using ``pkgutil`` command on Solaris." ++ pkgutil = "pkgutil" ++ if FileTest.executable?("/opt/csw/bin/pkgutil") ++ pkgutil = "/opt/csw/bin/pkgutil" ++ end ++ ++ confine :operatingsystem => :solaris ++ ++ commands :pkgutil => pkgutil ++ ++ # This is so stupid, but then, so is Solaris. ++ ENV["PAGER"] = "/usr/bin/cat" ++ ++ def self.extended(mod) ++ unless command(:pkgutil) != "pkgutil" ++ raise Puppet::Error, ++ "The pkgutil command is missing; pkgutil packaging unavailable" ++ end ++ end ++ ++ def self.instances(hash = {}) ++ blastlist(hash).collect do |bhash| ++ bhash.delete(:avail) ++ new(bhash) ++ end ++ end ++ ++ # Turn our pkgutil listing into a bunch of hashes. ++ def self.blastlist(hash) ++ command = ["-c"] ++ ++ if hash[:justme] ++ command << hash[:justme] ++ end ++ ++ output = pkgutil command ++ ++ list = output.split("\n").collect do |line| ++ next if line =~ /^#/ ++ next if line =~ /^WARNING/ ++ next if line =~ /localrev\s+remoterev/ ++ ++ blastsplit(line) ++ end.reject { |h| h.nil? } ++ ++ if hash[:justme] ++ return list[0] ++ else ++ list.reject! { |h| ++ h[:ensure] == :absent ++ } ++ return list ++ end ++ ++ end ++ ++ # Split the different lines into hashes. ++ def self.blastsplit(line) ++ if line =~ /\s*(\S+)\s+((\[Not installed\])|(\S+))\s+(\S+)/ ++ hash = {} ++ hash[:name] = $1 ++ hash[:ensure] = if $2 == "[Not installed]" ++ :absent ++ else ++ $2 ++ end ++ hash[:avail] = $5 ++ ++ if hash[:avail] == "SAME" ++ hash[:avail] = hash[:ensure] ++ end ++ ++ # Use the name method, so it works with subclasses. ++ hash[:provider] = self.name ++ ++ return hash ++ else ++ Puppet.warning "Cannot match %s" % line ++ return nil ++ end ++ end ++ ++ def install ++ pkgutil "-y", "--install", @resource[:name] ++ end ++ ++ # Retrieve the version from the current package file. ++ def latest ++ hash = self.class.blastlist(:justme => @resource[:name]) ++ hash[:avail] ++ end ++ ++ def query ++ if hash = self.class.blastlist(:justme => @resource[:name]) ++ hash ++ else ++ {:ensure => :absent} ++ end ++ end ++ ++ # Remove the old package, and install the new one ++ def update ++ pkgutil "-y", "--upgrade", @resource[:name] ++ end ++ ++ def uninstall ++ pkgutil "-y", "--remove", @resource[:name] ++ end ++end +-- +1.6.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 17:31:58 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 15:31:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[6666] csw/mgar/pkg/bdb33/trunk/Makefile Message-ID: Revision: 6666 http://gar.svn.sourceforge.net/gar/?rev=6666&view=rev Author: dmichelsen Date: 2009-10-02 15:31:58 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb33: Relocate docs and add revision Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 12:10:14 UTC (rev 6665) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 15:31:58 UTC (rev 6666) @@ -1,5 +1,6 @@ GARNAME = db GARVERSION = 3.3.11 +RELEASE = p2 CATEGORIES = lib DESCRIPTION = embedded database libraries and utilities @@ -76,12 +77,11 @@ INSTALL_OVERRIDE_DIRS = prefix exec_prefix bindir includedir libdir -# Leave the docs where they are for now -#EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" -#EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb33/,p" +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb33),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -#PKGFILES_CSWbdb33-doc = $(PKGFILES_DOC) -PKGFILES_CSWbdb33-doc = $(prefix)/docs/.* +PKGFILES_CSWbdb33-doc = $(PKGFILES_DOC) PKGFILES_CSWbdb33-devel = $(PKGFILES_DEVEL) @@ -101,3 +101,6 @@ gln -s . $(PKGROOT)$(libdir)/32 gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 17:34:51 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 15:34:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6667] csw/mgar/pkg/bdb42/trunk/Makefile Message-ID: Revision: 6667 http://gar.svn.sourceforge.net/gar/?rev=6667&view=rev Author: dmichelsen Date: 2009-10-02 15:34:51 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb42: Relocate docs and add revision Modified Paths: -------------- csw/mgar/pkg/bdb42/trunk/Makefile Modified: csw/mgar/pkg/bdb42/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 15:31:58 UTC (rev 6666) +++ csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 15:34:51 UTC (rev 6667) @@ -1,5 +1,6 @@ GARNAME = db GARVERSION = 4.2.52 +RELEASE = p5 CATEGORIES = lib DESCRIPTION = embedded database libraries and utilities @@ -30,6 +31,7 @@ PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*.diff)) BUILD64 = 1 +NO_ISAEXEC = 1 CONFIGURE_SCRIPTS = dist @@ -55,8 +57,6 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 - PACKAGES = CSWbdb42 CSWbdb42-devel CSWbdb42-doc CATALOGNAME_CSWbdb42 = berkeleydb42 @@ -74,12 +74,11 @@ LICENSE = LICENSE -# Leave the docs where they are for now -#EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb42/,p" -#EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb42/,p" +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb42),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -#PKGFILES_CSWbdb42-doc = $(PKGFILES_DOC) -PKGFILES_CSWbdb42-doc = $(prefix)/docs/.* +PKGFILES_CSWbdb42-doc = $(PKGFILES_DOC) PKGFILES_CSWbdb42-devel = $(PKGFILES_DEVEL) @@ -99,3 +98,6 @@ gln -s . $(PKGROOT)$(libdir)/32 gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 17:38:00 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 15:38:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[6668] csw/mgar/pkg/bdb43/trunk/Makefile Message-ID: Revision: 6668 http://gar.svn.sourceforge.net/gar/?rev=6668&view=rev Author: dmichelsen Date: 2009-10-02 15:38:00 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb43: Relocate docs and add revision Modified Paths: -------------- csw/mgar/pkg/bdb43/trunk/Makefile Modified: csw/mgar/pkg/bdb43/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 15:34:51 UTC (rev 6667) +++ csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 15:38:00 UTC (rev 6668) @@ -1,5 +1,6 @@ GARNAME = db GARVERSION = 4.3.29 +RELEASE = p1 CATEGORIES = lib DESCRIPTION = BerkeleyDB 4.3 libraries and utilities @@ -70,8 +71,11 @@ # bdb tests are time consuming TEST_SCRIPTS = -PKGFILES_CSWbdb43-doc = $(prefix)/docs/.* +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb43),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +PKGFILES_CSWbdb43-doc = $(PKGFILES_DOC) PKGFILES_CSWbdb43-devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -86,3 +90,5 @@ ( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 17:46:53 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 15:46:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[6669] csw/mgar/pkg/bdb33/trunk/Makefile Message-ID: Revision: 6669 http://gar.svn.sourceforge.net/gar/?rev=6669&view=rev Author: dmichelsen Date: 2009-10-02 15:46:53 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb33: Reorder Makefile Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 15:38:00 UTC (rev 6668) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) @@ -1,6 +1,5 @@ GARNAME = db GARVERSION = 3.3.11 -RELEASE = p2 CATEGORIES = lib DESCRIPTION = embedded database libraries and utilities @@ -17,20 +16,18 @@ MASTER_SITES = http://download.oracle.com/berkeley-db/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -PACKAGES = CSWbdb33 CSWbdb33-devel CSWbdb33-doc - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) #BUILD64 = 1 +NO_ISAEXEC = 1 CONFIGURE_SCRIPTS = dist @@ -56,22 +53,22 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 +PACKAGES = CSWbdb33 CSWbdb33devel CSWbdb33doc -PACKAGES = CSWbdb33 CSWbdb33-devel CSWbdb33-doc +CATALOGNAME_CSWbdb33 = berkeleydb33 +CATALOGNAME_CSWbdb33devel = berkeleydb33_devel +CATALOGNAME_CSWbdb33doc = berkeleydb33_doc -CATALOGNAME_CSWbdb33 = berkeleydb33 -CATALOGNAME_CSWbdb33-devel = berkeleydb33_devel -CATALOGNAME_CSWbdb33-doc = berkeleydb33_doc +ARCHALL_CSWbdb33doc = 1 -ARCHALL_CSWbdb33-doc = 1 +SPKG_DESC_CSWbdb33 = BerkeleyDB 3.3 embedded database libraries and utilities +SPKG_DESC_CSWbdb33devel = BerkeleyDB 3.3 development support +SPKG_DESC_CSWbdb33doc = BerkeleyDB 3.3 documentation -SPKG_DESC_CSWbdb33 = BerkeleyDB 3.3 embedded database libraries and utilities -SPKG_DESC_CSWbdb33-devel = BerkeleyDB 3.3 development support -SPKG_DESC_CSWbdb33-doc = BerkeleyDB 3.3 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html -REQUIRED_PKGS_CSWbdb33-devel = CSWbdb33 -INCOMPATIBLE_PKGS_CSWbdb33-doc = CSWbdb33doc +REQUIRED_PKGS_CSWbdb33devel = CSWbdb33 +INCOMPATIBLE_PKGS_CSWbdb33doc = CSWbdb33doc LICENSE = LICENSE @@ -81,10 +78,9 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -PKGFILES_CSWbdb33-doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb33doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb33devel = $(PKGFILES_DEVEL) -PKGFILES_CSWbdb33-devel = $(PKGFILES_DEVEL) - include gar/category.mk LIBS += -lnsl This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 18:09:10 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 16:09:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[6670] csw/mgar/pkg Message-ID: Revision: 6670 http://gar.svn.sourceforge.net/gar/?rev=6670&view=rev Author: dmichelsen Date: 2009-10-02 16:09:10 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb*: Homogenize Makefiles Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile csw/mgar/pkg/bdb42/trunk/Makefile csw/mgar/pkg/bdb43/trunk/Makefile csw/mgar/pkg/bdb44/trunk/Makefile csw/mgar/pkg/bdb45/trunk/Makefile csw/mgar/pkg/bdb46/trunk/Makefile csw/mgar/pkg/bdb47/trunk/Makefile csw/mgar/pkg/bdb48/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1 csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2 csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3 csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4 csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5 csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1 csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2 csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3 csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4 csw/mgar/pkg/bdb44/trunk/files/patch.64bit-libtool Removed Paths: ------------- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1.diff csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2.diff csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3.diff csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4.diff csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.5.diff Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -68,7 +68,6 @@ SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html REQUIRED_PKGS_CSWbdb33devel = CSWbdb33 -INCOMPATIBLE_PKGS_CSWbdb33doc = CSWbdb33doc LICENSE = LICENSE Modified: csw/mgar/pkg/bdb42/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,6 +1,5 @@ GARNAME = db GARVERSION = 4.2.52 -RELEASE = p5 CATEGORIES = lib DESCRIPTION = embedded database libraries and utilities @@ -17,18 +16,15 @@ MASTER_SITES = http://download.oracle.com/berkeley-db/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -PACKAGES = CSWbdb42 CSWbdb42-devel CSWbdb42-doc - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 -PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*.diff)) +PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 NO_ISAEXEC = 1 @@ -57,31 +53,31 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -PACKAGES = CSWbdb42 CSWbdb42-devel CSWbdb42-doc +PACKAGES = CSWbdb42 CSWbdb42devel CSWbdb42doc -CATALOGNAME_CSWbdb42 = berkeleydb42 -CATALOGNAME_CSWbdb42-devel = berkeleydb42_devel -CATALOGNAME_CSWbdb42-doc = berkeleydb42_doc +CATALOGNAME_CSWbdb42 = berkeleydb42 +CATALOGNAME_CSWbdb42devel = berkeleydb42_devel +CATALOGNAME_CSWbdb42doc = berkeleydb42_doc -ARCHALL_CSWbdb42-doc = 1 +ARCHALL_CSWbdb42doc = 1 -SPKG_DESC_CSWbdb42 = BerkeleyDB 4.2 embedded database libraries and utilities -SPKG_DESC_CSWbdb42-devel = BerkeleyDB 4.2 development support -SPKG_DESC_CSWbdb42-doc = BerkeleyDB 4.2 documentation +SPKG_DESC_CSWbdb42 = BerkeleyDB 4.2 embedded database libraries and utilities +SPKG_DESC_CSWbdb42devel = BerkeleyDB 4.2 development support +SPKG_DESC_CSWbdb42doc = BerkeleyDB 4.2 documentation -REQUIRED_PKGS_CSWbdb42-devel = CSWbdb42 -INCOMPATIBLE_PKGS_CSWbdb42-doc = CSWbdb42doc +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html +REQUIRED_PKGS_CSWbdb42devel = CSWbdb42 + LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb42),' EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -PKGFILES_CSWbdb42-doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb42doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb42devel = $(PKGFILES_DEVEL) -PKGFILES_CSWbdb42-devel = $(PKGFILES_DEVEL) - include gar/category.mk LIBS += -lnsl Copied: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1 (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1 (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,36 @@ +*** mp/mp_fget.c.orig 25 Sep 2003 02:15:16 -0000 11.81 +--- mp/mp_fget.c 9 Dec 2003 19:06:28 -0000 11.82 +*************** +*** 440,446 **** + c_mp->stat.st_pages--; + alloc_bhp = NULL; + R_UNLOCK(dbenv, &dbmp->reginfo[n_cache]); +- MUTEX_LOCK(dbenv, &hp->hash_mutex); + + /* + * We can't use the page we found in the pool if DB_MPOOL_NEW +--- 440,445 ---- +*************** +*** 455,460 **** +--- 454,462 ---- + b_incr = 0; + goto alloc; + } ++ ++ /* We can use the page -- get the bucket lock. */ ++ MUTEX_LOCK(dbenv, &hp->hash_mutex); + break; + case SECOND_MISS: + /* +*** mp/mp_fput.c.orig 30 Sep 2003 17:12:00 -0000 11.48 +--- mp/mp_fput.c 13 Dec 2003 00:08:29 -0000 11.49 +*************** +*** 285,290 **** +--- 285,291 ---- + bhp != NULL; bhp = SH_TAILQ_NEXT(bhp, hq, __bh)) + if (bhp->priority != UINT32_T_MAX && + bhp->priority > MPOOL_BASE_DECREMENT) ++ bhp->priority -= MPOOL_BASE_DECREMENT; + MUTEX_UNLOCK(dbenv, &hp->hash_mutex); + } + } Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.1.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,36 +0,0 @@ -*** mp/mp_fget.c.orig 25 Sep 2003 02:15:16 -0000 11.81 ---- mp/mp_fget.c 9 Dec 2003 19:06:28 -0000 11.82 -*************** -*** 440,446 **** - c_mp->stat.st_pages--; - alloc_bhp = NULL; - R_UNLOCK(dbenv, &dbmp->reginfo[n_cache]); -- MUTEX_LOCK(dbenv, &hp->hash_mutex); - - /* - * We can't use the page we found in the pool if DB_MPOOL_NEW ---- 440,445 ---- -*************** -*** 455,460 **** ---- 454,462 ---- - b_incr = 0; - goto alloc; - } -+ -+ /* We can use the page -- get the bucket lock. */ -+ MUTEX_LOCK(dbenv, &hp->hash_mutex); - break; - case SECOND_MISS: - /* -*** mp/mp_fput.c.orig 30 Sep 2003 17:12:00 -0000 11.48 ---- mp/mp_fput.c 13 Dec 2003 00:08:29 -0000 11.49 -*************** -*** 285,290 **** ---- 285,291 ---- - bhp != NULL; bhp = SH_TAILQ_NEXT(bhp, hq, __bh)) - if (bhp->priority != UINT32_T_MAX && - bhp->priority > MPOOL_BASE_DECREMENT) -+ bhp->priority -= MPOOL_BASE_DECREMENT; - MUTEX_UNLOCK(dbenv, &hp->hash_mutex); - } - } Copied: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2 (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2 (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,45 @@ +*** lock/lock.c.save 2004-01-30 10:48:33.000000000 -0800 +--- lock/lock.c 2004-01-30 10:55:58.000000000 -0800 +*************** +*** 2216,2226 **** + dp = (u_int8_t *)dp + \ + sizeof(db_pgno_t); \ + } while (0) +! #define COPY_OBJ(dp, obj) do { \ +! memcpy(dp, obj->data, obj->size); \ +! dp = (u_int8_t *)dp + \ +! ALIGN(obj->size, \ +! sizeof(u_int32_t)); \ + } while (0) + + #define GET_COUNT(dp, count) do { \ +--- 2216,2227 ---- + dp = (u_int8_t *)dp + \ + sizeof(db_pgno_t); \ + } while (0) +! #define COPY_OBJ(dp, obj) do { \ +! memcpy(dp, \ +! (obj)->data, (obj)->size); \ +! dp = (u_int8_t *)dp + \ +! ALIGN((obj)->size, \ +! sizeof(u_int32_t)); \ + } while (0) + + #define GET_COUNT(dp, count) do { \ +*************** +*** 2339,2345 **** + for (i = 0; i < nlocks; i = j) { + PUT_PCOUNT(dp, obj[i].ulen); + PUT_SIZE(dp, obj[i].size); +! COPY_OBJ(dp, obj); + lock = (DB_LOCK_ILOCK *)obj[i].data; + for (j = i + 1; j <= i + obj[i].ulen; j++) { + lock = (DB_LOCK_ILOCK *)obj[j].data; +--- 2340,2346 ---- + for (i = 0; i < nlocks; i = j) { + PUT_PCOUNT(dp, obj[i].ulen); + PUT_SIZE(dp, obj[i].size); +! COPY_OBJ(dp, &obj[i]); + lock = (DB_LOCK_ILOCK *)obj[i].data; + for (j = i + 1; j <= i + obj[i].ulen; j++) { + lock = (DB_LOCK_ILOCK *)obj[j].data; Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.2.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,45 +0,0 @@ -*** lock/lock.c.save 2004-01-30 10:48:33.000000000 -0800 ---- lock/lock.c 2004-01-30 10:55:58.000000000 -0800 -*************** -*** 2216,2226 **** - dp = (u_int8_t *)dp + \ - sizeof(db_pgno_t); \ - } while (0) -! #define COPY_OBJ(dp, obj) do { \ -! memcpy(dp, obj->data, obj->size); \ -! dp = (u_int8_t *)dp + \ -! ALIGN(obj->size, \ -! sizeof(u_int32_t)); \ - } while (0) - - #define GET_COUNT(dp, count) do { \ ---- 2216,2227 ---- - dp = (u_int8_t *)dp + \ - sizeof(db_pgno_t); \ - } while (0) -! #define COPY_OBJ(dp, obj) do { \ -! memcpy(dp, \ -! (obj)->data, (obj)->size); \ -! dp = (u_int8_t *)dp + \ -! ALIGN((obj)->size, \ -! sizeof(u_int32_t)); \ - } while (0) - - #define GET_COUNT(dp, count) do { \ -*************** -*** 2339,2345 **** - for (i = 0; i < nlocks; i = j) { - PUT_PCOUNT(dp, obj[i].ulen); - PUT_SIZE(dp, obj[i].size); -! COPY_OBJ(dp, obj); - lock = (DB_LOCK_ILOCK *)obj[i].data; - for (j = i + 1; j <= i + obj[i].ulen; j++) { - lock = (DB_LOCK_ILOCK *)obj[j].data; ---- 2340,2346 ---- - for (i = 0; i < nlocks; i = j) { - PUT_PCOUNT(dp, obj[i].ulen); - PUT_SIZE(dp, obj[i].size); -! COPY_OBJ(dp, &obj[i]); - lock = (DB_LOCK_ILOCK *)obj[i].data; - for (j = i + 1; j <= i + obj[i].ulen; j++) { - lock = (DB_LOCK_ILOCK *)obj[j].data; Copied: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3 (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3 (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,247 @@ +--- java/src/com/sleepycat/db/DbEnv.java 2003-12-03 16:26:27.000000000 -0500 ++++ java/src/com/sleepycat/db/DbEnv.java 2004-03-18 15:15:42.000000000 -0500 +@@ -61,7 +61,7 @@ + // Internally, the JNI layer creates a global reference to each DbEnv, + // which can potentially be different to this. We keep a copy here so + // we can clean up after destructors. +- private Object dbenv_ref; ++ private long dbenv_ref; + private DbAppDispatch app_dispatch_handler; + private DbEnvFeedbackHandler env_feedback_handler; + private DbErrorHandler error_handler; +@@ -94,7 +94,7 @@ + void cleanup() { + swigCPtr = 0; + db_java.deleteRef0(dbenv_ref); +- dbenv_ref = null; ++ dbenv_ref = 0L; + } + + +--- java/src/com/sleepycat/db/Db.java 2003-12-03 16:26:25.000000000 -0500 ++++ java/src/com/sleepycat/db/Db.java 2004-03-18 15:15:55.000000000 -0500 +@@ -57,7 +57,7 @@ + // Internally, the JNI layer creates a global reference to each Db, + // which can potentially be different to this. We keep a copy here so + // we can clean up after destructors. +- private Object db_ref; ++ private long db_ref; + private DbEnv dbenv; + private boolean private_dbenv; + private DbAppendRecno append_recno_handler; +@@ -84,7 +84,7 @@ + private void cleanup() { + swigCPtr = 0; + db_java.deleteRef0(db_ref); +- db_ref = null; ++ db_ref = 0L; + if (private_dbenv) { + dbenv.cleanup(); + } +--- java/src/com/sleepycat/db/db_java.java 2003-12-03 16:10:54.000000000 -0500 ++++ java/src/com/sleepycat/db/db_java.java 2004-03-18 15:17:24.000000000 -0500 +@@ -14,15 +14,15 @@ + db_javaJNI.DbEnv_lock_vec(DbEnv.getCPtr(dbenv), locker, flags, list, offset, nlist); + } + +- static Object initDbEnvRef0(DbEnv self, Object handle) { ++ static long initDbEnvRef0(DbEnv self, Object handle) { + return db_javaJNI.initDbEnvRef0(DbEnv.getCPtr(self), handle); + } + +- static Object initDbRef0(Db self, Object handle) { ++ static long initDbRef0(Db self, Object handle) { + return db_javaJNI.initDbRef0(Db.getCPtr(self), handle); + } + +- static void deleteRef0(Object ref) { ++ static void deleteRef0(long ref) { + db_javaJNI.deleteRef0(ref); + } + +--- java/src/com/sleepycat/db/db_javaJNI.java 2003-12-03 16:10:55.000000000 -0500 ++++ java/src/com/sleepycat/db/db_javaJNI.java 2004-03-18 15:16:18.000000000 -0500 +@@ -45,9 +45,9 @@ + static native final void initialize(); + + public final static native void DbEnv_lock_vec(long jarg1, int jarg2, int jarg3, DbLockRequest[] jarg4, int jarg5, int jarg6) throws DbException; +- final static native Object initDbEnvRef0(long jarg1, Object jarg2); +- final static native Object initDbRef0(long jarg1, Object jarg2); +- final static native void deleteRef0(Object jarg1); ++ final static native long initDbEnvRef0(long jarg1, Object jarg2); ++ final static native long initDbRef0(long jarg1, Object jarg2); ++ final static native void deleteRef0(long jarg1); + final static native long getDbEnv0(long jarg1); + public final static native long new_Db(long jarg1, int jarg2) throws DbException; + public final static native void Db_associate(long jarg1, long jarg2, long jarg3, DbSecondaryKeyCreate jarg4, int jarg5) throws DbException; +--- libdb_java/db_java.i 2003-11-17 15:00:52.000000000 -0500 ++++ libdb_java/db_java.i 2004-03-18 09:21:14.000000000 -0500 +@@ -53,7 +53,7 @@ + // Internally, the JNI layer creates a global reference to each DbEnv, + // which can potentially be different to this. We keep a copy here so + // we can clean up after destructors. +- private Object dbenv_ref; ++ private long dbenv_ref; + private DbAppDispatch app_dispatch_handler; + private DbEnvFeedbackHandler env_feedback_handler; + private DbErrorHandler error_handler; +@@ -76,7 +76,7 @@ + void cleanup() { + swigCPtr = 0; + db_java.deleteRef0(dbenv_ref); +- dbenv_ref = null; ++ dbenv_ref = 0L; + } + + public synchronized void close(int flags) throws DbException { +@@ -220,7 +220,7 @@ + // Internally, the JNI layer creates a global reference to each Db, + // which can potentially be different to this. We keep a copy here so + // we can clean up after destructors. +- private Object db_ref; ++ private long db_ref; + private DbEnv dbenv; + private boolean private_dbenv; + private DbAppendRecno append_recno_handler; +@@ -245,7 +245,7 @@ + private void cleanup() { + swigCPtr = 0; + db_java.deleteRef0(db_ref); +- db_ref = null; ++ db_ref = 0L; + if (private_dbenv) + dbenv.cleanup(); + dbenv = null; +@@ -503,46 +503,42 @@ + } + %} + +-%native(initDbEnvRef0) jobject initDbEnvRef0(DB_ENV *self, void *handle); +-%native(initDbRef0) jobject initDbRef0(DB *self, void *handle); +-%native(deleteRef0) void deleteRef0(jobject ref); ++%native(initDbEnvRef0) jlong initDbEnvRef0(DB_ENV *self, void *handle); ++%native(initDbRef0) jlong initDbRef0(DB *self, void *handle); ++%native(deleteRef0) void deleteRef0(jlong ref); + %native(getDbEnv0) DB_ENV *getDbEnv0(DB *self); + + %{ +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( ++JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { + DB_ENV *self = *(DB_ENV **)&jarg1; ++ jlong ret; + COMPQUIET(jcls, NULL); + + DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); + self->set_errpfx(self, (const char*)self); +- return (jobject)DB_ENV_INTERNAL(self); ++ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); ++ return (ret); + } + +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( ++JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { + DB *self = *(DB **)&jarg1; ++ jlong ret; + COMPQUIET(jcls, NULL); + + DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); +- return (jobject)DB_INTERNAL(self); ++ *(jobject *)&ret = (jobject)DB_INTERNAL(self); ++ return (ret); + } + + JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( +- JNIEnv *jenv, jclass jcls, jobject jref) { +- COMPQUIET(jcls, NULL); +- +- if (jref != NULL) +- (*jenv)->DeleteGlobalRef(jenv, jref); +-} +- +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1) { +- DB *self = *(DB **)&jarg1; ++ jobject jref = *(jobject *)&jarg1; + COMPQUIET(jcls, NULL); +- COMPQUIET(jenv, NULL); + +- return (jobject)DB_INTERNAL(self); ++ if (jref != 0L) ++ (*jenv)->DeleteGlobalRef(jenv, jref); + } + + JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( +@@ -554,7 +550,7 @@ + COMPQUIET(jcls, NULL); + + *(DB_ENV **)&env_cptr = self->dbenv; +- return env_cptr; ++ return (env_cptr); + } + + JNIEXPORT jboolean JNICALL +--- libdb_java/db_java_wrap.c 2003-12-03 16:10:36.000000000 -0500 ++++ libdb_java/db_java_wrap.c 2004-03-18 12:18:58.000000000 -0500 +@@ -1192,40 +1192,36 @@ + } + + +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( ++JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { + DB_ENV *self = *(DB_ENV **)&jarg1; ++ jlong ret; + COMPQUIET(jcls, NULL); + + DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); + self->set_errpfx(self, (const char*)self); +- return (jobject)DB_ENV_INTERNAL(self); ++ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); ++ return (ret); + } + +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( ++JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { + DB *self = *(DB **)&jarg1; ++ jlong ret; + COMPQUIET(jcls, NULL); + + DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); +- return (jobject)DB_INTERNAL(self); ++ *(jobject *)&ret = (jobject)DB_INTERNAL(self); ++ return (ret); + } + + JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( +- JNIEnv *jenv, jclass jcls, jobject jref) { +- COMPQUIET(jcls, NULL); +- +- if (jref != NULL) +- (*jenv)->DeleteGlobalRef(jenv, jref); +-} +- +-JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( + JNIEnv *jenv, jclass jcls, jlong jarg1) { +- DB *self = *(DB **)&jarg1; ++ jobject jref = *(jobject *)&jarg1; + COMPQUIET(jcls, NULL); +- COMPQUIET(jenv, NULL); + +- return (jobject)DB_INTERNAL(self); ++ if (jref != 0L) ++ (*jenv)->DeleteGlobalRef(jenv, jref); + } + + JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( +@@ -1237,7 +1233,7 @@ + COMPQUIET(jcls, NULL); + + *(DB_ENV **)&env_cptr = self->dbenv; +- return env_cptr; ++ return (env_cptr); + } + + JNIEXPORT jboolean JNICALL Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.3.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,247 +0,0 @@ ---- java/src/com/sleepycat/db/DbEnv.java 2003-12-03 16:26:27.000000000 -0500 -+++ java/src/com/sleepycat/db/DbEnv.java 2004-03-18 15:15:42.000000000 -0500 -@@ -61,7 +61,7 @@ - // Internally, the JNI layer creates a global reference to each DbEnv, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object dbenv_ref; -+ private long dbenv_ref; - private DbAppDispatch app_dispatch_handler; - private DbEnvFeedbackHandler env_feedback_handler; - private DbErrorHandler error_handler; -@@ -94,7 +94,7 @@ - void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(dbenv_ref); -- dbenv_ref = null; -+ dbenv_ref = 0L; - } - - ---- java/src/com/sleepycat/db/Db.java 2003-12-03 16:26:25.000000000 -0500 -+++ java/src/com/sleepycat/db/Db.java 2004-03-18 15:15:55.000000000 -0500 -@@ -57,7 +57,7 @@ - // Internally, the JNI layer creates a global reference to each Db, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object db_ref; -+ private long db_ref; - private DbEnv dbenv; - private boolean private_dbenv; - private DbAppendRecno append_recno_handler; -@@ -84,7 +84,7 @@ - private void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(db_ref); -- db_ref = null; -+ db_ref = 0L; - if (private_dbenv) { - dbenv.cleanup(); - } ---- java/src/com/sleepycat/db/db_java.java 2003-12-03 16:10:54.000000000 -0500 -+++ java/src/com/sleepycat/db/db_java.java 2004-03-18 15:17:24.000000000 -0500 -@@ -14,15 +14,15 @@ - db_javaJNI.DbEnv_lock_vec(DbEnv.getCPtr(dbenv), locker, flags, list, offset, nlist); - } - -- static Object initDbEnvRef0(DbEnv self, Object handle) { -+ static long initDbEnvRef0(DbEnv self, Object handle) { - return db_javaJNI.initDbEnvRef0(DbEnv.getCPtr(self), handle); - } - -- static Object initDbRef0(Db self, Object handle) { -+ static long initDbRef0(Db self, Object handle) { - return db_javaJNI.initDbRef0(Db.getCPtr(self), handle); - } - -- static void deleteRef0(Object ref) { -+ static void deleteRef0(long ref) { - db_javaJNI.deleteRef0(ref); - } - ---- java/src/com/sleepycat/db/db_javaJNI.java 2003-12-03 16:10:55.000000000 -0500 -+++ java/src/com/sleepycat/db/db_javaJNI.java 2004-03-18 15:16:18.000000000 -0500 -@@ -45,9 +45,9 @@ - static native final void initialize(); - - public final static native void DbEnv_lock_vec(long jarg1, int jarg2, int jarg3, DbLockRequest[] jarg4, int jarg5, int jarg6) throws DbException; -- final static native Object initDbEnvRef0(long jarg1, Object jarg2); -- final static native Object initDbRef0(long jarg1, Object jarg2); -- final static native void deleteRef0(Object jarg1); -+ final static native long initDbEnvRef0(long jarg1, Object jarg2); -+ final static native long initDbRef0(long jarg1, Object jarg2); -+ final static native void deleteRef0(long jarg1); - final static native long getDbEnv0(long jarg1); - public final static native long new_Db(long jarg1, int jarg2) throws DbException; - public final static native void Db_associate(long jarg1, long jarg2, long jarg3, DbSecondaryKeyCreate jarg4, int jarg5) throws DbException; ---- libdb_java/db_java.i 2003-11-17 15:00:52.000000000 -0500 -+++ libdb_java/db_java.i 2004-03-18 09:21:14.000000000 -0500 -@@ -53,7 +53,7 @@ - // Internally, the JNI layer creates a global reference to each DbEnv, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object dbenv_ref; -+ private long dbenv_ref; - private DbAppDispatch app_dispatch_handler; - private DbEnvFeedbackHandler env_feedback_handler; - private DbErrorHandler error_handler; -@@ -76,7 +76,7 @@ - void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(dbenv_ref); -- dbenv_ref = null; -+ dbenv_ref = 0L; - } - - public synchronized void close(int flags) throws DbException { -@@ -220,7 +220,7 @@ - // Internally, the JNI layer creates a global reference to each Db, - // which can potentially be different to this. We keep a copy here so - // we can clean up after destructors. -- private Object db_ref; -+ private long db_ref; - private DbEnv dbenv; - private boolean private_dbenv; - private DbAppendRecno append_recno_handler; -@@ -245,7 +245,7 @@ - private void cleanup() { - swigCPtr = 0; - db_java.deleteRef0(db_ref); -- db_ref = null; -+ db_ref = 0L; - if (private_dbenv) - dbenv.cleanup(); - dbenv = null; -@@ -503,46 +503,42 @@ - } - %} - --%native(initDbEnvRef0) jobject initDbEnvRef0(DB_ENV *self, void *handle); --%native(initDbRef0) jobject initDbRef0(DB *self, void *handle); --%native(deleteRef0) void deleteRef0(jobject ref); -+%native(initDbEnvRef0) jlong initDbEnvRef0(DB_ENV *self, void *handle); -+%native(initDbRef0) jlong initDbRef0(DB *self, void *handle); -+%native(deleteRef0) void deleteRef0(jlong ref); - %native(getDbEnv0) DB_ENV *getDbEnv0(DB *self); - - %{ --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB_ENV *self = *(DB_ENV **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); - self->set_errpfx(self, (const char*)self); -- return (jobject)DB_ENV_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); -+ return (ret); - } - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB *self = *(DB **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); -- return (jobject)DB_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_INTERNAL(self); -+ return (ret); - } - - JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( -- JNIEnv *jenv, jclass jcls, jobject jref) { -- COMPQUIET(jcls, NULL); -- -- if (jref != NULL) -- (*jenv)->DeleteGlobalRef(jenv, jref); --} -- --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1) { -- DB *self = *(DB **)&jarg1; -+ jobject jref = *(jobject *)&jarg1; - COMPQUIET(jcls, NULL); -- COMPQUIET(jenv, NULL); - -- return (jobject)DB_INTERNAL(self); -+ if (jref != 0L) -+ (*jenv)->DeleteGlobalRef(jenv, jref); - } - - JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( -@@ -554,7 +550,7 @@ - COMPQUIET(jcls, NULL); - - *(DB_ENV **)&env_cptr = self->dbenv; -- return env_cptr; -+ return (env_cptr); - } - - JNIEXPORT jboolean JNICALL ---- libdb_java/db_java_wrap.c 2003-12-03 16:10:36.000000000 -0500 -+++ libdb_java/db_java_wrap.c 2004-03-18 12:18:58.000000000 -0500 -@@ -1192,40 +1192,36 @@ - } - - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbEnvRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB_ENV *self = *(DB_ENV **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_ENV_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); - self->set_errpfx(self, (const char*)self); -- return (jobject)DB_ENV_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_ENV_INTERNAL(self); -+ return (ret); - } - --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( -+JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_initDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2) { - DB *self = *(DB **)&jarg1; -+ jlong ret; - COMPQUIET(jcls, NULL); - - DB_INTERNAL(self) = (void *)(*jenv)->NewGlobalRef(jenv, jarg2); -- return (jobject)DB_INTERNAL(self); -+ *(jobject *)&ret = (jobject)DB_INTERNAL(self); -+ return (ret); - } - - JNIEXPORT void JNICALL Java_com_sleepycat_db_db_1javaJNI_deleteRef0( -- JNIEnv *jenv, jclass jcls, jobject jref) { -- COMPQUIET(jcls, NULL); -- -- if (jref != NULL) -- (*jenv)->DeleteGlobalRef(jenv, jref); --} -- --JNIEXPORT jobject JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbRef0( - JNIEnv *jenv, jclass jcls, jlong jarg1) { -- DB *self = *(DB **)&jarg1; -+ jobject jref = *(jobject *)&jarg1; - COMPQUIET(jcls, NULL); -- COMPQUIET(jenv, NULL); - -- return (jobject)DB_INTERNAL(self); -+ if (jref != 0L) -+ (*jenv)->DeleteGlobalRef(jenv, jref); - } - - JNIEXPORT jlong JNICALL Java_com_sleepycat_db_db_1javaJNI_getDbEnv0( -@@ -1237,7 +1233,7 @@ - COMPQUIET(jcls, NULL); - - *(DB_ENV **)&env_cptr = self->dbenv; -- return env_cptr; -+ return (env_cptr); - } - - JNIEXPORT jboolean JNICALL Copied: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4 (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4 (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,36 @@ +*** btree/bt_rec.c.orig Tue Mar 22 09:41:49 2005 +--- btree/bt_rec.c Tue Mar 22 09:42:11 2005 +*************** +*** 222,228 **** + * previous-page pointer updated to our new page. The next + * page must exist because we're redoing the operation. + */ +! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { + if ((ret = + __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { + ret = __db_pgerr(file_dbp, argp->npgno, ret); +--- 222,228 ---- + * previous-page pointer updated to our new page. The next + * page must exist because we're redoing the operation. + */ +! if (!rootsplit && argp->npgno != PGNO_INVALID) { + if ((ret = + __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { + ret = __db_pgerr(file_dbp, argp->npgno, ret); +*************** +*** 294,300 **** + * possible that the next-page never existed, we ignore it as + * if there's nothing to undo. + */ +! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { + if ((ret = + __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { + np = NULL; +--- 294,300 ---- + * possible that the next-page never existed, we ignore it as + * if there's nothing to undo. + */ +! if (!rootsplit && argp->npgno != PGNO_INVALID) { + if ((ret = + __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { + np = NULL; Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.4.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,36 +0,0 @@ -*** btree/bt_rec.c.orig Tue Mar 22 09:41:49 2005 ---- btree/bt_rec.c Tue Mar 22 09:42:11 2005 -*************** -*** 222,228 **** - * previous-page pointer updated to our new page. The next - * page must exist because we're redoing the operation. - */ -! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - ret = __db_pgerr(file_dbp, argp->npgno, ret); ---- 222,228 ---- - * previous-page pointer updated to our new page. The next - * page must exist because we're redoing the operation. - */ -! if (!rootsplit && argp->npgno != PGNO_INVALID) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - ret = __db_pgerr(file_dbp, argp->npgno, ret); -*************** -*** 294,300 **** - * possible that the next-page never existed, we ignore it as - * if there's nothing to undo. - */ -! if (!rootsplit && !IS_ZERO_LSN(argp->nlsn)) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - np = NULL; ---- 294,300 ---- - * possible that the next-page never existed, we ignore it as - * if there's nothing to undo. - */ -! if (!rootsplit && argp->npgno != PGNO_INVALID) { - if ((ret = - __memp_fget(mpf, &argp->npgno, 0, &np)) != 0) { - np = NULL; Copied: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5 (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5 (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,24 @@ +*** mp/mp_fget.c.orig 2003-09-25 08:29:02.000000000 -0700 +--- mp/mp_fget.c 2006-05-26 14:58:02.246963204 -0700 +*************** +*** 553,560 **** + */ + if (state != SECOND_MISS && bhp->ref == 1) { + bhp->priority = UINT32_T_MAX; +! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); +! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); + hp->hash_priority = + SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; + } +--- 553,563 ---- + */ + if (state != SECOND_MISS && bhp->ref == 1) { + bhp->priority = UINT32_T_MAX; +! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != +! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { +! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); +! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); +! } + hp->hash_priority = + SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; + } Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.4.2.52.5.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,24 +0,0 @@ -*** mp/mp_fget.c.orig 2003-09-25 08:29:02.000000000 -0700 ---- mp/mp_fget.c 2006-05-26 14:58:02.246963204 -0700 -*************** -*** 553,560 **** - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_T_MAX; -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); - hp->hash_priority = - SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; - } ---- 553,563 ---- - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_T_MAX; -! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != -! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); -! } - hp->hash_priority = - SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority; - } Copied: csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool (from rev 6625, csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff) =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool (rev 0) +++ csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,22 @@ +diff -Naur db-4.2.52.orig/dist/ltmain.sh db-4.2.52.patched/dist/ltmain.sh +--- dist/ltmain.sh 2003-04-26 19:45:37.000000000 +0200 ++++ dist/ltmain.sh 2009-09-30 15:15:43.792423773 +0200 +@@ -1298,7 +1298,7 @@ + # but this is not reliable with gcc because gcc may use -mfoo to + # select a different linker, different libraries, etc, while + # -Wl,-mfoo simply passes -mfoo to the linker. +- -m*) ++ -m*|-xarch=*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` +@@ -1309,9 +1309,7 @@ + esac + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" +- if test "$with_gcc" = "yes" ; then + compiler_flags="$compiler_flags $arg" +- fi + continue + ;; + Deleted: csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff =================================================================== --- csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb42/trunk/files/patch.64bit-libtool.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,22 +0,0 @@ -diff -Naur db-4.2.52.orig/dist/ltmain.sh db-4.2.52.patched/dist/ltmain.sh ---- dist/ltmain.sh 2003-04-26 19:45:37.000000000 +0200 -+++ dist/ltmain.sh 2009-09-30 15:15:43.792423773 +0200 -@@ -1298,7 +1298,7 @@ - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. -- -m*) -+ -m*|-xarch=*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -@@ -1309,9 +1309,7 @@ - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" -- if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" -- fi - continue - ;; - Modified: csw/mgar/pkg/bdb43/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,6 +1,5 @@ GARNAME = db GARVERSION = 4.3.29 -RELEASE = p1 CATEGORIES = lib DESCRIPTION = BerkeleyDB 4.3 libraries and utilities @@ -20,32 +19,13 @@ PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix -PACKAGES = CSWbdb43 CSWbdb43-devel CSWbdb43-doc - -CATALOGNAME_CSWbdb43 = berkeleydb43 -CATALOGNAME_CSWbdb43-devel = berkeleydb43_devel -CATALOGNAME_CSWbdb43-doc = berkeleydb43_doc - -SPKG_DESC_CSWbdb43 = BerkeleyDB 4.3 -SPKG_DESC_CSWbdb43-devel = BerkeleyDB 4.3 development support -SPKG_DESC_CSWbdb43-doc = BerkeleyDB 4.3 documentation - -SPKG_SOURCEURL = http://www.oracle.com/technology/products/berkeley-db/index.html - -REQUIRED_PKGS_CSWbdb43-devel = CSWbdb43 - -INCOMPATIBLE_PKGS_CSWbdb43-doc = CSWbdb43doc - -LICENSE = LICENSE - -ARCHALL_CSWbdb43-doc = 1 - BUILD64 = 1 NO_ISAEXEC = 1 @@ -71,12 +51,30 @@ # bdb tests are time consuming TEST_SCRIPTS = +PACKAGES = CSWbdb43 CSWbdb43devel CSWbdb43doc + +CATALOGNAME_CSWbdb43 = berkeleydb43 +CATALOGNAME_CSWbdb43devel = berkeleydb43_devel +CATALOGNAME_CSWbdb43doc = berkeleydb43_doc + +ARCHALL_CSWbdb43doc = 1 + +SPKG_DESC_CSWbdb43 = BerkeleyDB 4.3 +SPKG_DESC_CSWbdb43devel = BerkeleyDB 4.3 development support +SPKG_DESC_CSWbdb43doc = BerkeleyDB 4.3 documentation + +SPKG_SOURCEURL = http://www.oracle.com/technology/products/berkeley-db/index.html + +REQUIRED_PKGS_CSWbdb43devel = CSWbdb43 + +LICENSE = LICENSE + EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb43),' EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -PKGFILES_CSWbdb43-doc = $(PKGFILES_DOC) -PKGFILES_CSWbdb43-devel = $(PKGFILES_DEVEL) +PKGFILES_CSWbdb43doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb43devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -90,5 +88,10 @@ ( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) +post-merge: + gln -s . $(PKGROOT)$(libdir)/32 + gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 + @$(MAKECOOKIE) + SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) Modified: csw/mgar/pkg/bdb44/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -16,20 +16,18 @@ MASTER_SITES = http://download.oracle.com/berkeley-db/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -PACKAGES = CSWbdb44 CSWbdb44-devel CSWbdb44-doc - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 -PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*.diff)) +PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 +NO_ISAEXEC = 1 CONFIGURE_SCRIPTS = dist @@ -55,34 +53,31 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 +PACKAGES = CSWbdb44 CSWbdb44devel CSWbdb44doc -PACKAGES = CSWbdb44 CSWbdb44-devel CSWbdb44-doc +CATALOGNAME_CSWbdb44 = berkeleydb44 +CATALOGNAME_CSWbdb44devel = berkeleydb44_devel +CATALOGNAME_CSWbdb44doc = berkeleydb44_doc -CATALOGNAME_CSWbdb44 = berkeleydb44 -CATALOGNAME_CSWbdb44-devel = berkeleydb44_devel -CATALOGNAME_CSWbdb44-doc = berkeleydb44_doc +ARCHALL_CSWbdb44doc = 1 -ARCHALL_CSWbdb44-doc = 1 +SPKG_DESC_CSWbdb44 = BerkeleyDB 4.4 embedded database libraries and utilities +SPKG_DESC_CSWbdb44devel = BerkeleyDB 4.4 development support +SPKG_DESC_CSWbdb44doc = BerkeleyDB 4.4 documentation -SPKG_DESC_CSWbdb44 = BerkeleyDB 4.4 embedded database libraries and utilities -SPKG_DESC_CSWbdb44-devel = BerkeleyDB 4.4 development support -SPKG_DESC_CSWbdb44-doc = BerkeleyDB 4.4 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html -REQUIRED_PKGS_CSWbdb44-devel = CSWbdb44 -INCOMPATIBLE_PKGS_CSWbdb44-doc = CSWbdb44doc +REQUIRED_PKGS_CSWbdb44devel = CSWbdb44 LICENSE = LICENSE -# Leave the docs where they are for now -#EXTRA_PAX_ARGS_isa-sparcv8 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb44/,p" -#EXTRA_PAX_ARGS_isa-i386 = -s ",^\.$(prefix)/docs/,$(docdir)/bdb44/,p" +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb44),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* -#PKGFILES_CSWbdb44-doc = $(PKGFILES_DOC) -PKGFILES_CSWbdb44-doc = $(prefix)/docs/.* +PKGFILES_CSWbdb44doc = $(PKGFILES_DOC) +PKGFILES_CSWbdb44devel = $(PKGFILES_DEVEL) -PKGFILES_CSWbdb44-devel = $(PKGFILES_DEVEL) - include gar/category.mk LIBS += -lnsl @@ -99,3 +94,6 @@ gln -s . $(PKGROOT)$(libdir)/32 gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + Copied: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1 (from rev 6625, csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1.diff) =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1 (rev 0) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,27 @@ +*** qam/qam_files.c.orig 2005-10-20 11:57:12.000000000 -0700 +--- qam/qam_files.c 2006-01-27 13:38:38.000000000 -0800 +*************** +*** 411,416 **** +--- 411,422 ---- + DB_APP_DATA, buf, 0, NULL, &real_name)) != 0) + goto err; + #endif ++ ++ mpf = array->mpfarray[offset].mpf; ++ /* This extent my already be marked for delete and closed. */ ++ if (mpf == NULL) ++ goto err; ++ + /* + * The log must be flushed before the file is deleted. We depend on + * the log record of the last delete to recreate the file if we crash. +*************** +*** 418,424 **** + if (LOGGING_ON(dbenv) && (ret = __log_flush(dbenv, NULL)) != 0) + goto err; + +- mpf = array->mpfarray[offset].mpf; + (void)__memp_set_flags(mpf, DB_MPOOL_UNLINK, 1); + /* Someone could be real slow, let them close it down. */ + if (array->mpfarray[offset].pinref != 0) +--- 424,429 ---- Deleted: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1.diff =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.1.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,27 +0,0 @@ -*** qam/qam_files.c.orig 2005-10-20 11:57:12.000000000 -0700 ---- qam/qam_files.c 2006-01-27 13:38:38.000000000 -0800 -*************** -*** 411,416 **** ---- 411,422 ---- - DB_APP_DATA, buf, 0, NULL, &real_name)) != 0) - goto err; - #endif -+ -+ mpf = array->mpfarray[offset].mpf; -+ /* This extent my already be marked for delete and closed. */ -+ if (mpf == NULL) -+ goto err; -+ - /* - * The log must be flushed before the file is deleted. We depend on - * the log record of the last delete to recreate the file if we crash. -*************** -*** 418,424 **** - if (LOGGING_ON(dbenv) && (ret = __log_flush(dbenv, NULL)) != 0) - goto err; - -- mpf = array->mpfarray[offset].mpf; - (void)__memp_set_flags(mpf, DB_MPOOL_UNLINK, 1); - /* Someone could be real slow, let them close it down. */ - if (array->mpfarray[offset].pinref != 0) ---- 424,429 ---- Copied: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2 (from rev 6625, csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2.diff) =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2 (rev 0) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,29 @@ +*** txn/txn.c.orig Tue Nov 1 06:50:03 2005 +--- txn/txn.c Tue Jan 31 15:05:13 2006 +*************** +*** 1049,1060 **** +--- 1049,1062 ---- + return (ret); + memcpy(txn->name, name, len); + ++ TXN_SYSTEM_LOCK(dbenv); + if (td->name != INVALID_ROFF) { + __db_shalloc_free( + &mgr->reginfo, R_ADDR(&mgr->reginfo, td->name)); + td->name = INVALID_ROFF; + } + if ((ret = __db_shalloc(&mgr->reginfo, len, 0, &p)) != 0) { ++ TXN_SYSTEM_UNLOCK(dbenv); + __db_err(dbenv, + "Unable to allocate memory for transaction name"); + +*************** +*** 1063,1068 **** +--- 1065,1071 ---- + + return (ret); + } ++ TXN_SYSTEM_UNLOCK(dbenv); + td->name = R_OFFSET(&mgr->reginfo, p); + memcpy(p, name, len); + Deleted: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2.diff =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.2.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,29 +0,0 @@ -*** txn/txn.c.orig Tue Nov 1 06:50:03 2005 ---- txn/txn.c Tue Jan 31 15:05:13 2006 -*************** -*** 1049,1060 **** ---- 1049,1062 ---- - return (ret); - memcpy(txn->name, name, len); - -+ TXN_SYSTEM_LOCK(dbenv); - if (td->name != INVALID_ROFF) { - __db_shalloc_free( - &mgr->reginfo, R_ADDR(&mgr->reginfo, td->name)); - td->name = INVALID_ROFF; - } - if ((ret = __db_shalloc(&mgr->reginfo, len, 0, &p)) != 0) { -+ TXN_SYSTEM_UNLOCK(dbenv); - __db_err(dbenv, - "Unable to allocate memory for transaction name"); - -*************** -*** 1063,1068 **** ---- 1065,1071 ---- - - return (ret); - } -+ TXN_SYSTEM_UNLOCK(dbenv); - td->name = R_OFFSET(&mgr->reginfo, p); - memcpy(p, name, len); - Copied: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3 (from rev 6625, csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3.diff) =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3 (rev 0) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,49 @@ +*** db/db_cam.c.orig 2006-01-11 03:19:21.000000000 +1100 +--- db/db_cam.c 2006-03-01 13:59:01.000000000 +1100 +*************** +*** 579,589 **** + flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { + if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) + return (ret); +! if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) + return (ret); + +! switch (ret = +! opd->c_am_get(opd, key, data, flags, NULL)) { + case 0: + goto done; + case DB_NOTFOUND: +--- 579,590 ---- + flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { + if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) + return (ret); +! if (F_ISSET(dbc_arg, DBC_TRANSIENT)) +! opd = cp->opd; +! else if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) + return (ret); + +! switch (ret = opd->c_am_get(opd, key, data, flags, NULL)) { + case 0: + goto done; + case DB_NOTFOUND: +*************** +*** 596,607 **** +--- 597,614 ---- + if ((ret = __db_c_close(opd)) != 0) + goto err; + opd = NULL; ++ if (F_ISSET(dbc_arg, DBC_TRANSIENT)) ++ cp->opd = NULL; + break; + } + goto err; + default: + goto err; + } ++ } else if (cp->opd != NULL && F_ISSET(dbc_arg, DBC_TRANSIENT)) { ++ if ((ret = __db_c_close(cp->opd)) != 0) ++ goto err; ++ cp->opd = NULL; + } + + /* Deleted: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3.diff =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.3.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,49 +0,0 @@ -*** db/db_cam.c.orig 2006-01-11 03:19:21.000000000 +1100 ---- db/db_cam.c 2006-03-01 13:59:01.000000000 +1100 -*************** -*** 579,589 **** - flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { - if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) - return (ret); -! if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) - return (ret); - -! switch (ret = -! opd->c_am_get(opd, key, data, flags, NULL)) { - case 0: - goto done; - case DB_NOTFOUND: ---- 579,590 ---- - flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { - if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) - return (ret); -! if (F_ISSET(dbc_arg, DBC_TRANSIENT)) -! opd = cp->opd; -! else if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) - return (ret); - -! switch (ret = opd->c_am_get(opd, key, data, flags, NULL)) { - case 0: - goto done; - case DB_NOTFOUND: -*************** -*** 596,607 **** ---- 597,614 ---- - if ((ret = __db_c_close(opd)) != 0) - goto err; - opd = NULL; -+ if (F_ISSET(dbc_arg, DBC_TRANSIENT)) -+ cp->opd = NULL; - break; - } - goto err; - default: - goto err; - } -+ } else if (cp->opd != NULL && F_ISSET(dbc_arg, DBC_TRANSIENT)) { -+ if ((ret = __db_c_close(cp->opd)) != 0) -+ goto err; -+ cp->opd = NULL; - } - - /* Copied: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4 (from rev 6625, csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4.diff) =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4 (rev 0) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,24 @@ +*** mp/mp_fget.c.orig 2005-10-12 10:53:36.000000000 -0700 +--- mp/mp_fget.c 2006-05-30 20:48:10.000000000 -0700 +*************** +*** 587,594 **** + */ + if (state != SECOND_MISS && bhp->ref == 1) { + bhp->priority = UINT32_MAX; +! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); +! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); + hp->hash_priority = + SH_TAILQ_FIRSTP(&hp->hash_bucket, __bh)->priority; + } +--- 587,597 ---- + */ + if (state != SECOND_MISS && bhp->ref == 1) { + bhp->priority = UINT32_MAX; +! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != +! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { +! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); +! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); +! } + hp->hash_priority = + SH_TAILQ_FIRSTP(&hp->hash_bucket, __bh)->priority; + } Deleted: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4.diff =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.4.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,24 +0,0 @@ -*** mp/mp_fget.c.orig 2005-10-12 10:53:36.000000000 -0700 ---- mp/mp_fget.c 2006-05-30 20:48:10.000000000 -0700 -*************** -*** 587,594 **** - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_MAX; -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); - hp->hash_priority = - SH_TAILQ_FIRSTP(&hp->hash_bucket, __bh)->priority; - } ---- 587,597 ---- - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_MAX; -! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != -! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { -! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); -! } - hp->hash_priority = - SH_TAILQ_FIRSTP(&hp->hash_bucket, __bh)->priority; - } Deleted: csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.5.diff =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.5.diff 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.5.diff 2009-10-02 16:09:10 UTC (rev 6670) @@ -1,13 +0,0 @@ -diff -Naur db-4.4.20.orig/dist/ltmain.sh db-4.4.20/dist/ltmain.sh ---- dist/ltmain.sh 2005-10-17 16:35:53.000000000 +0200 -+++ dist/ltmain.sh 2008-05-14 08:30:26.766534000 +0200 -@@ -1552,9 +1552,7 @@ - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" -- if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" -- fi - continue - ;; - Copied: csw/mgar/pkg/bdb44/trunk/files/patch.64bit-libtool (from rev 6625, csw/mgar/pkg/bdb44/trunk/files/patch.4.4.20.5.diff) =================================================================== --- csw/mgar/pkg/bdb44/trunk/files/patch.64bit-libtool (rev 0) +++ csw/mgar/pkg/bdb44/trunk/files/patch.64bit-libtool 2009-10-02 16:09:10 UTC (rev 6670) @@ -0,0 +1,13 @@ +diff -Naur db-4.4.20.orig/dist/ltmain.sh db-4.4.20/dist/ltmain.sh +--- dist/ltmain.sh 2005-10-17 16:35:53.000000000 +0200 ++++ dist/ltmain.sh 2008-05-14 08:30:26.766534000 +0200 +@@ -1552,9 +1552,7 @@ + esac + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" +- if test "$with_gcc" = "yes" ; then + compiler_flags="$compiler_flags $arg" +- fi + continue + ;; + Modified: csw/mgar/pkg/bdb45/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -19,18 +19,21 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 +NO_ISAEXEC = 1 + CONFIGURE_SCRIPTS = dist prefix = $(BUILD_PREFIX)/bdb45 +docdir = $(BUILD_PREFIX)/share/doc + CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct @@ -45,34 +48,29 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 - PACKAGES = CSWbdb45 CSWbdb45devel CSWbdb45doc CATALOGNAME_CSWbdb45 = berkeleydb45 CATALOGNAME_CSWbdb45devel = berkeleydb45_devel CATALOGNAME_CSWbdb45doc = berkeleydb45_doc -# Remove the license from share/doc/berkeleydb/license/.* -# because GAR expects license to be a file instead of a directory -EXTRA_MERGE_EXCLUDE_FILES = .*/license.* - -EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb45),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* - ARCHALL_CSWbdb45doc = 1 SPKG_DESC_CSWbdb45 = BerkeleyDB 4.5 embedded database libraries and utilities SPKG_DESC_CSWbdb45devel = BerkeleyDB 4.5 development support SPKG_DESC_CSWbdb45doc = BerkeleyDB 4.5 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + REQUIRED_PKGS_CSWbdb45devel = CSWbdb45 LICENSE = LICENSE -PKGFILES_CSWbdb45doc = /opt/csw/share/doc/.* +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb45),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +PKGFILES_CSWbdb45doc = $(PKGFILES_DOC) PKGFILES_CSWbdb45devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -86,3 +84,11 @@ configure-dist: @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) + +post-merge: + gln -s . $(PKGROOT)$(libdir)/32 + gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 + @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + Modified: csw/mgar/pkg/bdb46/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -19,18 +19,21 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 +NO_ISAEXEC = 1 + CONFIGURE_SCRIPTS = dist prefix = $(BUILD_PREFIX)/bdb46 +docdir = $(BUILD_PREFIX)/share/doc + CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct @@ -45,34 +48,29 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 - PACKAGES = CSWbdb46 CSWbdb46devel CSWbdb46doc CATALOGNAME_CSWbdb46 = berkeleydb46 CATALOGNAME_CSWbdb46devel = berkeleydb46_devel CATALOGNAME_CSWbdb46doc = berkeleydb46_doc -# Remove the license from share/doc/berkeleydb/license/.* -# because GAR expects license to be a file instead of a directory -EXTRA_MERGE_EXCLUDE_FILES = .*/license.* - -EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb46),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* - ARCHALL_CSWbdb46doc = 1 SPKG_DESC_CSWbdb46 = BerkeleyDB 4.6 embedded database libraries and utilities SPKG_DESC_CSWbdb46devel = BerkeleyDB 4.6 development support SPKG_DESC_CSWbdb46doc = BerkeleyDB 4.6 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + REQUIRED_PKGS_CSWbdb46devel = CSWbdb46 LICENSE = LICENSE -PKGFILES_CSWbdb46doc = /opt/csw/share/doc/.* +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb46),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +PKGFILES_CSWbdb46doc = $(PKGFILES_DOC) PKGFILES_CSWbdb46devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -86,3 +84,11 @@ configure-dist: @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) + +post-merge: + gln -s . $(PKGROOT)$(libdir)/32 + gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 + @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -19,8 +19,6 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. @@ -28,9 +26,13 @@ PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) BUILD64 = 1 +NO_ISAEXEC = 1 + CONFIGURE_SCRIPTS = dist prefix = $(BUILD_PREFIX)/bdb47 +docdir = $(BUILD_PREFIX)/share/doc + CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct @@ -45,34 +47,29 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 - PACKAGES = CSWbdb47 CSWbdb47devel CSWbdb47doc CATALOGNAME_CSWbdb47 = berkeleydb47 CATALOGNAME_CSWbdb47devel = berkeleydb47_devel CATALOGNAME_CSWbdb47doc = berkeleydb47_doc -# Remove the license from share/doc/berkeleydb/license/.* -# because GAR expects license to be a file instead of a directory -EXTRA_MERGE_EXCLUDE_FILES = .*/license.* - -EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb47),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* - ARCHALL_CSWbdb47doc = 1 SPKG_DESC_CSWbdb47 = BerkeleyDB 4.7 embedded database libraries and utilities SPKG_DESC_CSWbdb47devel = BerkeleyDB 4.7 development support SPKG_DESC_CSWbdb47doc = BerkeleyDB 4.7 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + REQUIRED_PKGS_CSWbdb47devel = CSWbdb47 LICENSE = LICENSE -PKGFILES_CSWbdb47doc = /opt/csw/share/doc/.* +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb47),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +PKGFILES_CSWbdb47doc = $(PKGFILES_DOC) PKGFILES_CSWbdb47devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -86,3 +83,11 @@ configure-dist: @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) + +post-merge: + gln -s . $(PKGROOT)$(libdir)/32 + gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 + @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + Modified: csw/mgar/pkg/bdb48/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-02 15:46:53 UTC (rev 6669) +++ csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) @@ -19,18 +19,21 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html - WORKSRC = $(WORKDIR)/$(GARNAME)-$(GARVERSION)/build_unix PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 +NO_ISAEXEC = 1 + CONFIGURE_SCRIPTS = dist prefix = $(BUILD_PREFIX)/bdb48 +docdir = $(BUILD_PREFIX)/share/doc + CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct @@ -46,34 +49,29 @@ # bdb tests are *very* time consuming TEST_SCRIPTS = -NO_ISAEXEC = 1 - PACKAGES = CSWbdb48 CSWbdb48devel CSWbdb48doc CATALOGNAME_CSWbdb48 = berkeleydb48 CATALOGNAME_CSWbdb48devel = berkeleydb48_devel CATALOGNAME_CSWbdb48doc = berkeleydb48_doc -# Remove the license from share/doc/berkeleydb/license/.* -# because GAR expects license to be a file instead of a directory -EXTRA_MERGE_EXCLUDE_FILES = .*/license.* - -EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb48),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* - ARCHALL_CSWbdb48doc = 1 SPKG_DESC_CSWbdb48 = BerkeleyDB 4.8 embedded database libraries and utilities SPKG_DESC_CSWbdb48devel = BerkeleyDB 4.8 development support SPKG_DESC_CSWbdb48doc = BerkeleyDB 4.8 documentation +SPKG_SOURCEURL = http://www.oracle.com/technology/software/products/berkeley-db/db/index.html + REQUIRED_PKGS_CSWbdb48devel = CSWbdb48 LICENSE = LICENSE -PKGFILES_CSWbdb48doc = /opt/csw/share/doc/.* +EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb48),' +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +PKGFILES_CSWbdb48doc = $(PKGFILES_DOC) PKGFILES_CSWbdb48devel = $(PKGFILES_DEVEL) include gar/category.mk @@ -87,3 +85,11 @@ configure-dist: @( cd $(WORKSRC) ; $(CONFIGURE_ENV) ../dist/configure $(CONFIGURE_ARGS) ) @$(MAKECOOKIE) + +post-merge: + gln -s . $(PKGROOT)$(libdir)/32 + gln -s $(ISA_DEFAULT64) $(PKGROOT)$(libdir)/64 + @$(MAKECOOKIE) + +SPKG_REVSTAMP := $(SPKG_REVSTAMP)_rev=$(RELEASE) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 18:21:09 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 16:21:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[6671] csw/mgar/pkg Message-ID: Revision: 6671 http://gar.svn.sourceforge.net/gar/?rev=6671&view=rev Author: dmichelsen Date: 2009-10-02 16:21:09 +0000 (Fri, 02 Oct 2009) Log Message: ----------- bdb*: Further homogenizations Modified Paths: -------------- csw/mgar/pkg/bdb33/trunk/Makefile csw/mgar/pkg/bdb42/trunk/Makefile csw/mgar/pkg/bdb43/trunk/Makefile csw/mgar/pkg/bdb44/trunk/Makefile Modified: csw/mgar/pkg/bdb33/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) +++ csw/mgar/pkg/bdb33/trunk/Makefile 2009-10-02 16:21:09 UTC (rev 6671) @@ -35,7 +35,6 @@ docdir = $(BUILD_PREFIX)/share/doc CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --disable-cryptography CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct CONFIGURE_ARGS += --enable-rpc @@ -43,10 +42,8 @@ CONFIGURE_ARGS += --enable-java # Exclude TCL support for 64 bit until we have a 64 bit TCL -ifeq ($(MEMORYMODEL),32) -CONFIGURE_ARGS += --enable-tcl -CONFIGURE_ARGS += --with-tcl=$(libdir) -endif +CONFIGURE_ARGS-mm-32 = --enable-tcl --with-tcl=$(libpath) +CONFIGURE_ARGS += $(CONFIGURE_ARGS-mm-$(MEMORYMODEL)) FIXCONFIG_DIRS = $(DESTDIR)$(prefix)/bdb33/lib Modified: csw/mgar/pkg/bdb42/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) +++ csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-02 16:21:09 UTC (rev 6671) @@ -35,7 +35,6 @@ docdir = $(BUILD_PREFIX)/share/doc CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --disable-cryptography CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct CONFIGURE_ARGS += --enable-rpc @@ -43,10 +42,8 @@ CONFIGURE_ARGS += --enable-java # Exclude TCL support for 64 bit until we have a 64 bit TCL -ifeq ($(MEMORYMODEL),32) -CONFIGURE_ARGS += --enable-tcl -CONFIGURE_ARGS += --with-tcl=$(libdir) -endif +CONFIGURE_ARGS-mm-32 = --enable-tcl --with-tcl=$(libpath) +CONFIGURE_ARGS += $(CONFIGURE_ARGS-mm-$(MEMORYMODEL)) FIXCONFIG_DIRS = $(DESTDIR)$(prefix)/bdb42/lib Modified: csw/mgar/pkg/bdb43/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) +++ csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-02 16:21:09 UTC (rev 6671) @@ -35,7 +35,6 @@ docdir = $(BUILD_PREFIX)/share/doc CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --disable-cryptography CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-rpc CONFIGURE_ARGS += --enable-cxx Modified: csw/mgar/pkg/bdb44/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-02 16:09:10 UTC (rev 6670) +++ csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-02 16:21:09 UTC (rev 6671) @@ -35,7 +35,6 @@ docdir = $(BUILD_PREFIX)/share/doc CONFIGURE_ARGS = $(DIRPATHS) -CONFIGURE_ARGS += --disable-cryptography CONFIGURE_ARGS += --enable-compat185 CONFIGURE_ARGS += --enable-o_direct CONFIGURE_ARGS += --enable-rpc @@ -43,10 +42,8 @@ CONFIGURE_ARGS += --enable-java # Exclude TCL support for 64 bit until we have a 64 bit TCL -ifeq ($(MEMORYMODEL),32) -CONFIGURE_ARGS += --enable-tcl -CONFIGURE_ARGS += --with-tcl=$(libdir) -endif +CONFIGURE_ARGS-mm-32 = --enable-tcl --with-tcl=$(libpath) +CONFIGURE_ARGS += $(CONFIGURE_ARGS-mm-$(MEMORYMODEL)) FIXCONFIG_DIRS = $(DESTDIR)$(prefix)/bdb44/lib This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 18:23:00 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 16:23:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[6672] csw/mgar/pkg/cswutils/trunk/Makefile Message-ID: Revision: 6672 http://gar.svn.sourceforge.net/gar/?rev=6672&view=rev Author: dmichelsen Date: 2009-10-02 16:22:59 +0000 (Fri, 02 Oct 2009) Log Message: ----------- cswutils: Change Python path from opencsw to csw Modified Paths: -------------- csw/mgar/pkg/cswutils/trunk/Makefile Modified: csw/mgar/pkg/cswutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-02 16:21:09 UTC (rev 6671) +++ csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-02 16:22:59 UTC (rev 6672) @@ -61,10 +61,10 @@ @ginstall $(WORKSRC)/checkpkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall $(WORKSRC)/createpkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall $(WORKSRC)/stagepkg.8 $(DESTDIR)$(mandir)/man8/ - @ginstall -d $(DESTDIR)$(libdir)/python/opencsw + @ginstall -d $(DESTDIR)$(libdir)/python/csw @ginstall $(WORKSRC)/compare_pkgs.py-r$(SVN_REV) \ - $(DESTDIR)$(libdir)/python/opencsw/compare_pkgs.py + $(DESTDIR)$(libdir)/python/csw/compare_pkgs.py @ginstall $(WORKSRC)/opencsw_lib.py-r$(SVN_REV) \ - $(DESTDIR)$(libdir)/python/opencsw/opencsw_lib.py - @ln -s ../lib/python/opencsw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg + $(DESTDIR)$(libdir)/python/csw/opencsw_lib.py + @ln -s ../lib/python/csw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 21:59:54 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 19:59:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[6673] csw/mgar/pkg/libpopt/trunk Message-ID: Revision: 6673 http://gar.svn.sourceforge.net/gar/?rev=6673&view=rev Author: dmichelsen Date: 2009-10-02 19:59:54 +0000 (Fri, 02 Oct 2009) Log Message: ----------- libpopt: Update version to 1.15, some tests failing, upstream notified Modified Paths: -------------- csw/mgar/pkg/libpopt/trunk/Makefile csw/mgar/pkg/libpopt/trunk/checksums Modified: csw/mgar/pkg/libpopt/trunk/Makefile =================================================================== --- csw/mgar/pkg/libpopt/trunk/Makefile 2009-10-02 16:22:59 UTC (rev 6672) +++ csw/mgar/pkg/libpopt/trunk/Makefile 2009-10-02 19:59:54 UTC (rev 6673) @@ -1,5 +1,5 @@ GARNAME = popt -GARVERSION = 1.14 +GARVERSION = 1.15 CATEGORIES = lib DESCRIPTION = Popt is a C library for parsing command line parameters Modified: csw/mgar/pkg/libpopt/trunk/checksums =================================================================== --- csw/mgar/pkg/libpopt/trunk/checksums 2009-10-02 16:22:59 UTC (rev 6672) +++ csw/mgar/pkg/libpopt/trunk/checksums 2009-10-02 19:59:54 UTC (rev 6673) @@ -1 +1 @@ -4f90a07316eb825604dd10ae4f9f3f04 download/popt-1.14.tar.gz +c61ef795fa450eb692602a661ec8d7f1 download/popt-1.15.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Oct 2 23:05:18 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 02 Oct 2009 21:05:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[6674] csw/mgar/pkg/sudosh2/trunk/Makefile Message-ID: Revision: 6674 http://gar.svn.sourceforge.net/gar/?rev=6674&view=rev Author: skayser Date: 2009-10-02 21:05:18 +0000 (Fri, 02 Oct 2009) Log Message: ----------- sudosh2: update TODOs, add SPKG_SOURCEURL Modified Paths: -------------- csw/mgar/pkg/sudosh2/trunk/Makefile Modified: csw/mgar/pkg/sudosh2/trunk/Makefile =================================================================== --- csw/mgar/pkg/sudosh2/trunk/Makefile 2009-10-02 19:59:54 UTC (rev 6673) +++ csw/mgar/pkg/sudosh2/trunk/Makefile 2009-10-02 21:05:18 UTC (rev 6674) @@ -1,5 +1,7 @@ # TODO/Issues # - Submit 001- (DESTDIR) and 002- (man page) patches upstream +# - clearenvironment is not documented in sudosh.conf(5), others? +# - add /opt/csw/bin/sudosh to /etc/shells in postinstall GARNAME = sudosh2 GARVERSION = 1.0.2 CATEGORIES = apps @@ -21,6 +23,7 @@ MASTER_SITES = $(SF_MIRRORS) DISTFILES = $(GARNAME)-$(GARVERSION).tgz +SPKG_SOURCEURL = http://sudosh2.sf.net sysconfdir = /etc/opt/csw localstatedir = /var/opt/csw This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 23:35:11 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 21:35:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[6675] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6675 http://gar.svn.sourceforge.net/gar/?rev=6675&view=rev Author: dmichelsen Date: 2009-10-02 21:35:11 +0000 (Fri, 02 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Major upgrade for PLATFORM support Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.conf.mk csw/mgar/gar/v2-pbuild/gar.lib.mk csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-02 21:05:18 UTC (rev 6674) +++ csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-02 21:35:11 UTC (rev 6675) @@ -11,16 +11,29 @@ # Pick up user information -include $(HOME)/.garrc +-include /etc/opt/csw/garrc -include /opt/csw/etc/garrc -MODULATION ?= global-$(GARCH) +THISHOST := $(shell uname -n) + +# On these platforms packages are built. +# They will include binaries for all ISAs that are specified for the platform. +PACKAGING_PLATFORMS ?= solaris8-sparc solaris8-i386 + +# This is the platform we are currently building. It is either set when +# invoked from "gmake platforms" or when you build a package on a host +# that is suitable for the platform. +# If there are no platform hosts defined the feature is disabled. +PLATFORM ?= $(firstword $(foreach P,$(PACKAGING_PLATFORMS),$(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),$P))) + +MODULATION ?= global FILEDIR ?= files -DOWNLOADDIR ?= download -PARTIALDIR ?= $(DOWNLOADDIR)/partial -WORKROOTDIR ?= work +WORKROOTDIR ?= $(if $(PLATFORM),work/$(PLATFORM),work) WORKDIR ?= $(WORKROOTDIR)/build-$(MODULATION) WORKDIR_FIRSTMOD ?= $(WORKROOTDIR)/build-$(firstword $(MODULATIONS)) -COOKIEROOTDIR ?= cookies +DOWNLOADDIR ?= $(WORKROOTDIR)/download +PARTIALDIR ?= $(DOWNLOADDIR)/partial +COOKIEROOTDIR ?= $(WORKROOTDIR)/cookies COOKIEDIR ?= $(COOKIEROOTDIR)/$(MODULATION) EXTRACTDIR ?= $(WORKDIR) WORKSRC ?= $(WORKDIR)/$(DISTNAME) @@ -135,7 +148,7 @@ DESTROOT ?= $(HOME) # This is the directory from where the package is build from -PKGROOT ?= $(abspath $(WORKROOTDIR)/pkgroot-$(GARCH)) +PKGROOT ?= $(abspath $(WORKROOTDIR)/pkgroot) # Each ISA has a separate installation directory inside the # working directory for that package. The files are copied @@ -274,8 +287,6 @@ # ISALIST_$(GARCOMPILER) contains all ISAs which are compilable with the selected compiler $(foreach C,$(GARCOMPILERS),$(eval ISALIST_$(C) ?= $(foreach I,$(ISALIST),$(if $(filter-out ERROR,$(ARCHFLAGS_$C_$I)),$I)))) -THISHOST := $(shell uname -n) - # BUILDHOST_isa-$ISA is the name of the host where the compilation should take place # It defaults to the corresponding BUILD_(sparc|i386)-(32|64) # An empty string means "stay on the current host" Modified: csw/mgar/gar/v2-pbuild/gar.lib.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.lib.mk 2009-10-02 21:05:18 UTC (rev 6674) +++ csw/mgar/gar/v2-pbuild/gar.lib.mk 2009-10-02 21:35:11 UTC (rev 6675) @@ -139,10 +139,12 @@ # check a given file's checksum against $(CHECKSUM_FILE) and # error out if it mentions the file without an "OK". +# The removal of the download prefix is for legacy checksums. For newstyle +# checksums without path this is not necessary. checksum-%: $(CHECKSUM_FILE) @echo " ==> Running checksum on $*" - @if gegrep -- '/$*$$' $(CHECKSUM_FILE); then \ - if LC_ALL="C" LANG="C" gmd5sum -c $(CHECKSUM_FILE) 2>&1 | \ + @if gegrep -- '[ /]$*$$' $(CHECKSUM_FILE); then \ + if cat $(CHECKSUM_FILE) | sed -e 's!download/!!' | (cd $(DOWNLOADDIR); LC_ALL="C" LANG="C" gmd5sum -c 2>&1) | \ ggrep -- '$*' | ggrep -v ':[ ]\+OK'; then \ echo '(!!!) $* failed checksum test!' 1>&2; \ false; \ Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-02 21:05:18 UTC (rev 6674) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-02 21:35:11 UTC (rev 6675) @@ -165,8 +165,8 @@ echo THISHOST="$$(THISHOST)" echo "Building modulation on host '$$(BUILDHOST)'" $$(if $$(and $$(BUILDHOST),$$(filter-out $$(THISHOST),$$(BUILDHOST))),\ - ssh $$(BUILDHOST) "gmake -C $$(CURDIR) MODULATION=$(2) $(3) merge-modulated",\ - gmake MODULATION=$(2) $(3) merge-modulated\ + ssh $$(BUILDHOST) "PATH=$$(PATH) $(MAKE) -C $$(CURDIR) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ + gmake $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ ) @# The next line has intentionally been left blank to explicitly terminate this make rule @@ -294,12 +294,15 @@ checksum: fetch $(COOKIEDIR) pre-checksum $(CHECKSUM_TARGETS) post-checksum @$(DONADA) +checksum-global: + @$(MAKE) -s ISA=global checksum + @$(MAKECOOKIE) + # The next rule handles the dependency from the modulated context to # the contextless checksumming. The rule is called when the cookie # to the global checksum is requested. If the global checksum has not run, # then run it. Otherwise it is silently accepted. -checksum-modulated: $(COOKIEDIR) - @$(MAKE) -s ISA=global checksum +checksum-modulated: $(if $(test ! -e $(COOKIEDIR)/build-global/checksum),checksum-global) @$(DONADA) # returns true if checksum has completed successfully, false @@ -308,11 +311,11 @@ @$(foreach COOKIEFILE,$(CHECKSUM_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;) # makesum - Generate distinfo (only do this for your own ports!). -MAKESUM_TARGETS = $(addprefix $(DOWNLOADDIR)/,$(filter-out $(_NOCHECKSUM) $(NOCHECKSUM),$(ALLFILES))) +MAKESUM_TARGETS = $(filter-out $(_NOCHECKSUM) $(NOCHECKSUM),$(ALLFILES)) -makesum: fetch $(MAKESUM_TARGETS) +makesum: fetch $(addprefix $(DOWNLOADDIR)/,$(MAKESUM_TARGETS)) @if test "x$(MAKESUM_TARGETS)" != "x "; then \ - gmd5sum $(MAKESUM_TARGETS) > $(CHECKSUM_FILE) ; \ + (cd $(DOWNLOADDIR) && gmd5sum $(MAKESUM_TARGETS)) > $(CHECKSUM_FILE) ; \ echo "Checksums made for $(MAKESUM_TARGETS)" ; \ cat $(CHECKSUM_FILE) ; \ fi @@ -618,6 +621,25 @@ _PAX_ARGS = $(_INC_EXT_RULE) $(EXTRA_PAX_ARGS) +define killprocandparent +cpids() { \ + P=$1 \ + PPIDS=$P \ + PP=`ps -eo pid,ppid | awk "BEGIN { ORS=\" \" } \\$2 == $P { print \\$1 }\"` \ + while [ -n "$PP" ]; do \ + PQ=$PP \ + PP= \ + for q in $PQ; do \ + PPIDS="$PPIDS $q" \ + PP=$PP\ `ps -eo pid,ppid | awk "BEGIN { ORS=\" \" } \\$2 == $q { print \\$1 }\"` \ + done \ + done \ + \ + echo $PPIDS \ +} +endef + + # The basic merge merges the compiles for all ISAs on the current architecture merge: checksum pre-merge merge-do merge-license $(if $(NOSOURCEPACKAGE),,merge-src) post-merge @$(DONADA) @@ -626,7 +648,7 @@ merge-sequential: $(foreach M,$(MODULATIONS),merge-$M) -merge-parallel: _PIDFILE=$(WORKROOTDIR)/build-global-$(GARCH)/multitail.pid +merge-parallel: _PIDFILE=$(WORKROOTDIR)/build-global/multitail.pid merge-parallel: merge-watch $(_DBG_MERGE)trap "kill -9 `cat $(_PIDFILE) $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.pid) 2>/dev/null`;stty sane" INT;\ $(foreach M,$(MODULATIONS),($(MAKE) merge-$M >$(WORKROOTDIR)/build-$M/build.log 2>&1; echo $$? >$(WORKROOTDIR)/build-$M/build.ret) & echo $$! >$(WORKROOTDIR)/build-$M/build.pid; ) wait @@ -643,7 +665,7 @@ merge-watch: _USEMULTITAIL=$(shell test -x $(MULTITAIL) && test -x $(TTY) && $(TTY) >/dev/null 2>&1; if [ $$? -eq 0 ]; then echo yes; fi) merge-watch: $(_DBG_MERGE)$(if $(_USEMULTITAIL),\ - $(MULTITAIL) --retry-all $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.log) -j & echo $$! > $(WORKROOTDIR)/build-global-$(GARCH)/multitail.pid,\ + $(MULTITAIL) --retry-all $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.log) -j & echo $$! > $(WORKROOTDIR)/build-global/multitail.pid,\ echo "Building all ISAs in parallel. Please see the individual logfiles for details:";$(foreach M,$(MODULATIONS),echo "- $(WORKROOTDIR)/build-$M/build.log";)\ ) @@ -709,7 +731,7 @@ # cookie, but that would be lame and unportable). clean: $(addprefix clean-,$(MODULATIONS)) - @rm -rf $(WORKROOTDIR) $(COOKIEROOTDIR) $(DOWNLOADDIR) + rm -rf $(WORKROOTDIR) $(COOKIEROOTDIR) $(DOWNLOADDIR) clean-modulated: $(call _pmod,Cleaning ) @@ -742,7 +764,7 @@ spotless: imageclean @echo " ==> Removing $(DESTDIR)" - @-rm -rf $(DESTDIR) + @-rm -rf work # Print package dependencies PKGDEP_LIST = $(filter-out $(BUILDDEPS),$(DEPEND_LIST)) Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-02 21:05:18 UTC (rev 6674) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-02 21:35:11 UTC (rev 6675) @@ -533,12 +533,11 @@ # On a normal packaging workflow this is not used. prototypes: extract merge $(SPKG_DESTDIRS) pre-package $(foreach SPEC,$(_PKG_SPECS),$(WORKDIR)/$(SPEC).prototype-$(GARCH)) -# On these platforms packages are built. -# They will include binaries for all ISAs that are specified for the platform. -PACKAGING_PLATFORMS ?= solaris8-sparc solaris8-i386 - +# Verify that the host on we are currently packaging is one of the platform +# hosts. If there are no platform hosts defined the test is skipped. validateplatform: - $(if $(filter $(THISHOST),$(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),,\ + $(if $(strip $(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),\ + $(if $(filter $(THISHOST),$(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),,\ $(warning ***)\ $(warning *** You are building this package on a non-requested platform host '$(THISHOST)'. The follow platforms were requested:)\ $(foreach P,$(PACKAGING_PLATFORMS),\ @@ -546,13 +545,14 @@ )\ $(warning *** You can execute '$(MAKE) platforms' to automatically build on all necessary platforms.)\ $(warning ***)\ - ) + )) + @$(MAKECOOKIE) # We depend on extract as the additional package files (like .gspec) must be # unpacked to global/ for packaging. E. g. 'merge' depends only on the specific # modulations and does not fill global/. -package: validateplatform extract merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package - $(DONADA) +package: validateplatform checksum merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package + @$(DONADA) # The dynamic pkginfo is only generated for dynamic gspec-files package-%: $(WORKDIR)/%.gspec $(if $(filter %.gspec,$(DISTFILES)),,$(WORKDIR)/%.pkginfo) $(WORKDIR)/%.prototype-$(GARCH) $(WORKDIR)/%.depend @@ -606,13 +606,26 @@ $(foreach P,$(PACKAGING_PLATFORMS),\ $(if $(PACKAGING_HOST_$P),\ $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ - $(MAKE) package;,\ - ssh $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) package";\ + $(MAKE) PLATFORM=$P package;,\ + ssh $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package";\ ),\ $(error *** No host has been defined for platform $P)\ )\ ) +# Print relecant informations about the platform +platformenv: + @$(foreach P,$(PACKAGING_PLATFORMS),\ + echo "* Platform '$P'";\ + $(if $(PACKAGING_HOST_$P),\ + $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ + echo " - Package built on this host";,\ + echo " - Package built on host '$(PACKAGING_HOST_$P)'";\ + ),\ + echo "Package can not be built for this platform as there is no host defined";\ + )\ + ) + # dependb - update the dependency database # dependb: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Oct 2 23:42:03 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 02 Oct 2009 21:42:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[6676] csw/mgar/pkg Message-ID: Revision: 6676 http://gar.svn.sourceforge.net/gar/?rev=6676&view=rev Author: skayser Date: 2009-10-02 21:42:03 +0000 (Fri, 02 Oct 2009) Log Message: ----------- pylxml: initial commit Added Paths: ----------- csw/mgar/pkg/pylxml/ csw/mgar/pkg/pylxml/branches/ csw/mgar/pkg/pylxml/tags/ csw/mgar/pkg/pylxml/trunk/ csw/mgar/pkg/pylxml/trunk/Makefile csw/mgar/pkg/pylxml/trunk/checksums csw/mgar/pkg/pylxml/trunk/files/ csw/mgar/pkg/pylxml/trunk/files/changelog.CSW Property changes on: csw/mgar/pkg/pylxml/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/pylxml/trunk/Makefile =================================================================== --- csw/mgar/pkg/pylxml/trunk/Makefile (rev 0) +++ csw/mgar/pkg/pylxml/trunk/Makefile 2009-10-02 21:42:03 UTC (rev 6676) @@ -0,0 +1,37 @@ +# TODO +# - Move this to a pymodules/ subdirectory with the rest of the +# python modules (similar to the cpan directory). +GARNAME = pylxml +GARVERSION = 2.2.2 +CATEGORIES = python + +DESCRIPTION = Pythonic binding for the libxml2 and libxslt libraries +define BLURB + lxml is a Pythonic binding for the libxml2 and libxslt libraries. It is + unique in that it combines the speed and feature completeness of these + libraries with the simplicity of a native Python API, mostly compatible + but superior to the well-known ElementTree API. +endef + +SPKG_SOURCEURL = http://codespeak.net/lxml/ +MASTER_SITES = http://pypi.python.org/packages/source/l/lxml/ +DISTNAME = lxml-$(GARVERSION) +DISTFILES = $(DISTNAME).tar.gz +UFILES_REGEX = lxml-(\d+(?:\.\d+)*).tar.gz + +PACKAGES = CSWpylxml +CATALOGNAME = py_lxml + +REQUIRED_PKGS = CSWlibxml2 CSWlibxslt CSWzlib + +EXTRA_PAX_ARGS = '-s,CHANGES.txt,changelog,p' + +include gar/category.mk + +post-install-modulated: DOCDEST=$(DESTDIR)$(docdir)/$(CATALOGNAME) +post-install-modulated: DOCS=CHANGES.txt CREDITS.txt IDEAS.txt +post-install-modulated: + ginstall -d $(DOCDEST) + cp $(FILEDIR)/changelog.CSW $(DOCDEST) + cp $(addprefix $(WORKSRC)/,$(DOCS)) $(DOCDEST) + @$(MAKECOOKIE) Added: csw/mgar/pkg/pylxml/trunk/checksums =================================================================== --- csw/mgar/pkg/pylxml/trunk/checksums (rev 0) +++ csw/mgar/pkg/pylxml/trunk/checksums 2009-10-02 21:42:03 UTC (rev 6676) @@ -0,0 +1 @@ +2f2fcb6aae51b5b417a3c0a6b256ec56 download/lxml-2.2.2.tar.gz Added: csw/mgar/pkg/pylxml/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/pylxml/trunk/files/changelog.CSW (rev 0) +++ csw/mgar/pkg/pylxml/trunk/files/changelog.CSW 2009-10-02 21:42:03 UTC (rev 6676) @@ -0,0 +1,5 @@ +py_lxml (2.2.2,REV=2009.10.02) + + * Initial release. + + -- Sebastian Kayser Fri, 2 Oct 2009 23:31:04 +0200 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 2 23:47:51 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 02 Oct 2009 21:47:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6677] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6677 http://gar.svn.sourceforge.net/gar/?rev=6677&view=rev Author: dmichelsen Date: 2009-10-02 21:47:51 +0000 (Fri, 02 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Use specific SSH instead of the first one in the path Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.conf.mk csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-02 21:42:03 UTC (rev 6676) +++ csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-02 21:47:51 UTC (rev 6677) @@ -52,6 +52,7 @@ PARALLELMODULATIONS ?= MULTITAIL ?= /opt/csw/bin/multitail TTY ?= /usr/bin/tty +SSH ?= /usr/bin/ssh # Outbound proxies http_proxy ?= Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-02 21:42:03 UTC (rev 6676) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-02 21:47:51 UTC (rev 6677) @@ -165,7 +165,7 @@ echo THISHOST="$$(THISHOST)" echo "Building modulation on host '$$(BUILDHOST)'" $$(if $$(and $$(BUILDHOST),$$(filter-out $$(THISHOST),$$(BUILDHOST))),\ - ssh $$(BUILDHOST) "PATH=$$(PATH) $(MAKE) -C $$(CURDIR) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ + $(SSH) $$(BUILDHOST) "PATH=$$(PATH) $(MAKE) -C $$(CURDIR) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ gmake $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ ) @# The next line has intentionally been left blank to explicitly terminate this make rule Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-02 21:42:03 UTC (rev 6676) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-02 21:47:51 UTC (rev 6677) @@ -607,7 +607,7 @@ $(if $(PACKAGING_HOST_$P),\ $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ $(MAKE) PLATFORM=$P package;,\ - ssh $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package";\ + $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package";\ ),\ $(error *** No host has been defined for platform $P)\ )\ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sat Oct 3 10:27:25 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sat, 03 Oct 2009 08:27:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[6678] csw/mgar/gar/v2-pbuild/gar.conf.mk Message-ID: Revision: 6678 http://gar.svn.sourceforge.net/gar/?rev=6678&view=rev Author: dmichelsen Date: 2009-10-03 08:27:25 +0000 (Sat, 03 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Use generic SSH Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.conf.mk Modified: csw/mgar/gar/v2-pbuild/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-02 21:47:51 UTC (rev 6677) +++ csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-03 08:27:25 UTC (rev 6678) @@ -52,8 +52,12 @@ PARALLELMODULATIONS ?= MULTITAIL ?= /opt/csw/bin/multitail TTY ?= /usr/bin/tty -SSH ?= /usr/bin/ssh +# For platform hopping +# Use whatever SSH is found in the path. That is /opt/csw/bin/ssh for Solaris 8 and +# /usr/bin/ssh for Solaris 9+ and +SSH ?= ssh + # Outbound proxies http_proxy ?= ftp_proxy ?= This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sat Oct 3 10:47:27 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sat, 03 Oct 2009 08:47:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[6679] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6679 http://gar.svn.sourceforge.net/gar/?rev=6679&view=rev Author: dmichelsen Date: 2009-10-03 08:47:27 +0000 (Sat, 03 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Merge in mGAR v2 r4932-6677 Modified Paths: -------------- csw/mgar/gar/v2-pbuild/bin/checkpkg csw/mgar/gar/v2-pbuild/bin/cswproto csw/mgar/gar/v2-pbuild/bin/depmaker csw/mgar/gar/v2-pbuild/bin/gitproxy csw/mgar/gar/v2-pbuild/bin/mkpackage csw/mgar/gar/v2-pbuild/categories/cpan/category.mk csw/mgar/gar/v2-pbuild/categories/x11/category.mk csw/mgar/gar/v2-pbuild/categories/xfce/category.mk csw/mgar/gar/v2-pbuild/gar.conf.mk csw/mgar/gar/v2-pbuild/gar.lib.mk csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Added Paths: ----------- csw/mgar/gar/v2-pbuild/categories/python/ csw/mgar/gar/v2-pbuild/categories/python/category.mk csw/mgar/gar/v2-pbuild/general-help Removed Paths: ------------- csw/mgar/gar/v2-pbuild/categories/python/category.mk Property Changed: ---------------- csw/mgar/gar/v2-pbuild/ Property changes on: csw/mgar/gar/v2-pbuild ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/gar/v2:4936-6678 /csw/mgar/gar/v2-skayser:6087-6132 Modified: csw/mgar/gar/v2-pbuild/bin/checkpkg =================================================================== --- csw/mgar/gar/v2-pbuild/bin/checkpkg 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/bin/checkpkg 2009-10-03 08:47:27 UTC (rev 6679) @@ -1,8 +1,8 @@ #!/bin/ksh -p -# checkpkg 1.46a (diff to 1.46: modified errmsg -> warnmsg on two places) +# checkpkg 1.50 (diff to 1.46a: check multiple package files) # This script examines a package that has been put together -# for submittal to the CSW archive +# for submittal to the CSW archive at opencsw.org # # It examines it for compliance with the packaging standards at # http://www.opencsw.org/standards/ @@ -29,10 +29,15 @@ rm -rf $EXTRACTDIR fi if [[ "$TMPARCHIVE" != "" ]] ; then - rm $TMPARCHIVE + [ -f "$TMPARCHIVE" ] && rm $TMPARCHIVE fi } +cleanupset(){ + if [ "`echo $SETINF*`" != "$SETINF*" ]; then + rm $SETINF* + fi +} warnmsg(){ print WARNING: $* >/dev/fd/2 if [[ "$quit_on_warn" != "" ]] ; then @@ -45,6 +50,7 @@ errmsg(){ print ERROR: $* >/dev/fd/2 cleanup + cleanupset exit 1 } @@ -58,6 +64,12 @@ shift fi +# a unique filename for the list of package deps and libs we see in a 'set' +SETINF=/tmp/checkpkg.$$.`date +%Y%m%d%H%M%S` +SETLIBS=$SETINF.libs +SETDEPS=$SETINF.deps + + for f in "$@" do @@ -123,7 +135,6 @@ TMPFILE=$EXTRACTDIR/pkginfo - dd if=$f skip=1 | (cd $EXTRACTDIR; cpio -ivd $pkgname/pkginfo) if [[ $? -ne 0 ]] ; then print ERROR: could not extract $f @@ -217,6 +228,13 @@ print ERROR: VERSION field not allowed to have '"-"' in it exit 1 ;; + *,REV=20[01][0-9].[0-9][0-9].[0-9][0-9]*) + : + ;; + *) + print ERROR: no REV=YYYY.MM.DD field in VERSION + exit 1 + ;; esac case $pkgarch in @@ -377,17 +395,19 @@ # man ld.so.1 for more info on this hack export LD_NOAUXFLTR=1 - listbinaries $EXTRACTDIR/$pkgname >$EXTRACTDIR/tmplist + listbinaries $EXTRACTDIR/$pkgname >$EXTRACTDIR/elflist # have to do this for ldd to work. arrg. - if [ -s "$EXTRACTDIR/tmplist" ] ; then - chmod 0755 `cat $EXTRACTDIR/tmplist` + if [ -s "$EXTRACTDIR/elflist" ] ; then + chmod 0755 `cat $EXTRACTDIR/elflist` - #cat $EXTRACTDIR/tmplist| xargs ldd 2>/dev/null |fgrep '.so' | + #cat $EXTRACTDIR/elflist| xargs ldd 2>/dev/null |fgrep '.so' | # sed 's:^.*=>[^/]*::' | nawk '{print $1}' |sort -u >$EXTRACTDIR/liblist - cat $EXTRACTDIR/tmplist| xargs dump -Lv |nawk '$2=="NEEDED"{print $3}' | + cat $EXTRACTDIR/elflist| xargs dump -Lv |nawk '$2=="NEEDED"{print $3}' | sort -u | egrep -v $EXTRACTDIR >$EXTRACTDIR/liblist + + print libraries used are: cat $EXTRACTDIR/liblist print "cross-referencing with depend file (May take a while)" @@ -399,6 +419,10 @@ #If these dont exist, it is Bad. touch $EXTRACTDIR/liblist $EXTRACTDIR/libpkgs +# store things that look like shared objects from the package map for +# delayed library validation. +grep "\.so" $EXTRACTDIR/$pkgname/pkgmap >> $SETLIBS + if [[ -f $EXTRACTDIR/$pkgname/install/depend ]] ; then print print "Examining 'depend' file" @@ -416,11 +440,26 @@ exit 1 fi +#to retain a record of all packages currently being examined from $@ +echo $pkgname >> $SETDEPS + nawk '$1=="P" {print $2}' $EXTRACTDIR/$pkgname/install/depend | sort >$EXTRACTDIR/deppkgs for dep in `cat $EXTRACTDIR/deppkgs` do - pkginfo $dep || warnmsg invalid package $dep specified + pkginfo $dep + if [[ $? -ne 0 ]]; then + #if we've already looked at the package named $dep, + #it'll be in the file. + awk "\$1 == \"$dep\" {print}" $SETDEPS | /usr/xpg4/bin/grep -q $dep + if [[ $? -ne 0 ]]; then #we haven't yet seen this package in our set + echo "Can't validate dependence on $dep. Storing for delayed validation." + #store for validation at the end. + echo "$dep $pkgname" >> $SETDEPS.missing + else + echo "Found $dep as part of the package set being evaluated." + fi + fi done egrep -v 'SUNWbcp|SUNWowbcp|SUNWucb' /var/sadm/install/contents | @@ -433,13 +472,20 @@ if [[ $? -eq 0 ]] ; then echo $lib provided by package itself continue + else + grep "[/=]$lib[ =]" $SETLIBS + if [[ $? -eq 0 ]]; then + echo "$lib provided by package set being evaluated." + continue + fi fi libpkg=`grep /$lib $EXTRACTDIR/shortcatalog | sed 's/^.* \([^ ]*\)$/\1/' |sort -u` if [[ -z "$libpkg" ]] ; then - warnmsg cannot find package for $lib + echo "$lib $pkgname" >> $SETLIBS.missing + print Cannot find package providing $lib. Storing for delayed validation. else print $libpkg | fmt -1 >>$EXTRACTDIR/libpkgs fi @@ -458,19 +504,53 @@ if [[ "$basedir" != "" ]] ; then - print - print "Checking relocation ability..." - xargs strings <$EXTRACTDIR/tmplist | grep /opt/csw - if [[ $? -eq 0 ]] ; then - errmsg package build as relocatable, but binaries have hardcoded /opt/csw paths in them + print + if [[ -f $EXTRACTDIR/elflist ]] ; then + print "Checking relocation ability..." + xargs strings < $EXTRACTDIR/elflist| grep /opt/csw + if [[ $? -eq 0 ]] ; then + errmsg package build as relocatable, but binaries have hardcoded /opt/csw paths in them + else + print trivial check passed + fi else - print trivial check passed + echo No relocation check done for non-binary relocatable package. fi fi + cleanup - print "" done + +if [ -s $SETDEPS.missing ]; then + print "Doing late evaluations of package dependencies." + while read mdep; do + dep=`echo $mdep | nawk '{print $1}'` + pkg=`echo $mdep | nawk '{print $2}'` + /usr/xpg4/bin/grep -q $dep $SETDEPS + if [ $? -ne 0 ]; then + errmsg "Couldn't validate $dep as a dependency in package $pkg" + else + print "Validated $dep as a dependency for $pkg." + fi + done < $SETDEPS.missing +fi + +if [ -s $SETLIBS.missing ]; then + print "Doing late evaluations of package library dependencies." + while read ldep; do + lib=`echo $ldep | nawk '{print $1}'` + pkg=`echo $ldep | nawk '{print $2}'` + /usr/xpg4/bin/grep -q "[/=]$lib[ =]" $SETLIBS + if [ $? -ne 0 ]; then + errmsg "Couldn't find a package providing $lib" + else + print "A package in the set being evaluated provides $lib" + fi + done < $SETLIBS.missing +fi + +cleanupset Modified: csw/mgar/gar/v2-pbuild/bin/cswproto =================================================================== --- csw/mgar/gar/v2-pbuild/bin/cswproto 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/bin/cswproto 2009-10-03 08:47:27 UTC (rev 6679) @@ -112,6 +112,8 @@ open F, $common || die "Couldn't open $common"; while () { chomp; next if /^\s*$/ or /^#/; + s/\+/\\+/g; + s/\-/\\-/g; my @c = split( m!/! ); my @pc = map { join( '/', @c[0..$_] ) } 1..$#c; $alldirs{$_} = 1 foreach (@pc); Modified: csw/mgar/gar/v2-pbuild/bin/depmaker =================================================================== --- csw/mgar/gar/v2-pbuild/bin/depmaker 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/bin/depmaker 2009-10-03 08:47:27 UTC (rev 6679) @@ -27,12 +27,14 @@ my $do_script = 1; my $be_quiet = 0; my (@nodep, $rootdir); +my $text_files = 0; GetOptions( 'script!' => \$do_script, 'quiet|q' => \$be_quiet, 'root=s' => \$rootdir, 'nodep=s' => \@nodep, 'help|h' => \&usage, + 'text|t' => \$text_files, 'version|V' => sub { print STDERR "$self v$VERSION\n"; exit 2; @@ -43,7 +45,7 @@ my $nodep = join "|", @nodep; sub usage { - print STDERR "Usage: $self [--no/script] [--nodep ] [--root ] < path_list > depend\n"; + print STDERR "Usage: $self [--text] [--no/script] [--nodep ] [--root ] < path_list > depend\n"; exit 1; } @@ -111,6 +113,9 @@ $depfiles{$lib}++ if $lib; } } + elsif ($text_files and $ftype =~ /text/) { + $depfiles{$filesrc}++; + } } exit 0 unless scalar keys %depfiles; Modified: csw/mgar/gar/v2-pbuild/bin/gitproxy =================================================================== --- csw/mgar/gar/v2-pbuild/bin/gitproxy 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/bin/gitproxy 2009-10-03 08:47:27 UTC (rev 6679) @@ -5,7 +5,7 @@ REMHOST=$1 REMPORT=$2 - set - $(echo "${http_proxy}" | sed 's/http//i' | tr -d '/' | tr ':' ' ') + set - $(echo "${http_proxy}" | gsed 's/http//i' | tr -d '/' | tr ':' ' ') PROXYHOST=$1 PROXYPORT=$2 Modified: csw/mgar/gar/v2-pbuild/bin/mkpackage =================================================================== --- csw/mgar/gar/v2-pbuild/bin/mkpackage 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/bin/mkpackage 2009-10-03 08:47:27 UTC (rev 6679) @@ -1,4 +1,4 @@ -#!/bin/env perl -w +#!/opt/csw/bin/perl -w # # $Id$ # Modified: csw/mgar/gar/v2-pbuild/categories/cpan/category.mk =================================================================== --- csw/mgar/gar/v2-pbuild/categories/cpan/category.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/categories/cpan/category.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -62,7 +62,7 @@ INSTALL_ENV += PERL5LIB=$(PERL5LIB) # Configure a target using Makefile.PL -PERL_CONFIGURE_ARGS ?= INSTALLDIRS=vendor +PERL_CONFIGURE_ARGS ?= INSTALLDIRS=vendor $(EXTRA_PERL_CONFIGURE_ARGS) configure-%/Makefile.PL: @echo " ==> Running Makefile.PL in $*" @( cd $* ; \ @@ -70,7 +70,7 @@ $(CONFIGURE_ARGS) $(PERL_CONFIGURE_ARGS) ) @$(MAKECOOKIE) -PERLBUILD_CONFIGURE_ARGS ?= installdirs=vendor +PERLBUILD_CONFIGURE_ARGS ?= installdirs=vendor $(EXTRA_PERLBUILD_CONFIGURE_ARGS) configure-%/Build.PL: @echo " ==> Running Build.PL in $*" @( cd $* ; \ Deleted: csw/mgar/gar/v2-pbuild/categories/python/category.mk =================================================================== --- csw/mgar/gar/v2/categories/python/category.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/categories/python/category.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -1,21 +0,0 @@ -# Add a dependency to CSWpython -_EXTRA_GAR_PKGS += CSWpython - -# Exclude egg-info files (only needed for easy_install) -_MERGE_EXCLUDE_CATEGORY += .*\.egg-info.* - -# Activate cswpycompile support to exclude .pyc and .pyo files from -# the package and compile them on installation. File exclusion is -# handled by gar.mk and cswclassutils integration by gar.pkg.mk -PYCOMPILE = 1 - -# Haven't seen a python module with a configure phase so far -CONFIGURE_SCRIPTS ?= - -# gar.lib.mk contains implicit targets for setup.py -BUILD_SCRIPTS ?= $(WORKSRC)/setup.py -INSTALL_SCRIPTS ?= $(WORKSRC)/setup.py -INSTALL_ARGS ?= --root=$(DESTDIR) --prefix=$(prefix) -TEST_SCRIPTS ?= $(WORKSRC)/setup.py - -include gar/gar.mk Copied: csw/mgar/gar/v2-pbuild/categories/python/category.mk (from rev 6678, csw/mgar/gar/v2/categories/python/category.mk) =================================================================== --- csw/mgar/gar/v2-pbuild/categories/python/category.mk (rev 0) +++ csw/mgar/gar/v2-pbuild/categories/python/category.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -0,0 +1,21 @@ +# Add a dependency to CSWpython +_EXTRA_GAR_PKGS += CSWpython + +# Exclude egg-info files (only needed for easy_install) +_MERGE_EXCLUDE_CATEGORY += .*\.egg-info.* + +# Activate cswpycompile support to exclude .pyc and .pyo files from +# the package and compile them on installation. File exclusion is +# handled by gar.mk and cswclassutils integration by gar.pkg.mk +PYCOMPILE = 1 + +# Haven't seen a python module with a configure phase so far +CONFIGURE_SCRIPTS ?= + +# gar.lib.mk contains implicit targets for setup.py +BUILD_SCRIPTS ?= $(WORKSRC)/setup.py +INSTALL_SCRIPTS ?= $(WORKSRC)/setup.py +INSTALL_ARGS ?= --root=$(DESTDIR) --prefix=$(prefix) +TEST_SCRIPTS ?= $(WORKSRC)/setup.py + +include gar/gar.mk Modified: csw/mgar/gar/v2-pbuild/categories/x11/category.mk =================================================================== --- csw/mgar/gar/v2-pbuild/categories/x11/category.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/categories/x11/category.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -1,5 +1,6 @@ # X11 X11_PROTO_MASTER_SITE = http://xorg.freedesktop.org/releases/individual/proto/ +X11_LIB_MASTER_SITE = http://xorg.freedesktop.org/releases/individual/lib/ XCB_MASTER_SITES = http://xcb.freedesktop.org/dist/ # C and C++ compiler flags Modified: csw/mgar/gar/v2-pbuild/categories/xfce/category.mk =================================================================== --- csw/mgar/gar/v2-pbuild/categories/xfce/category.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/categories/xfce/category.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -1,6 +1,6 @@ # XFCE XFCE_ROOT = http://www.us.xfce.org -XFCE_VERSION ?= 4.4.1 +XFCE_VERSION ?= 4.6.1 XFCE_MIRROR = $(XFCE_ROOT)/archive/xfce-$(XFCE_VERSION)/src/ MASTER_SITES ?= $(XFCE_MIRROR) @@ -8,8 +8,6 @@ PKGDIST ?= $(GARNAME)-$(GARVERSION).tar.bz2 DISTFILES += $(PKGDIST) -include gar/gar.mk - # Compiler options # Compiler options CFLAGS += -xlibmil -errtags=yes -erroff=E_EMPTY_DECLARATION @@ -18,13 +16,22 @@ LDFLAGS += -L/opt/csw/lib -R/opt/csw/lib # pkg-config options -PKG_CONFIG_PATH += $(DESTDIR)/opt/csw/lib/pkgconfig +EXTRA_PKG_CONFIG_PATH += /opt/csw/X11/lib/pkgconfig # Configure common options CONFIGURE_ARGS = $(DIRPATHS) -# CONFIGURE_ARGS += --prefix=/opt/csw CONFIGURE_ARGS += --disable-debug CONFIGURE_ARGS += --enable-final CONFIGURE_ARGS += --enable-xinerama CONFIGURE_ARGS += --enable-dbus -# CONFIGURE_ARGS += --mandir=/opt/csw/share/man + +MSGFMT= /opt/csw/bin/gmsgfmt +MSGMERGE= /opt/csw/bin/gmsgmerge +XGETTEXT = /opt/csw/bin/gxgettext +GETTEXT = /opt/csw/bin/ggettext +export MSGMERGE +export MSGFMT +export XGETTEXT +export GETTEXT + +include gar/gar.mk Modified: csw/mgar/gar/v2-pbuild/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -45,6 +45,8 @@ MANIFEST_FILE ?= manifest LOGDIR ?= log +ELISP_DIRS ?= $(datadir)/emacs/site-lisp $(EXTRA_ELISP_DIRS) + GIT_PROXY_SCRIPT ?= $(abspath $(GARBIN))/gitproxy GIT_DEFAULT_TRACK = +refs/heads/master:refs/remotes/origin/master @@ -400,9 +402,11 @@ # REQUESTED_ISAS contains all ISAs that should be built # NEEDED_ISAS contains all ISAs that must be build for this architecture to make the package # BUILD_ISAS contains all ISAs that can be built on the current kernel +# It is guaranteed that all BUILD_ISAS come first in NEEDED_ISAS # Set 'BUILD64 = 1' to build 64 bit versions automatically REQUESTED_ISAS ?= $(strip $(foreach A,$(GARCHLIST),$(ISA_DEFAULT_$A) $(if $(BUILD64),$(ISA_DEFAULT64_$A)) $(EXTRA_BUILD_ISAS_$A)) $(EXTRA_BUILD_ISAS)) -NEEDED_ISAS ?= $(filter $(ISALIST_$(ISA_DEFAULT64_$(GARCH))),$(REQUESTED_ISAS)) +NEEDED_ISAS ?= $(strip $(filter $(ISALIST_$(KERNELISA)),$(filter $(ISALIST_$(ISA_DEFAULT64_$(GARCH))),$(REQUESTED_ISAS))) \ + $(filter-out $(ISALIST_$(KERNELISA)),$(filter $(ISALIST_$(ISA_DEFAULT64_$(GARCH))),$(REQUESTED_ISAS)))) BUILD_ISAS ?= $(filter $(ISALIST_$(KERNELISA)),$(NEEDED_ISAS)) # Subdirectories for specialized binaries and libraries @@ -519,7 +523,7 @@ OPTFLAGS ?= $(strip $($(GARCOMPILER)_CC_FLAGS) $(_CATEGORY_OPTFLAGS) $(EXTRA_OPTFLAGS)) GCC3_LD_OPTIONS = -R$(GCC3_CC_HOME)/lib $(EXTRA_GCC3_LD_OPTIONS) $(EXTRA_GCC_LD_OPTIONS) -GCC4_LD_OPTIONS = -R$(GCC4_CC_HOME)/lib $(EXTRA_GCC4_LD_OPTIONS) $(EXTRA_GCC_LD_OPTIONS) +GCC4_LD_OPTIONS = -R$(abspath $(GCC4_CC_HOME)/lib/$(MM_LIBDIR)) $(EXTRA_GCC4_LD_OPTIONS) $(EXTRA_GCC_LD_OPTIONS) SOS11_LD_OPTIONS = $(EXTRA_SOS11_LD_OPTIONS) $(EXTRA_SOS_LD_OPTIONS) SOS12_LD_OPTIONS = $(EXTRA_SOS12_LD_OPTIONS) $(EXTRA_SOS_LD_OPTIONS) @@ -542,9 +546,10 @@ # # Gnome +GNOME_PROJ ?= $(GARNAME) GNOME_ROOT = http://ftp.gnome.org/pub/GNOME/sources GNOME_SUBV = $(shell echo $(GARVERSION) | awk -F. '{print $$1"."$$2}') -GNOME_MIRROR = $(GNOME_ROOT)/$(GARNAME)/$(GNOME_SUBV)/ +GNOME_MIRROR = $(GNOME_ROOT)/$(GNOME_PROJ)/$(GNOME_SUBV)/ # SourceForge SF_PROJ ?= $(GARNAME) Modified: csw/mgar/gar/v2-pbuild/gar.lib.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.lib.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/gar.lib.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -68,7 +68,7 @@ # to update the code. # we possibly proxy the git:// references depending on GIT_USE_PROXY git-http//%: - @$git clone --bare http://$* $(PARTIALDIR)/$(call GITPROJ,$*) + @git clone --bare http://$* $(PARTIALDIR)/$(call GITPROJ,$*) @( cd $(PARTIALDIR)/$(call GITPROJ,$*); \ git remote add origin http://$*; \ git config remote.origin.fetch $(if $(GIT_REFS_$(call GITPROJ,$*)),$(GIT_REFS_$(call GITPROJ,$*)),$(GIT_DEFAULT_TRACK)); ) @@ -583,17 +583,17 @@ # just run make install and hope for the best. install-%/Makefile: @echo " ==> Running make install in $*" - @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install + @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_VARS),$(TTT)="$(INSTALL_OVERRIDE_VAR_$(TTT))") $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install @$(MAKECOOKIE) install-%/makefile: @echo " ==> Running make install in $*" - @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install + @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_VARS),$(TTT)="$(INSTALL_OVERRIDE_VAR_$(TTT))") $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install @$(MAKECOOKIE) install-%/GNUmakefile: @echo " ==> Running make install in $*" - @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install + @$(INSTALL_ENV) $(MAKE) DESTDIR=$(DESTDIR) $(foreach TTT,$(INSTALL_OVERRIDE_VARS),$(TTT)="$(INSTALL_OVERRIDE_VAR_$(TTT))") $(foreach TTT,$(INSTALL_OVERRIDE_DIRS),$(TTT)="$(DESTDIR)$($(TTT))") -C $* $(INSTALL_ARGS) install @$(MAKECOOKIE) # Ruby makefiles @@ -732,6 +732,19 @@ gfind $(DESTDIR) -type f -iname *.[1-8] -size +2 -print | \ gxargs -r gzip --force +compile-elisp: + @(for d in $(ELISP_DIRS); do \ + echo " ===> Compiling .el files in $$d"; \ + cd $(PKGROOT)/$$d; \ + for f in `find . -name "*el"`; do \ + bf=`basename $$f`; \ + bd=`dirname $$f`; \ + cd $$bd; \ + emacs -L $(PKGROOT)/$$d -L $(PKGROOT)/$$d/$$bd $(EXTRA_EMACS_ARGS) -batch -f batch-byte-compile "$$bf"; \ + cd $(PKGROOT)/$$d; \ + done; \ + done) + include $(addprefix $(GARDIR)/,$(EXTRA_LIBS)) # Mmm, yesssss. cookies my preciousssss! Mmm, yes downloads it Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -515,7 +515,10 @@ @$(call _pmod,Reset install state) @rm -rf $(INSTALLISADIR) $(COOKIEDIR)/install-work @rm -f $(foreach C,pre-install-modulated install-modulated post-install-modulated,$(COOKIEDIR)/$C) + @rm -f $(COOKIEDIR)/pre-install-$(MODULATION) $(COOKIEDIR)/post-install-$(MODULATION) @rm -f $(COOKIEDIR)/strip + @rm -f $(foreach S,$(INSTALL_TARGETS),$(COOKIEDIR)/$S) + @rm -f $(COOKIEROOTDIR)/global/install-$(MODULATION) # merge in all isas to the package directory after installation @@ -544,9 +547,9 @@ MERGE_SCRIPTS_isa-$(ISA_DEFAULT) ?= copy-all $(EXTRA_MERGE_SCRIPTS_$(ISA_DEFAULT)) $(EXTRA_MERGE_SCRIPTS) else ISAEXEC_DIRS ?= $(if $(NO_ISAEXEC),,$(bindir) $(sbindir) $(libexecdir)) -MERGE_DIRS_isa-$(ISA_DEFAULT) ?= +MERGE_DIRS_isa-$(ISA_DEFAULT) ?= $(EXTRA_MERGE_DIRS) $(EXTRA_MERGE_DIRS_isa-$(ISA_DEFAULT)) MERGE_DIRS_isa-$(ISA) ?= $(bindir) $(sbindir) $(libexecdir) $(libdir) $(EXTRA_MERGE_DIRS) $(EXTRA_MERGE_DIRS_isa-$(ISA)) -MERGE_SCRIPTS_isa-$(ISA_DEFAULT) ?= copy-relocate $(EXTRA_MERGE_SCRIPTS_isa-$(ISA)) $(EXTRA_MERGE_SCRIPTS) +MERGE_SCRIPTS_isa-$(ISA_DEFAULT) ?= copy-relocate $(EXTRA_MERGE_SCRIPTS_isa-$(ISA_DEFAULT)) $(EXTRA_MERGE_SCRIPTS) MERGE_SCRIPTS_isa-$(ISA) ?= copy-relocated-only $(EXTRA_MERGE_SCRIPTS_isa-$(ISA)) $(EXTRA_MERGE_SCRIPTS) endif @@ -560,7 +563,7 @@ ) ISAEXEC_FILES ?= $(if $(_ISAEXEC_FILES),$(patsubst $(PKGROOT)%,%, \ $(shell for F in $(_ISAEXEC_FILES); do \ - if test -f "$$F"; then echo $$F; fi; \ + if test -f "$$F" -a \! -h "$$F"; then echo $$F; fi; \ done)),) ifneq ($(ISAEXEC_FILES),) @@ -581,11 +584,18 @@ # This can be defined in category.mk MERGE_EXCLUDE_CATEGORY ?= $(_MERGE_EXCLUDE_CATEGORY) +# Support for cswpycompile, skip pre-compiled python files (.pyc, .pyo) +# during the merge phase. +_PYCOMPILE_FILES = /opt/csw/lib/python/site-packages/.*\.py +MERGE_EXCLUDE_PYCOMPILE ?= $(if $(PYCOMPILE), $(addsuffix c,$(_PYCOMPILE_FILES)) $(addsuffix o,$(_PYCOMPILE_FILES))) + MERGE_EXCLUDE_INFODIR ?= $(sharedstatedir)/info/dir MERGE_EXCLUDE_LIBTOOL ?= $(libdir)/.*\.la MERGE_EXCLUDE_BACKUPFILES ?= .*\~ MERGE_EXCLUDE_STATICLIBS ?= $(libdir)/.*\.a -MERGE_EXCLUDE_DEFAULT ?= $(MERGE_EXCLUDE_CATEGORY) $(MERGE_EXCLUDE_INFODIR) $(MERGE_EXCLUDE_LIBTOOL) $(MERGE_EXCLUDE_BACKUPFILES) $(MERGE_EXCLUDE_STATICLIBS) +# Exclude all other .pc-files apart from the default 32- and 64 bit versions +MERGE_EXCLUDE_EXTRA_ISA_PKGCONFIG ?= $(if $(filter-out $(ISA_DEFAULT) $(ISA_DEFAULT64),$(ISA)),$(libdir)/.*\.pc) +MERGE_EXCLUDE_DEFAULT ?= $(MERGE_EXCLUDE_CATEGORY) $(MERGE_EXCLUDE_INFODIR) $(MERGE_EXCLUDE_LIBTOOL) $(MERGE_EXCLUDE_BACKUPFILES) $(MERGE_EXCLUDE_STATICLIBS) $(MERGE_EXCLUDE_EXTRA_ISA_PKGCONFIG) $(MERGE_EXCLUDE_PYCOMPILE) # Exclude these files ifeq ($(origin MERGE_EXCLUDE_FILES_$(MODULATION)), undefined) @@ -599,7 +609,7 @@ # Exclude by replacing files with the empty string _INC_EXT_RULE = $(foreach F,$(_MERGE_EXCLUDE_FILES),-s ',^\.$F$$,,') # Replace files by itself terminating on first match -_INC_EXT_RULE += $(foreach F,$(_MERGE_INCLUDE_FILES),-s ",^\(\.$F\)\$,\1,") +_INC_EXT_RULE += $(foreach F,$(_MERGE_INCLUDE_FILES),-s ",^\(\.$F\)$$,\1,") # These are used during merge phase to determine the base installation directory MERGEBASE_$(bindir) ?= $(bindir_install) @@ -619,7 +629,7 @@ # has not, so we use this one for appending. -_PAX_ARGS = $(_INC_EXT_RULE) $(EXTRA_PAX_ARGS) +_PAX_ARGS = $(_INC_EXT_RULE) $(_EXTRA_PAX_ARGS) $(EXTRA_PAX_ARGS_$(MODULATION)) $(EXTRA_PAX_ARGS) define killprocandparent cpids() { \ @@ -641,12 +651,12 @@ # The basic merge merges the compiles for all ISAs on the current architecture -merge: checksum pre-merge merge-do merge-license $(if $(NOSOURCEPACKAGE),,merge-src) post-merge +merge: checksum pre-merge merge-do merge-license $(if $(COMPILE_ELISP),compile-elisp) $(if $(NOSOURCEPACKAGE),,merge-src) post-merge @$(DONADA) merge-do: $(if $(PARALLELMODULATIONS),merge-parallel,merge-sequential) -merge-sequential: $(foreach M,$(MODULATIONS),merge-$M) +merge-sequential: $(addprefix merge-,$(MODULATIONS)) merge-parallel: _PIDFILE=$(WORKROOTDIR)/build-global/multitail.pid merge-parallel: merge-watch @@ -718,7 +728,7 @@ remerge: reset-merge merge reset-merge: reset-package $(addprefix reset-merge-,$(MODULATIONS)) reset-merge-license reset-merge-src - @rm -f $(foreach M,$(MODULATIONS),$(COOKIEDIR)/merge-$M) $(COOKIEDIR)/merge + @rm -f $(COOKIEDIR)/pre-merge $(foreach M,$(MODULATIONS),$(COOKIEDIR)/merge-$M) $(COOKIEDIR)/merge $(COOKIEDIR)/post-merge @rm -rf $(PKGROOT) @$(DONADA) Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-03 08:27:25 UTC (rev 6678) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-03 08:47:27 UTC (rev 6679) @@ -127,13 +127,22 @@ # 3. There is a svn binary, but not everything was committed properly -> UNCOMMITTED # 4. There is a svn binary and everything was committed -> r +ifndef SPKG_PACKAGER + $(warning Please set SPKG_PACKAGER in your .garrc file to your name) + SPKG_PACKAGER = Unknown +endif + +ifndef SPKG_EMAIL + $(warning Please set SPKG_EMAIL in your .garrc file to your email address) + SPKG_EMAIL = Unknown +endif + + SPKG_DESC ?= $(DESCRIPTION) SPKG_VERSION ?= $(GARVERSION) SPKG_CATEGORY ?= application SPKG_SOURCEURL ?= $(firstword $(MASTER_SITES)) -SPKG_PACKAGER ?= Unknown SPKG_VENDOR ?= $(SPKG_SOURCEURL) packaged for CSW by $(SPKG_PACKAGER) -SPKG_EMAIL ?= Unknown SPKG_PSTAMP ?= $(LOGNAME)@$(shell hostname)-$(call _REVISION)-$(shell date '+%Y%m%d%H%M%S') SPKG_BASEDIR ?= $(prefix) SPKG_CLASSES ?= none @@ -141,7 +150,7 @@ SPKG_SPOOLROOT ?= $(DESTROOT) SPKG_SPOOLDIR ?= $(SPKG_SPOOLROOT)/spool.$(GAROSREL)-$(GARCH) -SPKG_EXPORT ?= $(WORKDIR) +SPKG_EXPORT ?= $(HOME)/staging/build-$(shell date '+%d.%b.%Y') SPKG_PKGROOT ?= $(PKGROOT) SPKG_PKGBASE ?= $(PKGROOT) SPKG_WORKDIR ?= $(CURDIR)/$(WORKDIR) @@ -152,17 +161,24 @@ # Handle cswclassutils # - prepend cswpreserveconf if it is not already in SPKG_CLASSES -SPKG_CLASSES += $(if $(SAMPLECONF),$(if $(filter cswsampleconf,$(SPKG_CLASSES)),,cswsampleconf)) -SPKG_CLASSES += $(if $(PRESERVECONF),$(if $(filter cswpreserveconf,$(SPKG_CLASSES)),,cswpreserveconf)) -SPKG_CLASSES += $(if $(INITSMF),$(if $(filter cswinitsmf,$(SPKG_CLASSES)),,cswinitsmf)) +SPKG_CLASSES := $(SPKG_CLASSES) $(if $(SAMPLECONF),$(if $(filter cswcpsampleconf,$(SPKG_CLASSES)),,cswcpsampleconf)) +SPKG_CLASSES := $(SPKG_CLASSES) $(if $(PRESERVECONF),$(if $(filter cswpreserveconf,$(SPKG_CLASSES)),,cswpreserveconf)) +SPKG_CLASSES := $(SPKG_CLASSES) $(if $(INITSMF),$(if $(filter cswinitsmf,$(SPKG_CLASSES)),,cswinitsmf)) +SPKG_CLASSES := $(SPKG_CLASSES) $(if $(USERGROUP),$(if $(filter cswusergroup,$(SPKG_CLASSES)),,cswusergroup)) +SPKG_CLASSES := $(SPKG_CLASSES) $(if $(PYCOMPILE),$(if $(filter cswpycompile,$(SPKG_CLASSES)),,cswpycompile)) # - set class for all config files -ifneq ($(SAMPLECONF)$(PRESERVECONF)$(INITSMF),) +ifneq ($(SAMPLECONF)$(PRESERVECONF)$(INITSMF)$(USERGROUP)$(PYCOMPILE),) _CSWCLASS_FILTER = | perl -ane '\ - $(foreach FILE,$(SAMPLECONF),$$F[1] = "cswsampleconf" if ( $$F[2] =~ m(^$(FILE)$$) );)\ - $(foreach FILE,$(PRESERVECONF),$$F[1] = "cswpreserveconf" if( $$F[2] =~ m(^$(FILE)$$) );)\ - $(foreach FILE,$(INITMF),$$F[1] = "cswinitsmf" if( $$F[2] =~ m(^$(FILE)$$) );)\ + $(foreach FILE,$(SAMPLECONF:%\.CSW=%),$$F[1] = "cswcpsampleconf" if ( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ + $(foreach FILE,$(PRESERVECONF:%\.CSW=%),$$F[1] = "cswpreserveconf" if( $$F[2] =~ m(^$(FILE)\.CSW$$) );)\ + $(foreach FILE,$(INITSMF),$$F[1] = "cswinitsmf" if( $$F[2] =~ m(^$(FILE)$$) );)\ + $(foreach FILE,$(USERGROUP),$$F[1] = "cswusergroup" if( $$F[2] =~ m(^$(FILE)$$) );)\ + $(if $(PYCOMPILE),$(foreach FILE,$(_PYCOMPILE_FILES),$$F[1] = "cswpycompile" if( $$F[2] =~ m(^$(FILE)$$) );))\ print join(" ", at F),"\n";' _EXTRA_GAR_PKGS += CSWcswclassutils +# Make sure the configuration files always have a .CSW suffix and rename the +# configuration files to this if necessary during merge. +_EXTRA_PAX_ARGS += $(foreach FILE,$(SAMPLECONF:%\.CSW=%) $(PRESERVECONF:%\.CSW=%),-s ",^\.\($(FILE)\)$$,.\1\.CSW,p") endif PKGGET_DESTDIR ?= @@ -211,7 +227,7 @@ # between the prefix and the suffix. # usage: $(call isadirs,,) # expands to // // ... -isadirs = $(foreach ISA,$(ISALIST),$(1)/$(ISA)/$(2)) +isadirs = $(foreach ISA,$(ISALIST),$(1)/$(subst +,\+,$(subst -,\-,$(ISA)))/$(2)) # This is a helper function just like isadirs, but also contains the # prefix and suffix without an ISA subdirectories inserted. @@ -441,6 +457,14 @@ $(if $($(1)_$(2)),$($(1)_$(2)),$($(1))) endef +# Make sure every producable package contains specific descriptions. +# We explicitly ignore NOPACKAGE here to disallow circumventing the check. +$(foreach P,$(SPKG_SPECS),\ + $(foreach Q,$(filter-out $P,$(SPKG_SPECS)),\ + $(if $(shell if test "$(SPKG_DESC_$P)" = "$(SPKG_DESC_$Q)"; then echo ERROR; fi),\ + $(error The package descriptions for $P and $Q are identical, please make sure all package descriptions are unique by setting SPKG_DESC_ for each package) \ +))) + .PRECIOUS: $(WORKDIR)/%.pkginfo $(WORKDIR)/%.pkginfo: $(WORKDIR) $(_DBG)(echo "PKG=$*"; \ @@ -552,10 +576,15 @@ # unpacked to global/ for packaging. E. g. 'merge' depends only on the specific # modulations and does not fill global/. package: validateplatform checksum merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package + @echo + @echo "The following packages have been built:" + @echo + @$(foreach SPEC,$(_PKG_SPECS),echo $(SPEC);echo " $(SPKG_EXPORT)/$(shell $(call _PKG_ENV,$(SPEC)) $(GARBIN)/mkpackage -qs $(WORKDIR)/$(SPEC).gspec -D pkgfile).gz";) + @echo @$(DONADA) # The dynamic pkginfo is only generated for dynamic gspec-files -package-%: $(WORKDIR)/%.gspec $(if $(filter %.gspec,$(DISTFILES)),,$(WORKDIR)/%.pkginfo) $(WORKDIR)/%.prototype-$(GARCH) $(WORKDIR)/%.depend +package-%: $(WORKDIR)/%.gspec $(if $(findstring %.gspec,$(DISTFILES)),,$(WORKDIR)/%.pkginfo) $(WORKDIR)/%.prototype-$(GARCH) $(WORKDIR)/%.depend @echo " ==> Processing $*.gspec" $(_DBG)( $(call _PKG_ENV,$*) mkpackage --spec $(WORKDIR)/$*.gspec \ --spooldir $(SPKG_SPOOLDIR) \ Copied: csw/mgar/gar/v2-pbuild/general-help (from rev 6678, csw/mgar/gar/v2/general-help) =================================================================== --- csw/mgar/gar/v2-pbuild/general-help (rev 0) +++ csw/mgar/gar/v2-pbuild/general-help 2009-10-03 08:47:27 UTC (rev 6679) @@ -0,0 +1,4 @@ +Please go here for more detailed documentation: + + http://sourceforge.net/apps/trac/gar/wiki/GarRepository + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sat Oct 3 10:52:20 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sat, 03 Oct 2009 08:52:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[6680] csw/mgar/gar/v2-pbuild/gar.pkg.mk Message-ID: Revision: 6680 http://gar.svn.sourceforge.net/gar/?rev=6680&view=rev Author: dmichelsen Date: 2009-10-03 08:52:20 +0000 (Sat, 03 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Activate checkpkg to check interdependencies Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-03 08:47:27 UTC (rev 6679) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-03 08:52:20 UTC (rev 6680) @@ -607,7 +607,7 @@ pkgcheck-%: @echo " ==> Checking compliance: $*" - @( LC_ALL=C checkpkg $(SPKG_EXPORT)/`$(call _PKG_ENV,$1) mkpackage -qs $(WORKDIR)/$*.gspec -D pkgfile`.gz ) || exit 2 + @( LC_ALL=C $(GARBIN)/checkpkg $(SPKG_EXPORT)/`$(call _PKG_ENV,$1) mkpackage -qs $(WORKDIR)/$*.gspec -D pkgfile`.gz ) || exit 2 pkgcheck-p: @$(foreach COOKIEFILE,$(PKGCHECK_TARGETS), test -e $(COOKIEDIR)/$(COOKIEFILE) ;) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sat Oct 3 10:52:51 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sat, 03 Oct 2009 08:52:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6681] csw/mgar/pkg/bdb42/trunk/checksums Message-ID: Revision: 6681 http://gar.svn.sourceforge.net/gar/?rev=6681&view=rev Author: dmichelsen Date: 2009-10-03 08:52:51 +0000 (Sat, 03 Oct 2009) Log Message: ----------- bdb42: Update checksum Modified Paths: -------------- csw/mgar/pkg/bdb42/trunk/checksums Modified: csw/mgar/pkg/bdb42/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb42/trunk/checksums 2009-10-03 08:52:20 UTC (rev 6680) +++ csw/mgar/pkg/bdb42/trunk/checksums 2009-10-03 08:52:51 UTC (rev 6681) @@ -1,7 +1,7 @@ -8b5cff6eb83972afdd8e0b821703c33c download/db-4.2.52.tar.gz -1227f5f9ff43d48b5b1759e113a1c2d7 download/patch.4.2.52.1.diff -3da7efd8d29919a9113e2f6f5166f5b7 download/patch.4.2.52.2.diff -0bf9ebbe852652bed433e522928d40ec download/patch.4.2.52.3.diff -9cfeff4dce0c11372c0b04b134f8faef download/patch.4.2.52.4.diff -99836f962361da8936219cc193edc7ed download/patch.4.2.52.5.diff -d49545b2691c511276b73bb6c3ec64c3 download/patch.64bit-libtool.diff +8b5cff6eb83972afdd8e0b821703c33c db-4.2.52.tar.gz +1227f5f9ff43d48b5b1759e113a1c2d7 patch.4.2.52.1 +3da7efd8d29919a9113e2f6f5166f5b7 patch.4.2.52.2 +0bf9ebbe852652bed433e522928d40ec patch.4.2.52.3 +9cfeff4dce0c11372c0b04b134f8faef patch.4.2.52.4 +99836f962361da8936219cc193edc7ed patch.4.2.52.5 +d49545b2691c511276b73bb6c3ec64c3 patch.64bit-libtool This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sat Oct 3 10:53:22 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sat, 03 Oct 2009 08:53:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[6682] csw/mgar/pkg/bdb44/trunk/checksums Message-ID: Revision: 6682 http://gar.svn.sourceforge.net/gar/?rev=6682&view=rev Author: dmichelsen Date: 2009-10-03 08:53:21 +0000 (Sat, 03 Oct 2009) Log Message: ----------- bdb44: Update checksum Modified Paths: -------------- csw/mgar/pkg/bdb44/trunk/checksums Modified: csw/mgar/pkg/bdb44/trunk/checksums =================================================================== --- csw/mgar/pkg/bdb44/trunk/checksums 2009-10-03 08:52:51 UTC (rev 6681) +++ csw/mgar/pkg/bdb44/trunk/checksums 2009-10-03 08:53:21 UTC (rev 6682) @@ -1,6 +1,6 @@ -d84dff288a19186b136b0daf7067ade3 download/db-4.4.20.tar.gz -66584d621355df055b6e05b4a02e9c3e download/patch.4.4.20.1.diff -85df93a0867f6cace3501671cdeb6ed1 download/patch.4.4.20.2.diff -88ee91889ebf5498b22b2e7bed945d41 download/patch.4.4.20.3.diff -c2ef7b3e59460c35950fab5f2faa3fc0 download/patch.4.4.20.4.diff -099621e0dad419188acd42c588242131 download/patch.4.4.20.5.diff +d84dff288a19186b136b0daf7067ade3 db-4.4.20.tar.gz +66584d621355df055b6e05b4a02e9c3e patch.4.4.20.1 +85df93a0867f6cace3501671cdeb6ed1 patch.4.4.20.2 +88ee91889ebf5498b22b2e7bed945d41 patch.4.4.20.3 +c2ef7b3e59460c35950fab5f2faa3fc0 patch.4.4.20.4 +099621e0dad419188acd42c588242131 patch.64bit-libtool This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Oct 3 16:26:53 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 14:26:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[6683] csw/mgar/pkg Message-ID: Revision: 6683 http://gar.svn.sourceforge.net/gar/?rev=6683&view=rev Author: skayser Date: 2009-10-03 14:26:41 +0000 (Sat, 03 Oct 2009) Log Message: ----------- pysoappy: initial commit Added Paths: ----------- csw/mgar/pkg/pysoappy/ csw/mgar/pkg/pysoappy/branches/ csw/mgar/pkg/pysoappy/tags/ csw/mgar/pkg/pysoappy/trunk/ csw/mgar/pkg/pysoappy/trunk/Makefile csw/mgar/pkg/pysoappy/trunk/checksums csw/mgar/pkg/pysoappy/trunk/files/ csw/mgar/pkg/pysoappy/trunk/files/001-place-import-future-first.patch csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW Property changes on: csw/mgar/pkg/pysoappy/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/pysoappy/trunk/Makefile =================================================================== --- csw/mgar/pkg/pysoappy/trunk/Makefile (rev 0) +++ csw/mgar/pkg/pysoappy/trunk/Makefile 2009-10-03 14:26:41 UTC (rev 6683) @@ -0,0 +1,46 @@ +# TODO +# - Move this to a pymodules/ subdirectory with the rest of the +# python modules (similar to the cpan directory). +GARNAME = pysoappy +GARVERSION = 0.11.4 +CATEGORIES = python + +DESCRIPTION = SOAP library for python +define BLURB + This package contains the SOAPpy Python module, which implements a high- + level interface to Simple Object Access Protocol (SOAP) functions from + Python. It includes functionality for acting as a SOAP server, client, + or proxy, and includes both building and parsing functions. It has been + tested against a wide array of other SOAP clients and servers, and is a + very robust and well-rounded implementation of the SOAP protocol. + + SOAPpy is not actively supported by upstream anymore - please do not + consider to use it in new projects! All functions were merged into ZSI +endef + +SPKG_SOURCEURL = http://pywebsvcs.sourceforge.net/ +MASTER_SITES = $(SF_MIRRORS) +SF_PROJ = pywebsvcs +DISTNAME = SOAPpy-$(GARVERSION) +DISTFILES = $(DISTNAME).tar.gz + +ARCHALL = 1 +PACKAGES = CSWpysoappy +CATALOGNAME = py_soappy +REQUIRED_PKGS = CSWpyfpconst CSWpyxml + +# import __future__ statements need to occur first within a file +# SyntaxError: from __future__ imports must occur at the beginning of the file +PATCHFILES = 001-place-import-future-first.patch + +# No tests available +TEST_SCRIPTS = + +include gar/category.mk + +post-install-modulated: DOCDEST=$(DESTDIR)$(docdir)/$(CATALOGNAME) +post-install-modulated: + ginstall -d $(DOCDEST) + cp $(FILEDIR)/changelog.CSW $(DOCDEST) + cp $(WORKSRC)/docs/* $(DOCDEST) + @$(MAKECOOKIE) Added: csw/mgar/pkg/pysoappy/trunk/checksums =================================================================== --- csw/mgar/pkg/pysoappy/trunk/checksums (rev 0) +++ csw/mgar/pkg/pysoappy/trunk/checksums 2009-10-03 14:26:41 UTC (rev 6683) @@ -0,0 +1,2 @@ +fd1ea22ebacd98900074e8add1cf39fe download/001-place-import-future-first.patch +69a384d9a61b36325a97d81165668b39 download/SOAPpy-0.11.4.tar.gz Added: csw/mgar/pkg/pysoappy/trunk/files/001-place-import-future-first.patch =================================================================== --- csw/mgar/pkg/pysoappy/trunk/files/001-place-import-future-first.patch (rev 0) +++ csw/mgar/pkg/pysoappy/trunk/files/001-place-import-future-first.patch 2009-10-03 14:26:41 UTC (rev 6683) @@ -0,0 +1,72 @@ +diff --git a/SOAPpy/Client.py b/SOAPpy/Client.py +index 15542b0..922e098 100644 +--- a/SOAPpy/Client.py ++++ b/SOAPpy/Client.py +@@ -39,12 +39,11 @@ + # + ################################################################################ + """ ++from __future__ import nested_scopes + + ident = '$Id: Client.py,v 1.20 2004/04/10 04:22:52 irjudson Exp $' + from version import __version__ + +-from __future__ import nested_scopes +- + #import xml.sax + import urllib + from types import * +diff --git a/SOAPpy/GSIServer.py b/SOAPpy/GSIServer.py +index 3c723e7..0c0876a 100644 +--- a/SOAPpy/GSIServer.py ++++ b/SOAPpy/GSIServer.py +@@ -42,12 +42,11 @@ GSIServer - Contributed by Ivan R. Judson + # + ################################################################################ + """ ++from __future__ import nested_scopes + + ident = '$Id: GSIServer.py,v 1.4 2004/02/04 03:21:02 irjudson Exp $' + from version import __version__ + +-from __future__ import nested_scopes +- + #import xml.sax + import re + import socket +diff --git a/SOAPpy/Server.py b/SOAPpy/Server.py +index d6efce2..1419790 100644 +--- a/SOAPpy/Server.py ++++ b/SOAPpy/Server.py +@@ -39,12 +39,11 @@ + # + ################################################################################ + """ ++from __future__ import nested_scopes + + ident = '$Id: Server.py,v 1.19 2004/04/27 15:23:46 warnes Exp $' + from version import __version__ + +-from __future__ import nested_scopes +- + #import xml.sax + import re + import socket +diff --git a/SOAPpy/Types.py b/SOAPpy/Types.py +index cc8bc7b..f907dcf 100644 +--- a/SOAPpy/Types.py ++++ b/SOAPpy/Types.py +@@ -32,12 +32,11 @@ + # + ################################################################################ + """ ++from __future__ import nested_scopes + + ident = '$Id: Types.py,v 1.16 2004/04/14 03:42:50 irjudson Exp $' + from version import __version__ + +-from __future__ import nested_scopes +- + import UserList + import base64 + import cgi Added: csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW (rev 0) +++ csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW 2009-10-03 14:26:41 UTC (rev 6683) @@ -0,0 +1,5 @@ +pysoappy (0.11.4,REV=2009.10.03) + + * Initial release. + + -- Sebastian Kayser Sat, 3 Oct 2009 16:17:22 +0200 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Oct 3 16:34:11 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 14:34:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[6684] csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW Message-ID: Revision: 6684 http://gar.svn.sourceforge.net/gar/?rev=6684&view=rev Author: skayser Date: 2009-10-03 14:34:10 +0000 (Sat, 03 Oct 2009) Log Message: ----------- pysoappy: fix changelog.CSW Modified Paths: -------------- csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW Modified: csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW 2009-10-03 14:26:41 UTC (rev 6683) +++ csw/mgar/pkg/pysoappy/trunk/files/changelog.CSW 2009-10-03 14:34:10 UTC (rev 6684) @@ -1,4 +1,4 @@ -pysoappy (0.11.4,REV=2009.10.03) +py_soappy (0.11.4,REV=2009.10.03) * Initial release. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Oct 3 16:36:59 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 14:36:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6685] csw/mgar/pkg/supybot/trunk/Makefile Message-ID: Revision: 6685 http://gar.svn.sourceforge.net/gar/?rev=6685&view=rev Author: skayser Date: 2009-10-03 14:36:59 +0000 (Sat, 03 Oct 2009) Log Message: ----------- supybot: add REQUIRED_PKGS, description / SPKG_SOURCEURL Modified Paths: -------------- csw/mgar/pkg/supybot/trunk/Makefile Modified: csw/mgar/pkg/supybot/trunk/Makefile =================================================================== --- csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:34:10 UTC (rev 6684) +++ csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:36:59 UTC (rev 6685) @@ -1,17 +1,23 @@ -# TODO -# - Check whether additional dependencies are needed GARNAME = supybot GARVERSION = 0.83.4.1 CATEGORIES = python DESCRIPTION = Robust, user-friendly, and extensible IRC bot -define BLURB + Supybot is a robust (it doesn't crash), user friendly (it's easy to + configure) and programmer friendly (plugins are *extremely* easy to + write) Python IRC bot. It aims to be an adequate replacement for most + existing IRC bots. It includes a very flexible and powerful ACL system + for controlling access to commands, as well as more than 50 builtin + plugins providing around 400 actual commands. endef +SPKG_SOURCEURL = http://sourceforge.net/projects/supybot/ MASTER_SITES = $(SF_MIRRORS) DISTNAME = Supybot-$(GARVERSION) DISTFILES = $(DISTNAME).tar.gz +REQUIRED_PKGS = CSWpysqlite CSWtwisted + EXTRA_PAX_ARGS = '-s,ChangeLog$$,changelog,p' TEST_SCRIPTS = This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Oct 3 16:38:31 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 14:38:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[6686] csw/mgar/pkg/supybot/trunk/Makefile Message-ID: Revision: 6686 http://gar.svn.sourceforge.net/gar/?rev=6686&view=rev Author: skayser Date: 2009-10-03 14:38:31 +0000 (Sat, 03 Oct 2009) Log Message: ----------- supybot: fix BLURB Modified Paths: -------------- csw/mgar/pkg/supybot/trunk/Makefile Modified: csw/mgar/pkg/supybot/trunk/Makefile =================================================================== --- csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:36:59 UTC (rev 6685) +++ csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:38:31 UTC (rev 6686) @@ -3,6 +3,7 @@ CATEGORIES = python DESCRIPTION = Robust, user-friendly, and extensible IRC bot +define BLURB Supybot is a robust (it doesn't crash), user friendly (it's easy to configure) and programmer friendly (plugins are *extremely* easy to write) Python IRC bot. It aims to be an adequate replacement for most This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sat Oct 3 16:41:11 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 14:41:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[6687] csw/mgar/pkg/supybot/trunk/Makefile Message-ID: Revision: 6687 http://gar.svn.sourceforge.net/gar/?rev=6687&view=rev Author: skayser Date: 2009-10-03 14:41:10 +0000 (Sat, 03 Oct 2009) Log Message: ----------- supybot: ARCHALL=1 Modified Paths: -------------- csw/mgar/pkg/supybot/trunk/Makefile Modified: csw/mgar/pkg/supybot/trunk/Makefile =================================================================== --- csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:38:31 UTC (rev 6686) +++ csw/mgar/pkg/supybot/trunk/Makefile 2009-10-03 14:41:10 UTC (rev 6687) @@ -17,6 +17,7 @@ DISTNAME = Supybot-$(GARVERSION) DISTFILES = $(DISTNAME).tar.gz +ARCHALL = 1 REQUIRED_PKGS = CSWpysqlite CSWtwisted EXTRA_PAX_ARGS = '-s,ChangeLog$$,changelog,p' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Sat Oct 3 17:15:40 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sat, 03 Oct 2009 15:15:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[6688] csw/mgar/pkg/cpan/Net-IP/trunk Message-ID: Revision: 6688 http://gar.svn.sourceforge.net/gar/?rev=6688&view=rev Author: bonivart Date: 2009-10-03 15:15:40 +0000 (Sat, 03 Oct 2009) Log Message: ----------- pm_netip: update build recipe Modified Paths: -------------- csw/mgar/pkg/cpan/Net-IP/trunk/Makefile csw/mgar/pkg/cpan/Net-IP/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/cpan/Net-IP/trunk/files/CSWpmnetip.gspec Modified: csw/mgar/pkg/cpan/Net-IP/trunk/Makefile =================================================================== --- csw/mgar/pkg/cpan/Net-IP/trunk/Makefile 2009-10-03 14:41:10 UTC (rev 6687) +++ csw/mgar/pkg/cpan/Net-IP/trunk/Makefile 2009-10-03 15:15:40 UTC (rev 6688) @@ -9,8 +9,9 @@ IPv6 addresses. endef -DISTFILES += $(call admfiles,CSWpmnetip,) +PACKAGES = CSWpmnetip +CATALOGNAME = pm_netip -EXTRA_MERGE_EXCLUDE_FILES = .*~ .*perllocal\.pod +ARCHALL = 1 include gar/category.mk Modified: csw/mgar/pkg/cpan/Net-IP/trunk/checksums =================================================================== --- csw/mgar/pkg/cpan/Net-IP/trunk/checksums 2009-10-03 14:41:10 UTC (rev 6687) +++ csw/mgar/pkg/cpan/Net-IP/trunk/checksums 2009-10-03 15:15:40 UTC (rev 6688) @@ -1,2 +1 @@ -bdd199eae1946802858cc08707e71f24 download/CSWpmnetip.gspec a49c0b02a9b793ff60191cdafc0c202e download/Net-IP-1.25.tar.gz Deleted: csw/mgar/pkg/cpan/Net-IP/trunk/files/CSWpmnetip.gspec =================================================================== --- csw/mgar/pkg/cpan/Net-IP/trunk/files/CSWpmnetip.gspec 2009-10-03 14:41:10 UTC (rev 6687) +++ csw/mgar/pkg/cpan/Net-IP/trunk/files/CSWpmnetip.gspec 2009-10-03 15:15:40 UTC (rev 6688) @@ -1,44 +0,0 @@ -%var bitname pm_netip -%var pkgname CSWpmnetip -%include url file://%{PKGLIB}/csw_cpan.gspec -%copyright - -Copyright (c) 1999-2000 by RIPE-NCC. All rights reserved. - -This program is free software; you can redistribute it and/or -modify it under the same terms as Perl itself. - -You should have received a copy of the Perl license along with -Perl; see the file README in Perl distribution. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -You should have received a copy of the Artistic License -along with Perl; see the file Artistic. - - NO WARRANTY - -BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - -IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Sat Oct 3 17:32:13 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sat, 03 Oct 2009 15:32:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[6689] csw/mgar/pkg/phpsysinfo/trunk/Makefile Message-ID: Revision: 6689 http://gar.svn.sourceforge.net/gar/?rev=6689&view=rev Author: bonivart Date: 2009-10-03 15:32:13 +0000 (Sat, 03 Oct 2009) Log Message: ----------- phpsysinfo: update recipe Modified Paths: -------------- csw/mgar/pkg/phpsysinfo/trunk/Makefile Modified: csw/mgar/pkg/phpsysinfo/trunk/Makefile =================================================================== --- csw/mgar/pkg/phpsysinfo/trunk/Makefile 2009-10-03 15:15:40 UTC (rev 6688) +++ csw/mgar/pkg/phpsysinfo/trunk/Makefile 2009-10-03 15:32:13 UTC (rev 6689) @@ -2,9 +2,9 @@ GARVERSION = 2.5.4 CATEGORIES = utils -DESCRIPTION = displays information about the host being accessed +DESCRIPTION = Displays information about the host being accessed define BLURB - displays information about the host being accessed + Displays information about the host being accessed endef SF_PROJ = $(GARNAME) @@ -16,13 +16,13 @@ SPKG_DESC = $(DESCRIPTION) SPKG_SOURCEURL = http://phpsysinfo.sourceforge.net -REQUIRED_PKGS = CSWapache2 CSWap2modphp5 CSWphp5 CSWcswclassutils +REQUIRED_PKGS = CSWapache2 CSWap2modphp5 CSWphp5 -SPKG_CLASSES_CSWphpsysinfo = none cswcpsampleconf - # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +ARCHALL = 1 + CONFIGURE_SCRIPTS = BUILD_SCRIPTS = TEST_SCRIPTS = @@ -30,9 +30,7 @@ WORKSRC = $(WORKDIR)/$(GARNAME) -PROTOTYPE_FILTER = awk ' \ -$$$$3 ~ /\/config.php.CSW$$$$/ { $$$$2 = "cswcpsampleconf" } \ -{ print }' +SAMPLECONF = .*config.php include gar/category.mk @@ -43,7 +41,7 @@ @ginstall -d $(DESTDIR)$(prefix)/share/www @cp -R $(WORKSRC) $(DESTDIR)$(prefix)/share/www/phpsysinfo @( cd $(DESTDIR)$(prefix)/share/www/phpsysinfo ; \ - mv config.php.new config.php.CSW ; \ + mv config.php.new config.php ; \ mv COPYING $(DESTDIR)$(docdir)/$(GARNAME)/license ) @( cd $(DESTDIR)$(prefix)/share/www/phpsysinfo/includes/os ; \ gpatch < ../../../../../../../../../$(FILEDIR)/CSWphpsysinfo.class.SunOS.inc.php.p ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Oct 3 19:17:42 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 03 Oct 2009 17:17:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[6690] csw/mgar/pkg/x11 Message-ID: Revision: 6690 http://gar.svn.sourceforge.net/gar/?rev=6690&view=rev Author: wbonnet Date: 2009-10-03 17:17:41 +0000 (Sat, 03 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_bigreqsproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_bigreqsproto/ Removed Paths: ------------- csw/mgar/pkg/x11/bigreqsproto/ Modified: csw/mgar/pkg/x11/x11_bigreqsproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/bigreqsproto/trunk/Makefile 2009-10-03 15:15:40 UTC (rev 6688) +++ csw/mgar/pkg/x11/x11_bigreqsproto/trunk/Makefile 2009-10-03 17:17:41 UTC (rev 6690) @@ -1,6 +1,8 @@ -GARNAME = bigreqsproto +PROTONAME = bigreqsproto +CATEGORIES = x11 +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) GARVERSION = 1.1.0 -CATEGORIES = x11 DESCRIPTION = Prototype headers for BigReqs extension to X11 define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11applewmproto +CATALOGNAME_CSWx11applewmproto = x11_applewmproto + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Oct 3 20:55:23 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 03 Oct 2009 18:55:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[6691] csw/mgar/pkg/git/trunk Message-ID: Revision: 6691 http://gar.svn.sourceforge.net/gar/?rev=6691&view=rev Author: bdwalton Date: 2009-10-03 18:55:23 +0000 (Sat, 03 Oct 2009) Log Message: ----------- correct git registration in /etc/services postinstall Modified Paths: -------------- csw/mgar/pkg/git/trunk/checksums csw/mgar/pkg/git/trunk/files/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/checksums =================================================================== --- csw/mgar/pkg/git/trunk/checksums 2009-10-03 17:17:41 UTC (rev 6690) +++ csw/mgar/pkg/git/trunk/checksums 2009-10-03 18:55:23 UTC (rev 6691) @@ -1 +1 @@ -6c2d8cf8dcdfc844ea32bc381f6a3bfd download/CSWgit.postinstall +b2f8cba4fea2abc0cab666bb8a523a1a download/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/files/CSWgit.postinstall =================================================================== --- csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-03 17:17:41 UTC (rev 6690) +++ csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-03 18:55:23 UTC (rev 6691) @@ -9,9 +9,9 @@ cp -p "$GC_OLD" "$GC_NEW" fi -/usr/xpg4/bin/grep -q CSWgit /etc/services +/usr/xpg4/bin/grep -q CSWgit /etc/inet/services if [ $? -ne 0 ]; then - echo <>/etc/services + cat <>/etc/inet/services git 9418/tcp # CSWgit: git transfer service git 9418/udp # CSWgit: git transfer service EOF This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Sat Oct 3 22:28:43 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Sat, 03 Oct 2009 20:28:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6692] csw/mgar/pkg/x11 Message-ID: Revision: 6692 http://gar.svn.sourceforge.net/gar/?rev=6692&view=rev Author: wbonnet Date: 2009-10-03 20:28:43 +0000 (Sat, 03 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_compositeproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_compositeproto/ Removed Paths: ------------- csw/mgar/pkg/x11/compositeproto/ Modified: csw/mgar/pkg/x11/x11_compositeproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/compositeproto/trunk/Makefile 2009-10-03 18:55:23 UTC (rev 6691) +++ csw/mgar/pkg/x11/x11_compositeproto/trunk/Makefile 2009-10-03 20:28:43 UTC (rev 6692) @@ -1,6 +1,8 @@ -GARNAME = compositeproto GARVERSION = 0.4 CATEGORIES = x11 +PROTONAME = compositeproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Composite protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Sun Oct 4 00:09:49 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Sat, 03 Oct 2009 22:09:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[6693] csw/mgar/pkg Message-ID: Revision: 6693 http://gar.svn.sourceforge.net/gar/?rev=6693&view=rev Author: skayser Date: 2009-10-03 22:09:49 +0000 (Sat, 03 Oct 2009) Log Message: ----------- tmpreaper: initial commit Added Paths: ----------- csw/mgar/pkg/tmpreaper/ csw/mgar/pkg/tmpreaper/branches/ csw/mgar/pkg/tmpreaper/tags/ csw/mgar/pkg/tmpreaper/trunk/ csw/mgar/pkg/tmpreaper/trunk/Makefile csw/mgar/pkg/tmpreaper/trunk/checksums csw/mgar/pkg/tmpreaper/trunk/files/ csw/mgar/pkg/tmpreaper/trunk/files/0001-fix-getcwd-comparison.patch csw/mgar/pkg/tmpreaper/trunk/files/0002-provide-statement-expression-workaround.patch csw/mgar/pkg/tmpreaper/trunk/files/README.CSW csw/mgar/pkg/tmpreaper/trunk/files/changelog.CSW Property changes on: csw/mgar/pkg/tmpreaper/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/tmpreaper/trunk/Makefile =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/Makefile (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/Makefile 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,42 @@ +GARNAME = tmpreaper +GARVERSION = 1.6.13 +CATEGORIES = apps + +DESCRIPTION = Cleans up files in directories based on their age +define BLURB + This package provides a program that can be used to clean out + temporary-file directories. It recursively searches the directory, + refusing to chdir() across symlinks, and removes files that haven't been + accessed in a user-specified amount of time. You can specify a set of + files to protect from deletion with a shell pattern. It will not remove + files owned by the process EUID that have the `w' bit clear, unless you + ask it to, much like `rm -f'. `tmpreaper' will not remove symlinks, + sockets, fifos, or special files unless given a command line option + enabling it to. +endef + +SPKG_SOURCEURL = http://packages.debian.org/sid/tmpreaper +MASTER_SITES = http://ftp.de.debian.org/debian/pool/main/t/tmpreaper/ +DISTFILES = $(GARNAME)_$(GARVERSION).tar.gz +UFILES_REGEX = $(GARNAME)_(\d+(?:\.\d+)*).tar.gz + +TEST_SCRIPTS = + +# getcwd() returns char*, fix return value comparison +PATCHFILES = 0001-fix-getcwd-comparison.patch +# Studio 11 does not know about statement expressions +PATCHFILES += 0002-provide-statement-expression-workaround.patch + +# Force zone-friendly dirs, while they have not yet become standard in GAR +sysconfdir=/etc/opt/csw +localstatedir=/var/opt/csw + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +post-install-modulated: DOCDEST=$(DESTDIR)$(docdir)/$(CATALOGNAME) +post-install-modulated: + ginstall -d $(DOCDEST) + cp $(FILEDIR)/changelog.CSW $(FILEDIR)/README.CSW $(DOCDEST) + @$(MAKECOOKIE) Added: csw/mgar/pkg/tmpreaper/trunk/checksums =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/checksums (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/checksums 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,3 @@ +2ef1fd86b2350b7e8d95c587aa752eba download/0001-fix-getcwd-comparison.patch +64c57bd076a6bace6fa108ff750c7d53 download/0002-provide-statement-expression-workaround.patch +f5799a7f142f9fa49586ae3da2bba222 download/tmpreaper_1.6.13.tar.gz Added: csw/mgar/pkg/tmpreaper/trunk/files/0001-fix-getcwd-comparison.patch =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/files/0001-fix-getcwd-comparison.patch (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/files/0001-fix-getcwd-comparison.patch 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,13 @@ +diff --git a/tmpreaper.c b/tmpreaper.c +index a6d172c..111c647 100644 +--- a/tmpreaper.c ++++ b/tmpreaper.c +@@ -356,7 +356,7 @@ cleanupDirectory (const char * dirname , + int l; + /* the admin will want to know where the problem lies */ + #ifdef NO_get_current_dir_name +- if (getcwd(path, PATH_MAX) < 0) ++ if (getcwd(path, PATH_MAX) == NULL) + /* too long even for PATH_MAX, show something anyway */ + #else + if ((path = get_current_dir_name()) < 0) Added: csw/mgar/pkg/tmpreaper/trunk/files/0002-provide-statement-expression-workaround.patch =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/files/0002-provide-statement-expression-workaround.patch (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/files/0002-provide-statement-expression-workaround.patch 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,26 @@ +diff --git a/tmpreaper.c b/tmpreaper.c +index 111c647..0a7005f 100644 +--- a/tmpreaper.c ++++ b/tmpreaper.c +@@ -688,12 +688,21 @@ main (int argc, + * Utilize GNU C dynamic array allocation and statement expressions to + * allocate an array to hold the --protect argument strings. + */ ++#ifdef __GNUC__ + char *protect_argv[ ({ int i; + int count = 0; + for (i = 1; i < argc; i++) + if (! strncmp (argv[i], "--protect", 9)) + count++; + ++count; }) ]; ++#else ++ int pi; ++ int pcount = 0; ++ for (pi = 1; pi < argc; pi++) ++ if (! strncmp (argv[pi], "--protect", 9)) pcount++; ++ ++pcount; ++ char *protect_argv[pcount]; ++#endif + + char **p = protect_argv; + Added: csw/mgar/pkg/tmpreaper/trunk/files/README.CSW =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/files/README.CSW (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/files/README.CSW 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,12 @@ +To get started, create a crontab entry such as the following: + +0 4 * * * /opt/csw/bin/tmpreaper --mtime-dir --symlinks 7d --protect '/tmp/.X*-{lock,unix,unix/*}' /tmp + + This will run every day at 04:00 AM, cleaning the /tmp directory of files + not accessed withing 7 days, including symlinks. Empty directories not + modified in the last 7 days will also be removed. The --protect option + causes tmpreaper to skip files with matching names. You can supply more + than one --protect option, and you can supply more than one directory + to be cleaned. + Feel free to adjust as you wish; see the manpage for options. You can use + the --test option to only show what would be done. Added: csw/mgar/pkg/tmpreaper/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/tmpreaper/trunk/files/changelog.CSW (rev 0) +++ csw/mgar/pkg/tmpreaper/trunk/files/changelog.CSW 2009-10-03 22:09:49 UTC (rev 6693) @@ -0,0 +1,6 @@ +tmpreaper (1.6.13,REV=2009.10.03) + + * Adopted and updated to 1.6.13 + * Added README.CSW with crontab example. + + -- Sebastian Kayser Sat, 3 Oct 2009 23:49:33 +0200 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Oct 4 02:10:20 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 04 Oct 2009 00:10:20 +0000 Subject: [csw-devel] SF.net SVN: gar:[6694] csw/mgar/pkg/git/trunk Message-ID: Revision: 6694 http://gar.svn.sourceforge.net/gar/?rev=6694&view=rev Author: bdwalton Date: 2009-10-04 00:09:53 +0000 (Sun, 04 Oct 2009) Log Message: ----------- git: add a 'sign post' file after conditionally copying global gitconfig Modified Paths: -------------- csw/mgar/pkg/git/trunk/checksums csw/mgar/pkg/git/trunk/files/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/checksums =================================================================== --- csw/mgar/pkg/git/trunk/checksums 2009-10-03 22:09:49 UTC (rev 6693) +++ csw/mgar/pkg/git/trunk/checksums 2009-10-04 00:09:53 UTC (rev 6694) @@ -1 +1 @@ -b2f8cba4fea2abc0cab666bb8a523a1a download/CSWgit.postinstall +5284f7f910e954f4fe2dcab32b750929 download/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/files/CSWgit.postinstall =================================================================== --- csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-03 22:09:49 UTC (rev 6693) +++ csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-04 00:09:53 UTC (rev 6694) @@ -7,6 +7,14 @@ if [ -f "$GC_OLD" -a ! -f "$GC_NEW" ]; then echo "Copying /opt/csw/etc/gitconfig to /etc/opt/csw/gitconfig" cp -p "$GC_OLD" "$GC_NEW" + cat < "$GC_OLD.THIS_LOCATION_IS_DEPRECATED" +This location (/opt/csw/etc) is deprecated. + +Configuration files are currently being placed in /etc/opt/csw. +Please make sure your configuration have been moved to /etc/opt/csw +and remove the old one from this location. + +EOF fi /usr/xpg4/bin/grep -q CSWgit /etc/inet/services This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Oct 4 02:22:11 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 04 Oct 2009 00:22:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[6695] csw/mgar/pkg/git/trunk Message-ID: Revision: 6695 http://gar.svn.sourceforge.net/gar/?rev=6695&view=rev Author: bdwalton Date: 2009-10-04 00:22:11 +0000 (Sun, 04 Oct 2009) Log Message: ----------- git: correct grammar in etc migration sign post file. Modified Paths: -------------- csw/mgar/pkg/git/trunk/checksums csw/mgar/pkg/git/trunk/files/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/checksums =================================================================== --- csw/mgar/pkg/git/trunk/checksums 2009-10-04 00:09:53 UTC (rev 6694) +++ csw/mgar/pkg/git/trunk/checksums 2009-10-04 00:22:11 UTC (rev 6695) @@ -1 +1 @@ -5284f7f910e954f4fe2dcab32b750929 download/CSWgit.postinstall +0f3606cd6720f525e7261cea87c11a61 download/CSWgit.postinstall Modified: csw/mgar/pkg/git/trunk/files/CSWgit.postinstall =================================================================== --- csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-04 00:09:53 UTC (rev 6694) +++ csw/mgar/pkg/git/trunk/files/CSWgit.postinstall 2009-10-04 00:22:11 UTC (rev 6695) @@ -11,8 +11,8 @@ This location (/opt/csw/etc) is deprecated. Configuration files are currently being placed in /etc/opt/csw. -Please make sure your configuration have been moved to /etc/opt/csw -and remove the old one from this location. +Please make sure your configuration (gitconfig) was properly moved to +/etc/opt/csw and then remove the old one from this location. EOF fi This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Sun Oct 4 13:34:19 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 04 Oct 2009 11:34:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[6696] csw/mgar/pkg Message-ID: Revision: 6696 http://gar.svn.sourceforge.net/gar/?rev=6696&view=rev Author: bonivart Date: 2009-10-04 11:34:11 +0000 (Sun, 04 Oct 2009) Log Message: ----------- cvsproxy: initial commit, lacks pre/post scripts Added Paths: ----------- csw/mgar/pkg/cvsproxy/ csw/mgar/pkg/cvsproxy/branches/ csw/mgar/pkg/cvsproxy/tags/ csw/mgar/pkg/cvsproxy/trunk/ csw/mgar/pkg/cvsproxy/trunk/Makefile csw/mgar/pkg/cvsproxy/trunk/checksums csw/mgar/pkg/cvsproxy/trunk/files/ Property changes on: csw/mgar/pkg/cvsproxy/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cvsproxy/trunk/Makefile =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cvsproxy/trunk/Makefile 2009-10-04 11:34:11 UTC (rev 6696) @@ -0,0 +1,28 @@ +GARNAME = cvsproxy +GARVERSION = 1.0.1 +CATEGORIES = utils + +DESCRIPTION = Provides a CVS proxy +define BLURB + Provides a CVS proxy +endef + +MASTER_SITES = http://www.sra.co.jp/people/m-kasahr/cvsproxy/src/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +CONFIGURE_ARGS = $(DIRPATHS) + +TEST_TARGET = check + +include gar/category.mk + +post-install-modulated: + @echo "==> Post-install fixes" + @ginstall -d $(DESTDIR)$(docdir)/$(GARNAME) + @cp $(WORKSRC)/README $(DESTDIR)$(docdir)/$(GARNAME) + @cp $(WORKSRC)/NEWS $(DESTDIR)$(docdir)/$(GARNAME) + @cp $(WORKSRC)/ChangeLog $(DESTDIR)$(docdir)/$(GARNAME) + @$(MAKECOOKIE) Added: csw/mgar/pkg/cvsproxy/trunk/checksums =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/checksums (rev 0) +++ csw/mgar/pkg/cvsproxy/trunk/checksums 2009-10-04 11:34:11 UTC (rev 6696) @@ -0,0 +1 @@ +ceff47a655085497f5712e2da160c607 download/cvsproxy-1.0.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Sun Oct 4 15:50:05 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Sun, 04 Oct 2009 13:50:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[6697] csw/mgar/pkg/cvsproxy/trunk Message-ID: Revision: 6697 http://gar.svn.sourceforge.net/gar/?rev=6697&view=rev Author: bonivart Date: 2009-10-04 13:50:05 +0000 (Sun, 04 Oct 2009) Log Message: ----------- cvsproxy: added pre/post scripts, some re-layout Modified Paths: -------------- csw/mgar/pkg/cvsproxy/trunk/Makefile csw/mgar/pkg/cvsproxy/trunk/checksums Added Paths: ----------- csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.postinstall csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.preremove csw/mgar/pkg/cvsproxy/trunk/files/editconf.pl Modified: csw/mgar/pkg/cvsproxy/trunk/Makefile =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/Makefile 2009-10-04 11:34:11 UTC (rev 6696) +++ csw/mgar/pkg/cvsproxy/trunk/Makefile 2009-10-04 13:50:05 UTC (rev 6697) @@ -9,7 +9,12 @@ MASTER_SITES = http://www.sra.co.jp/people/m-kasahr/cvsproxy/src/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES += CSWcvsproxy.postinstall +DISTFILES += CSWcvsproxy.preremove +REQUIRED_PKGS = CSWtcpwrap +SPKG_SOURCEURL = http://www.sra.co.jp/people/m-kasahr/cvsproxy + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz @@ -25,4 +30,8 @@ @cp $(WORKSRC)/README $(DESTDIR)$(docdir)/$(GARNAME) @cp $(WORKSRC)/NEWS $(DESTDIR)$(docdir)/$(GARNAME) @cp $(WORKSRC)/ChangeLog $(DESTDIR)$(docdir)/$(GARNAME) + @mv $(DESTDIR)/opt/csw/libexec/cvsproxy $(DESTDIR)/opt/csw/libexec/cvsproxy.tmp + @ginstall -d $(DESTDIR)/opt/csw/libexec/$(GARNAME) + @cp $(FILEDIR)/editconf.pl $(DESTDIR)/opt/csw/libexec/$(GARNAME) + @mv $(DESTDIR)/opt/csw/libexec/cvsproxy.tmp $(DESTDIR)/opt/csw/libexec/$(GARNAME)/cvsproxy @$(MAKECOOKIE) Modified: csw/mgar/pkg/cvsproxy/trunk/checksums =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/checksums 2009-10-04 11:34:11 UTC (rev 6696) +++ csw/mgar/pkg/cvsproxy/trunk/checksums 2009-10-04 13:50:05 UTC (rev 6697) @@ -1 +1,3 @@ +5095049b846e80cbe0745d85929af2d9 download/CSWcvsproxy.postinstall +3ce92c760a74f36d40acc02eb5e8e275 download/CSWcvsproxy.preremove ceff47a655085497f5712e2da160c607 download/cvsproxy-1.0.1.tar.gz Added: csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.postinstall =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.postinstall (rev 0) +++ csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.postinstall 2009-10-04 13:50:05 UTC (rev 6697) @@ -0,0 +1,30 @@ +#!/bin/sh + +# Mostly copied from CSWfam + +set -e + +if [ "$PKG_ROOT_DIR" = "" ]; then + PKG_ROOT_DIR=/; +fi + +CSWROOT=$PKG_ROOT_DIR/opt/csw +EDITCONF=$CSWROOT/libexec/cvsproxy/editconf.pl + + +echo "Adding cvsproxy to /etc/services" +"$EDITCONF" "$PKG_ROOT_DIR/etc/services" add '^cvsproxy\b' \ + "cvsproxy 2401/tcp # Transparent CVS proxy" \ + "cvsproxy 2401/udp # Transparent CVS proxy" + +echo "Adding cvsproxy to inetd.conf" +"$EDITCONF" "$PKG_ROOT_DIR/etc/inetd.conf" add 'Transparent CVS proxy' \ + "# Transparent CVS proxy" +"$EDITCONF" "$PKG_ROOT_DIR/etc/inetd.conf" add '^cvsproxy\b' \ + "cvsproxy stream tcp nowait nobody /opt/csw/libexec/tcpd /opt/csw/libexec/cvsproxy/cvsproxy" + + +echo "Restarting inetd..." +pkill -HUP inetd + +exit 0 Added: csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.preremove =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.preremove (rev 0) +++ csw/mgar/pkg/cvsproxy/trunk/files/CSWcvsproxy.preremove 2009-10-04 13:50:05 UTC (rev 6697) @@ -0,0 +1,21 @@ +#!/bin/sh + +set -e + +if [ "$PKG_ROOT_DIR" = "" ]; then + PKG_ROOT_DIR=/; +fi + +EDITCONF="$PKG_ROOT_DIR/opt/csw/libexec/cvsproxy/editconf.pl" + +echo "Removing cvsproxy from /etc/services" +"$EDITCONF" "$PKG_ROOT_DIR/etc/services" remove '^cvsproxy' + +echo "Removing cvsproxy from inetd.conf" +"$EDITCONF" "$PKG_ROOT_DIR/etc/inetd.conf" remove '^cvsproxy' +"$EDITCONF" "$PKG_ROOT_DIR/etc/inetd.conf" remove 'Transparent CVS proxy' + +echo "Restarting inetd..." +pkill -HUP inetd + +exit 0 Added: csw/mgar/pkg/cvsproxy/trunk/files/editconf.pl =================================================================== --- csw/mgar/pkg/cvsproxy/trunk/files/editconf.pl (rev 0) +++ csw/mgar/pkg/cvsproxy/trunk/files/editconf.pl 2009-10-04 13:50:05 UTC (rev 6697) @@ -0,0 +1,440 @@ +#!/usr/bin/perl -w + +use strict; + +# $Id: editconf.perl,v 1.1 2000/05/19 22:44:34 rusty Exp $ +# +# This edits configuration files during software install/uninstall. +# Run with --help or see the text of the usage subroutine below for +# more information. +# +# Examples: +# +# Add fam to /etc/inetd.conf during install: +# editconf inetd.conf add '\bfam\b' \ +# "# fam, the File Alteration Monitor" \ +# "sgi_fam/1-2 stream rpc/tcp wait root /usr/local/bin/fam fam" +# +# Remove fam from /etc/inetd.conf during uninstall: +# editconf inetd.conf remove '\bfam\b' +# +# Add /usr/sysadm/lib to /etc/ld.so.conf# +# editconf ld.so.conf add '\bsysadm\b' /usr/sysadm/lib +# +# Add sysadmd to /usr/local/etc/tcpmux.conf: +# editconf tcpmux.conf add '\bsysadm\b' \ +# "# sysadmd, for system administration applications" \ +# "sgi_sysadm root /usr/sysadm/bin/sysadmd sysadmd" +# +# The main goal of this script is to "do no harm." We don't +# modify any files if it looks like we're going to mess with +# lines which have been edited by the user. The only time we +# change a file is when we're confident that we're adding new +# lines, or messing with lines which we ourselves added or +# removed during a previous invocation of the script. +# +# Well... that's not entirely true; the "remove" operation comments +# out any line that matches the given regexp. But it makes a backup! +# +# USING EDITCONF WITH AUTOMAKE AND RPM +# +# This prepends DESTDIR to the files it operates on (unless you pass +# it a file starting with \.{0,2}/, so it can be used during an +# automake "make install" into a non-root directory (as you would do +# while building an RPM package). Note that the file it attempts to +# operate on probably won't be present, though, so you'll probably +# need to ignore errors during the make install: +# +# make-install-hook: +# -$(EDITCONF) ld.so.conf add '\bsysadm\b' /usr/sysadm/lib +# +# This will probably fail when DESTDIR is set, as ld.so.conf probably +# doesn't exist under DESTDIR; the only reason to have this line in the +# Makefile.am is so that a normal "make install" will update the +# configuration files. +# +# In order to have your configuration files updated during the install/ +# uninstall of an rpm package, you'll need to add something like this +# to your spec file: +# +# # this is %preun rather than %postun because we want to use our +# # script before it gets uninstalled. +# %preun +# perl /usr/local/lib/fam/editconf.perl ld.so.conf remove '\bsysadm\b' +# +# +sub usage { + my($msg) = @_; + $msg && ($msg ne "help") && print STDERR "$msg\n\n"; + print STDERR <<"EOF"; +Usage: + $0 [options] file \"add\" regexp lines... + $0 [options] file \"remove\" regexp [comment] + $0 --help + +Options: + -n No-exec (don't change any files) + -v Verbose + -s Silent + -- End argument processing (in case your new config file lines + start with -) +EOF + + if($msg eq "help") { + print STDERR <<"EOF"; + +This edits configuration files. Given a file name, it looks +in a list of directories (see below) for the file. (If the file +name starts with "/" or ".", the path list is not searched.) +Once the file is found, the given regular expression is searched +for in the file to determine whether the option or service we're +adding/removing already exists. + +If we're adding new lines to the file, there are four possible +outcomes: + + - If the regexp isn't found in the file, we figure our lines + haven't been added before, and we add them. + + - If the regexp is found in the file, and indeed the exact lines + we were going to add are already there, we're happy, and we + don't change the file. + + - If the regexp is found in the file, and the lines we were going + to add are present but commented out, we uncomment them. + + - If the regexp is found in the file, but in lines which are + different than the lines we were going to add, we figure the + option or service we were going to add has already been configured + differently; in this case, we make our changes in a new copy + of the file and print a warning message saying that someone + should compare the two files. (We don't change the + configuration of the system in this case.) + +If we're removing lines from the file, there are two possible +outcomes: + + - If the regexp isn't found in the file, we're happy, and we + don't change the file. + + - If the regexp is found in the file, we make a backup of the + file, and comment out the lines containing the regexp in the + original file. + +EOF + print STDERR "Configuration file paths:\n"; + foreach (@::paths) { print STDERR " $_\n"; } + } + + exit 1; +} + + +# See if DESTDIR is set, to have us operate on files not in / +my $DESTDIR = $ENV{'DESTDIR'} ? $ENV{'DESTDIR'} : ""; + +# This is the list of places we'll look for the configuration file +# if we weren't given an absolute path. +@::paths = ("$DESTDIR/etc", "$DESTDIR/usr/etc", "$DESTDIR/usr/local/etc"); + +my $comment = '#'; +my $verbose = &splicegrep('^-v$', \@ARGV, '^--$'); +my $noexec = &splicegrep('^-n$', \@ARGV, '^--$'); +my $silent = &splicegrep('^-s$', \@ARGV, '^--$'); +&splicegrep('^--?h', \@ARGV, '^--$') && &usage("help"); +&splicegrep('^-', \@ARGV, '^--$') && &usage(); +&splicegrep('^--$', \@ARGV); + +my $file; # the name of the file passed on the command line +my $regexp; # the pattern passed on the command line +my $op; # the operation being performed (add|remove) + +($file = shift) || &usage("The config file name is required!"); +(($op = shift) && ($op =~ /^(add|remove)$/)) || &usage("\"add\" or \"remove\" is required!"); +($regexp = shift) || &usage("The regexp to search for is required!"); +my @lines = @ARGV; + + +# +# Does the file name start with /, ./, or ../? +# +if ($file =~ m#^\.{0,2}/#) { + # Danger! Not applying $DESTDIR to $path here! + &shaketh_thy_booty($op, $file, $regexp, @lines); + exit 0; +} +# +# No, so we'll search for the file name in the list of paths. +# +$verbose && $DESTDIR && print "Using DESTDIR \"$DESTDIR\"\n"; +my($p, $path); +foreach $p (@::paths) { + $path = "$p/$file"; + $verbose && print STDERR "Looking for $path...\n"; + if (-f $path) { + &shaketh_thy_booty($op, $path, $regexp, @lines); + exit 0; + } +} +die("Couldn't find $file in " . join(" ", @::paths) . "\n"); + + +# +# Once we know what file we're attacking, this does the actual work. +# +sub shaketh_thy_booty { # or is it "thine"? + my($op, $path, $regexp, @lines) = @_; + $noexec || -w $path || die("I don't have write permission on $path!\n"); + # Might as well snort it into memory. Hopefully it's a small file, ha ha. + open(CFG, "<$path") || die("Couldn't open $path for input!\n"); + my @wholefile = ; + close(CFG); + + my $matched = 0; + if (!grep /$regexp/, @wholefile) { + if ($op eq 'add') { + # It doesn't contain our regexp, so append our lines and + # exit happily. + if ($noexec) { + print "I would have added the following lines to $path:\n"; + foreach (@lines) { print "$_\n"; } + } else { + open(CFG, ">>$path") || die("Couldn't open $path for append!\n"); + $silent || print "Added the following lines to $path:\n"; + foreach (@lines) { + $silent || print "$_\n"; + print CFG "$_\n"; + } + $silent || print "(end of lines added to $path)\n"; + } + exit 0; + } elsif ($op eq 'remove') { + # It doesn't contain our regexp, so we don't need to remove it, + # so we're happy. + exit 0; + } else { die("bad op \"$op\""); } + } + + if ($op eq "remove") { + # Since we're still here, and we're removing this entry, comment out + # all lines matching our regexp. + if ($noexec) { + print "I would have commented out the following lines in $path:\n"; + grep { + /$regexp/ && print; + } @wholefile; + } else { + my $tmpnm = &tmpnam("$path.$$"); + my $comment_re = quotemeta $comment; + my @commented_out; + open(CFG, ">$tmpnm") || die("Couldn't open $tmpnm for output!\n"); + foreach (@wholefile) { + # We care if it matches, and isn't already commented out. + if ((/$regexp/) && (!/^$comment_re/)) { + push @commented_out, $_; + print CFG $comment; + } + print CFG; + } + if ($#commented_out == -1) { + # We didn't actually need to comment anything out! + # Apparently all the lines that matched our regexp were + # already commented out. + $verbose && print "All the lines matching our regexp were ", + "already commented out, so we're not doing ", + "anything!\n"; + unlink $tmpnm; + exit 0; + } +# $silent || print "Commented out the following lines in $path:\n"; +# $silent || grep { print; } @commented_out; +# $silent || print "(end of lines commented out in $path)\n"; + my $bak = &tmpnam("$path.O"); + rename($path, $bak) || die("Couldn't rename $path to $bak!\n"); + rename($tmpnm, $path) || die("Couldn't rename $tmpnm to $path!\n"); + $silent || print "Original file saved as $bak\n"; + } + exit 0; + } + + # just a sanity check... + ($op eq "add") || die("bad op \"\$op\""); + + # We're still here, so we found our regexp, which suggests that the + # entry we're adding might already be in the file. Do our new lines + # match existing lines exactly? + $verbose && print "The file contains our regular expression, so let's see ", + "if it has our lines...\n"; + $matched = 1; + my $re; + foreach (@lines) { + $re = quotemeta $_; + $verbose && print " Looking for \"$re\"\n"; + if (! grep /^$re$/, @wholefile) { + $verbose && print " Didn't find it!\n"; + $matched = 0; + last; + } + } + if ($matched) { + # The lines we would have added are already in the file, so + # we can all go home early. + $verbose && print "$path already contains the lines we would have ", + "added.\n"; + exit 0; + } + + # All right, we're still here, so let's see if the lines we would have + # added are in the file, but commented out. This is slightly complicated + # by the possibility that lines we're adding start with comments; if so, + # we don't want to require that they be preceded by another comment + # character. + $verbose && print "Let's see if it has our lines, but commented out...\n"; + $re = quotemeta $comment; + my @linesre = @lines; + grep { + # If it starts with a comment, require make an additional starting + # comment optional. (the ($re.*)? as opposed to $re.*) + $_ = (/^$re/) ? "^($re.*)?" . quotemeta $_ : "^$re.*" . quotemeta $_; + } @linesre; + $matched = 1; + foreach $re (@linesre) { + # This loop through @linesre isn't done in the grep above because + # we want that to iterate through every element, while this loop + # can bail as soon as it fails to find a line it's looking for. + $verbose && print " Looking for \"$re\"\n"; + # If you change this next line, make sure you make the same changes + # in the substitution below. + if (! grep /$re$/, @wholefile) { + $verbose && print " Didn't find it!\n"; + $matched = 0; + last; + } + } + if ($matched) { + # The lines we would have added are already in the file, but + # commented out. Let's uncomment them into a temp file, and then + # replace the existing file with the temp file. + if ($noexec) { + print "I would have uncommented the following lines in $path:\n"; + foreach (@lines) { print "$_\n"; } + exit 0; + } + # This is crude. For every line in the file, if it matches the + # commented-out version of any of the lines we're adding, replace + # it with the corresponding non-commented-out line. + my $idx; + foreach (@wholefile) { + foreach $idx (0..$#lines) { + s/$linesre[$idx]$/$lines[$idx]/ && last; + } + } + # isn't there a perl tmpnam? this open/die is stupid. + my $tmpnm = &tmpnam("$path.$$"); + open(CFG, ">$tmpnm") || die("Couldn't open $tmpnm for output!\n"); + print CFG @wholefile; + close(CFG) || die("Couldn't close $tmpnm after writing!\n"); + rename($tmpnm, $path) || die("Couldn't replace $path with $tmpnm " . + "after writing!\n"); + exit 0; + } + + # We're still here, so it looks like our configuration lines are in the + # file, but they're different than what we would have added. Nuts! + # Comment out everything matching our regexp and append our new lines, + # but do it into a new file so that we don't stomp any existing + # configuration. + my $tmpnm = &tmpnam("$path.N"); + if ($noexec) { + print "I would have copied $path to $tmpnm and commented out the following lines in $tmpnm:\n"; + grep { + /$regexp/ && print; + } @wholefile; + print "...and added the following lines to $tmpnm:\n"; + foreach (@lines) { print "$_\n"; } + exit 0; + } + grep { + /$regexp/ && ($_ = ($comment . $_)); + } @wholefile; + # Now append our new stuff + foreach (@lines) { + push @wholefile, "$_\n"; + } + open(CFG, ">$tmpnm") || die("Couldn't open $tmpnm for output!\n"); + print CFG @wholefile; + close(CFG) || die("Couldn't close $tmpnm after writing!\n"); + # Just for fun, if $path.N already existed, let's see if it's the + # same as what we just wrote. + &diff($tmpnm, "$path.N", \@wholefile) || ($tmpnm = "$path.N"); + + print STDERR <<"EOF"; + +********************************************************************** +Configuration changes to $file have not been made +automatically because there appears to be a conflict between the +file's current contents and the lines which would have been added. + +Original file: $path +New file: $tmpnm + +Please compare these two files and update the original file as needed. +********************************************************************** + +EOF + exit 0; +} + + +# Returns the array of elements matching the given re in the given array, +# and removes those elements from the array. If $bre is set, we only +# search through the array until an element matching $bre is encountered. +sub splicegrep { + my($re, $a, $bre) = @_; + my @ta = (); + my @ra = (); + my $skip = 0; + $a || ($a = \@ARGV); + # sub-optimal but our argv should be short + grep { + $bre && /$bre/ && ($skip = 1); + ((!$skip) && /$re/) ? push @ra, $_ : push @ta, $_; + } @{$a}; + @{$a} = @ta; + return @ra; +} + + +# This is kind of stupid. +sub tmpnam { + my($base) = @_; + my $hope = $base; + my $count = 0; + while(-e $hope) { + $hope = "$base$count"; + ++$count; + } + return $hope; +} + + +# Returns 0 if we know the two files are the same, 1 if we're not sure. +sub diff { + my($fn1, $fn2, $fc1) = @_; + ($fn1 eq $fn2) && return 0; # same file name! + my $sz1 = (stat $fn1)[7]; # size $sstuff[7]; # size + my $sz2 = (stat $fn2)[7]; # size $sstuff[7]; # size + $sz1 && ($sz1 != $sz2) && return 1; # different sizes; they're different + # Nuts, they're the same size, so we have to compare them. + open(FH2, "<$fn2") || return 1; + my @snort2 = ; + close(FH2); + # Same number of lines? + ($#snort2 == $#{$fc1}) || return 1; + my $i = $#snort2; + while ($i >= 0) { + ($snort2[$i] eq $fc1->[$i]) || return 1; + --$i; + } + return 0; +} Property changes on: csw/mgar/pkg/cvsproxy/trunk/files/editconf.pl ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Oct 4 23:27:22 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 04 Oct 2009 21:27:22 +0000 Subject: [csw-devel] SF.net SVN: gar:[6698] csw/mgar/pkg/libtheora/trunk Message-ID: Revision: 6698 http://gar.svn.sourceforge.net/gar/?rev=6698&view=rev Author: dmichelsen Date: 2009-10-04 21:27:22 +0000 (Sun, 04 Oct 2009) Log Message: ----------- libtheora: Update to 1.1.1 Modified Paths: -------------- csw/mgar/pkg/libtheora/trunk/Makefile csw/mgar/pkg/libtheora/trunk/checksums Modified: csw/mgar/pkg/libtheora/trunk/Makefile =================================================================== --- csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-04 13:50:05 UTC (rev 6697) +++ csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-04 21:27:22 UTC (rev 6698) @@ -1,5 +1,5 @@ GARNAME = libtheora -GARVERSION = 1.0 +GARVERSION = 1.1.1 CATEGORIES = lib DESCRIPTION = Theora video codec support library Modified: csw/mgar/pkg/libtheora/trunk/checksums =================================================================== --- csw/mgar/pkg/libtheora/trunk/checksums 2009-10-04 13:50:05 UTC (rev 6697) +++ csw/mgar/pkg/libtheora/trunk/checksums 2009-10-04 21:27:22 UTC (rev 6698) @@ -1 +1 @@ -c963937053f45a7878954bed37ceb182 download/libtheora-1.0.tar.bz2 +292ab65cedd5021d6b7ddd117e07cd8e download/libtheora-1.1.1.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Sun Oct 4 23:31:28 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Sun, 04 Oct 2009 21:31:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[6699] csw/mgar/pkg/libtheora/trunk/Makefile Message-ID: Revision: 6699 http://gar.svn.sourceforge.net/gar/?rev=6699&view=rev Author: dmichelsen Date: 2009-10-04 21:31:28 +0000 (Sun, 04 Oct 2009) Log Message: ----------- libtheora: Relocate documentation to standard location Modified Paths: -------------- csw/mgar/pkg/libtheora/trunk/Makefile Modified: csw/mgar/pkg/libtheora/trunk/Makefile =================================================================== --- csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-04 21:27:22 UTC (rev 6698) +++ csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-04 21:31:28 UTC (rev 6699) @@ -32,4 +32,6 @@ TEST_TARGET = check +EXTRA_PAX_ARGS += -s ',^\.$(docdir)/$(GARNAME)-$(GARVERSION),.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME),' + include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 09:52:59 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 07:52:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6700] csw/mgar/pkg/libtheora/trunk/Makefile Message-ID: Revision: 6700 http://gar.svn.sourceforge.net/gar/?rev=6700&view=rev Author: dmichelsen Date: 2009-10-05 07:52:59 +0000 (Mon, 05 Oct 2009) Log Message: ----------- libtheora: Adjust upstream watch Modified Paths: -------------- csw/mgar/pkg/libtheora/trunk/Makefile Modified: csw/mgar/pkg/libtheora/trunk/Makefile =================================================================== --- csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-04 21:31:28 UTC (rev 6699) +++ csw/mgar/pkg/libtheora/trunk/Makefile 2009-10-05 07:52:59 UTC (rev 6700) @@ -22,7 +22,7 @@ CATALOGNAME = libtheora # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = (\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = (\d+(?:\.\d+)*).tar.bz2 BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 10:12:53 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 08:12:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[6701] csw/mgar/pkg/x11/libxpm/trunk/Makefile Message-ID: Revision: 6701 http://gar.svn.sourceforge.net/gar/?rev=6701&view=rev Author: dmichelsen Date: 2009-10-05 08:12:53 +0000 (Mon, 05 Oct 2009) Log Message: ----------- x11/libxpm: Add missing link Modified Paths: -------------- csw/mgar/pkg/x11/libxpm/trunk/Makefile Modified: csw/mgar/pkg/x11/libxpm/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/libxpm/trunk/Makefile 2009-10-05 07:52:59 UTC (rev 6700) +++ csw/mgar/pkg/x11/libxpm/trunk/Makefile 2009-10-05 08:12:53 UTC (rev 6701) @@ -45,6 +45,10 @@ include gar/category.mk +post-install-modulated: + ln -s libXpm.so.4.11.0 $(DESTDIR)$(libdir)/libXpm.so.4.11 + @$(MAKECOOKIE) + post-merge: ifeq ($(GARCH),sparc) @ginstall -d $(PKGROOT)/opt/csw/lib/sparcv8plus+vis This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 10:27:21 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 08:27:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[6702] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6702 http://gar.svn.sourceforge.net/gar/?rev=6702&view=rev Author: dmichelsen Date: 2009-10-05 08:27:21 +0000 (Mon, 05 Oct 2009) Log Message: ----------- mGAR v2-pbuild: More bugfixes towards release Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.conf.mk csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.conf.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-05 08:12:53 UTC (rev 6701) +++ csw/mgar/gar/v2-pbuild/gar.conf.mk 2009-10-05 08:27:21 UTC (rev 6702) @@ -294,24 +294,6 @@ # ISALIST_$(GARCOMPILER) contains all ISAs which are compilable with the selected compiler $(foreach C,$(GARCOMPILERS),$(eval ISALIST_$(C) ?= $(foreach I,$(ISALIST),$(if $(filter-out ERROR,$(ARCHFLAGS_$C_$I)),$I)))) -# BUILDHOST_isa-$ISA is the name of the host where the compilation should take place -# It defaults to the corresponding BUILD_(sparc|i386)-(32|64) -# An empty string means "stay on the current host" -define BUILDHOST -$(strip - $(if $(filter $1,$(ISALIST_sparcv9), - $(if $(BUILDHOST_sparc-$(MEMORYMODEL_$1)), - $(if $(eq $(BUILDHOST_sparc-$(MEMORYMODEL_$1)),$(THISHOST)),,$(BUILDHOST_sparc-$(MEMORYMODEL_$1))), - ), - $(if $(filter $1,$(ISALIST_amd64), - $(if $(BUILDHOST_i386-$(MEMORYMODEL_$1)), - $(if $(eq $(BUILDHOST_i386-$(MEMORYMODEL_$1)),$(THISHOST)),,$(BUILDHOST_i386-$(MEMORYMODEL_$1))), - ), - ), - ), -) -endef - # This is the memory model of the currently compiled architecture MEMORYMODEL = $(MEMORYMODEL_$(ISA)) Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-05 08:12:53 UTC (rev 6701) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-05 08:27:21 UTC (rev 6702) @@ -158,12 +158,7 @@ ) merge-$(2): BUILDHOST=$$(call modulation2host) merge-$(2): - echo modulation: $(2) - echo vars: $(3) - echo ISA: $$(ISA) - echo BUILDHOST="$$(BUILDHOST)" - echo THISHOST="$$(THISHOST)" - echo "Building modulation on host '$$(BUILDHOST)'" + @echo "[===== Building modulation '$(2)' on host '$$(BUILDHOST)' =====]" $$(if $$(and $$(BUILDHOST),$$(filter-out $$(THISHOST),$$(BUILDHOST))),\ $(SSH) $$(BUILDHOST) "PATH=$$(PATH) $(MAKE) -C $$(CURDIR) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ gmake $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ @@ -663,17 +658,17 @@ $(_DBG_MERGE)trap "kill -9 `cat $(_PIDFILE) $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.pid) 2>/dev/null`;stty sane" INT;\ $(foreach M,$(MODULATIONS),($(MAKE) merge-$M >$(WORKROOTDIR)/build-$M/build.log 2>&1; echo $$? >$(WORKROOTDIR)/build-$M/build.ret) & echo $$! >$(WORKROOTDIR)/build-$M/build.pid; ) wait $(_DBG_MERGE)if [ -f $(_PIDFILE) ]; then kill `cat $(_PIDFILE)`; stty sane; fi - $(foreach M,$(MODULATIONS),if [ "`cat $(WORKROOTDIR)/build-$M/build.ret`" -ne 0 ]; then \ + $(_DBG_MERGE)$(foreach M,$(MODULATIONS),if [ "`cat $(WORKROOTDIR)/build-$M/build.ret`" -ne 0 ]; then \ echo "Build error in modulation $M. Please see"; \ echo " $(WORKROOTDIR)/build-$M/build.log"; \ echo "for details:"; \ echo; \ tail -100 $(WORKROOTDIR)/build-$M/build.log; \ - exit `cat $(WORKROOTDIR)/build-$M/build.ret`; \ + exit "Return code: `cat $(WORKROOTDIR)/build-$M/build.ret`"; \ fi;) merge-watch: _USEMULTITAIL=$(shell test -x $(MULTITAIL) && test -x $(TTY) && $(TTY) >/dev/null 2>&1; if [ $$? -eq 0 ]; then echo yes; fi) -merge-watch: +merge-watch: $(addprefix $(WORKROOTDIR)/build-,global $(MODULATIONS)) $(_DBG_MERGE)$(if $(_USEMULTITAIL),\ $(MULTITAIL) --retry-all $(foreach M,$(MODULATIONS),$(WORKROOTDIR)/build-$M/build.log) -j & echo $$! > $(WORKROOTDIR)/build-global/multitail.pid,\ echo "Building all ISAs in parallel. Please see the individual logfiles for details:";$(foreach M,$(MODULATIONS),echo "- $(WORKROOTDIR)/build-$M/build.log";)\ Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 08:12:53 UTC (rev 6701) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 08:27:21 UTC (rev 6702) @@ -561,16 +561,14 @@ # hosts. If there are no platform hosts defined the test is skipped. validateplatform: $(if $(strip $(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),\ - $(if $(filter $(THISHOST),$(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),,\ - $(warning ***)\ + $(if $(filter $(THISHOST),$(foreach P,$(PACKAGING_PLATFORMS),$(PACKAGING_HOST_$P))),\ + @$(MAKECOOKIE),\ $(warning *** You are building this package on a non-requested platform host '$(THISHOST)'. The follow platforms were requested:)\ $(foreach P,$(PACKAGING_PLATFORMS),\ $(warning *** - $P $(if $(PACKAGING_HOST_$P),to be build on host '$(PACKAGING_HOST_$P)',with no suitable host available))\ )\ - $(warning *** You can execute '$(MAKE) platforms' to automatically build on all necessary platforms.)\ - $(warning ***)\ - )) - @$(MAKECOOKIE) + $(error You can execute '$(MAKE) platforms' to automatically build on all necessary platforms.)\ + ),@$(MAKECOOKIE)) # We depend on extract as the additional package files (like .gspec) must be # unpacked to global/ for packaging. E. g. 'merge' depends only on the specific @@ -635,12 +633,12 @@ $(foreach P,$(PACKAGING_PLATFORMS),\ $(if $(PACKAGING_HOST_$P),\ $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ - $(MAKE) PLATFORM=$P package;,\ - $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package";\ + $(MAKE) PLATFORM=$P package && ,\ + $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package" && \ ),\ $(error *** No host has been defined for platform $P)\ )\ - ) + ) true # Print relecant informations about the platform platformenv: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 11:22:58 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 09:22:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[6703] csw/mgar/pkg/libsdl/trunk Message-ID: Revision: 6703 http://gar.svn.sourceforge.net/gar/?rev=6703&view=rev Author: dmichelsen Date: 2009-10-05 09:22:58 +0000 (Mon, 05 Oct 2009) Log Message: ----------- libsdl: Add 64 bit and split off devel Modified Paths: -------------- csw/mgar/pkg/libsdl/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/libsdl/trunk/files/CSWlibsdl.gspec Modified: csw/mgar/pkg/libsdl/trunk/Makefile =================================================================== --- csw/mgar/pkg/libsdl/trunk/Makefile 2009-10-05 08:27:21 UTC (rev 6702) +++ csw/mgar/pkg/libsdl/trunk/Makefile 2009-10-05 09:22:58 UTC (rev 6703) @@ -11,13 +11,28 @@ MASTER_SITES = http://www.libsdl.org/release/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -DISTFILES += $(call admfiles,CSWlibsdl) REQUIRED_PKGS = CSWiconv +SPKG_SOURCEURL = http://www.libsdl.org/ + +PACKAGES = CSWlibsdl CSWlibsdldevel + +CATALOGNAME_CSWlibsdl = libsdl +CATALOGNAME_CSWlibsdldevel = libsdl_devel + +SPKG_DESC_CSWlibsdl = Simple DirectMedia Layer library +SPKG_DESC_CSWlibsdldevel = Simple DirectMedia Layer library development files + # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +# needs esound in 64 bit +# make sure it binds completely against new X11 + +BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) --disable-static +PKGFILES_CSWlibsdldevel = $(PKGFILES_DEVEL) + include gar/category.mk Deleted: csw/mgar/pkg/libsdl/trunk/files/CSWlibsdl.gspec =================================================================== --- csw/mgar/pkg/libsdl/trunk/files/CSWlibsdl.gspec 2009-10-05 08:27:21 UTC (rev 6702) +++ csw/mgar/pkg/libsdl/trunk/files/CSWlibsdl.gspec 2009-10-05 09:22:58 UTC (rev 6703) @@ -1,4 +0,0 @@ -%var bitname libsdl -%var pkgname CSWlibsdl -%include url file://%{PKGLIB}/csw_dyndepend.gspec -%copyright url file://%{WORKSRC}/COPYING This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 14:17:50 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 12:17:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[6704] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6704 http://gar.svn.sourceforge.net/gar/?rev=6704&view=rev Author: dmichelsen Date: 2009-10-05 12:17:49 +0000 (Mon, 05 Oct 2009) Log Message: ----------- mGAR v2-pbuild: More fixes towards release Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-05 09:22:58 UTC (rev 6703) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-05 12:17:49 UTC (rev 6704) @@ -75,37 +75,6 @@ include $(GARDIR)/gar.conf.mk include $(GARDIR)/gar.lib.mk -#################### DIRECTORY MAKERS #################### - -# This is to make dirs as needed by the base rules -$(sort $(DOWNLOADDIR) $(PARTIALDIR) $(COOKIEDIR) $(WORKSRC) $(WORKDIR) $(EXTRACTDIR) $(FILEDIR) $(SCRATCHDIR) $(PKGROOT) $(INSTALL_DIRS) $(INSTALLISADIR) $(GARCHIVEDIR) $(GARPKGDIR) $(STAGINGDIR)) $(COOKIEDIR)/%: - @if test -d $@; then : ; else \ - ginstall -d $@; \ - echo "ginstall -d $@"; \ - fi - -# These stubs are wildcarded, so that the port maintainer can -# define something like "pre-configure" and it won't conflict, -# while the configure target can call "pre-configure" safely even -# if the port maintainer hasn't defined it. -# -# in addition to the pre- rules, the maintainer may wish -# to set a "pre-everything" rule, which runs before the first -# actual target. -pre-%: - @true - -post-%: - @true - -# Call any arbitrary rule recursively for all dependencies -deep-%: % - @for target in "" $(DEPEND_LIST) ; do \ - test -z "$$target" && continue ; \ - $(MAKE) -C ../../$$target DESTIMG=$(DESTIMG) $@ ; \ - done - @$(foreach IMG,$(filter-out $(DESTIMG),$(IMGDEPS)),for dep in "" $($(IMG)_DEPENDS); do test -z "$$dep" && continue ; $(MAKE) -C ../../$$dep DESTIMG=$(IMG) $@; done; ) - # ========================= MODULATIONS ======================== # The default is to modulate over ISAs @@ -137,7 +106,7 @@ define _modulate_target $(1)-$(2): - @gmake MODULATION=$(2) $(3) $(1)-modulated + @$(MAKE) MODULATION=$(2) $(3) $(1)-modulated @# This is MAKECOOKIE expanded to use the name of the rule explicily as the rule has @# not been evaluated yet. XXX: Use function _MAKECOOKIE for both @mkdir -p $(COOKIEDIR)/$(dir $(1)-$(2)) && date >> $(COOKIEDIR)/$(1)-$(2) @@ -147,7 +116,7 @@ define _modulate_target_nocookie $(1)-$(2): - @gmake -s MODULATION=$(2) $(3) $(1)-modulated + @$(MAKE) -s MODULATION=$(2) $(3) $(1)-modulated @# The next line has intentionally been left blank to explicitly terminate this make rule endef @@ -161,7 +130,7 @@ @echo "[===== Building modulation '$(2)' on host '$$(BUILDHOST)' =====]" $$(if $$(and $$(BUILDHOST),$$(filter-out $$(THISHOST),$$(BUILDHOST))),\ $(SSH) $$(BUILDHOST) "PATH=$$(PATH) $(MAKE) -C $$(CURDIR) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated",\ - gmake $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ + $(MAKE) $(if $(PLATFORM),PLATFORM=$(PLATFORM)) MODULATION=$(2) $(3) merge-modulated\ ) @# The next line has intentionally been left blank to explicitly terminate this make rule @@ -218,7 +187,38 @@ $(eval $(call _modulate,$(MODULATORS))) +#################### DIRECTORY MAKERS #################### +# This is to make dirs as needed by the base rules +$(sort $(DOWNLOADDIR) $(PARTIALDIR) $(COOKIEDIR) $(WORKSRC) $(addprefix $(WORKROOTDIR)/build-,global $(MODULATIONS)) $(EXTRACTDIR) $(FILEDIR) $(SCRATCHDIR) $(PKGROOT) $(INSTALL_DIRS) $(INSTALLISADIR) $(GARCHIVEDIR) $(GARPKGDIR) $(STAGINGDIR)) $(COOKIEDIR)/%: + @if test -d $@; then : ; else \ + ginstall -d $@; \ + echo "ginstall -d $@"; \ + fi + +# These stubs are wildcarded, so that the port maintainer can +# define something like "pre-configure" and it won't conflict, +# while the configure target can call "pre-configure" safely even +# if the port maintainer hasn't defined it. +# +# in addition to the pre- rules, the maintainer may wish +# to set a "pre-everything" rule, which runs before the first +# actual target. +pre-%: + @true + +post-%: + @true + +# Call any arbitrary rule recursively for all dependencies +deep-%: % + @for target in "" $(DEPEND_LIST) ; do \ + test -z "$$target" && continue ; \ + $(MAKE) -C ../../$$target DESTIMG=$(DESTIMG) $@ ; \ + done + @$(foreach IMG,$(filter-out $(DESTIMG),$(IMGDEPS)),for dep in "" $($(IMG)_DEPENDS); do test -z "$$dep" && continue ; $(MAKE) -C ../../$$dep DESTIMG=$(IMG) $@; done; ) + + # ========================= MAIN RULES ========================= # The main rules are the ones that the user can specify as a # target on the "make" command-line. Currently, they are: @@ -249,7 +249,9 @@ # prerequisite - Make sure that the system is in a sane state for building the package PREREQUISITE_TARGETS = $(addprefix prerequisitepkg-,$(PREREQUISITE_BASE_PKGS) $(PREREQUISITE_PKGS)) $(addprefix prerequisite-,$(PREREQUISITE_SCRIPTS)) -prerequisite: announce pre-everything $(COOKIEDIR) $(DOWNLOADDIR) $(PARTIALDIR) $(addprefix dep-$(GARDIR)/,$(FETCHDEPS)) pre-prerequisite $(PREREQUISITE_TARGETS) post-prerequisite +# Force to be called in global modulation +prerequisite: $(if $(filter global,$(MODULATION)),announce pre-everything $(COOKIEDIR) $(DOWNLOADDIR) $(PARTIALDIR) $(addprefix dep-$(GARDIR)/,$(FETCHDEPS)) pre-prerequisite $(PREREQUISITE_TARGETS) post-prerequisite) + $(if $(filter-out global,$(MODULATION)),$(MAKE) -s MODULATION=global prerequisite) $(DONADA) prerequisitepkg-%: @@ -289,15 +291,15 @@ checksum: fetch $(COOKIEDIR) pre-checksum $(CHECKSUM_TARGETS) post-checksum @$(DONADA) -checksum-global: - @$(MAKE) -s ISA=global checksum - @$(MAKECOOKIE) +checksum-global: $(if $(filter global,$(MODULATION)),checksum) + $(if $(filter-out global,$(MODULATION)),$(MAKE) -s MODULATION=global checksum) + @$(DONADA) # The next rule handles the dependency from the modulated context to # the contextless checksumming. The rule is called when the cookie # to the global checksum is requested. If the global checksum has not run, # then run it. Otherwise it is silently accepted. -checksum-modulated: $(if $(test ! -e $(COOKIEDIR)/build-global/checksum),checksum-global) +checksum-modulated: checksum-global @$(DONADA) # returns true if checksum has completed successfully, false @@ -331,6 +333,10 @@ extract: checksum $(COOKIEDIR) pre-extract extract-modulated $(addprefix extract-,$(MODULATIONS)) post-extract @$(DONADA) +extract-global: $(if $(filter global,$(MODULATION)),extract-modulated) + $(if $(filter-out global,$(MODULATION)),$(MAKE) -s MODULATION=global extract) + @$(MAKECOOKIE) + extract-modulated: checksum-modulated $(EXTRACTDIR) $(COOKIEDIR) \ $(addprefix dep-$(GARDIR)/,$(EXTRACTDEPS)) \ announce-modulation \ @@ -736,7 +742,7 @@ # cookie, but that would be lame and unportable). clean: $(addprefix clean-,$(MODULATIONS)) - rm -rf $(WORKROOTDIR) $(COOKIEROOTDIR) $(DOWNLOADDIR) + @rm -rf $(WORKROOTDIR) $(COOKIEROOTDIR) $(DOWNLOADDIR) clean-modulated: $(call _pmod,Cleaning ) Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 09:22:58 UTC (rev 6703) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 12:17:49 UTC (rev 6704) @@ -573,14 +573,18 @@ # We depend on extract as the additional package files (like .gspec) must be # unpacked to global/ for packaging. E. g. 'merge' depends only on the specific # modulations and does not fill global/. -package: validateplatform checksum merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package +_package: validateplatform extract-global merge $(SPKG_DESTDIRS) pre-package $(PACKAGE_TARGETS) post-package + +package: _package @echo @echo "The following packages have been built:" @echo - @$(foreach SPEC,$(_PKG_SPECS),echo $(SPEC);echo " $(SPKG_EXPORT)/$(shell $(call _PKG_ENV,$(SPEC)) $(GARBIN)/mkpackage -qs $(WORKDIR)/$(SPEC).gspec -D pkgfile).gz";) - @echo + @$(MAKE) -s PLATFORM=$(PLATFORM) _pkgshow @$(DONADA) +_pkgshow: + @$(foreach SPEC,$(_PKG_SPECS),printf " %-20s %s\n" $(SPEC) $(SPKG_EXPORT)/$(shell $(call _PKG_ENV,$(SPEC)) $(GARBIN)/mkpackage -qs $(WORKDIR)/$(SPEC).gspec -D pkgfile).gz;) + # The dynamic pkginfo is only generated for dynamic gspec-files package-%: $(WORKDIR)/%.gspec $(if $(findstring %.gspec,$(DISTFILES)),,$(WORKDIR)/%.pkginfo) $(WORKDIR)/%.prototype-$(GARCH) $(WORKDIR)/%.depend @echo " ==> Processing $*.gspec" @@ -601,7 +605,7 @@ # pkgcheck - check if the package is compliant # pkgcheck: $(addprefix pkgcheck-,$(_PKG_SPECS)) - $(DONADA) + @$(DONADA) pkgcheck-%: @echo " ==> Checking compliance: $*" @@ -633,12 +637,25 @@ $(foreach P,$(PACKAGING_PLATFORMS),\ $(if $(PACKAGING_HOST_$P),\ $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ - $(MAKE) PLATFORM=$P package && ,\ - $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P package" && \ + $(MAKE) PLATFORM=$P _package && ,\ + $(SSH) -t $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) PLATFORM=$P _package" && \ ),\ $(error *** No host has been defined for platform $P)\ )\ ) true + @echo + @echo "The following packages have been built during this invocation:" + @echo + @$(foreach P,$(PACKAGING_PLATFORMS),\ + echo "* Platform $P\c";\ + $(if $(filter $(THISHOST),$(PACKAGING_HOST_$P)),\ + echo " (built on this host)";\ + $(MAKE) -s PLATFORM=$P _pkgshow;echo;,\ + echo " (built on host '$(PACKAGING_HOST_$P)')";\ + $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) -s PLATFORM=$P _pkgshow";echo;\ + )\ + ) + #@$(MAKECOOKIE) # Print relecant informations about the platform platformenv: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 14:25:35 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 12:25:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[6705] csw/mgar/gar/v2-pbuild/gar.pkg.mk Message-ID: Revision: 6705 http://gar.svn.sourceforge.net/gar/?rev=6705&view=rev Author: dmichelsen Date: 2009-10-05 12:25:35 +0000 (Mon, 05 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Cosmetic addition Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 12:17:49 UTC (rev 6704) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 12:25:35 UTC (rev 6705) @@ -580,6 +580,7 @@ @echo "The following packages have been built:" @echo @$(MAKE) -s PLATFORM=$(PLATFORM) _pkgshow + @echo @$(DONADA) _pkgshow: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 14:36:47 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 12:36:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[6706] csw/mgar/gar/v2-pbuild/gar.pkg.mk Message-ID: Revision: 6706 http://gar.svn.sourceforge.net/gar/?rev=6706&view=rev Author: dmichelsen Date: 2009-10-05 12:36:43 +0000 (Mon, 05 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Added replatforms Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 12:25:35 UTC (rev 6705) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 12:36:43 UTC (rev 6706) @@ -656,8 +656,10 @@ $(SSH) $(PACKAGING_HOST_$P) "$(MAKE) -C $(CURDIR) -s PLATFORM=$P _pkgshow";echo;\ )\ ) - #@$(MAKECOOKIE) + @$(MAKECOOKIE) +replatforms: spotless platforms + # Print relecant informations about the platform platformenv: @$(foreach P,$(PACKAGING_PLATFORMS),\ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 14:44:13 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 12:44:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[6707] csw/mgar/pkg/bdb47/trunk/Makefile Message-ID: Revision: 6707 http://gar.svn.sourceforge.net/gar/?rev=6707&view=rev Author: dmichelsen Date: 2009-10-05 12:44:12 +0000 (Mon, 05 Oct 2009) Log Message: ----------- bdb47: Exclude old license Modified Paths: -------------- csw/mgar/pkg/bdb47/trunk/Makefile Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-05 12:36:43 UTC (rev 6706) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-05 12:44:12 UTC (rev 6707) @@ -69,6 +69,10 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + PKGFILES_CSWbdb47doc = $(PKGFILES_DOC) PKGFILES_CSWbdb47devel = $(PKGFILES_DEVEL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 15:20:14 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 13:20:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[6708] csw/mgar/pkg/x11/libxaw/trunk/Makefile Message-ID: Revision: 6708 http://gar.svn.sourceforge.net/gar/?rev=6708&view=rev Author: dmichelsen Date: 2009-10-05 13:20:14 +0000 (Mon, 05 Oct 2009) Log Message: ----------- x11/libxaw: Add dependency Modified Paths: -------------- csw/mgar/pkg/x11/libxaw/trunk/Makefile Modified: csw/mgar/pkg/x11/libxaw/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/libxaw/trunk/Makefile 2009-10-05 12:44:12 UTC (rev 6707) +++ csw/mgar/pkg/x11/libxaw/trunk/Makefile 2009-10-05 13:20:14 UTC (rev 6708) @@ -25,8 +25,8 @@ SPKG_DESC_CSWlibxaw = X Athena Widgets SPKG_DESC_CSWlibxawdevel = X Athena Widgets development files -REQUIRED_PKGS_CSWlibxaw = CSWlibice CSWlibsm CSWlibx11 CSWlibxext CSWlibxmu CSWlibxt -REQUIRED_PKGS_CSWlibxawdevel = CSWlibxpm +REQUIRED_PKGS_CSWlibxaw = CSWlibice CSWlibsm CSWlibx11 CSWlibxext CSWlibxmu CSWlibxt CSWlibxpm +REQUIRED_PKGS_CSWlibxawdevel = CSWlibxpmdevel BUILD64 = 1 NOISALIST = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 15:46:16 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 13:46:16 +0000 Subject: [csw-devel] SF.net SVN: gar:[6709] csw/mgar/pkg/bdb45/trunk/Makefile Message-ID: Revision: 6709 http://gar.svn.sourceforge.net/gar/?rev=6709&view=rev Author: dmichelsen Date: 2009-10-05 13:46:16 +0000 (Mon, 05 Oct 2009) Log Message: ----------- bdb45: Remove extra license directory Modified Paths: -------------- csw/mgar/pkg/bdb45/trunk/Makefile Modified: csw/mgar/pkg/bdb45/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-05 13:20:14 UTC (rev 6708) +++ csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-05 13:46:16 UTC (rev 6709) @@ -70,6 +70,10 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + PKGFILES_CSWbdb45doc = $(PKGFILES_DOC) PKGFILES_CSWbdb45devel = $(PKGFILES_DEVEL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 15:47:15 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 13:47:15 +0000 Subject: [csw-devel] SF.net SVN: gar:[6710] csw/mgar/pkg/bdb46/trunk/Makefile Message-ID: Revision: 6710 http://gar.svn.sourceforge.net/gar/?rev=6710&view=rev Author: dmichelsen Date: 2009-10-05 13:47:15 +0000 (Mon, 05 Oct 2009) Log Message: ----------- bdb46: Remove extra license directory Modified Paths: -------------- csw/mgar/pkg/bdb46/trunk/Makefile Modified: csw/mgar/pkg/bdb46/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-05 13:46:16 UTC (rev 6709) +++ csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-05 13:47:15 UTC (rev 6710) @@ -70,6 +70,10 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + PKGFILES_CSWbdb46doc = $(PKGFILES_DOC) PKGFILES_CSWbdb46devel = $(PKGFILES_DEVEL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 15:48:42 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 13:48:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[6711] csw/mgar/pkg/bdb48/trunk/Makefile Message-ID: Revision: 6711 http://gar.svn.sourceforge.net/gar/?rev=6711&view=rev Author: dmichelsen Date: 2009-10-05 13:48:42 +0000 (Mon, 05 Oct 2009) Log Message: ----------- bdb48: Remove extra license directory Modified Paths: -------------- csw/mgar/pkg/bdb48/trunk/Makefile Modified: csw/mgar/pkg/bdb48/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-05 13:47:15 UTC (rev 6710) +++ csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-05 13:48:42 UTC (rev 6711) @@ -71,6 +71,10 @@ EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +# Remove the license from share/doc/berkeleydb/license/.* +# because GAR expects license to be a file instead of a directory +EXTRA_MERGE_EXCLUDE_FILES = .*/license.* + PKGFILES_CSWbdb48doc = $(PKGFILES_DOC) PKGFILES_CSWbdb48devel = $(PKGFILES_DEVEL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 16:34:43 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 14:34:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6712] csw/mgar/gar/v2-pbuild/gar.pkg.mk Message-ID: Revision: 6712 http://gar.svn.sourceforge.net/gar/?rev=6712&view=rev Author: dmichelsen Date: 2009-10-05 14:34:43 +0000 (Mon, 05 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Fix source packages on Solaris 8 Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 13:48:42 UTC (rev 6711) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-05 14:34:43 UTC (rev 6712) @@ -530,8 +530,10 @@ merge-src: _SRCDIR=$(PKGROOT)$(sourcedir)/$(call catalogname,$(SRCPACKAGE_BASE)) merge-src: fetch $(_DBG)mkdir -p $(_SRCDIR)/files - $(_DBG)(cd $(DOWNLOADDIR); pax -rH -w -v $(foreach F,$(DISTFILES) $(PATCHFILES),$F) $(_SRCDIR)/files) - $(_DBG)(cd $(CURDIR); pax -rH -w -v Makefile checksums $(_SRCDIR)) + $(_DBG)-rm -f $(addprefix $(_SRCDIR)/files/,$(DISTFILES) $(PATCHFILES)) + $(_DBG)(cd $(DOWNLOADDIR); cp $(DISTFILES) $(PATCHFILES) $(_SRCDIR)/files) + $(_DBG)-rm -f $(addprefix $(_SRCDIR)/,Makefile checksums gar) + $(_DBG)(cd $(CURDIR); cp Makefile checksums $(_SRCDIR)) $(_DBG)ln -s ../gar/$(GARSYSTEMVERSION) $(_SRCDIR)/gar $(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Mon Oct 5 16:46:03 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Mon, 05 Oct 2009 14:46:03 +0000 Subject: [csw-devel] SF.net SVN: gar:[6713] csw/mgar/pkg/bdb47/trunk/Makefile Message-ID: Revision: 6713 http://gar.svn.sourceforge.net/gar/?rev=6713&view=rev Author: dmichelsen Date: 2009-10-05 14:46:03 +0000 (Mon, 05 Oct 2009) Log Message: ----------- bdb47: Add release Modified Paths: -------------- csw/mgar/pkg/bdb47/trunk/Makefile Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-05 14:34:43 UTC (rev 6712) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) @@ -24,6 +24,7 @@ PATCHDIR = $(WORKSRC)/.. PATCHDIRLEVEL = 0 PATCHFILES += $(notdir $(wildcard $(FILEDIR)/patch.*)) +RELEASE = p$(words $(filter patch.$(GARVERSION).%,$(PATCHFILES))) BUILD64 = 1 NO_ISAEXEC = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From rthurner at users.sourceforge.net Mon Oct 5 21:25:17 2009 From: rthurner at users.sourceforge.net (rthurner at users.sourceforge.net) Date: Mon, 05 Oct 2009 19:25:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[6714] csw/mgar/pkg/mercurial/trunk/Makefile Message-ID: Revision: 6714 http://gar.svn.sourceforge.net/gar/?rev=6714&view=rev Author: rthurner Date: 2009-10-05 19:25:16 +0000 (Mon, 05 Oct 2009) Log Message: ----------- depend on python runtime as well Modified Paths: -------------- csw/mgar/pkg/mercurial/trunk/Makefile Modified: csw/mgar/pkg/mercurial/trunk/Makefile =================================================================== --- csw/mgar/pkg/mercurial/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/mercurial/trunk/Makefile 2009-10-05 19:25:16 UTC (rev 6714) @@ -12,7 +12,7 @@ SPKG_DESC_CSWmercurial = Mercurial -REQUIRED_PKGS_CSWmercurial = CSWpython +REQUIRED_PKGS_CSWmercurial = CSWpython CSWpython-rt # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 21:31:44 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 19:31:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[6715] csw/mgar/pkg/x11 Message-ID: Revision: 6715 http://gar.svn.sourceforge.net/gar/?rev=6715&view=rev Author: wbonnet Date: 2009-10-05 19:31:28 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_damageproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_damageproto/ Removed Paths: ------------- csw/mgar/pkg/x11/damageproto/ Modified: csw/mgar/pkg/x11/x11_damageproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/damageproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_damageproto/trunk/Makefile 2009-10-05 19:31:28 UTC (rev 6715) @@ -1,6 +1,8 @@ -GARNAME = damageproto GARVERSION = 1.2.0 CATEGORIES = x11 +PROTONAME = damageproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Damage protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 21:47:05 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 19:47:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[6716] csw/mgar/pkg/x11 Message-ID: Revision: 6716 http://gar.svn.sourceforge.net/gar/?rev=6716&view=rev Author: wbonnet Date: 2009-10-05 19:46:33 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_dmxproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_dmxproto/ Removed Paths: ------------- csw/mgar/pkg/x11/dmxproto/ Modified: csw/mgar/pkg/x11/x11_dmxproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/dmxproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_dmxproto/trunk/Makefile 2009-10-05 19:46:33 UTC (rev 6716) @@ -1,6 +1,8 @@ -GARNAME = dmxproto GARVERSION = 2.2.2 CATEGORIES = x11 +PROTONAME = dmxproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Distributed Multi-headed X protocol headers for X11 define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 21:57:57 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 19:57:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[6717] csw/mgar/pkg/x11 Message-ID: Revision: 6717 http://gar.svn.sourceforge.net/gar/?rev=6717&view=rev Author: wbonnet Date: 2009-10-05 19:57:49 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_dri2proto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_dri2proto/ Removed Paths: ------------- csw/mgar/pkg/x11/dri2proto/ Modified: csw/mgar/pkg/x11/x11_dri2proto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/dri2proto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_dri2proto/trunk/Makefile 2009-10-05 19:57:49 UTC (rev 6717) @@ -1,6 +1,8 @@ -GARNAME = dri2proto GARVERSION = 2.1 CATEGORIES = x11 +PROTONAME = dri2proto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org DRI2 prototype headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:04:46 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:04:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[6718] csw/mgar/pkg/x11 Message-ID: Revision: 6718 http://gar.svn.sourceforge.net/gar/?rev=6718&view=rev Author: wbonnet Date: 2009-10-05 20:04:33 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_evieextproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_evieextproto/ Removed Paths: ------------- csw/mgar/pkg/x11/evieextproto/ Modified: csw/mgar/pkg/x11/x11_evieextproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/evieextproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_evieextproto/trunk/Makefile 2009-10-05 20:04:33 UTC (rev 6718) @@ -1,6 +1,8 @@ -GARNAME = evieext GARVERSION = 1.1.0 CATEGORIES = x11 +PROTONAME = evieext +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org EvIE protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME)proto +CATALOGNAME_CSWx11$(PROTONAME)proto = x11_$(PROTONAME)proto + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:13:59 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:13:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6719] csw/mgar/pkg/x11 Message-ID: Revision: 6719 http://gar.svn.sourceforge.net/gar/?rev=6719&view=rev Author: wbonnet Date: 2009-10-05 20:13:44 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_fixesproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_fixesproto/ Removed Paths: ------------- csw/mgar/pkg/x11/fixesproto/ Modified: csw/mgar/pkg/x11/x11_fixesproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/fixesproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_fixesproto/trunk/Makefile 2009-10-05 20:13:44 UTC (rev 6719) @@ -1,6 +1,8 @@ -GARNAME = fixesproto GARVERSION = 4.0 CATEGORIES = x11 +PROTONAME = fixesproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X11 Fixes extension protocol specification define BLURB @@ -8,15 +10,17 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) include gar/category.mk - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:21:35 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:21:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[6720] csw/mgar/pkg/x11 Message-ID: Revision: 6720 http://gar.svn.sourceforge.net/gar/?rev=6720&view=rev Author: wbonnet Date: 2009-10-05 20:21:20 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_fontsproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_fontsproto/ Removed Paths: ------------- csw/mgar/pkg/x11/fontsproto/ Modified: csw/mgar/pkg/x11/x11_fontsproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/fontsproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_fontsproto/trunk/Makefile 2009-10-05 20:21:20 UTC (rev 6720) @@ -1,6 +1,8 @@ -GARNAME = fontsproto GARVERSION = 2.1.0 CATEGORIES = x11 +PROTONAME = fontsproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Fonts extension headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:26:32 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:26:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[6721] csw/mgar/pkg/x11 Message-ID: Revision: 6721 http://gar.svn.sourceforge.net/gar/?rev=6721&view=rev Author: wbonnet Date: 2009-10-05 20:26:30 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_fontcacheproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_fontcacheproto/ Removed Paths: ------------- csw/mgar/pkg/x11/fontcacheproto/ Modified: csw/mgar/pkg/x11/x11_fontcacheproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/fontcacheproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_fontcacheproto/trunk/Makefile 2009-10-05 20:26:30 UTC (rev 6721) @@ -1,6 +1,8 @@ -GARNAME = fontcacheproto GARVERSION = 0.1.2 CATEGORIES = x11 +PROTONAME = fontcacheproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X11 Prototype headers for the Fontcache library define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:33:16 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:33:16 +0000 Subject: [csw-devel] SF.net SVN: gar:[6722] csw/mgar/pkg/x11 Message-ID: Revision: 6722 http://gar.svn.sourceforge.net/gar/?rev=6722&view=rev Author: wbonnet Date: 2009-10-05 20:33:15 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_printproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_printproto/ Removed Paths: ------------- csw/mgar/pkg/x11/printproto/ Modified: csw/mgar/pkg/x11/x11_printproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/printproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_printproto/trunk/Makefile 2009-10-05 20:33:15 UTC (rev 6722) @@ -1,6 +1,8 @@ -GARNAME = printproto GARVERSION = 1.0.4 CATEGORIES = x11 +PROTONAME = printproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Print extension headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:38:36 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:38:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[6723] csw/mgar/pkg/x11 Message-ID: Revision: 6723 http://gar.svn.sourceforge.net/gar/?rev=6723&view=rev Author: wbonnet Date: 2009-10-05 20:38:22 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_randrproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_randrproto/ Removed Paths: ------------- csw/mgar/pkg/x11/randrproto/ Modified: csw/mgar/pkg/x11/x11_randrproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/randrproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_randrproto/trunk/Makefile 2009-10-05 20:38:22 UTC (rev 6723) @@ -1,6 +1,8 @@ -GARNAME = randrproto GARVERSION = 1.3.0 CATEGORIES = x11 +PROTONAME = randrproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Randr protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:43:54 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:43:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[6724] csw/mgar/pkg/x11 Message-ID: Revision: 6724 http://gar.svn.sourceforge.net/gar/?rev=6724&view=rev Author: wbonnet Date: 2009-10-05 20:43:48 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_resourceproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_resourceproto/ Removed Paths: ------------- csw/mgar/pkg/x11/resourceproto/ Modified: csw/mgar/pkg/x11/x11_resourceproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/resourceproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_resourceproto/trunk/Makefile 2009-10-05 20:43:48 UTC (rev 6724) @@ -1,6 +1,8 @@ -GARNAME = resourceproto GARVERSION = 1.1.0 CATEGORIES = x11 +PROTONAME = resourceproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Resource protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Mon Oct 5 22:49:44 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Mon, 05 Oct 2009 20:49:44 +0000 Subject: [csw-devel] SF.net SVN: gar:[6725] csw/mgar/pkg/x11 Message-ID: Revision: 6725 http://gar.svn.sourceforge.net/gar/?rev=6725&view=rev Author: wbonnet Date: 2009-10-05 20:49:38 +0000 (Mon, 05 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_trapproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_trapproto/ Removed Paths: ------------- csw/mgar/pkg/x11/trapproto/ Modified: csw/mgar/pkg/x11/x11_trapproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/trapproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_trapproto/trunk/Makefile 2009-10-05 20:49:38 UTC (rev 6725) @@ -1,6 +1,8 @@ -GARNAME = trapproto GARVERSION = 3.4.3 CATEGORIES = x11 +PROTONAME = trapproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Trap protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Oct 6 16:31:37 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 06 Oct 2009 14:31:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[6726] csw/mgar/pkg/libpopt/tags/popt-1.15, REV=2009.10.06/ Message-ID: Revision: 6726 http://gar.svn.sourceforge.net/gar/?rev=6726&view=rev Author: dmichelsen Date: 2009-10-06 14:31:37 +0000 (Tue, 06 Oct 2009) Log Message: ----------- popt: Tag as release 1.15,REV=2009.10.06 Added Paths: ----------- csw/mgar/pkg/libpopt/tags/popt-1.15,REV=2009.10.06/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Tue Oct 6 16:32:10 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Tue, 06 Oct 2009 14:32:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[6727] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6727 http://gar.svn.sourceforge.net/gar/?rev=6727&view=rev Author: dmichelsen Date: 2009-10-06 14:32:10 +0000 (Tue, 06 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Add submitpkg target Modified Paths: -------------- csw/mgar/gar/v2-pbuild/bin/checkpkg csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/bin/checkpkg =================================================================== --- csw/mgar/gar/v2-pbuild/bin/checkpkg 2009-10-06 14:31:37 UTC (rev 6726) +++ csw/mgar/gar/v2-pbuild/bin/checkpkg 2009-10-06 14:32:10 UTC (rev 6727) @@ -543,6 +543,7 @@ print "Doing late evaluations of package library dependencies." while read ldep; do lib=`echo $ldep | nawk '{print $1}'` + [ "$lib" = "libm.so.2" ] && continue pkg=`echo $ldep | nawk '{print $2}'` /usr/xpg4/bin/grep -q "[/=]$lib[ =]" $SETLIBS if [ $? -ne 0 ]; then Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-06 14:31:37 UTC (rev 6726) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-06 14:32:10 UTC (rev 6727) @@ -279,7 +279,7 @@ # The package may be generated during this build or already installed on the system. # /etc/crypto/certs/SUNWObjectCA=../../../etc/certs/SUNWObjectCA l none SUNWcsr #perl -ane '$$f=quotemeta("$1");if($$F[0]=~/^$$f(=.*)?$$/){print join(" ",$$F[3..$$#F]),"\n";exit}'/dev/null | awk '/^Current/ {p=0} p==1 {print} /^Referenced/ {p=1}' | perl -ane 'print join("\n", at F)') +#$(shell /usr/sbin/pkgchk -l -p $1 2>/dev/null | $(GAWK) '/^Current/ {p=0} p==1 {print} /^Referenced/ {p=1}' | perl -ane 'print join("\n", at F)') # 'pkchk -l -p' doesn't work as it concatenates package names with more than 14 characters, # e. g. SUNWgnome-base-libs-develSUNWgnome-calculatorSUNWgnome-freedb-libsSUNWgnome-cd-burnerSUNWgnome-character-map define file2pkg @@ -374,7 +374,7 @@ $(foreach PKG,$(sort $(_EXTRA_GAR_PKGS)) $(REQUIRED_PKGS_$*) $(REQUIRED_PKGS),\ $(if $(SPKG_DESC_$(PKG)), \ echo "P $(PKG) $(call catalogname,$(PKG)) - $(SPKG_DESC_$(PKG))";, \ - echo "$(shell (/usr/bin/pkginfo $(PKG) || echo "P $(PKG) - ") | awk '{ $$1 = "P"; print } ')"; \ + echo "$(shell (/usr/bin/pkginfo $(PKG) || echo "P $(PKG) - ") | $(GAWK) '{ $$1 = "P"; print } ')"; \ ) \ )) >$@) @@ -675,6 +675,14 @@ )\ ) +submitpkg: submitpkg-default + +submitpkg-%: _PKGURL=$(shell svn info .. | $(GAWK) '$$1 == "URL:" { print $$2 }') +submitpkg-%: + @$(if $(filter $(call _REVISION),UNCOMMITTED NOTVERSIONED NOSVN),\ + $(error You have local files not in the repository. Please commit everything before submitting a package)) + $(SVN) -m "$(GARNAME): Tag as release $(SPKG_VERSION)$(SPKG_REVSTAMP)$(if $(filter default,$*),, for project '$*')" cp $(_PKGURL)/trunk $(_PKGURL)/tags/$(if $(filter default,$*),,$*_)$(GARNAME)-$(SPKG_VERSION)$(SPKG_REVSTAMP) + # dependb - update the dependency database # dependb: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Tue Oct 6 16:59:09 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Tue, 06 Oct 2009 14:59:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[6728] csw/mgar/pkg/urxvt/trunk Message-ID: Revision: 6728 http://gar.svn.sourceforge.net/gar/?rev=6728&view=rev Author: wahwah Date: 2009-10-06 14:59:08 +0000 (Tue, 06 Oct 2009) Log Message: ----------- urxvt: A workaround for a Solaris kernel bug: http://bugs.opensolaris.org/view_bug.do?bug_id=6268715 Modified Paths: -------------- csw/mgar/pkg/urxvt/trunk/Makefile csw/mgar/pkg/urxvt/trunk/checksums Added Paths: ----------- csw/mgar/pkg/urxvt/trunk/files/urxvt-wrapper Modified: csw/mgar/pkg/urxvt/trunk/Makefile =================================================================== --- csw/mgar/pkg/urxvt/trunk/Makefile 2009-10-06 14:32:10 UTC (rev 6727) +++ csw/mgar/pkg/urxvt/trunk/Makefile 2009-10-06 14:59:08 UTC (rev 6728) @@ -20,6 +20,7 @@ MASTER_SITES = http://dist.schmorp.de/rxvt-unicode/ DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 +DISTFILES += urxvt-wrapper # PATCHFILES = $(GARNAME)-$(GARVERSION)-solaris8.patch UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 @@ -33,7 +34,21 @@ GARCOMPILER = GNU -REQUIRED_PKGS_CSWurxvt = CSWfconfig CSWftype2 CSWlibxft2 CSWlibxrender CSWzlib +REQUIRED_PKGS_CSWurxvt = CSWbash +REQUIRED_PKGS_CSWurxvt += CSWfconfig +REQUIRED_PKGS_CSWurxvt += CSWftype2 +REQUIRED_PKGS_CSWurxvt += CSWlibxft2 +REQUIRED_PKGS_CSWurxvt += CSWlibxrender +REQUIRED_PKGS_CSWurxvt += CSWzlib TEST_SCRIPTS = +post-install-modulated: + ginstall -m 755 -d $(DESTDIR)$(libexecdir) + for b in urxvt urxvtd urxvtc; do \ + mv $(DESTDIR)$(bindir)/$${b} $(DESTDIR)$(libexecdir); \ + ln -s ../libexec/urxvt-wrapper $(DESTDIR)$(bindir)/$${b}; \ + done + ginstall -m 755 $(FILEDIR)/urxvt-wrapper $(DESTDIR)$(libexecdir) + @$(MAKECOOKIE) + include gar/category.mk Modified: csw/mgar/pkg/urxvt/trunk/checksums =================================================================== --- csw/mgar/pkg/urxvt/trunk/checksums 2009-10-06 14:32:10 UTC (rev 6727) +++ csw/mgar/pkg/urxvt/trunk/checksums 2009-10-06 14:59:08 UTC (rev 6728) @@ -1 +1,2 @@ 4cb9330e99fc0b0b05cebf3581557dd8 download/rxvt-unicode-9.06.tar.bz2 +d1fb3a5f721baf361574880f6cdc92be download/urxvt-wrapper Added: csw/mgar/pkg/urxvt/trunk/files/urxvt-wrapper =================================================================== --- csw/mgar/pkg/urxvt/trunk/files/urxvt-wrapper (rev 0) +++ csw/mgar/pkg/urxvt/trunk/files/urxvt-wrapper 2009-10-06 14:59:08 UTC (rev 6728) @@ -0,0 +1,20 @@ +#!/opt/csw/bin/bash +# +# A workaround because of a Solaris 10 kernel bug: +# http://bugs.opensolaris.org/view_bug.do?bug_id=6268715 + +set -u + +executable=$(basename $0) +libexec="/opt/csw/libexec" +libexec_binary="${libexec}/${executable}" + +if [[ ! -r "${libexec_binary}" ]]; then + echo "Can't read ${libexec_binary}" + exit 1 +fi + +# The workaround itself: +export LIBEV_FLAGS=1 + +exec "${libexec_binary}" "$@" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Tue Oct 6 20:27:33 2009 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Tue, 06 Oct 2009 18:27:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[6729] csw/mgar/pkg/wget/trunk Message-ID: Revision: 6729 http://gar.svn.sourceforge.net/gar/?rev=6729&view=rev Author: idogan23 Date: 2009-10-06 18:27:32 +0000 (Tue, 06 Oct 2009) Log Message: ----------- wget: bump version to 1.12 Modified Paths: -------------- csw/mgar/pkg/wget/trunk/Makefile csw/mgar/pkg/wget/trunk/checksums Modified: csw/mgar/pkg/wget/trunk/Makefile =================================================================== --- csw/mgar/pkg/wget/trunk/Makefile 2009-10-06 14:59:08 UTC (rev 6728) +++ csw/mgar/pkg/wget/trunk/Makefile 2009-10-06 18:27:32 UTC (rev 6729) @@ -1,5 +1,5 @@ GARNAME = wget -GARVERSION = 1.11.4 +GARVERSION = 1.12 CATEGORIES = net DESCRIPTION = A network utility to retrieve files from the Web Modified: csw/mgar/pkg/wget/trunk/checksums =================================================================== --- csw/mgar/pkg/wget/trunk/checksums 2009-10-06 14:59:08 UTC (rev 6728) +++ csw/mgar/pkg/wget/trunk/checksums 2009-10-06 18:27:32 UTC (rev 6729) @@ -1 +1 @@ -f5076a8c2ec2b7f334cb6e3059820f9c download/wget-1.11.4.tar.bz2 +308a5476fc096a8a525d07279a6f6aa3 download/wget-1.12.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 20:44:49 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 18:44:49 +0000 Subject: [csw-devel] SF.net SVN: gar:[6730] csw/mgar/pkg/sendmail/trunk/Makefile Message-ID: Revision: 6730 http://gar.svn.sourceforge.net/gar/?rev=6730&view=rev Author: valholla Date: 2009-10-06 18:44:49 +0000 (Tue, 06 Oct 2009) Log Message: ----------- fix required pkgs Modified Paths: -------------- csw/mgar/pkg/sendmail/trunk/Makefile Modified: csw/mgar/pkg/sendmail/trunk/Makefile =================================================================== --- csw/mgar/pkg/sendmail/trunk/Makefile 2009-10-06 18:27:32 UTC (rev 6729) +++ csw/mgar/pkg/sendmail/trunk/Makefile 2009-10-06 18:44:49 UTC (rev 6730) @@ -33,8 +33,8 @@ SPKG_DESC_CSWsendmail = $(DESCRIPTION) CATALOGNAME_CSWsendmail = sendmail -REQUIRED_PKGS_CSWsendmail = CSWbdb CSWoldaprt CSWosslrt CSWsasl CSWtcpwrap -REQUIRED_PKGS_CSWsendmail = CSWcswclassutils +REQUIRED_PKGS_CSWsendmail = CSWbdb CSWoldaprt CSWosslrt CSWsasl CSWtcpwrap +REQUIRED_PKGS_CSWsendmail += CSWcswclassutils PROTOTYPE_FILTER = awk \ '$$$$2 ~/i.sol8/ { next } \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 21:42:24 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 19:42:24 +0000 Subject: [csw-devel] SF.net SVN: gar:[6731] csw/mgar/pkg/libssh2/trunk Message-ID: Revision: 6731 http://gar.svn.sourceforge.net/gar/?rev=6731&view=rev Author: valholla Date: 2009-10-06 19:42:24 +0000 (Tue, 06 Oct 2009) Log Message: ----------- update to latest version Modified Paths: -------------- csw/mgar/pkg/libssh2/trunk/Makefile csw/mgar/pkg/libssh2/trunk/checksums Modified: csw/mgar/pkg/libssh2/trunk/Makefile =================================================================== --- csw/mgar/pkg/libssh2/trunk/Makefile 2009-10-06 18:44:49 UTC (rev 6730) +++ csw/mgar/pkg/libssh2/trunk/Makefile 2009-10-06 19:42:24 UTC (rev 6731) @@ -1,5 +1,5 @@ GARNAME = libssh2 -GARVERSION = 1.2 +GARVERSION = 1.2.1 CATEGORIES = lib DESCRIPTION = A Library Implementing the SSH2 Protocol. Modified: csw/mgar/pkg/libssh2/trunk/checksums =================================================================== --- csw/mgar/pkg/libssh2/trunk/checksums 2009-10-06 18:44:49 UTC (rev 6730) +++ csw/mgar/pkg/libssh2/trunk/checksums 2009-10-06 19:42:24 UTC (rev 6731) @@ -1 +1 @@ -751f4b5b5d8091f84cfe25fa52226cf9 download/libssh2-1.2.tar.gz +4ee0197947a3b8a4472328c346e1a0e4 download/libssh2-1.2.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 22:14:12 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 20:14:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[6732] csw/mgar/pkg/libssh2/trunk/Makefile Message-ID: Revision: 6732 http://gar.svn.sourceforge.net/gar/?rev=6732&view=rev Author: valholla Date: 2009-10-06 20:14:12 +0000 (Tue, 06 Oct 2009) Log Message: ----------- don't test port conflict Modified Paths: -------------- csw/mgar/pkg/libssh2/trunk/Makefile Modified: csw/mgar/pkg/libssh2/trunk/Makefile =================================================================== --- csw/mgar/pkg/libssh2/trunk/Makefile 2009-10-06 19:42:24 UTC (rev 6731) +++ csw/mgar/pkg/libssh2/trunk/Makefile 2009-10-06 20:14:12 UTC (rev 6732) @@ -27,6 +27,7 @@ BUILD64 = 1 NO_ISAEXEC = 1 +TEST_SCRIPTS = TEST_TARGET = check CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 22:19:29 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 20:19:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[6733] csw/mgar/pkg/drupal/trunk/Makefile Message-ID: Revision: 6733 http://gar.svn.sourceforge.net/gar/?rev=6733&view=rev Author: valholla Date: 2009-10-06 20:19:29 +0000 (Tue, 06 Oct 2009) Log Message: ----------- update to 6.14 Modified Paths: -------------- csw/mgar/pkg/drupal/trunk/Makefile Modified: csw/mgar/pkg/drupal/trunk/Makefile =================================================================== --- csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:14:12 UTC (rev 6732) +++ csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:19:29 UTC (rev 6733) @@ -1,5 +1,5 @@ GARNAME = drupal -GARVERSION = 6.12 +GARVERSION = 6.14 CATEGORIES = apps DESCRIPTION = An open source content management platform This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 22:20:32 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 20:20:32 +0000 Subject: [csw-devel] SF.net SVN: gar:[6734] csw/mgar/pkg/drupal/trunk/checksums Message-ID: Revision: 6734 http://gar.svn.sourceforge.net/gar/?rev=6734&view=rev Author: valholla Date: 2009-10-06 20:20:31 +0000 (Tue, 06 Oct 2009) Log Message: ----------- update to 6.14 Modified Paths: -------------- csw/mgar/pkg/drupal/trunk/checksums Modified: csw/mgar/pkg/drupal/trunk/checksums =================================================================== --- csw/mgar/pkg/drupal/trunk/checksums 2009-10-06 20:19:29 UTC (rev 6733) +++ csw/mgar/pkg/drupal/trunk/checksums 2009-10-06 20:20:31 UTC (rev 6734) @@ -1,4 +1,4 @@ 53fd0059901ddea2bf62f920ee8a6cf6 download/README.CSW -82e2517f175320cffe20997333b3a33a download/drupal-6.12.tar.gz +014bb453a8d0adb0233c763e40d63859 download/drupal-6.14.tar.gz 26a7b490bfe0b52a9ff85880dd3aede1 download/httpd-drupal.conf.CSW 827f7d5f390a53577fc11ac17ad66651 download/uploaddir.diff This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 22:48:26 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 20:48:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[6735] csw/mgar/pkg/drupal/trunk/Makefile Message-ID: Revision: 6735 http://gar.svn.sourceforge.net/gar/?rev=6735&view=rev Author: valholla Date: 2009-10-06 20:48:26 +0000 (Tue, 06 Oct 2009) Log Message: ----------- fix location Modified Paths: -------------- csw/mgar/pkg/drupal/trunk/Makefile Modified: csw/mgar/pkg/drupal/trunk/Makefile =================================================================== --- csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:20:31 UTC (rev 6734) +++ csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:48:26 UTC (rev 6735) @@ -40,7 +40,7 @@ REQUIRED_PKGS_CSWdrupal = CSWapache2c CSWphp5 CSWphp5gd CSWphp5mbstring REQUIRED_PKGS_CSWdrupal += CSWphp5session CSWap2modphp5 -DRUPAL_INST_DIR = $(DESTDIR)$(docdir)/$(GARNAME)/$(GARVERSION) +DRUPAL_INST_DIR = $(DESTDIR)$(sharedstatedir)/$(GARNAME)/$(GARVERSION) DRUPAL_DOCFILES = CHANGELOG.txt COPYRIGHT.txt INSTALL.mysql.txt DRUPAL_DOCFILES += INSTALL.pgsql.txt INSTALL.txt LICENSE.txt DRUPAL_DOCFILES += MAINTAINERS.txt UPGRADE.txt This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From valholla at users.sourceforge.net Tue Oct 6 22:52:14 2009 From: valholla at users.sourceforge.net (valholla at users.sourceforge.net) Date: Tue, 06 Oct 2009 20:52:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[6736] csw/mgar/pkg/drupal/trunk/Makefile Message-ID: Revision: 6736 http://gar.svn.sourceforge.net/gar/?rev=6736&view=rev Author: valholla Date: 2009-10-06 20:52:14 +0000 (Tue, 06 Oct 2009) Log Message: ----------- fix depend Modified Paths: -------------- csw/mgar/pkg/drupal/trunk/Makefile Modified: csw/mgar/pkg/drupal/trunk/Makefile =================================================================== --- csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:48:26 UTC (rev 6735) +++ csw/mgar/pkg/drupal/trunk/Makefile 2009-10-06 20:52:14 UTC (rev 6736) @@ -37,7 +37,7 @@ INSTALL_SCRIPTS = custom TEST_SCRIPTS = -REQUIRED_PKGS_CSWdrupal = CSWapache2c CSWphp5 CSWphp5gd CSWphp5mbstring +REQUIRED_PKGS_CSWdrupal = CSWapache2 CSWphp5 CSWphp5gd CSWphp5mbstring REQUIRED_PKGS_CSWdrupal += CSWphp5session CSWap2modphp5 DRUPAL_INST_DIR = $(DESTDIR)$(sharedstatedir)/$(GARNAME)/$(GARVERSION) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 04:58:35 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 02:58:35 +0000 Subject: [csw-devel] SF.net SVN: gar:[6737] csw/mgar/pkg/cswclassutils/trunk Message-ID: Revision: 6737 http://gar.svn.sourceforge.net/gar/?rev=6737&view=rev Author: bdwalton Date: 2009-10-07 02:58:35 +0000 (Wed, 07 Oct 2009) Log Message: ----------- cswclassutils: make prototype dynamic; add {i,r}.cswinetd Modified Paths: -------------- csw/mgar/pkg/cswclassutils/trunk/Makefile csw/mgar/pkg/cswclassutils/trunk/checksums Added Paths: ----------- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswinetd csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd Removed Paths: ------------- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.gspec csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.prototype Modified: csw/mgar/pkg/cswclassutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-06 20:52:14 UTC (rev 6736) +++ csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-07 02:58:35 UTC (rev 6737) @@ -1,11 +1,10 @@ GARNAME = cswclassutils -GARVERSION = 1.18 +GARVERSION = 1.19 CATEGORIES = utils DESCRIPTION = CSW class action utilities MASTER_SITES = -DISTFILES += $(call admfiles,CSWcswclassutils,prototype) ARCHALL = 1 @@ -14,23 +13,24 @@ TEST_SCRIPTS = INSTALL_SCRIPTS = custom -include gar/category.mk - -WORKSRC = $(WORKDIR) SPKG_SOURCEURL = http://www.opencsw.org -CASLIST = cswcpsampleconf cswpreserveconf cswinitsmf cswusergroup cswpycompile +CASLIST = $(foreach F,$(wildcard $(FILEDIR)/CSW$(GARNAME).[ir].*), $(subst $(FILEDIR)/CSW$(GARNAME).,,$(F))) +PROTOTYPE_FILTER = sed -e '/^d.*\/usr/d; /scripts/{ s/bin/sys/; }' + +include gar/category.mk + install-custom: @echo " ==> Installing $(GARNAME) (custom)" @rm -rf $(DESTDIR) - @ginstall -d $(DESTDIR)/etc/opt/csw/init.d - @ginstall -d $(DESTDIR)$(docdir)/$(GARNAME) - @ginstall -d $(DESTDIR)/usr/sadm/install/scripts - @ginstall -d $(DESTDIR)/var/opt/csw/svc/manifest - @ginstall -d $(DESTDIR)/var/opt/csw/svc/method - @cp $(FILEDIR)/CSW$(GARNAME).csw.smf.sample $(DESTDIR)/etc/opt/csw/init.d/csw.smf.sample - @cp $(FILEDIR)/CSW$(GARNAME).README.CSW $(DESTDIR)$(docdir)/$(GARNAME)/README.CSW - @cp $(FILEDIR)/CSW$(GARNAME).copyright $(DESTDIR)$(docdir)/$(GARNAME)/license - @$(foreach CAS,$(CASLIST),cp $(FILEDIR)/CSW$(GARNAME).i.$(CAS) $(DESTDIR)/usr/sadm/install/scripts/i.$(CAS);cp $(FILEDIR)/CSW$(GARNAME).r.$(CAS) $(DESTDIR)/usr/sadm/install/scripts/r.$(CAS);) + @ginstall -m 0755 -d $(DESTDIR)/etc/opt/csw/init.d + @ginstall -m 0755 -d $(DESTDIR)$(docdir)/$(GARNAME) + @ginstall -m 0755 -d $(DESTDIR)/usr/sadm/install/scripts + @ginstall -m 0755 -d $(DESTDIR)/var/opt/csw/svc/manifest + @ginstall -m 0755 -d $(DESTDIR)/var/opt/csw/svc/method + @ginstall -m 0755 $(FILEDIR)/CSW$(GARNAME).csw.smf.sample $(DESTDIR)/etc/opt/csw/init.d/csw.smf.sample + @ginstall -m 0444 $(FILEDIR)/CSW$(GARNAME).README.CSW $(DESTDIR)$(docdir)/$(GARNAME)/README.CSW + @ginstall -m 0444 $(FILEDIR)/CSW$(GARNAME).copyright $(DESTDIR)$(docdir)/$(GARNAME)/license + @$(foreach CAS,$(CASLIST),ginstall -m 0555 $(FILEDIR)/CSW$(GARNAME).$(CAS) $(DESTDIR)/usr/sadm/install/scripts/$(CAS);) @$(MAKECOOKIE) Modified: csw/mgar/pkg/cswclassutils/trunk/checksums =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/checksums 2009-10-06 20:52:14 UTC (rev 6736) +++ csw/mgar/pkg/cswclassutils/trunk/checksums 2009-10-07 02:58:35 UTC (rev 6737) @@ -1,2 +0,0 @@ -38e0bf6e204e003254ed246df2b4e1f9 download/CSWcswclassutils.gspec -854d77b21b177b15fd2aac39339a0c8c download/CSWcswclassutils.prototype Deleted: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.gspec =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.gspec 2009-10-06 20:52:14 UTC (rev 6736) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.gspec 2009-10-07 02:58:35 UTC (rev 6737) @@ -1,11 +0,0 @@ -%var bitname cswclassutils -%var pkgname CSWcswclassutils -%var arch all -%include url file://%{PKGLIB}/csw_vars.gspec -%pkginfo url file://%{PKGLIB}/csw/pkginfo -%include url file://%{PKGLIB}/csw_prototype.gspec -%depend -%copyright - -Please see /opt/csw/share/doc/cswclassutils/license for license information. - Added: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswinetd =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswinetd (rev 0) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.i.cswinetd 2009-10-07 02:58:35 UTC (rev 6737) @@ -0,0 +1,119 @@ +#!/bin/sh +# +# i.cswinetd - Class action script for CSW inetd support +# +# Written and maintained by Ben Walton +# +# 2009-10-02 Initial release + +# set DEBUG to any value to enable trace outpu. +DEBUG= + +# Source csw.conf, if it exists +if [ -f $PKG_INSTALL_ROOT/opt/csw/etc/csw.conf ] ; then + . $PKG_INSTALL_ROOT/opt/csw/etc/csw.conf +fi +if [ -f $PKG_INSTALL_ROOT/etc/opt/csw/csw.conf ] ; then + . $PKG_INSTALL_ROOT/etc/opt/csw/csw.conf +fi + +# Determine if we should import the file with inetconv +case "`uname -r`" in + 5.8|5.9) useinetconv=no;; + *) useinetconv=yes;; +esac + +echo "Installing class ..." + +while read src dest; do + + echo $dest + /usr/bin/cp $src $dest || exit 2 + + inetdsvc=`cat $dest` + set -- $inetdsvc + svcname=$1 + proto=$3 + + if [ -n "$DEBUG" ]; then + echo "svcname: $svcname; proto: $proto" + fi + + case "$svcname" in + */*) isrpc=yes;; + *) isrpc=no;; + esac + + # Determine if service should be started or not + daemon=yes + if [ "$autoenable_daemons" = "no" ]; then + daemon=no + fi + eval autoenable_service="\$autoenable_$svcname" + if [ "$autoenable_service" = "no" ]; then + daemon=no + elif [ "$autoenable_service" = "yes" ]; then + daemon=yes + fi + + # we won't register with inetd if the service name isn't registered + # in the global services file. + /usr/xpg4/bin/grep -q "^$svcname[[:space:]]" /etc/inet/services + if [ $? -eq 0 ]; then + if [ -n "$DEBUG" ]; then + echo "Installing inetd service:" + echo "$inetdsvc" + fi + + if [ "$useinetconv" = "yes" ]; then + [ -n "$DEBUG" ] && echo "For solaris 10 (or newer)" + + outdir=/var/opt/csw/svc/manifest/network + if [ "$isrpc" = "yes" ]; then + outdir=$outdir/rpc + fi + manifest=$outdir/$svcname-$proto.xml + + echo "$inetdsvc" > /tmp/$svcname.$$ + + # we use -f to force any in the specified inetd to take precedence + /usr/sbin/inetconv -f -i /tmp/$svcname.$$ -o $outdir || exit 2 + if [ "$daemon" = "yes" ]; then + /usr/sbin/inetadm -e svc:/network/$svcname/$proto:default + else + /usr/sbin/inetadm -d svc:/network/$svcname/$proto:default + fi + + /usr/sbin/installf -c cswinetd $PKGINST $manifest f 644 root bin + /usr/bin/chmod 644 $manifest + /usr/bin/chown root:bin $manifest + + rm /tmp/$svcname.$$ + else + [ -n "$DEBUG" ] && echo "For solaris 8 or 9" + + inetdconf=$PKG_INSTALL_ROOT/etc/inet/inetd.conf + + echo "Installing '$svcname' into inetd.conf." + echo "# $PKGINST: added by i.cswinetd" >> $inetdconf + if [ "$daemon" = "yes" ]; then + + echo "$inetdsvc" >> $inetdconf + /usr/bin/pkill -HUP inetd + else + echo "#$inetdsvc" >> $inetdconf + fi + fi + + if [ "$daemon" = "yes" ]; then + echo "Inetd service '$svcname' should be enabled by default." + else + echo "Inetd service '$svcname' should be disabled by default." + fi + else + echo "Service '$svcname' not found in /etc/inet/services. Won't setup inetd for it." + exit 2 + fi +done + +exit 0 Deleted: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.prototype =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.prototype 2009-10-06 20:52:14 UTC (rev 6736) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.prototype 2009-10-07 02:58:35 UTC (rev 6737) @@ -1,24 +0,0 @@ -i pkginfo=CSWcswclassutils.pkginfo -i copyright=CSWcswclassutils.copyright -d none /etc/opt/csw 0755 root bin -d none /etc/opt/csw/init.d 0755 root bin -f none /etc/opt/csw/init.d/csw.smf.sample 0755 root bin -d none /var/opt/csw 0755 root bin -d none /var/opt/csw/svc 0755 root bin -d none /var/opt/csw/svc/manifest 0755 root bin -d none /var/opt/csw/svc/method 0755 root bin -f none /usr/sadm/install/scripts/i.cswusergroup 0555 root sys -f none /usr/sadm/install/scripts/r.cswusergroup 0555 root sys -f none /usr/sadm/install/scripts/i.cswinitsmf 0555 root sys -f none /usr/sadm/install/scripts/r.cswinitsmf 0555 root sys -f none /usr/sadm/install/scripts/i.cswcpsampleconf 0555 root sys -f none /usr/sadm/install/scripts/r.cswcpsampleconf 0555 root sys -f none /usr/sadm/install/scripts/i.cswpreserveconf 0555 root sys -f none /usr/sadm/install/scripts/r.cswpreserveconf 0555 root sys -f none /usr/sadm/install/scripts/i.cswpycompile 0555 root sys -f none /usr/sadm/install/scripts/r.cswpycompile 0555 root sys -d none /opt/csw/share 0755 root bin -d none /opt/csw/share/doc 0755 root bin -d none /opt/csw/share/doc/cswclassutils 0755 root bin -f none /opt/csw/share/doc/cswclassutils/README.CSW 0444 root bin -f none /opt/csw/share/doc/cswclassutils/license 0444 root bin Added: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd (rev 0) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd 2009-10-07 02:58:35 UTC (rev 6737) @@ -0,0 +1,49 @@ +#!/bin/sh +# +# r.cswinetd - Class action script for CSW inetd support +# +# Written and maintained by Ben Walton +# +# 2009-10-02 Initial release + +case "`uname -r`" in + 5.8|5.9) useinetconv=no;; + *) useinetconv=yes; +esac + +while read dest; do + case "$dest" in + *xml) + # we know that this won't happen for sol8/9 + fmri=`/usr/sbin/svccfg inventory $dest | grep -v default` + echo "Disabling and removing $fmri" + inetadm -d $fmri + svccfg delete $fmri + ;; + *) + if [ "$useinetconv" = "no" ]; then + # sol 8 or 9 + + inetdconf=/etc/inet/inetd.conf + inetdsvc=`cat $dest` + set -- $inetdsvc + svcname=$1 + echo "Removing $svcname service from inetd.conf" + /usr/xpg4/bin/sed -e '/# CSWgitosis/{ +$!N +/^# CSWgitosis.*\n#git.*$/d +}' $inetdconf > $inetdconf.$$ && \ + mv $inetdconf.$$ $inetdconf && \ + + chown root:sys $inetdconf && \ + chmod 444 $inetdconf + + # even if the service was disabled, this shouldn't hurt + /usr/bin/pkill -HUP inetd + fi + ;; + esac + + echo $dest + rm -f $dest +done This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Oct 7 12:03:07 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 07 Oct 2009 10:03:07 +0000 Subject: [csw-devel] SF.net SVN: gar:[6738] csw/mgar/pkg/autoproject/trunk Message-ID: Revision: 6738 http://gar.svn.sourceforge.net/gar/?rev=6738&view=rev Author: wahwah Date: 2009-10-07 10:03:07 +0000 (Wed, 07 Oct 2009) Log Message: ----------- autoproject: Added a patch to make it work on Solaris Modified Paths: -------------- csw/mgar/pkg/autoproject/trunk/Makefile csw/mgar/pkg/autoproject/trunk/checksums Added Paths: ----------- csw/mgar/pkg/autoproject/trunk/files/0001-gawk-and-ggrep.patch Modified: csw/mgar/pkg/autoproject/trunk/Makefile =================================================================== --- csw/mgar/pkg/autoproject/trunk/Makefile 2009-10-07 02:58:35 UTC (rev 6737) +++ csw/mgar/pkg/autoproject/trunk/Makefile 2009-10-07 10:03:07 UTC (rev 6738) @@ -22,9 +22,14 @@ SPKG_SOURCEURL = http://packages.debian.org/unstable/devel/autoproject MASTER_SITES = http://ftp.de.debian.org/debian/pool/main/a/$(GARNAME)/ DISTFILES = $(GARNAME)_$(GARVERSION).orig.tar.gz +PATCHFILES = 0001-gawk-and-ggrep.patch UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz ARCHALL = 1 -REQUIRED_PKGS = CSWautomake +REQUIRED_PKGS = CSWautomake CSWbash CSWgawk CSWggrep TEST_SCRIPTS = CONFIGURE_ARGS = $(DIRPATHS) +AWK=gawk +export AWK +GREP=ggrep +export GREP include gar/category.mk Modified: csw/mgar/pkg/autoproject/trunk/checksums =================================================================== --- csw/mgar/pkg/autoproject/trunk/checksums 2009-10-07 02:58:35 UTC (rev 6737) +++ csw/mgar/pkg/autoproject/trunk/checksums 2009-10-07 10:03:07 UTC (rev 6738) @@ -1,2 +1,2 @@ -c56275967bba34ce1864b3d917e08e55 download/autoproject_0.20-5.diff.gz +acbc54ffab66fd0e7e1820f280a454f1 download/0001-gawk-and-ggrep.patch 609369fa76391d58714059313b9c831c download/autoproject_0.20.orig.tar.gz Added: csw/mgar/pkg/autoproject/trunk/files/0001-gawk-and-ggrep.patch =================================================================== --- csw/mgar/pkg/autoproject/trunk/files/0001-gawk-and-ggrep.patch (rev 0) +++ csw/mgar/pkg/autoproject/trunk/files/0001-gawk-and-ggrep.patch 2009-10-07 10:03:07 UTC (rev 6738) @@ -0,0 +1,123 @@ +From e740fa7364ce0c3a4e67474df83533aae4e85595 Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Maciej=20Blizi=C5=84ski?= +Date: Wed, 7 Oct 2009 10:56:16 +0100 +Subject: [PATCH] gawk and ggrep + +--- + autoproject.in | 25 +++++++++++++------------ + 1 files changed, 13 insertions(+), 12 deletions(-) + +diff --git a/autoproject.in b/autoproject.in +index d7d1ce8..faa67cc 100755 +--- a/autoproject.in ++++ b/autoproject.in +@@ -12,7 +12,8 @@ set -e + + prefix=@prefix@ + DATADIR=@datadir@ +-AWK=awk ++AWK=gawk ++GREP=ggrep + NAME= + EMAIL= + theoptions=a:d:e:i:l:n:o:p:vVh +@@ -67,7 +68,7 @@ while + DESCRIPTION="$OPTARG"; shift $two ;; + e|-e|--email) EMAIL="$OPTARG"; shift $two ;; + i|-i|--interface) +- if echo "$STDIFS"|grep -q -- " $OPTARG "; then ++ if echo "$STDIFS"|${GREP} -q -- " $OPTARG "; then + IFACE="$OPTARG"; shift $two; + else + echo "unrecognized interface $OPTARG"; +@@ -78,13 +79,13 @@ while + if [ "$OPTARG" = "" ]; then + SKELETONS=""; + else +- if (echo $OPTARG|grep ^/ >/dev/null); then true; \ ++ if (echo $OPTARG|${GREP} ^/ >/dev/null); then true; \ + else OPTARG=`pwd`/$OPTARG; fi + SKELETONS="$OPTARG $SKELETONS"; + fi; + shift $two;; + l|-l|--language) +- if echo "$STDLANGS"|grep -F -q -- " $OPTARG "; then ++ if echo "$STDLANGS"|${GREP} -F -q -- " $OPTARG "; then + PROJECT_LANG="$PROJECT_LANG $OPTARG "; shift $two; + else + echo "unrecognized language $OPTARG"; +@@ -94,7 +95,7 @@ while + n|-n|--name) + NAME=$OPTARG; shift $two ;; + o|-o|--option) +- if echo "$STDOPTS"|grep -q -- " $OPTARG "; then ++ if echo "$STDOPTS"|${GREP} -q -- " $OPTARG "; then + OPTS="$OPTS $OPTARG"; shift $two; + else + echo "unrecognized option $OPTARG"; +@@ -102,7 +103,7 @@ while + exit 1; + fi ;; + p|-p|--parser) +- if echo "$STDPARSERS"|grep -q -- " $OPTARG "; then ++ if echo "$STDPARSERS"|${GREP} -q -- " $OPTARG "; then + PARSER="$OPTARG"; shift $two; + else + echo "unrecognized parser generator $OPTARG"; +@@ -163,7 +164,7 @@ while [ $finished != yes ]; do + else + echo "$HELP"; + fi +- else if echo "$CHOICES" | grep -q -- " $ans "; then ++ else if echo "$CHOICES" | ${GREP} -q -- " $ans "; then + finished=yes; + else echo " unrecognized choice $ans"; fi; fi + done +@@ -251,7 +252,7 @@ fi + + echo "Please indicate which of the following standard options $NAME will use:" + for op in $STDOPTS; do +- if echo " $OPTS "|grep -q -- " $op "; then ++ if echo " $OPTS "|${GREP} -q -- " $op "; then + true; + else + echo -n " $op? [yN] "; read ans; +@@ -279,7 +280,7 @@ if [ "$AUTHOR" = "" ]; then + # Give NIS a try + AUTHOR=`ypmatch $USER passwd.byname|$AWK -F: '{ print $5; }'` + fi +- if echo $AUTHOR | grep -q -- "\,"; then ++ if echo $AUTHOR | ${GREP} -q -- "\,"; then + X=`expr index "$AUTHOR" ","` + X=`expr $X - 1` || true + AUTHOR=`expr substr "$AUTHOR" 1 $X` || true +@@ -325,7 +326,7 @@ cd "$NAME" + # Create a small awk script to select the appropriate options fragments + + for op in $STDOPTS; do +- if echo " $OPTS " | grep -q -- " $op " ; then ++ if echo " $OPTS " | ${GREP} -q -- " $op " ; then + # lines like "@item --output=@var{name}" are not special + cat >>optionsub <$i + if [ -x $DIR/$i ]; then chmod +x $i; fi +- PROCESSED=`awk "BEGIN{print $PROCESSED+1}"` ++ PROCESSED=`${AWK} "BEGIN{print $PROCESSED+1}"` + fi + done + fi +@@ -402,7 +403,7 @@ fi + + # insert language-specific macros into configure.in + insert(){ +-if echo "$PROJECT_LANG"|grep -F -q -- " $1 "; then ++if echo "$PROJECT_LANG"|${GREP} -F -q -- " $1 "; then + echo "using $1 - adding $2 to configure.in" + $AWK "{print}/^AC_PROG_CC/{print \"$2\"}" \ + configure.in >tmp && mv tmp configure.in +-- +1.6.3.2 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Oct 7 12:29:21 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 07 Oct 2009 10:29:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[6739] csw/mgar/pkg/examples/modulations/trunk/files Message-ID: Revision: 6739 http://gar.svn.sourceforge.net/gar/?rev=6739&view=rev Author: wahwah Date: 2009-10-07 10:29:20 +0000 (Wed, 07 Oct 2009) Log Message: ----------- libexample: initial commit Added Paths: ----------- csw/mgar/pkg/examples/modulations/trunk/files/libexample/ csw/mgar/pkg/examples/modulations/trunk/files/libexample/AUTHORS csw/mgar/pkg/examples/modulations/trunk/files/libexample/COPYING csw/mgar/pkg/examples/modulations/trunk/files/libexample/ChangeLog csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am csw/mgar/pkg/examples/modulations/trunk/files/libexample/NEWS csw/mgar/pkg/examples/modulations/trunk/files/libexample/README csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.c csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.h csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt1.c csw/mgar/pkg/examples/modulations/trunk/files/libexample/gpl.texinfo csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.1 csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.info csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.lsm.in csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.spec.in csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.texinfo csw/mgar/pkg/examples/modulations/trunk/files/libexample/system.h Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/AUTHORS =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/AUTHORS (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/AUTHORS 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1 @@ +Maciej Blizinski Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/COPYING =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/COPYING (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/COPYING 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/ChangeLog =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/ChangeLog (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/ChangeLog 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,4 @@ +2009-10-07 Maciej Blizinski + + * libexample: initial version. + Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,18 @@ +bin_PROGRAMS=libexample +libexample_SOURCES=libexample.c libexample.1 system.h aclocal.m4 getopt.c getopt1.c getopt.h + +# uncomment the following if libexample requires the math library +#libexample_LDADD=-lm + +EXTRA_DIST=libexample.lsm.in libexample.spec.in libexample.texinfo + +# if you write a self-test script named `chk', uncomment the +# following and add `chk' to the EXTRA_DIST list +#TESTS=chk + +# build and install the .info pages +info_TEXINFOS = libexample.texinfo +libexample_TEXINFOS = gpl.texinfo + +# install the man pages +man_MANS=libexample.1 Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/README =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/README (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/README 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,23 @@ + libexample - A shared library example project + + + + Copyright (C) 2009 Maciej Blizinski + + libexample is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Comments are welcome. + + - Maciej Blizinski Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,40 @@ +#serial 3 + +dnl From Jim Meyering + +dnl Define HAVE_STRUCT_UTIMBUF if `struct utimbuf' is declared -- +dnl usually in . +dnl Some systems have utime.h but don't declare the struct anywhere. + +AC_DEFUN(jm_CHECK_TYPE_STRUCT_UTIMBUF, +[ + AC_CHECK_HEADERS(utime.h) + AC_REQUIRE([AC_HEADER_TIME]) + AC_CACHE_CHECK([for struct utimbuf], fu_cv_sys_struct_utimbuf, + [AC_TRY_COMPILE( + [ +#ifdef TIME_WITH_SYS_TIME +# include +# include +#else +# ifdef HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif +#ifdef HAVE_UTIME_H +# include +#endif + ], + [static struct utimbuf x; x.actime = x.modtime;], + fu_cv_sys_struct_utimbuf=yes, + fu_cv_sys_struct_utimbuf=no) + ]) + + if test $fu_cv_sys_struct_utimbuf = yes; then + AC_DEFINE_UNQUOTED(HAVE_STRUCT_UTIMBUF, 1, +[Define if struct utimbuf is declared -- usually in . + Some systems have utime.h but don't declare the struct anywhere. ]) + fi +]) Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,964 @@ +# generated automatically by aclocal 1.11 -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],, +[m4_warning([this file was generated for autoconf 2.64. +You have another version of autoconf. It may work, but is not guaranteed to. +If you have problems, you may need to regenerate the build system entirely. +To do so, use the procedure documented by the package, typically `autoreconf'.])]) + +# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_AUTOMAKE_VERSION(VERSION) +# ---------------------------- +# Automake X.Y traces this macro to ensure aclocal.m4 has been +# generated from the m4 files accompanying Automake X.Y. +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.11' +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to +dnl require some minimum version. Point them to the right macro. +m4_if([$1], [1.11], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], +[AM_AUTOMAKE_VERSION([1.11])dnl +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) + +# AM_AUX_DIR_EXPAND -*- Autoconf -*- + +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets +# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to +# `$srcdir', `$srcdir/..', or `$srcdir/../..'. +# +# Of course, Automake must honor this variable whenever it calls a +# tool from the auxiliary directory. The problem is that $srcdir (and +# therefore $ac_aux_dir as well) can be either absolute or relative, +# depending on how configure is run. This is pretty annoying, since +# it makes $ac_aux_dir quite unusable in subdirectories: in the top +# source directory, any form will work fine, but in subdirectories a +# relative path needs to be adjusted first. +# +# $ac_aux_dir/missing +# fails when called from a subdirectory if $ac_aux_dir is relative +# $top_srcdir/$ac_aux_dir/missing +# fails if $ac_aux_dir is absolute, +# fails when called from a subdirectory in a VPATH build with +# a relative $ac_aux_dir +# +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir +# are both prefixed by $srcdir. In an in-source build this is usually +# harmless because $srcdir is `.', but things will broke when you +# start a VPATH build or use an absolute $srcdir. +# +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, +# iff we strip the leading $srcdir from $ac_aux_dir. That would be: +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` +# and then we would define $MISSING as +# MISSING="\${SHELL} $am_aux_dir/missing" +# This will work as long as MISSING is not called from configure, because +# unfortunately $(top_srcdir) has no meaning in configure. +# However there are other variables, like CC, which are often used in +# configure, and could therefore not use this "fixed" $ac_aux_dir. +# +# Another solution, used here, is to always expand $ac_aux_dir to an +# absolute PATH. The drawback is that using absolute paths prevent a +# configured tree to be moved without reconfiguration. + +AC_DEFUN([AM_AUX_DIR_EXPAND], +[dnl Rely on autoconf to set up CDPATH properly. +AC_PREREQ([2.50])dnl +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` +]) + +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 9 + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[AC_PREREQ(2.52)dnl + ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) +fi])]) + +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 10 + +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + +# _AM_DEPENDENCIES(NAME) +# ---------------------- +# See how the compiler implements dependency checking. +# NAME is "CC", "CXX", "GCJ", or "OBJC". +# We try a few techniques and use that to set a single cache variable. +# +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular +# dependency, and given that the user is not expected to run this macro, +# just rely on AC_PROG_CC. +AC_DEFUN([_AM_DEPENDENCIES], +[AC_REQUIRE([AM_SET_DEPDIR])dnl +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl +AC_REQUIRE([AM_MAKE_INCLUDE])dnl +AC_REQUIRE([AM_DEP_TRACK])dnl + +ifelse([$1], CC, [depcc="$CC" am_compiler_list=], + [$1], CXX, [depcc="$CXX" am_compiler_list=], + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], UPC, [depcc="$UPC" am_compiler_list=], + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) + +AC_CACHE_CHECK([dependency style of $depcc], + [am_cv_$1_dependencies_compiler_type], +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_$1_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` + fi + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_$1_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_$1_dependencies_compiler_type=none +fi +]) +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) +AM_CONDITIONAL([am__fastdep$1], [ + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) +]) + + +# AM_SET_DEPDIR +# ------------- +# Choose a directory name for dependency files. +# This macro is AC_REQUIREd in _AM_DEPENDENCIES +AC_DEFUN([AM_SET_DEPDIR], +[AC_REQUIRE([AM_SET_LEADING_DOT])dnl +AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl +]) + + +# AM_DEP_TRACK +# ------------ +AC_DEFUN([AM_DEP_TRACK], +[AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors]) +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +AC_SUBST([AMDEPBACKSLASH])dnl +_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl +]) + +# Generate code to set up dependency tracking. -*- Autoconf -*- + +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +#serial 5 + +# _AM_OUTPUT_DEPENDENCY_COMMANDS +# ------------------------------ +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], +[{ + # Autoconf 2.62 quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} +])# _AM_OUTPUT_DEPENDENCY_COMMANDS + + +# AM_OUTPUT_DEPENDENCY_COMMANDS +# ----------------------------- +# This macro should only be invoked once -- use via AC_REQUIRE. +# +# This code is only required when automatic dependency tracking +# is enabled. FIXME. This creates each `.P' file that we will +# need in order to bootstrap the dependency handling code. +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], +[AC_CONFIG_COMMANDS([depfiles], + [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], + [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) +]) + +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 8 + +# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. +AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) + +# Do all the work for Automake. -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 16 + +# This macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. + +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) +# AM_INIT_AUTOMAKE([OPTIONS]) +# ----------------------------------------------- +# The call with PACKAGE and VERSION arguments is the old style +# call (pre autoconf-2.50), which is being phased out. PACKAGE +# and VERSION should now be passed to AC_INIT and removed from +# the call to AM_INIT_AUTOMAKE. +# We support both call styles for the transition. After +# the next Automake release, Autoconf can make the AC_INIT +# arguments mandatory, and then we can depend on a new Autoconf +# release and drop the old call support. +AC_DEFUN([AM_INIT_AUTOMAKE], +[AC_PREREQ([2.62])dnl +dnl Autoconf wants to disallow AM_ names. We explicitly allow +dnl the ones we care about. +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl +AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl +AC_REQUIRE([AC_PROG_INSTALL])dnl +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) + fi +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi +AC_SUBST([CYGPATH_W]) + +# Define the identity of the package. +dnl Distinguish between old-style and new-style calls. +m4_ifval([$2], +[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl + AC_SUBST([PACKAGE], [$1])dnl + AC_SUBST([VERSION], [$2])], +[_AM_SET_OPTIONS([$1])dnl +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. +m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, + [m4_fatal([AC_INIT should be called with package and version arguments])])dnl + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl + +_AM_IF_OPTION([no-define],, +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl + +# Some tools Automake needs. +AC_REQUIRE([AM_SANITY_CHECK])dnl +AC_REQUIRE([AC_ARG_PROGRAM])dnl +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) +AM_MISSING_PROG(AUTOCONF, autoconf) +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) +AM_MISSING_PROG(AUTOHEADER, autoheader) +AM_MISSING_PROG(MAKEINFO, makeinfo) +AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl +AC_REQUIRE([AM_PROG_MKDIR_P])dnl +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([AC_PROG_MAKE_SET])dnl +AC_REQUIRE([AM_SET_LEADING_DOT])dnl +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], + [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], + [_AM_PROG_TAR([v7])])]) +_AM_IF_OPTION([no-dependencies],, +[AC_PROVIDE_IFELSE([AC_PROG_CC], + [_AM_DEPENDENCIES(CC)], + [define([AC_PROG_CC], + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_CXX], + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_CXX], + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJC], + [_AM_DEPENDENCIES(OBJC)], + [define([AC_PROG_OBJC], + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl +]) +_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl +dnl The `parallel-tests' driver may need to know about EXEEXT, so add the +dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro +dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. +AC_CONFIG_COMMANDS_PRE(dnl +[m4_provide_if([_AM_COMPILER_EXEEXT], + [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl +]) + +dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further +dnl mangled by Autoconf and run in a shell conditional statement. +m4_define([_AC_COMPILER_EXEEXT], +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) + + +# When config.status generates a header, we must update the stamp-h file. +# This file resides in the same directory as the config header +# that is generated. The stamp files are numbered to have different names. + +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the +# loop where config.status creates the headers, so we can generate +# our stamp files there. +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], +[# Compute $1's index in $config_headers. +_am_arg=$1 +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) + +# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_INSTALL_SH +# ------------------ +# Define $install_sh. +AC_DEFUN([AM_PROG_INSTALL_SH], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi +AC_SUBST(install_sh)]) + +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 2 + +# Check whether the underlying file-system supports filenames +# with a leading dot. For instance MS-DOS doesn't. +AC_DEFUN([AM_SET_LEADING_DOT], +[rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null +AC_SUBST([am__leading_dot])]) + +# Check to see how 'make' treats includes. -*- Autoconf -*- + +# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 4 + +# AM_MAKE_INCLUDE() +# ----------------- +# Check to see how make treats includes. +AC_DEFUN([AM_MAKE_INCLUDE], +[am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo this is the am__doit target +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +AC_MSG_CHECKING([for style of include used by $am_make]) +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# Ignore all kinds of additional output from `make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi +AC_SUBST([am__include]) +AC_SUBST([am__quote]) +AC_MSG_RESULT([$_am_result]) +rm -f confinc confmf +]) + +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- + +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 6 + +# AM_MISSING_PROG(NAME, PROGRAM) +# ------------------------------ +AC_DEFUN([AM_MISSING_PROG], +[AC_REQUIRE([AM_MISSING_HAS_RUN]) +$1=${$1-"${am_missing_run}$2"} +AC_SUBST($1)]) + + +# AM_MISSING_HAS_RUN +# ------------------ +# Define MISSING if not defined so far and test if it supports --run. +# If it does, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([missing])dnl +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + AC_MSG_WARN([`missing' script is too old or missing]) +fi +]) + +# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_MKDIR_P +# --------------- +# Check for `mkdir -p'. +AC_DEFUN([AM_PROG_MKDIR_P], +[AC_PREREQ([2.60])dnl +AC_REQUIRE([AC_PROG_MKDIR_P])dnl +dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, +dnl while keeping a definition of mkdir_p for backward compatibility. +dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. +dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of +dnl Makefile.ins that do not define MKDIR_P, so we do our own +dnl adjustment using top_builddir (which is defined more often than +dnl MKDIR_P). +AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl +case $mkdir_p in + [[\\/$]]* | ?:[[\\/]]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac +]) + +# Helper functions for option handling. -*- Autoconf -*- + +# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 4 + +# _AM_MANGLE_OPTION(NAME) +# ----------------------- +AC_DEFUN([_AM_MANGLE_OPTION], +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) + +# _AM_SET_OPTION(NAME) +# ------------------------------ +# Set option NAME. Presently that only means defining a flag for this option. +AC_DEFUN([_AM_SET_OPTION], +[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) + +# _AM_SET_OPTIONS(OPTIONS) +# ---------------------------------- +# OPTIONS is a space-separated list of Automake options. +AC_DEFUN([_AM_SET_OPTIONS], +[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) + +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) +# ------------------------------------------- +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +AC_DEFUN([_AM_IF_OPTION], +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) + +# Check to make sure that the build environment is sane. -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 5 + +# AM_SANITY_CHECK +# --------------- +AC_DEFUN([AM_SANITY_CHECK], +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftest.file +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[[\\\"\#\$\&\'\`$am_lf]]*) + AC_MSG_ERROR([unsafe absolute working directory name]);; +esac +case $srcdir in + *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) + AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; +esac + +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$[*]" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + rm -f conftest.file + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi + + test "$[2]" = conftest.file + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +AC_MSG_RESULT(yes)]) + +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_INSTALL_STRIP +# --------------------- +# One issue with vendor `install' (even GNU) is that you can't +# specify the program used to strip binaries. This is especially +# annoying in cross-compiling environments, where the build's strip +# is unlikely to handle the host's binaries. +# Fortunately install-sh will honor a STRIPPROG variable, so we +# always use install-sh in `make install-strip', and initialize +# STRIPPROG with the value of the STRIP variable (set by the user). +AC_DEFUN([AM_PROG_INSTALL_STRIP], +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +dnl Don't test for $cross_compiling = yes, because it might be `maybe'. +if test "$cross_compiling" != no; then + AC_CHECK_TOOL([STRIP], [strip], :) +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" +AC_SUBST([INSTALL_STRIP_PROGRAM])]) + +# Copyright (C) 2006, 2008 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 2 + +# _AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + +# AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + +# Check how to create a tarball. -*- Autoconf -*- + +# Copyright (C) 2004, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 2 + +# _AM_PROG_TAR(FORMAT) +# -------------------- +# Check how to create a tarball in format FORMAT. +# FORMAT should be one of `v7', `ustar', or `pax'. +# +# Substitute a variable $(am__tar) that is a command +# writing to stdout a FORMAT-tarball containing the directory +# $tardir. +# tardir=directory && $(am__tar) > result.tar +# +# Substitute a variable $(am__untar) that extract such +# a tarball read from stdin. +# $(am__untar) < result.tar +AC_DEFUN([_AM_PROG_TAR], +[# Always define AMTAR for backward compatibility. +AM_MISSING_PROG([AMTAR], [tar]) +m4_if([$1], [v7], + [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], + [m4_case([$1], [ustar],, [pax],, + [m4_fatal([Unknown tar format])]) +AC_MSG_CHECKING([how to create a $1 tar archive]) +# Loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' +_am_tools=${am_cv_prog_tar_$1-$_am_tools} +# Do not fold the above two line into one, because Tru64 sh and +# Solaris sh will not grok spaces in the rhs of `-'. +for _am_tool in $_am_tools +do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; + do + AM_RUN_LOG([$_am_tar --version]) && break + done + am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' + am__untar="$_am_tar -xf -" + ;; + plaintar) + # Must skip GNU tar: if it does not support --format= it doesn't create + # ustar tarball either. + (tar --version) >/dev/null 2>&1 && continue + am__tar='tar chf - "$$tardir"' + am__tar_='tar chf - "$tardir"' + am__untar='tar xf -' + ;; + pax) + am__tar='pax -L -x $1 -w "$$tardir"' + am__tar_='pax -L -x $1 -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H $1 -L' + am__tar_='find "$tardir" -print | cpio -o -H $1 -L' + am__untar='cpio -i -H $1 -d' + ;; + none) + am__tar=false + am__tar_=false + am__untar=false + ;; + esac + + # If the value was cached, stop now. We just wanted to have am__tar + # and am__untar set. + test -n "${am_cv_prog_tar_$1}" && break + + # tar/untar a dummy directory, and stop if the command works + rm -rf conftest.dir + mkdir conftest.dir + echo GrepMe > conftest.dir/file + AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) + rm -rf conftest.dir + if test -s conftest.tar; then + AM_RUN_LOG([$am__untar /dev/null 2>&1 && break + fi +done +rm -rf conftest.dir + +AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) +AC_MSG_RESULT([$am_cv_prog_tar_$1])]) +AC_SUBST([am__tar]) +AC_SUBST([am__untar]) +]) # _AM_PROG_TAR + +m4_include([acinclude.m4]) Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,41 @@ +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(libexample.c) +dnl Every other copy of the package version number gets its value from here +AM_INIT_AUTOMAKE(libexample, 0.1.0) + +dnl create a config.h file (Automake will add -DHAVE_CONFIG_H) +AM_CONFIG_HEADER(config.h) + +AC_SUBST(VERSION) + +ISODATE=`date +%Y-%m-%d` +AC_SUBST(ISODATE) + +AC_CANONICAL_HOST + +dnl Checks for programs. +AC_PROG_INSTALL +AC_PROG_CC + +dnl Checks for libraries. + +dnl Checks for header files. +AC_HEADER_STDC +AC_CHECK_HEADERS(unistd.h sys/param.h sys/time.h time.h sys/mkdev.h sys/sysmacros.h string.h memory.h fcntl.h dirent.h sys/ndir.h ndir.h alloca.h locale.h ) + + +jm_CHECK_TYPE_STRUCT_UTIMBUF +AC_HEADER_MAJOR +AC_FUNC_ALLOCA +AC_STRUCT_TM +AC_STRUCT_ST_BLOCKS +AC_FUNC_CLOSEDIR_VOID +AC_CHECK_FUNCS(mkfifo) +AC_CHECK_FUNC(mknod) + +dnl Checks for typedefs, structures, and compiler characteristics. + +dnl Checks for library functions. + +AC_OUTPUT(Makefile libexample.lsm libexample.spec) Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.c =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.c (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.c 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,1055 @@ +/* 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 drepper at gnu.org + before changing it! + + Copyright (C) 1987, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000 + Free Software Foundation, Inc. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. 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 . + Ditto for AIX 3.2 and . */ +#ifndef _NO_PROTO +# define _NO_PROTO +#endif + +#ifdef HAVE_CONFIG_H +# include +#endif + +#if !defined __STDC__ || !__STDC__ +/* This is a separate conditional since some stdc systems + reject `defined (const)'. */ +# ifndef const +# define const +# endif +#endif + +#include + +/* 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 +# 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 +# include +#endif /* GNU C library. */ + +#ifdef VMS +# include +# if HAVE_STRING_H - 0 +# include +# endif +#endif + +#ifndef _ +/* This is for other GNU distributions with internationalized messages. + When compiling libc, the _ macro is predefined. */ +# ifdef HAVE_LIBINTL_H +# include +# define _(msgid) gettext (msgid) +# 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 "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, + so that eventually all the non-options are at the end. This allows options + to be given in any order, even with programs that were not written to + expect this. + + RETURN_IN_ORDER is an option available to programs that were written + to expect options and other ARGV-elements in any order and that care about + the ordering of the two. We describe each non-option ARGV-element + as if it were the argument of an option with character code 1. + Using `-' as the first character of the list of option characters + selects this mode of operation. + + The special argument `--' forces an end of option-scanning regardless + of the value of `ordering'. In the case of RETURN_IN_ORDER, only + `--' can cause `getopt' to return -1 with `optind' != ARGC. */ + +static enum +{ + REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER +} ordering; + +/* Value of POSIXLY_CORRECT environment variable. */ +static char *posixly_correct; + +#ifdef __GNU_LIBRARY__ +/* We want to avoid inclusion of string.h with non-GNU libraries + because there are many ways it can cause trouble. + On some systems, it contains special magic macros that don't work + in GCC. */ +# include +# define my_index strchr +#else + +# if HAVE_STRING_H +# include +# else +# include +# endif + +/* Avoid depending on library functions or files + whose names are inconsistent. */ + +#ifndef getenv +extern char *getenv (); +#endif + +static char * +my_index (str, chr) + const char *str; + int chr; +{ + while (*str) + { + if (*str == chr) + return (char *) str; + str++; + } + return 0; +} + +/* If using GCC, we can safely declare strlen this way. + If not using GCC, it is ok not to declare it. */ +#ifdef __GNUC__ +/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h. + That was relevant to code that was here before. */ +# if (!defined __STDC__ || !__STDC__) && !defined strlen +/* gcc with -traditional declares the built-in strlen to return int, + and has done so at least since version 2.4.5. -- rms. */ +extern int strlen (const char *); +# endif /* not __STDC__ */ +#endif /* __GNUC__ */ + +#endif /* not __GNU_LIBRARY__ */ + +/* Handle permutation of arguments. */ + +/* Describe the part of ARGV that contains non-options that have + been skipped. `first_nonopt' is the index in ARGV of the first of them; + `last_nonopt' is the index after the last of them. */ + +static int first_nonopt; +static int last_nonopt; + +#ifdef _LIBC +/* Bash 2.0 gives us an environment variable containing flags + indicating ARGV elements that should not be considered arguments. */ + +/* Defined in getopt_init.c */ +extern char *__getopt_nonoption_flags; + +static int nonoption_flags_max_len; +static int nonoption_flags_len; + +static int original_argc; +static char *const *original_argv; + +/* Make sure the environment variable bash 2.0 puts in the environment + is valid for the getopt call we must make sure that the ARGV passed + to getopt is that one passed to the process. */ +static void +__attribute__ ((unused)) +store_args_and_env (int argc, char *const *argv) +{ + /* XXX This is no good solution. We should rather copy the args so + that we can compare them later. But we must not use malloc(3). */ + original_argc = argc; + original_argv = argv; +} +# ifdef text_set_element +text_set_element (__libc_subinit, store_args_and_env); +# endif /* text_set_element */ + +# define SWAP_FLAGS(ch1, ch2) \ + if (nonoption_flags_len > 0) \ + { \ + char __tmp = __getopt_nonoption_flags[ch1]; \ + __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2]; \ + __getopt_nonoption_flags[ch2] = __tmp; \ + } +#else /* !_LIBC */ +# define SWAP_FLAGS(ch1, ch2) +#endif /* _LIBC */ + +/* Exchange two adjacent subsequences of ARGV. + One subsequence is elements [first_nonopt,last_nonopt) + which contains all the non-options that have been skipped so far. + The other is elements [last_nonopt,optind), which contains all + the options processed since those non-options were skipped. + + `first_nonopt' and `last_nonopt' are relocated so that they describe + the new indices of the non-options in ARGV after they are moved. */ + +#if defined __STDC__ && __STDC__ +static void exchange (char **); +#endif + +static void +exchange (argv) + char **argv; +{ + int bottom = first_nonopt; + int middle = last_nonopt; + int top = optind; + char *tem; + + /* Exchange the shorter segment with the far end of the longer segment. + That puts the shorter segment into the right place. + It leaves the longer segment in the right place overall, + but it consists of two parts that need to be swapped next. */ + +#ifdef _LIBC + /* First make sure the handling of the `__getopt_nonoption_flags' + string can work normally. Our top argument must be in the range + of the string. */ + if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len) + { + /* We must extend the array. The user plays games with us and + presents new arguments. */ + char *new_str = malloc (top + 1); + if (new_str == NULL) + nonoption_flags_len = nonoption_flags_max_len = 0; + else + { + memset (__mempcpy (new_str, __getopt_nonoption_flags, + nonoption_flags_max_len), + '\0', top + 1 - nonoption_flags_max_len); + nonoption_flags_max_len = top + 1; + __getopt_nonoption_flags = new_str; + } + } +#endif + + while (top > middle && middle > bottom) + { + if (top - middle > middle - bottom) + { + /* Bottom segment is the short one. */ + int len = middle - bottom; + register int i; + + /* Swap it with the top part of the top segment. */ + for (i = 0; i < len; i++) + { + tem = argv[bottom + i]; + argv[bottom + i] = argv[top - (middle - bottom) + i]; + argv[top - (middle - bottom) + i] = tem; + SWAP_FLAGS (bottom + i, top - (middle - bottom) + i); + } + /* Exclude the moved bottom segment from further swapping. */ + top -= len; + } + else + { + /* Top segment is the short one. */ + int len = top - middle; + register int i; + + /* Swap it with the bottom part of the bottom segment. */ + for (i = 0; i < len; i++) + { + tem = argv[bottom + i]; + argv[bottom + i] = argv[middle + i]; + argv[middle + i] = tem; + SWAP_FLAGS (bottom + i, middle + i); + } + /* Exclude the moved top segment from further swapping. */ + bottom += len; + } + } + + /* Update records for the slots the non-options now occupy. */ + + first_nonopt += (optind - last_nonopt); + last_nonopt = optind; +} + +/* Initialize the internal data when the first call is made. */ + +#if defined __STDC__ && __STDC__ +static const char *_getopt_initialize (int, char *const *, const char *); +#endif +static const char * +_getopt_initialize (argc, argv, optstring) + int argc; + char *const *argv; + const char *optstring; +{ + /* Start processing options with ARGV-element 1 (since ARGV-element 0 + is the program name); the sequence of previously skipped + non-option ARGV-elements is empty. */ + + first_nonopt = last_nonopt = optind; + + nextchar = NULL; + + posixly_correct = getenv ("POSIXLY_CORRECT"); + + /* Determine how to handle the ordering of options and nonoptions. */ + + if (optstring[0] == '-') + { + ordering = RETURN_IN_ORDER; + ++optstring; + } + else if (optstring[0] == '+') + { + ordering = REQUIRE_ORDER; + ++optstring; + } + else if (posixly_correct != NULL) + ordering = REQUIRE_ORDER; + else + ordering = PERMUTE; + +#ifdef _LIBC + if (posixly_correct == NULL + && argc == original_argc && argv == original_argv) + { + if (nonoption_flags_max_len == 0) + { + if (__getopt_nonoption_flags == NULL + || __getopt_nonoption_flags[0] == '\0') + nonoption_flags_max_len = -1; + else + { + const char *orig_str = __getopt_nonoption_flags; + int len = nonoption_flags_max_len = strlen (orig_str); + if (nonoption_flags_max_len < argc) + nonoption_flags_max_len = argc; + __getopt_nonoption_flags = + (char *) malloc (nonoption_flags_max_len); + if (__getopt_nonoption_flags == NULL) + nonoption_flags_max_len = -1; + else + memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), + '\0', nonoption_flags_max_len - len); + } + } + nonoption_flags_len = nonoption_flags_max_len; + } + else + nonoption_flags_len = 0; +#endif + + return optstring; +} + +/* Scan elements of ARGV (whose length is ARGC) for option characters + given in OPTSTRING. + + If an element of ARGV starts with '-', and is not exactly "-" or "--", + then it is an option element. The characters of this element + (aside from the initial '-') are option characters. If `getopt' + is called repeatedly, it returns successively each of the option characters + from each of the option elements. + + If `getopt' finds another option character, it returns that character, + updating `optind' and `nextchar' so that the next call to `getopt' can + resume the scan with the following option character or ARGV-element. + + If there are no more option characters, `getopt' returns -1. + Then `optind' is the index in ARGV of the first ARGV-element + that is not an option. (The ARGV-elements have been permuted + so that those that are not options now come last.) + + OPTSTRING is a string containing the legitimate option characters. + If an option character is seen that is not listed in OPTSTRING, + return '?' after printing an error message. If you set `opterr' to + zero, the error message is suppressed but we still return '?'. + + If a char in OPTSTRING is followed by a colon, that means it wants an arg, + so the following text in the same ARGV-element, or the text of the following + ARGV-element, is returned in `optarg'. Two colons mean an option that + wants an optional arg; if there is text in the current ARGV-element, + it is returned in `optarg', otherwise `optarg' is set to zero. + + If OPTSTRING starts with `-' or `+', it requests different methods of + handling the non-option ARGV-elements. + See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above. + + Long-named options begin with `--' instead of `-'. + Their names may be abbreviated as long as the abbreviation is unique + or is an exact match for some defined option. If they have an + argument, it follows the option name in the same ARGV-element, separated + from the option name by a `=', or else the in next ARGV-element. + When `getopt' finds a long-named option, it returns 0 if that option's + `flag' field is nonzero, the value of the option's `val' field + if the `flag' field is zero. + + The elements of ARGV aren't really const, because we permute them. + But we pretend they're const in the prototype to be compatible + with other systems. + + LONGOPTS is a vector of `struct option' terminated by an + element containing a name which is zero. + + LONGIND returns the index in LONGOPT of the long-named option found. + It is only valid when a long-named option has been found by the most + recent call. + + If LONG_ONLY is nonzero, '-' as well as '--' can introduce + long-named options. */ + +int +_getopt_internal (argc, argv, optstring, longopts, longind, long_only) + int argc; + char *const *argv; + const char *optstring; + const struct option *longopts; + int *longind; + int long_only; +{ + int print_errors = opterr; + if (optstring[0] == ':') + print_errors = 0; + + optarg = NULL; + + if (optind == 0 || !__getopt_initialized) + { + if (optind == 0) + optind = 1; /* Don't scan ARGV[0], the program name. */ + optstring = _getopt_initialize (argc, argv, optstring); + __getopt_initialized = 1; + } + + /* Test whether ARGV[optind] points to a non-option argument. + Either it does not have option syntax, or there is an environment flag + from the shell indicating it is not an option. The later information + is only used when the used in the GNU libc. */ +#ifdef _LIBC +# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ + || (optind < nonoption_flags_len \ + && __getopt_nonoption_flags[optind] == '1')) +#else +# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') +#endif + + if (nextchar == NULL || *nextchar == '\0') + { + /* Advance to the next ARGV-element. */ + + /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been + moved back by the user (who may also have changed the arguments). */ + if (last_nonopt > optind) + last_nonopt = optind; + if (first_nonopt > optind) + first_nonopt = optind; + + if (ordering == PERMUTE) + { + /* If we have just processed some options following some non-options, + exchange them so that the options come first. */ + + if (first_nonopt != last_nonopt && last_nonopt != optind) + exchange ((char **) argv); + else if (last_nonopt != optind) + first_nonopt = optind; + + /* Skip any additional non-options + and extend the range of non-options previously skipped. */ + + while (optind < argc && NONOPTION_P) + optind++; + last_nonopt = optind; + } + + /* The special ARGV-element `--' means premature end of options. + Skip it like a null option, + then exchange with previous non-options as if it were an option, + then skip everything else like a non-option. */ + + if (optind != argc && !strcmp (argv[optind], "--")) + { + optind++; + + if (first_nonopt != last_nonopt && last_nonopt != optind) + exchange ((char **) argv); + else if (first_nonopt == last_nonopt) + first_nonopt = optind; + last_nonopt = argc; + + optind = argc; + } + + /* If we have done all the ARGV-elements, stop the scan + and back over any non-options that we skipped and permuted. */ + + if (optind == argc) + { + /* Set the next-arg-index to point at the non-options + that we previously skipped, so the caller will digest them. */ + if (first_nonopt != last_nonopt) + optind = first_nonopt; + return -1; + } + + /* If we have come to a non-option and did not permute it, + either stop the scan or describe it to the caller and pass it by. */ + + if (NONOPTION_P) + { + if (ordering == REQUIRE_ORDER) + return -1; + optarg = argv[optind++]; + return 1; + } + + /* We have found another option-ARGV-element. + Skip the initial punctuation. */ + + nextchar = (argv[optind] + 1 + + (longopts != NULL && argv[optind][1] == '-')); + } + + /* Decode the current option-ARGV-element. */ + + /* Check whether the ARGV-element is a long option. + + If long_only and the ARGV-element has the form "-f", where f is + a valid short option, don't consider it an abbreviated form of + a long option that starts with f. Otherwise there would be no + way to give the -f short option. + + On the other hand, if there's a long option "fubar" and + the ARGV-element is "-fu", do consider that an abbreviation of + the long option, just like "--fu", and not "-f" with arg "u". + + This distinction seems to be the most useful approach. */ + + if (longopts != NULL + && (argv[optind][1] == '-' + || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1]))))) + { + char *nameend; + const struct option *p; + const struct option *pfound = NULL; + int exact = 0; + int ambig = 0; + int indfound = -1; + int option_index; + + for (nameend = nextchar; *nameend && *nameend != '='; nameend++) + /* Do nothing. */ ; + + /* Test all long options for either exact match + or abbreviated matches. */ + for (p = longopts, option_index = 0; p->name; p++, option_index++) + if (!strncmp (p->name, nextchar, nameend - nextchar)) + { + if ((unsigned int) (nameend - nextchar) + == (unsigned int) strlen (p->name)) + { + /* Exact match found. */ + pfound = p; + indfound = option_index; + exact = 1; + break; + } + else if (pfound == NULL) + { + /* First nonexact match found. */ + pfound = p; + indfound = option_index; + } + else + /* Second or later nonexact match found. */ + ambig = 1; + } + + if (ambig && !exact) + { + if (print_errors) + fprintf (stderr, _("%s: option `%s' is ambiguous\n"), + argv[0], argv[optind]); + nextchar += strlen (nextchar); + optind++; + optopt = 0; + return '?'; + } + + if (pfound != NULL) + { + option_index = indfound; + optind++; + if (*nameend) + { + /* Don't test has_arg with >, because some C compilers don't + allow it to be used on enums. */ + if (pfound->has_arg) + optarg = nameend + 1; + else + { + if (print_errors) + { + if (argv[optind - 1][1] == '-') + /* --option */ + fprintf (stderr, + _("%s: option `--%s' doesn't allow an argument\n"), + argv[0], pfound->name); + else + /* +option or -option */ + fprintf (stderr, + _("%s: option `%c%s' doesn't allow an argument\n"), + argv[0], argv[optind - 1][0], pfound->name); + } + + nextchar += strlen (nextchar); + + optopt = pfound->val; + return '?'; + } + } + else if (pfound->has_arg == 1) + { + if (optind < argc) + optarg = argv[optind++]; + else + { + if (print_errors) + fprintf (stderr, + _("%s: option `%s' requires an argument\n"), + argv[0], argv[optind - 1]); + nextchar += strlen (nextchar); + optopt = pfound->val; + return optstring[0] == ':' ? ':' : '?'; + } + } + nextchar += strlen (nextchar); + if (longind != NULL) + *longind = option_index; + if (pfound->flag) + { + *(pfound->flag) = pfound->val; + return 0; + } + return pfound->val; + } + + /* Can't find it as a long option. If this is not getopt_long_only, + or the option starts with '--' or is not a valid short + option, then it's an error. + Otherwise interpret it as a short option. */ + if (!long_only || argv[optind][1] == '-' + || my_index (optstring, *nextchar) == NULL) + { + if (print_errors) + { + if (argv[optind][1] == '-') + /* --option */ + fprintf (stderr, _("%s: unrecognized option `--%s'\n"), + argv[0], nextchar); + else + /* +option or -option */ + fprintf (stderr, _("%s: unrecognized option `%c%s'\n"), + argv[0], argv[optind][0], nextchar); + } + nextchar = (char *) ""; + optind++; + optopt = 0; + return '?'; + } + } + + /* Look at and handle the next short option-character. */ + + { + char c = *nextchar++; + char *temp = my_index (optstring, c); + + /* Increment `optind' when we start to process its last character. */ + if (*nextchar == '\0') + ++optind; + + if (temp == NULL || c == ':') + { + if (print_errors) + { + if (posixly_correct) + /* 1003.2 specifies the format of this message. */ + fprintf (stderr, _("%s: illegal option -- %c\n"), + argv[0], c); + else + fprintf (stderr, _("%s: invalid option -- %c\n"), + argv[0], c); + } + optopt = c; + return '?'; + } + /* Convenience. Treat POSIX -W foo same as long option --foo */ + if (temp[0] == 'W' && temp[1] == ';') + { + char *nameend; + const struct option *p; + const struct option *pfound = NULL; + int exact = 0; + int ambig = 0; + int indfound = 0; + int option_index; + + /* This is an option that requires an argument. */ + if (*nextchar != '\0') + { + optarg = nextchar; + /* If we end this ARGV-element by taking the rest as an arg, + we must advance to the next element now. */ + optind++; + } + else if (optind == argc) + { + if (print_errors) + { + /* 1003.2 specifies the format of this message. */ + fprintf (stderr, _("%s: option requires an argument -- %c\n"), + argv[0], c); + } + optopt = c; + if (optstring[0] == ':') + c = ':'; + else + c = '?'; + return c; + } + else + /* We already incremented `optind' once; + increment it again when taking next ARGV-elt as argument. */ + optarg = argv[optind++]; + + /* optarg is now the argument, see if it's in the + table of longopts. */ + + for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++) + /* Do nothing. */ ; + + /* Test all long options for either exact match + or abbreviated matches. */ + for (p = longopts, option_index = 0; p->name; p++, option_index++) + if (!strncmp (p->name, nextchar, nameend - nextchar)) + { + if ((unsigned int) (nameend - nextchar) == strlen (p->name)) + { + /* Exact match found. */ + pfound = p; + indfound = option_index; + exact = 1; + break; + } + else if (pfound == NULL) + { + /* First nonexact match found. */ + pfound = p; + indfound = option_index; + } + else + /* Second or later nonexact match found. */ + ambig = 1; + } + if (ambig && !exact) + { + if (print_errors) + fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"), + argv[0], argv[optind]); + nextchar += strlen (nextchar); + optind++; + return '?'; + } + if (pfound != NULL) + { + option_index = indfound; + if (*nameend) + { + /* Don't test has_arg with >, because some C compilers don't + allow it to be used on enums. */ + if (pfound->has_arg) + optarg = nameend + 1; + else + { + if (print_errors) + fprintf (stderr, _("\ +%s: option `-W %s' doesn't allow an argument\n"), + argv[0], pfound->name); + + nextchar += strlen (nextchar); + return '?'; + } + } + else if (pfound->has_arg == 1) + { + if (optind < argc) + optarg = argv[optind++]; + else + { + if (print_errors) + fprintf (stderr, + _("%s: option `%s' requires an argument\n"), + argv[0], argv[optind - 1]); + nextchar += strlen (nextchar); + return optstring[0] == ':' ? ':' : '?'; + } + } + nextchar += strlen (nextchar); + if (longind != NULL) + *longind = option_index; + if (pfound->flag) + { + *(pfound->flag) = pfound->val; + return 0; + } + return pfound->val; + } + nextchar = NULL; + return 'W'; /* Let the application handle it. */ + } + if (temp[1] == ':') + { + if (temp[2] == ':') + { + /* This is an option that accepts an argument optionally. */ + if (*nextchar != '\0') + { + optarg = nextchar; + optind++; + } + else + optarg = NULL; + nextchar = NULL; + } + else + { + /* This is an option that requires an argument. */ + if (*nextchar != '\0') + { + optarg = nextchar; + /* If we end this ARGV-element by taking the rest as an arg, + we must advance to the next element now. */ + optind++; + } + else if (optind == argc) + { + if (print_errors) + { + /* 1003.2 specifies the format of this message. */ + fprintf (stderr, + _("%s: option requires an argument -- %c\n"), + argv[0], c); + } + optopt = c; + if (optstring[0] == ':') + c = ':'; + else + c = '?'; + } + else + /* We already incremented `optind' once; + increment it again when taking next ARGV-elt as argument. */ + optarg = argv[optind++]; + nextchar = NULL; + } + } + return c; + } +} + +int +getopt (argc, argv, optstring) + int argc; + char *const *argv; + const char *optstring; +{ + return _getopt_internal (argc, argv, optstring, + (const struct option *) 0, + (int *) 0, + 0); +} + +#endif /* Not ELIDE_CODE. */ + +#ifdef TEST + +/* Compile with -DTEST to make an executable for use in testing + the above definition of `getopt'. */ + +int +main (argc, argv) + int argc; + char **argv; +{ + int c; + int digit_optind = 0; + + while (1) + { + int this_option_optind = optind ? optind : 1; + + c = getopt (argc, argv, "abc:d:0123456789"); + if (c == -1) + break; + + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + if (digit_optind != 0 && digit_optind != this_option_optind) + printf ("digits occur in two different argv-elements.\n"); + digit_optind = this_option_optind; + printf ("option %c\n", c); + break; + + case 'a': + printf ("option a\n"); + break; + + case 'b': + printf ("option b\n"); + break; + + case 'c': + printf ("option c with value `%s'\n", optarg); + break; + + case '?': + break; + + default: + printf ("?? getopt returned character code 0%o ??\n", c); + } + } + + if (optind < argc) + { + printf ("non-option ARGV-elements: "); + while (optind < argc) + printf ("%s ", argv[optind++]); + printf ("\n"); + } + + exit (0); +} + +#endif /* TEST */ Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.h =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.h (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt.h 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,169 @@ +/* Declarations for getopt. + Copyright (C) 1989,90,91,92,93,94,96,97,98 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifndef _GETOPT_H + +#ifndef __need_getopt +# define _GETOPT_H 1 +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* 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. */ + +extern 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. */ + +extern int optind; + +/* Callers store zero here to inhibit the error message `getopt' prints + for unrecognized options. */ + +extern int opterr; + +/* Set to an option character which was unrecognized. */ + +extern int optopt; + +#ifndef __need_getopt +/* Describe the long-named options requested by the application. + The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector + of `struct option' terminated by an element containing a name which is + zero. + + The field `has_arg' is: + no_argument (or 0) if the option does not take an argument, + required_argument (or 1) if the option requires an argument, + optional_argument (or 2) if the option takes an optional argument. + + If the field `flag' is not NULL, it points to a variable that is set + to the value given in the field `val' when the option is found, but + left unchanged if the option is not found. + + To have a long-named option do something other than set an `int' to + a compiled-in constant, such as set a value from `optarg', set the + option's `flag' field to zero and its `val' field to a nonzero + value (the equivalent single-letter option character, if there is + one). For long options that have a zero `flag' field, `getopt' + returns the contents of the `val' field. */ + +struct option +{ +# if defined __STDC__ && __STDC__ + const char *name; +# else + char *name; +# endif + /* has_arg can't be an enum because some compilers complain about + type mismatches in all the code that assumes it is an int. */ + int has_arg; + int *flag; + int val; +}; + +/* Names for the values of the `has_arg' field of `struct option'. */ + +# define no_argument 0 +# define required_argument 1 +# define optional_argument 2 +#endif /* need getopt */ + + +/* Get definitions and prototypes for functions to process the + arguments in ARGV (ARGC of them, minus the program name) for + options given in OPTS. + + Return the option character from OPTS just read. Return -1 when + there are no more options. For unrecognized options, or options + missing arguments, `optopt' is set to the option letter, and '?' is + returned. + + The OPTS string is a list of characters which are recognized option + letters, optionally followed by colons, specifying that that letter + takes an argument, to be placed in `optarg'. + + If a letter in OPTS is followed by two colons, its argument is + optional. This behavior is specific to the GNU `getopt'. + + The argument `--' causes premature termination of argument + scanning, explicitly telling `getopt' that there are no more + options. + + If OPTS begins with `--', then non-option arguments are treated as + arguments to the option '\0'. This behavior is specific to the GNU + `getopt'. */ + +#if defined __STDC__ && __STDC__ +# ifdef __GNU_LIBRARY__ +/* Many other libraries have conflicting prototypes for getopt, with + differences in the consts, in stdlib.h. To avoid compilation + errors, only prototype getopt for the GNU C library. */ +extern int getopt (int __argc, char *const *__argv, const char *__shortopts); +# else /* not __GNU_LIBRARY__ */ +extern int getopt (); +# endif /* __GNU_LIBRARY__ */ + +# ifndef __need_getopt +extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts, + const struct option *__longopts, int *__longind); +extern int getopt_long_only (int __argc, char *const *__argv, + const char *__shortopts, + const struct option *__longopts, int *__longind); + +/* Internal only. Users should not call this directly. */ +extern int _getopt_internal (int __argc, char *const *__argv, + const char *__shortopts, + const struct option *__longopts, int *__longind, + int __long_only); +# endif +#else /* not __STDC__ */ +extern int getopt (); +# ifndef __need_getopt +extern int getopt_long (); +extern int getopt_long_only (); + +extern int _getopt_internal (); +# endif +#endif /* __STDC__ */ + +#ifdef __cplusplus +} +#endif + +/* Make sure we later can get all the definitions and declarations. */ +#undef __need_getopt + +#endif /* getopt.h */ Added: csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt1.c =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt1.c (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/getopt1.c 2009-10-07 10:29:20 UTC (rev 6739) @@ -0,0 +1,188 @@ +/* getopt_long and getopt_long_only entry points for GNU getopt. + Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98 + 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +#include +#endif + +#include "getopt.h" + +#if !defined __STDC__ || !__STDC__ +/* This is a separate conditional since some stdc systems + reject `defined (const)'. */ +#ifndef const +#define const +#endif +#endif + +#include + +/* 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 +#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__ +#include +#endif + +#ifndef NULL +#define NULL 0 +#endif + +int +getopt_long (argc, argv, options, long_options, opt_index) + int argc; + char *const *argv; + const char *options; + const struct option *long_options; + int *opt_index; +{ + return _getopt_internal (argc, argv, options, long_options, opt_index, 0); +} + +/* Like getopt_long, but '-' as well as '--' can indicate a long option. + If an option that starts with '-' (not '--') doesn't match a long option, + but does match a short option, it is parsed as a short option + instead. */ + +int +getopt_long_only (argc, argv, options, long_options, opt_index) + int argc; + char *const *argv; + const char *options; + const struct option *long_options; + int *opt_index; +{ + return _getopt_internal (argc, argv, options, long_options, opt_index, 1); +} + + +#endif /* Not ELIDE_CODE. */ + +#ifdef TEST + +#include + +int +main (argc, argv) + int argc; + char **argv; +{ + int c; + int digit_optind = 0; + + while (1) + { + int this_option_optind = optind ? optind : 1; + int option_index = 0; + static struct option long_options[] = + { + {"add", 1, 0, 0}, + {"append", 0, 0, 0}, + {"delete", 1, 0, 0}, + {"verbose", 0, 0, 0}, + {"create", 0, 0, 0}, + {"file", 1, 0, 0}, + {0, 0, 0, 0} + }; + @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Oct 7 12:41:13 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 07 Oct 2009 10:41:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[6740] csw/mgar/pkg/examples/modulations/trunk/files/ libexample Message-ID: Revision: 6740 http://gar.svn.sourceforge.net/gar/?rev=6740&view=rev Author: wahwah Date: 2009-10-07 10:41:12 +0000 (Wed, 07 Oct 2009) Log Message: ----------- libexample: Added one shared library Modified Paths: -------------- csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in Added Paths: ----------- csw/mgar/pkg/examples/modulations/trunk/files/libexample/binexample.c csw/mgar/pkg/examples/modulations/trunk/files/libexample/m4/ csw/mgar/pkg/examples/modulations/trunk/files/libexample/m4/acinclude.m4 Removed Paths: ------------- csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c Modified: csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am 2009-10-07 10:29:20 UTC (rev 6739) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/Makefile.am 2009-10-07 10:41:12 UTC (rev 6740) @@ -1,11 +1,17 @@ -bin_PROGRAMS=libexample -libexample_SOURCES=libexample.c libexample.1 system.h aclocal.m4 getopt.c getopt1.c getopt.h +bin_PROGRAMS=binexample +binexample_SOURCES=binexample.c libexample.1 system.h aclocal.m4 getopt.c getopt1.c getopt.h # uncomment the following if libexample requires the math library #libexample_LDADD=-lm EXTRA_DIST=libexample.lsm.in libexample.spec.in libexample.texinfo +# AUTOMAKE_OPTIONS = gnu + +lib_LTLIBRARIES = libexample.la +libexample_la_SOURCES = libexample.c +libexample_la_LDFLAGS = -version-info 0:0:0 + # if you write a self-test script named `chk', uncomment the # following and add `chk' to the EXTRA_DIST list #TESTS=chk Deleted: csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 2009-10-07 10:29:20 UTC (rev 6739) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4 2009-10-07 10:41:12 UTC (rev 6740) @@ -1,40 +0,0 @@ -#serial 3 - -dnl From Jim Meyering - -dnl Define HAVE_STRUCT_UTIMBUF if `struct utimbuf' is declared -- -dnl usually in . -dnl Some systems have utime.h but don't declare the struct anywhere. - -AC_DEFUN(jm_CHECK_TYPE_STRUCT_UTIMBUF, -[ - AC_CHECK_HEADERS(utime.h) - AC_REQUIRE([AC_HEADER_TIME]) - AC_CACHE_CHECK([for struct utimbuf], fu_cv_sys_struct_utimbuf, - [AC_TRY_COMPILE( - [ -#ifdef TIME_WITH_SYS_TIME -# include -# include -#else -# ifdef HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif -#ifdef HAVE_UTIME_H -# include -#endif - ], - [static struct utimbuf x; x.actime = x.modtime;], - fu_cv_sys_struct_utimbuf=yes, - fu_cv_sys_struct_utimbuf=no) - ]) - - if test $fu_cv_sys_struct_utimbuf = yes; then - AC_DEFINE_UNQUOTED(HAVE_STRUCT_UTIMBUF, 1, -[Define if struct utimbuf is declared -- usually in . - Some systems have utime.h but don't declare the struct anywhere. ]) - fi -]) Deleted: csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 2009-10-07 10:29:20 UTC (rev 6739) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/aclocal.m4 2009-10-07 10:41:12 UTC (rev 6740) @@ -1,964 +0,0 @@ -# generated automatically by aclocal 1.11 -*- Autoconf -*- - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],, -[m4_warning([this file was generated for autoconf 2.64. -You have another version of autoconf. It may work, but is not guaranteed to. -If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically `autoreconf'.])]) - -# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_AUTOMAKE_VERSION(VERSION) -# ---------------------------- -# Automake X.Y traces this macro to ensure aclocal.m4 has been -# generated from the m4 files accompanying Automake X.Y. -# (This private macro should not be called outside this file.) -AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.11' -dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to -dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.11], [], - [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl -]) - -# _AM_AUTOCONF_VERSION(VERSION) -# ----------------------------- -# aclocal traces this macro to find the Autoconf version. -# This is a private macro too. Using m4_define simplifies -# the logic in aclocal, which can simply ignore this definition. -m4_define([_AM_AUTOCONF_VERSION], []) - -# AM_SET_CURRENT_AUTOMAKE_VERSION -# ------------------------------- -# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. -# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. -AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.11])dnl -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) - -# AM_AUX_DIR_EXPAND -*- Autoconf -*- - -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to -# `$srcdir', `$srcdir/..', or `$srcdir/../..'. -# -# Of course, Automake must honor this variable whenever it calls a -# tool from the auxiliary directory. The problem is that $srcdir (and -# therefore $ac_aux_dir as well) can be either absolute or relative, -# depending on how configure is run. This is pretty annoying, since -# it makes $ac_aux_dir quite unusable in subdirectories: in the top -# source directory, any form will work fine, but in subdirectories a -# relative path needs to be adjusted first. -# -# $ac_aux_dir/missing -# fails when called from a subdirectory if $ac_aux_dir is relative -# $top_srcdir/$ac_aux_dir/missing -# fails if $ac_aux_dir is absolute, -# fails when called from a subdirectory in a VPATH build with -# a relative $ac_aux_dir -# -# The reason of the latter failure is that $top_srcdir and $ac_aux_dir -# are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is `.', but things will broke when you -# start a VPATH build or use an absolute $srcdir. -# -# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, -# iff we strip the leading $srcdir from $ac_aux_dir. That would be: -# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` -# and then we would define $MISSING as -# MISSING="\${SHELL} $am_aux_dir/missing" -# This will work as long as MISSING is not called from configure, because -# unfortunately $(top_srcdir) has no meaning in configure. -# However there are other variables, like CC, which are often used in -# configure, and could therefore not use this "fixed" $ac_aux_dir. -# -# Another solution, used here, is to always expand $ac_aux_dir to an -# absolute PATH. The drawback is that using absolute paths prevent a -# configured tree to be moved without reconfiguration. - -AC_DEFUN([AM_AUX_DIR_EXPAND], -[dnl Rely on autoconf to set up CDPATH properly. -AC_PREREQ([2.50])dnl -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` -]) - -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 9 - -# AM_CONDITIONAL(NAME, SHELL-CONDITION) -# ------------------------------------- -# Define a conditional. -AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ(2.52)dnl - ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE])dnl -AC_SUBST([$1_FALSE])dnl -_AM_SUBST_NOTMAKE([$1_TRUE])dnl -_AM_SUBST_NOTMAKE([$1_FALSE])dnl -m4_define([_AM_COND_VALUE_$1], [$2])dnl -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi -AC_CONFIG_COMMANDS_PRE( -[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([[conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]]) -fi])]) - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 10 - -# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - -# _AM_DEPENDENCIES(NAME) -# ---------------------- -# See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "GCJ", or "OBJC". -# We try a few techniques and use that to set a single cache variable. -# -# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was -# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular -# dependency, and given that the user is not expected to run this macro, -# just rely on AC_PROG_CC. -AC_DEFUN([_AM_DEPENDENCIES], -[AC_REQUIRE([AM_SET_DEPDIR])dnl -AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl -AC_REQUIRE([AM_MAKE_INCLUDE])dnl -AC_REQUIRE([AM_DEP_TRACK])dnl - -ifelse([$1], CC, [depcc="$CC" am_compiler_list=], - [$1], CXX, [depcc="$CXX" am_compiler_list=], - [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], UPC, [depcc="$UPC" am_compiler_list=], - [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) - -AC_CACHE_CHECK([dependency style of $depcc], - [am_cv_$1_dependencies_compiler_type], -[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named `D' -- because `-MD' means `put the output - # in D'. - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_$1_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` - fi - am__universal=false - m4_case([$1], [CC], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac], - [CXX], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac]) - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with - # Solaris 8's {/usr,}/bin/sh. - touch sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with `-c' and `-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle `-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # after this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvisualcpp | msvcmsys) - # This compiler won't grok `-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_$1_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_$1_dependencies_compiler_type=none -fi -]) -AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) -AM_CONDITIONAL([am__fastdep$1], [ - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) -]) - - -# AM_SET_DEPDIR -# ------------- -# Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES -AC_DEFUN([AM_SET_DEPDIR], -[AC_REQUIRE([AM_SET_LEADING_DOT])dnl -AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl -]) - - -# AM_DEP_TRACK -# ------------ -AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE(dependency-tracking, -[ --disable-dependency-tracking speeds up one-time build - --enable-dependency-tracking do not reject slow dependency extractors]) -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' -fi -AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH])dnl -_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl -]) - -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -#serial 5 - -# _AM_OUTPUT_DEPENDENCY_COMMANDS -# ------------------------------ -AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[{ - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} -])# _AM_OUTPUT_DEPENDENCY_COMMANDS - - -# AM_OUTPUT_DEPENDENCY_COMMANDS -# ----------------------------- -# This macro should only be invoked once -- use via AC_REQUIRE. -# -# This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each `.P' file that we will -# need in order to bootstrap the dependency handling code. -AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], -[AC_CONFIG_COMMANDS([depfiles], - [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) -]) - -# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 8 - -# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. -AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) - -# Do all the work for Automake. -*- Autoconf -*- - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 16 - -# This macro actually does too much. Some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) -# AM_INIT_AUTOMAKE([OPTIONS]) -# ----------------------------------------------- -# The call with PACKAGE and VERSION arguments is the old style -# call (pre autoconf-2.50), which is being phased out. PACKAGE -# and VERSION should now be passed to AC_INIT and removed from -# the call to AM_INIT_AUTOMAKE. -# We support both call styles for the transition. After -# the next Automake release, Autoconf can make the AC_INIT -# arguments mandatory, and then we can depend on a new Autoconf -# release and drop the old call support. -AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.62])dnl -dnl Autoconf wants to disallow AM_ names. We explicitly allow -dnl the ones we care about. -m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl -AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl -AC_REQUIRE([AC_PROG_INSTALL])dnl -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi -AC_SUBST([CYGPATH_W]) - -# Define the identity of the package. -dnl Distinguish between old-style and new-style calls. -m4_ifval([$2], -[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl - AC_SUBST([PACKAGE], [$1])dnl - AC_SUBST([VERSION], [$2])], -[_AM_SET_OPTIONS([$1])dnl -dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. -m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, - [m4_fatal([AC_INIT should be called with package and version arguments])])dnl - AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl - AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl - -_AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) - AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl - -# Some tools Automake needs. -AC_REQUIRE([AM_SANITY_CHECK])dnl -AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) -AM_MISSING_PROG(AUTOCONF, autoconf) -AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) -AM_MISSING_PROG(AUTOHEADER, autoheader) -AM_MISSING_PROG(MAKEINFO, makeinfo) -AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl -AC_REQUIRE([AM_PROG_MKDIR_P])dnl -# We need awk for the "check" target. The system "awk" is bad on -# some platforms. -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([AC_PROG_MAKE_SET])dnl -AC_REQUIRE([AM_SET_LEADING_DOT])dnl -_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], - [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], - [_AM_PROG_TAR([v7])])]) -_AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES(CC)], - [define([AC_PROG_CC], - defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl -AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES(CXX)], - [define([AC_PROG_CXX], - defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES(OBJC)], - [define([AC_PROG_OBJC], - defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl -]) -_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl -dnl The `parallel-tests' driver may need to know about EXEEXT, so add the -dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro -dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. -AC_CONFIG_COMMANDS_PRE(dnl -[m4_provide_if([_AM_COMPILER_EXEEXT], - [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl -]) - -dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not -dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further -dnl mangled by Autoconf and run in a shell conditional statement. -m4_define([_AC_COMPILER_EXEEXT], -m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) - - -# When config.status generates a header, we must update the stamp-h file. -# This file resides in the same directory as the config header -# that is generated. The stamp files are numbered to have different names. - -# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the -# loop where config.status creates the headers, so we can generate -# our stamp files there. -AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], -[# Compute $1's index in $config_headers. -_am_arg=$1 -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) - -# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_SH -# ------------------ -# Define $install_sh. -AC_DEFUN([AM_PROG_INSTALL_SH], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -if test x"${install_sh}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi -AC_SUBST(install_sh)]) - -# Copyright (C) 2003, 2005 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 2 - -# Check whether the underlying file-system supports filenames -# with a leading dot. For instance MS-DOS doesn't. -AC_DEFUN([AM_SET_LEADING_DOT], -[rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null -AC_SUBST([am__leading_dot])]) - -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 4 - -# AM_MAKE_INCLUDE() -# ----------------- -# Check to see how make treats includes. -AC_DEFUN([AM_MAKE_INCLUDE], -[am_make=${MAKE-make} -cat > confinc << 'END' -am__doit: - @echo this is the am__doit target -.PHONY: am__doit -END -# If we don't find an include directive, just comment out the code. -AC_MSG_CHECKING([for style of include used by $am_make]) -am__include="#" -am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from `make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD - ;; - esac -fi -AC_SUBST([am__include]) -AC_SUBST([am__quote]) -AC_MSG_RESULT([$_am_result]) -rm -f confinc confmf -]) - -# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- - -# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 6 - -# AM_MISSING_PROG(NAME, PROGRAM) -# ------------------------------ -AC_DEFUN([AM_MISSING_PROG], -[AC_REQUIRE([AM_MISSING_HAS_RUN]) -$1=${$1-"${am_missing_run}$2"} -AC_SUBST($1)]) - - -# AM_MISSING_HAS_RUN -# ------------------ -# Define MISSING if not defined so far and test if it supports --run. -# If it does, set am_missing_run to use it, otherwise, to nothing. -AC_DEFUN([AM_MISSING_HAS_RUN], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([missing])dnl -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac -fi -# Use eval to expand $SHELL -if eval "$MISSING --run true"; then - am_missing_run="$MISSING --run " -else - am_missing_run= - AC_MSG_WARN([`missing' script is too old or missing]) -fi -]) - -# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_MKDIR_P -# --------------- -# Check for `mkdir -p'. -AC_DEFUN([AM_PROG_MKDIR_P], -[AC_PREREQ([2.60])dnl -AC_REQUIRE([AC_PROG_MKDIR_P])dnl -dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, -dnl while keeping a definition of mkdir_p for backward compatibility. -dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. -dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of -dnl Makefile.ins that do not define MKDIR_P, so we do our own -dnl adjustment using top_builddir (which is defined more often than -dnl MKDIR_P). -AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl -case $mkdir_p in - [[\\/$]]* | ?:[[\\/]]*) ;; - */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; -esac -]) - -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 4 - -# _AM_MANGLE_OPTION(NAME) -# ----------------------- -AC_DEFUN([_AM_MANGLE_OPTION], -[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) - -# _AM_SET_OPTION(NAME) -# ------------------------------ -# Set option NAME. Presently that only means defining a flag for this option. -AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) - -# _AM_SET_OPTIONS(OPTIONS) -# ---------------------------------- -# OPTIONS is a space-separated list of Automake options. -AC_DEFUN([_AM_SET_OPTIONS], -[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) - -# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) -# ------------------------------------------- -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -AC_DEFUN([_AM_IF_OPTION], -[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Check to make sure that the build environment is sane. -*- Autoconf -*- - -# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 5 - -# AM_SANITY_CHECK -# --------------- -AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) -# Just in case -sleep 1 -echo timestamp > conftest.file -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[[\\\"\#\$\&\'\`$am_lf]]*) - AC_MSG_ERROR([unsafe absolute working directory name]);; -esac -case $srcdir in - *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; -esac - -# Do `set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$[*]" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - rm -f conftest.file - if test "$[*]" != "X $srcdir/configure conftest.file" \ - && test "$[*]" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken -alias in your environment]) - fi - - test "$[2]" = conftest.file - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -AC_MSG_RESULT(yes)]) - -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_STRIP -# --------------------- -# One issue with vendor `install' (even GNU) is that you can't -# specify the program used to strip binaries. This is especially -# annoying in cross-compiling environments, where the build's strip -# is unlikely to handle the host's binaries. -# Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in `make install-strip', and initialize -# STRIPPROG with the value of the STRIP variable (set by the user). -AC_DEFUN([AM_PROG_INSTALL_STRIP], -[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# Installed binaries are usually stripped using `strip' when the user -# run `make install-strip'. However `strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the `STRIP' environment variable to overrule this program. -dnl Don't test for $cross_compiling = yes, because it might be `maybe'. -if test "$cross_compiling" != no; then - AC_CHECK_TOOL([STRIP], [strip], :) -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -AC_SUBST([INSTALL_STRIP_PROGRAM])]) - -# Copyright (C) 2006, 2008 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 2 - -# _AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- -# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. -# This macro is traced by Automake. -AC_DEFUN([_AM_SUBST_NOTMAKE]) - -# AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- -# Public sister of _AM_SUBST_NOTMAKE. -AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) - -# Check how to create a tarball. -*- Autoconf -*- - -# Copyright (C) 2004, 2005 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 2 - -# _AM_PROG_TAR(FORMAT) -# -------------------- -# Check how to create a tarball in format FORMAT. -# FORMAT should be one of `v7', `ustar', or `pax'. -# -# Substitute a variable $(am__tar) that is a command -# writing to stdout a FORMAT-tarball containing the directory -# $tardir. -# tardir=directory && $(am__tar) > result.tar -# -# Substitute a variable $(am__untar) that extract such -# a tarball read from stdin. -# $(am__untar) < result.tar -AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. -AM_MISSING_PROG([AMTAR], [tar]) -m4_if([$1], [v7], - [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], - [m4_case([$1], [ustar],, [pax],, - [m4_fatal([Unknown tar format])]) -AC_MSG_CHECKING([how to create a $1 tar archive]) -# Loop over all known methods to create a tar archive until one works. -_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' -_am_tools=${am_cv_prog_tar_$1-$_am_tools} -# Do not fold the above two line into one, because Tru64 sh and -# Solaris sh will not grok spaces in the rhs of `-'. -for _am_tool in $_am_tools -do - case $_am_tool in - gnutar) - for _am_tar in tar gnutar gtar; - do - AM_RUN_LOG([$_am_tar --version]) && break - done - am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' - am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' - am__untar="$_am_tar -xf -" - ;; - plaintar) - # Must skip GNU tar: if it does not support --format= it doesn't create - # ustar tarball either. - (tar --version) >/dev/null 2>&1 && continue - am__tar='tar chf - "$$tardir"' - am__tar_='tar chf - "$tardir"' - am__untar='tar xf -' - ;; - pax) - am__tar='pax -L -x $1 -w "$$tardir"' - am__tar_='pax -L -x $1 -w "$tardir"' - am__untar='pax -r' - ;; - cpio) - am__tar='find "$$tardir" -print | cpio -o -H $1 -L' - am__tar_='find "$tardir" -print | cpio -o -H $1 -L' - am__untar='cpio -i -H $1 -d' - ;; - none) - am__tar=false - am__tar_=false - am__untar=false - ;; - esac - - # If the value was cached, stop now. We just wanted to have am__tar - # and am__untar set. - test -n "${am_cv_prog_tar_$1}" && break - - # tar/untar a dummy directory, and stop if the command works - rm -rf conftest.dir - mkdir conftest.dir - echo GrepMe > conftest.dir/file - AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) - rm -rf conftest.dir - if test -s conftest.tar; then - AM_RUN_LOG([$am__untar /dev/null 2>&1 && break - fi -done -rm -rf conftest.dir - -AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) -AC_MSG_RESULT([$am_cv_prog_tar_$1])]) -AC_SUBST([am__tar]) -AC_SUBST([am__untar]) -]) # _AM_PROG_TAR - -m4_include([acinclude.m4]) Copied: csw/mgar/pkg/examples/modulations/trunk/files/libexample/binexample.c (from rev 6739, csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c) =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/binexample.c (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/binexample.c 2009-10-07 10:41:12 UTC (rev 6740) @@ -0,0 +1,118 @@ +/* + libexample - A shared library example project + + Copyright (C) 2009 Maciej Blizinski + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +#include +#include +#include +*/ + +#include +#include +#include +#include "system.h" + +#define EXIT_FAILURE 1 + +/* +char *xmalloc (); +char *xrealloc (); +char *xstrdup (); +*/ + + +static void usage (int status); + +/* The name the program was run with, stripped of any leading path. */ +char *program_name; + +/* getopt_long return codes */ +enum {DUMMY_CODE=129 +}; + +/* Option flags and variables */ + + +static struct option const long_options[] = +{ + {"help", no_argument, 0, 'h'}, + {"version", no_argument, 0, 'V'}, + {NULL, 0, NULL, 0} +}; + +static int decode_switches (int argc, char **argv); + +int +main (int argc, char **argv) +{ + int i; + + program_name = argv[0]; + + i = decode_switches (argc, argv); + + /* do the work */ + + exit (0); +} + +/* Set all the option flags according to the switches specified. + Return the index of the first non-option argument. */ + +static int +decode_switches (int argc, char **argv) +{ + int c; + + + while ((c = getopt_long (argc, argv, + "h" /* help */ + "V", /* version */ + long_options, (int *) 0)) != EOF) + { + switch (c) + { + case 'V': + printf ("libexample %s\n", VERSION); + exit (0); + + case 'h': + usage (0); + + default: + usage (EXIT_FAILURE); + } + } + + return optind; +} + + +static void +usage (int status) +{ + printf (_("%s - \ +A shared library example project\n"), program_name); + printf (_("Usage: %s [OPTION]... [FILE]...\n"), program_name); + printf (_("\ +Options:\n\ + -h, --help display this help and exit\n\ + -V, --version output version information and exit\n\ +")); + exit (status); +} Modified: csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in 2009-10-07 10:29:20 UTC (rev 6739) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/configure.in 2009-10-07 10:41:12 UTC (rev 6740) @@ -3,6 +3,8 @@ AC_INIT(libexample.c) dnl Every other copy of the package version number gets its value from here AM_INIT_AUTOMAKE(libexample, 0.1.0) +AM_PROG_LIBTOOL +AC_CONFIG_MACRO_DIR([m4]) dnl create a config.h file (Automake will add -DHAVE_CONFIG_H) AM_CONFIG_HEADER(config.h) Deleted: csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c 2009-10-07 10:29:20 UTC (rev 6739) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/libexample.c 2009-10-07 10:41:12 UTC (rev 6740) @@ -1,118 +0,0 @@ -/* - libexample - A shared library example project - - Copyright (C) 2009 Maciej Blizinski - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program 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 General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -#include -#include -#include -*/ - -#include -#include -#include -#include "system.h" - -#define EXIT_FAILURE 1 - -/* -char *xmalloc (); -char *xrealloc (); -char *xstrdup (); -*/ - - -static void usage (int status); - -/* The name the program was run with, stripped of any leading path. */ -char *program_name; - -/* getopt_long return codes */ -enum {DUMMY_CODE=129 -}; - -/* Option flags and variables */ - - -static struct option const long_options[] = -{ - {"help", no_argument, 0, 'h'}, - {"version", no_argument, 0, 'V'}, - {NULL, 0, NULL, 0} -}; - -static int decode_switches (int argc, char **argv); - -int -main (int argc, char **argv) -{ - int i; - - program_name = argv[0]; - - i = decode_switches (argc, argv); - - /* do the work */ - - exit (0); -} - -/* Set all the option flags according to the switches specified. - Return the index of the first non-option argument. */ - -static int -decode_switches (int argc, char **argv) -{ - int c; - - - while ((c = getopt_long (argc, argv, - "h" /* help */ - "V", /* version */ - long_options, (int *) 0)) != EOF) - { - switch (c) - { - case 'V': - printf ("libexample %s\n", VERSION); - exit (0); - - case 'h': - usage (0); - - default: - usage (EXIT_FAILURE); - } - } - - return optind; -} - - -static void -usage (int status) -{ - printf (_("%s - \ -A shared library example project\n"), program_name); - printf (_("Usage: %s [OPTION]... [FILE]...\n"), program_name); - printf (_("\ -Options:\n\ - -h, --help display this help and exit\n\ - -V, --version output version information and exit\n\ -")); - exit (status); -} Copied: csw/mgar/pkg/examples/modulations/trunk/files/libexample/m4/acinclude.m4 (from rev 6739, csw/mgar/pkg/examples/modulations/trunk/files/libexample/acinclude.m4) =================================================================== --- csw/mgar/pkg/examples/modulations/trunk/files/libexample/m4/acinclude.m4 (rev 0) +++ csw/mgar/pkg/examples/modulations/trunk/files/libexample/m4/acinclude.m4 2009-10-07 10:41:12 UTC (rev 6740) @@ -0,0 +1,40 @@ +#serial 3 + +dnl From Jim Meyering + +dnl Define HAVE_STRUCT_UTIMBUF if `struct utimbuf' is declared -- +dnl usually in . +dnl Some systems have utime.h but don't declare the struct anywhere. + +AC_DEFUN(jm_CHECK_TYPE_STRUCT_UTIMBUF, +[ + AC_CHECK_HEADERS(utime.h) + AC_REQUIRE([AC_HEADER_TIME]) + AC_CACHE_CHECK([for struct utimbuf], fu_cv_sys_struct_utimbuf, + [AC_TRY_COMPILE( + [ +#ifdef TIME_WITH_SYS_TIME +# include +# include +#else +# ifdef HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif +#ifdef HAVE_UTIME_H +# include +#endif + ], + [static struct utimbuf x; x.actime = x.modtime;], + fu_cv_sys_struct_utimbuf=yes, + fu_cv_sys_struct_utimbuf=no) + ]) + + if test $fu_cv_sys_struct_utimbuf = yes; then + AC_DEFINE_UNQUOTED(HAVE_STRUCT_UTIMBUF, 1, +[Define if struct utimbuf is declared -- usually in . + Some systems have utime.h but don't declare the struct anywhere. ]) + fi +]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 13:15:16 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 11:15:16 +0000 Subject: [csw-devel] SF.net SVN: gar:[6741] csw/mgar/pkg/diffstat/trunk Message-ID: Revision: 6741 http://gar.svn.sourceforge.net/gar/?rev=6741&view=rev Author: dmichelsen Date: 2009-10-07 11:15:16 +0000 (Wed, 07 Oct 2009) Log Message: ----------- diffstat: Update to 1.50 Modified Paths: -------------- csw/mgar/pkg/diffstat/trunk/Makefile csw/mgar/pkg/diffstat/trunk/checksums Modified: csw/mgar/pkg/diffstat/trunk/Makefile =================================================================== --- csw/mgar/pkg/diffstat/trunk/Makefile 2009-10-07 10:41:12 UTC (rev 6740) +++ csw/mgar/pkg/diffstat/trunk/Makefile 2009-10-07 11:15:16 UTC (rev 6741) @@ -1,5 +1,5 @@ GARNAME = diffstat -GARVERSION = 1.49 +GARVERSION = 1.50 CATEGORIES = utils DESCRIPTION = A utility which provides statistics based on the output of diff Modified: csw/mgar/pkg/diffstat/trunk/checksums =================================================================== --- csw/mgar/pkg/diffstat/trunk/checksums 2009-10-07 10:41:12 UTC (rev 6740) +++ csw/mgar/pkg/diffstat/trunk/checksums 2009-10-07 11:15:16 UTC (rev 6741) @@ -1 +1 @@ -63fa6d90f137f5d839e94aa93882db98 download/diffstat-1.49.tgz +ece8f6a380d30cf2355ebb27375350d7 diffstat-1.50.tgz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 13:26:29 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 11:26:29 +0000 Subject: [csw-devel] SF.net SVN: gar:[6742] csw/mgar/pkg/esound/trunk/Makefile Message-ID: Revision: 6742 http://gar.svn.sourceforge.net/gar/?rev=6742&view=rev Author: dmichelsen Date: 2009-10-07 11:26:29 +0000 (Wed, 07 Oct 2009) Log Message: ----------- esound: Add todo Modified Paths: -------------- csw/mgar/pkg/esound/trunk/Makefile Modified: csw/mgar/pkg/esound/trunk/Makefile =================================================================== --- csw/mgar/pkg/esound/trunk/Makefile 2009-10-07 11:15:16 UTC (rev 6741) +++ csw/mgar/pkg/esound/trunk/Makefile 2009-10-07 11:26:29 UTC (rev 6742) @@ -18,6 +18,11 @@ UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 +# TODO on next release: +# - Move config file from /opt/csw/etc to /etc/opt/csw +# - Document the location in esd(1) +# - Skip 64 binaries + BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Wed Oct 7 14:03:06 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Wed, 07 Oct 2009 12:03:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6743] csw/mgar/pkg/cups/branches/cups-1.4/ Message-ID: Revision: 6743 http://gar.svn.sourceforge.net/gar/?rev=6743&view=rev Author: wahwah Date: 2009-10-07 12:03:06 +0000 (Wed, 07 Oct 2009) Log Message: ----------- cups-1.4: Setting svn:externals to v2-pbuild Property Changed: ---------------- csw/mgar/pkg/cups/branches/cups-1.4/ Property changes on: csw/mgar/pkg/cups/branches/cups-1.4 ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2-pbuild This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 15:06:17 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 13:06:17 +0000 Subject: [csw-devel] SF.net SVN: gar:[6744] csw/mgar/pkg Message-ID: Revision: 6744 http://gar.svn.sourceforge.net/gar/?rev=6744&view=rev Author: dmichelsen Date: 2009-10-07 13:06:14 +0000 (Wed, 07 Oct 2009) Log Message: ----------- pakchois: Initial commit Added Paths: ----------- csw/mgar/pkg/pakchois/ csw/mgar/pkg/pakchois/branches/ csw/mgar/pkg/pakchois/tags/ csw/mgar/pkg/pakchois/trunk/ csw/mgar/pkg/pakchois/trunk/Makefile csw/mgar/pkg/pakchois/trunk/checksums csw/mgar/pkg/pakchois/trunk/files/ Property changes on: csw/mgar/pkg/pakchois/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/pakchois/trunk/Makefile =================================================================== --- csw/mgar/pkg/pakchois/trunk/Makefile (rev 0) +++ csw/mgar/pkg/pakchois/trunk/Makefile 2009-10-07 13:06:14 UTC (rev 6744) @@ -0,0 +1,26 @@ +GARNAME = pakchois +GARVERSION = 0.4 +CATEGORIES = lib + +DESCRIPTION = Just another PKCS #11 wrapper library +define BLURB + pakchois is just another PKCS #11 wrapper library. pakchois aims to provide + a thin wrapper over the PKCS#11 interface. +endef + +MASTER_SITES = http://www.manyfish.co.uk/pakchois/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +SPKG_SOURCEURL = http://www.manyfish.co.uk/pakchois/ + +BUILD64 = 1 +NOISALIST = 1 +EXTRA_LINKER_FLAGS = -lintl +CONFIGURE_ARGS = $(DIRPATHS) + +REQUIRED_PKGS = CSWggettextrt + +include gar/category.mk Added: csw/mgar/pkg/pakchois/trunk/checksums =================================================================== --- csw/mgar/pkg/pakchois/trunk/checksums (rev 0) +++ csw/mgar/pkg/pakchois/trunk/checksums 2009-10-07 13:06:14 UTC (rev 6744) @@ -0,0 +1 @@ +218ad0256e514989299acdf4e86aaf3d download/pakchois-0.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 16:04:36 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 14:04:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[6745] csw/mgar/gar/v2-pbuild Message-ID: Revision: 6745 http://gar.svn.sourceforge.net/gar/?rev=6745&view=rev Author: dmichelsen Date: 2009-10-07 14:04:36 +0000 (Wed, 07 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Add setonce-magic to some variables Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.mk csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.mk 2009-10-07 13:06:14 UTC (rev 6744) +++ csw/mgar/gar/v2-pbuild/gar.mk 2009-10-07 14:04:36 UTC (rev 6745) @@ -33,6 +33,10 @@ MAKEPATH = $(shell echo $(1) | perl -lne 'print join(":", split)') TOLOWER = $(shell echo $(1) | tr '[A-Z]' '[a-z]') +# If you call this the value is only evaluated the first time +# Usage: $(call SETONCE,A,MyComplexVariableEvaluatedOnlyOnce) +SETONCE = $(eval $(1) ?= $(2)) + #meant to take a git url and return just the $proj.git part GITPROJ = $(lastword $(subst /, ,$(1))) Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-07 13:06:14 UTC (rev 6744) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-07 14:04:36 UTC (rev 6745) @@ -157,7 +157,7 @@ SPKG_DEPEND_DB = $(GARDIR)/csw/depend.db -SPKG_PKGFILE ?= %{bitname}-%{SPKG_VERSION}%{SPKG_REVSTAMP}-%{SPKG_OSNAME}-%{arch}-$(or $(filter $(call _REVISION),UNCOMMITTED NOTVERSIONED NOSVN),CSW).pkg +SPKG_PKGFILE ?= %{bitname}-%{SPKG_VERSION},%{SPKG_REVSTAMP}-%{SPKG_OSNAME}-%{arch}-$(or $(filter $(call _REVISION),UNCOMMITTED NOTVERSIONED NOSVN),CSW).pkg # Handle cswclassutils # - prepend cswpreserveconf if it is not already in SPKG_CLASSES @@ -191,9 +191,9 @@ endif ifeq ($(SPKG_FULL_REVSTAMP),1) -SPKG_REVSTAMP ?= ,REV=$(shell date '+%Y.%m.%d.%H.%M') +$(call SETONCE,SPKG_REVSTAMP,REV=$(shell date '+%Y.%m.%d.%H.%M')) else -SPKG_REVSTAMP ?= ,REV=$(shell date '+%Y.%m.%d') +$(call SETONCE,SPKG_REVSTAMP,REV=$(shell date '+%Y.%m.%d')) endif # Where we find our mkpackage global templates @@ -470,7 +470,7 @@ $(_DBG)(echo "PKG=$*"; \ echo "NAME=$(call catalogname,$*) - $(call pkgvar,SPKG_DESC,$*)"; \ echo "ARCH=$(if $(or $(ARCHALL),$(ARCHALL_$*)),all,$(call pkgvar,GARCH,$*))"; \ - echo "VERSION=$(call pkgvar,SPKG_VERSION,$*)$(call pkgvar,SPKG_REVSTAMP,$*)"; \ + echo "VERSION=$(call pkgvar,SPKG_VERSION,$*),$(call pkgvar,SPKG_REVSTAMP,$*)"; \ echo "CATEGORY=$(call pkgvar,SPKG_CATEGORY,$*)"; \ echo "VENDOR=$(call pkgvar,SPKG_VENDOR,$*)"; \ echo "EMAIL=$(call pkgvar,SPKG_EMAIL,$*)"; \ @@ -681,7 +681,7 @@ submitpkg-%: @$(if $(filter $(call _REVISION),UNCOMMITTED NOTVERSIONED NOSVN),\ $(error You have local files not in the repository. Please commit everything before submitting a package)) - $(SVN) -m "$(GARNAME): Tag as release $(SPKG_VERSION)$(SPKG_REVSTAMP)$(if $(filter default,$*),, for project '$*')" cp $(_PKGURL)/trunk $(_PKGURL)/tags/$(if $(filter default,$*),,$*_)$(GARNAME)-$(SPKG_VERSION)$(SPKG_REVSTAMP) + $(SVN) -m "$(GARNAME): Tag as release $(SPKG_VERSION),$(SPKG_REVSTAMP)$(if $(filter default,$*),, for project '$*')" cp $(_PKGURL)/trunk $(_PKGURL)/tags/$(if $(filter default,$*),,$*_)$(GARNAME)-$(SPKG_VERSION),$(SPKG_REVSTAMP) # dependb - update the dependency database # This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 17:28:59 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 15:28:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6746] csw/mgar/pkg/cswclassutils/trunk/files/ CSWcswclassutils.r.cswinetd Message-ID: Revision: 6746 http://gar.svn.sourceforge.net/gar/?rev=6746&view=rev Author: bdwalton Date: 2009-10-07 15:28:59 +0000 (Wed, 07 Oct 2009) Log Message: ----------- cswclassutils: make the inetd service removal generic (copy/paste error); backup inetd.conf before modifications Modified Paths: -------------- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd Modified: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd 2009-10-07 14:04:36 UTC (rev 6745) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.r.cswinetd 2009-10-07 15:28:59 UTC (rev 6746) @@ -28,11 +28,12 @@ inetdsvc=`cat $dest` set -- $inetdsvc svcname=$1 - echo "Removing $svcname service from inetd.conf" - /usr/xpg4/bin/sed -e '/# CSWgitosis/{ + echo "Removing $svcname service from inetd.conf (original: $inetdconf.$PKGINST)" + cp -p $inetdconf $inetdconf.$PKGINST + /usr/xpg4/bin/sed -e "/# $PKGINST/{ $!N -/^# CSWgitosis.*\n#git.*$/d -}' $inetdconf > $inetdconf.$$ && \ +/^# $PKGINST.*\n#$svcname.*$/d +}" $inetdconf > $inetdconf.$$ && \ mv $inetdconf.$$ $inetdconf && \ chown root:sys $inetdconf && \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 18:18:42 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 16:18:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[6747] csw/mgar/pkg/cswclassutils/trunk/Makefile Message-ID: Revision: 6747 http://gar.svn.sourceforge.net/gar/?rev=6747&view=rev Author: bdwalton Date: 2009-10-07 16:18:42 +0000 (Wed, 07 Oct 2009) Log Message: ----------- cswclassutils: setup GAR copyright/license stuff Modified Paths: -------------- csw/mgar/pkg/cswclassutils/trunk/Makefile Modified: csw/mgar/pkg/cswclassutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-07 15:28:59 UTC (rev 6746) +++ csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-07 16:18:42 UTC (rev 6747) @@ -8,6 +8,8 @@ ARCHALL = 1 +LICENSE = license + CONFIGURE_SCRIPTS = BUILD_SCRIPTS = TEST_SCRIPTS = @@ -31,6 +33,6 @@ @ginstall -m 0755 -d $(DESTDIR)/var/opt/csw/svc/method @ginstall -m 0755 $(FILEDIR)/CSW$(GARNAME).csw.smf.sample $(DESTDIR)/etc/opt/csw/init.d/csw.smf.sample @ginstall -m 0444 $(FILEDIR)/CSW$(GARNAME).README.CSW $(DESTDIR)$(docdir)/$(GARNAME)/README.CSW - @ginstall -m 0444 $(FILEDIR)/CSW$(GARNAME).copyright $(DESTDIR)$(docdir)/$(GARNAME)/license + @cp $(FILEDIR)/CSW$(GARNAME).copyright $(WORKSRC)/license @$(foreach CAS,$(CASLIST),ginstall -m 0555 $(FILEDIR)/CSW$(GARNAME).$(CAS) $(DESTDIR)/usr/sadm/install/scripts/$(CAS);) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 18:46:38 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 16:46:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[6748] csw/mgar/pkg/gardev/trunk/files/README.csw Message-ID: Revision: 6748 http://gar.svn.sourceforge.net/gar/?rev=6748&view=rev Author: bdwalton Date: 2009-10-07 16:46:38 +0000 (Wed, 07 Oct 2009) Log Message: ----------- gardev: update the README for gar_devel Modified Paths: -------------- csw/mgar/pkg/gardev/trunk/files/README.csw Modified: csw/mgar/pkg/gardev/trunk/files/README.csw =================================================================== --- csw/mgar/pkg/gardev/trunk/files/README.csw 2009-10-07 16:18:42 UTC (rev 6747) +++ csw/mgar/pkg/gardev/trunk/files/README.csw 2009-10-07 16:46:38 UTC (rev 6748) @@ -1,3 +1,15 @@ This is just a dummy package that depends on all CSW packages that are required to create packages with GAR. Feel free to remove it after you've used it to install the current requirements. + +It is useful _only_ in the situation where you'd like to checkout +package build descriptions from the gar.sourceforge.net subversion +repository on a machine and roll your own packages from it. + +Currently, this package will pull everything required by GAR except +the compilers. These, you will need to get and install yourself. If +packages you're working on need GCC, you can obtain v3 or v4 packages +from OpenCSW. Sun compilers must be obtained from sun.com. + +Please see http://sourceforge.net/apps/trac/gar/wiki/GarSetup for more +help getting a working GAR development environment on your machine. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 19:04:12 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 17:04:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[6749] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 6749 http://gar.svn.sourceforge.net/gar/?rev=6749&view=rev Author: bdwalton Date: 2009-10-07 17:04:12 +0000 (Wed, 07 Oct 2009) Log Message: ----------- git: fix the PKGFILES for the bash completion package Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2009-10-07 16:46:38 UTC (rev 6748) +++ csw/mgar/pkg/git/trunk/Makefile 2009-10-07 17:04:12 UTC (rev 6749) @@ -99,7 +99,7 @@ PKGFILES_CSWgitcvs = $(foreach d,$(fdirs),$(d)/.*cvs.*) PKGFILES_CSWgitemacs = .*emacs.* PKGFILES_CSWgitdoc = $(docdir)/.* -PKGFILES_CSWgitcompletion = $(bashconfdir)/bash_completion.d/.* +PKGFILES_CSWgitcompletion = .*/bash_completion.d/.* PKGFILES_CSWgitdevel = $(includedir)/.* $(libdir)/.* # We define upstream file regex so we can be notifed of new upstream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 21:04:51 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 19:04:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6750] csw/mgar/pkg/pakchois/trunk/Makefile Message-ID: Revision: 6750 http://gar.svn.sourceforge.net/gar/?rev=6750&view=rev Author: dmichelsen Date: 2009-10-07 19:04:50 +0000 (Wed, 07 Oct 2009) Log Message: ----------- pakchois: Fix description Modified Paths: -------------- csw/mgar/pkg/pakchois/trunk/Makefile Modified: csw/mgar/pkg/pakchois/trunk/Makefile =================================================================== --- csw/mgar/pkg/pakchois/trunk/Makefile 2009-10-07 17:04:12 UTC (rev 6749) +++ csw/mgar/pkg/pakchois/trunk/Makefile 2009-10-07 19:04:50 UTC (rev 6750) @@ -2,10 +2,10 @@ GARVERSION = 0.4 CATEGORIES = lib -DESCRIPTION = Just another PKCS #11 wrapper library +DESCRIPTION = Just another PKCS \#11 wrapper library define BLURB - pakchois is just another PKCS #11 wrapper library. pakchois aims to provide - a thin wrapper over the PKCS#11 interface. + pakchois is just another PKCS \#11 wrapper library. pakchois aims to provide + a thin wrapper over the PKCS \#11 interface. endef MASTER_SITES = http://www.manyfish.co.uk/pakchois/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Wed Oct 7 21:05:34 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Wed, 07 Oct 2009 19:05:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[6751] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 6751 http://gar.svn.sourceforge.net/gar/?rev=6751&view=rev Author: bdwalton Date: 2009-10-07 19:05:34 +0000 (Wed, 07 Oct 2009) Log Message: ----------- git: bash completion package depends on CSWbashcmplt Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2009-10-07 19:04:50 UTC (rev 6750) +++ csw/mgar/pkg/git/trunk/Makefile 2009-10-07 19:05:34 UTC (rev 6751) @@ -52,7 +52,7 @@ # We include bash here even though git itself depends on it because in theory # git could use any other POSIX compliant shell and drop the dependency... -REQUIRED_PKGS_CSWgitcompletion = CSWgit CSWbash +REQUIRED_PKGS_CSWgitcompletion = CSWgit CSWbash CSWbashcmplt LICENSE_CSWgit = COPYING LICENSE_CSWgitk = COPYING This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 21:13:04 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 19:13:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[6752] csw/mgar/pkg Message-ID: Revision: 6752 http://gar.svn.sourceforge.net/gar/?rev=6752&view=rev Author: dmichelsen Date: 2009-10-07 19:13:03 +0000 (Wed, 07 Oct 2009) Log Message: ----------- fribidi: Initial commit Added Paths: ----------- csw/mgar/pkg/fribidi/ csw/mgar/pkg/fribidi/branches/ csw/mgar/pkg/fribidi/tags/ csw/mgar/pkg/fribidi/trunk/ csw/mgar/pkg/fribidi/trunk/Makefile csw/mgar/pkg/fribidi/trunk/checksums csw/mgar/pkg/fribidi/trunk/files/ Property changes on: csw/mgar/pkg/fribidi/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/fribidi/trunk/Makefile =================================================================== --- csw/mgar/pkg/fribidi/trunk/Makefile (rev 0) +++ csw/mgar/pkg/fribidi/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) @@ -0,0 +1,21 @@ +GARNAME = fribidi +GARVERSION = 0.19.2 +CATEGORIES = lib + +DESCRIPTION = An implementation of the Unicode Bidirectional Algorithm (bidi) +define BLURB +endef + +MASTER_SITES = http://fribidi.org/download/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +SPKG_SOURCEURL = http://www.fribidi.org/ + +BUILD64 = 1 +NOISALIST = 1 +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk Added: csw/mgar/pkg/fribidi/trunk/checksums =================================================================== --- csw/mgar/pkg/fribidi/trunk/checksums (rev 0) +++ csw/mgar/pkg/fribidi/trunk/checksums 2009-10-07 19:13:03 UTC (rev 6752) @@ -0,0 +1 @@ +626db17d2d99b43615ad9d12500f568a fribidi-0.19.2.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 21:28:55 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 19:28:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[6753] csw/mgar/pkg/x11 Message-ID: Revision: 6753 http://gar.svn.sourceforge.net/gar/?rev=6753&view=rev Author: wbonnet Date: 2009-10-07 19:28:54 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xineramaproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xineramaproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xineramaproto/ Modified: csw/mgar/pkg/x11/x11_xineramaproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xineramaproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xineramaproto/trunk/Makefile 2009-10-07 19:28:54 UTC (rev 6753) @@ -1,6 +1,8 @@ -GARNAME = xineramaproto GARVERSION = 1.1.2 CATEGORIES = x11 +PROTONAME = xineramaproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org Xinerama protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 21:36:21 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 19:36:21 +0000 Subject: [csw-devel] SF.net SVN: gar:[6754] csw/mgar/flatpkg/ Message-ID: Revision: 6754 http://gar.svn.sourceforge.net/gar/?rev=6754&view=rev Author: dmichelsen Date: 2009-10-07 19:36:21 +0000 (Wed, 07 Oct 2009) Log Message: ----------- GAR test Added Paths: ----------- csw/mgar/flatpkg/ Property changes on: csw/mgar/flatpkg ___________________________________________________________________ Added: svn:externals + asciidoc https://gar.svn.sf.net/svnroot/gar/csw/mgar/pkg/asciidoc Algorithm-Annotate https://gar.svn.sf.net/svnroot/gar/csw/mgar/pkg/cpan/Algorithm-Annotate This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 22:00:13 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:00:13 +0000 Subject: [csw-devel] SF.net SVN: gar:[6755] csw/mgar/pkg Message-ID: Revision: 6755 http://gar.svn.sourceforge.net/gar/?rev=6755&view=rev Author: dmichelsen Date: 2009-10-07 19:59:55 +0000 (Wed, 07 Oct 2009) Log Message: ----------- libmatio: Initial commit Added Paths: ----------- csw/mgar/pkg/libmatio/ csw/mgar/pkg/libmatio/branches/ csw/mgar/pkg/libmatio/tags/ csw/mgar/pkg/libmatio/trunk/ csw/mgar/pkg/libmatio/trunk/Makefile csw/mgar/pkg/libmatio/trunk/checksums csw/mgar/pkg/libmatio/trunk/files/ Property changes on: csw/mgar/pkg/libmatio/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/libmatio/trunk/Makefile =================================================================== --- csw/mgar/pkg/libmatio/trunk/Makefile (rev 0) +++ csw/mgar/pkg/libmatio/trunk/Makefile 2009-10-07 19:59:55 UTC (rev 6755) @@ -0,0 +1,22 @@ +GARNAME = libmatio +GARVERSION = 1.3.3 +CATEGORIES = lib + +DESCRIPTION = An ISO C library for reading and writing Matlab MAT files +define BLURB +endef + +SF_PROJ = matio +MASTER_SITES = $(SF_MIRRORS) +DISTNAME = $(SF_PROJ)-$(GARVERSION) +DISTFILES = $(DISTNAME).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +BUILD64 = 1 +NOISALIST = 1 +CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS += --enable-shared + +include gar/category.mk Added: csw/mgar/pkg/libmatio/trunk/checksums =================================================================== --- csw/mgar/pkg/libmatio/trunk/checksums (rev 0) +++ csw/mgar/pkg/libmatio/trunk/checksums 2009-10-07 19:59:55 UTC (rev 6755) @@ -0,0 +1 @@ +5c12a98f391de000e88b5a1b20d74abf matio-1.3.3.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 22:07:06 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:07:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6756] csw/mgar/flatpkg/ Message-ID: Revision: 6756 http://gar.svn.sourceforge.net/gar/?rev=6756&view=rev Author: dmichelsen Date: 2009-10-07 20:07:06 +0000 (Wed, 07 Oct 2009) Log Message: ----------- GAR Test Removed Paths: ------------- csw/mgar/flatpkg/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Wed Oct 7 22:21:59 2009 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:21:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6757] csw/mgar/pkg/unbound/trunk Message-ID: Revision: 6757 http://gar.svn.sourceforge.net/gar/?rev=6757&view=rev Author: idogan23 Date: 2009-10-07 20:21:58 +0000 (Wed, 07 Oct 2009) Log Message: ----------- unbound: bump version to 1.3.4 Modified Paths: -------------- csw/mgar/pkg/unbound/trunk/Makefile csw/mgar/pkg/unbound/trunk/checksums Modified: csw/mgar/pkg/unbound/trunk/Makefile =================================================================== --- csw/mgar/pkg/unbound/trunk/Makefile 2009-10-07 20:07:06 UTC (rev 6756) +++ csw/mgar/pkg/unbound/trunk/Makefile 2009-10-07 20:21:58 UTC (rev 6757) @@ -1,5 +1,5 @@ GARNAME = unbound -GARVERSION = 1.3.3 +GARVERSION = 1.3.4 CATEGORIES = server DESCRIPTION = A validating, recursive, and caching DNS resolver Modified: csw/mgar/pkg/unbound/trunk/checksums =================================================================== --- csw/mgar/pkg/unbound/trunk/checksums 2009-10-07 20:07:06 UTC (rev 6756) +++ csw/mgar/pkg/unbound/trunk/checksums 2009-10-07 20:21:58 UTC (rev 6757) @@ -1,4 +1,3 @@ -90405f880273db5036c2ebf2e881b998 download/CSWunbound.gspec 75867432e238f5afd48dfe5d138097e9 download/cswunbound 601effee1051487655f66790762b66fd download/cswusergroup -f6b2b2c375288dfd2a03c4a36676221e download/unbound-1.3.3.tar.gz +d1eb5efed0c36c10dbaf3f805ff3a4bd download/unbound-1.3.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 22:31:05 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:31:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[6758] csw/mgar/pkg/x11 Message-ID: Revision: 6758 http://gar.svn.sourceforge.net/gar/?rev=6758&view=rev Author: wbonnet Date: 2009-10-07 20:31:05 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86vidmodeproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86vidmodeproto/ Modified: csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86vidmodeproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile 2009-10-07 20:31:05 UTC (rev 6758) @@ -1,6 +1,8 @@ -GARNAME = xf86vidmodeproto GARVERSION = 2.2.2 CATEGORIES = x11 +PROTONAME = xf86vidmodeproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86VidMode protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11xf86vidmdproto +CATALOGNAME_CSWx11xf86vidmdproto = $(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 22:35:14 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:35:14 +0000 Subject: [csw-devel] SF.net SVN: gar:[6759] csw/mgar/pkg/x11 Message-ID: Revision: 6759 http://gar.svn.sourceforge.net/gar/?rev=6759&view=rev Author: wbonnet Date: 2009-10-07 20:35:14 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_windowswmproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_windowswmproto/ Removed Paths: ------------- csw/mgar/pkg/x11/windowswmproto/ Modified: csw/mgar/pkg/x11/x11_windowswmproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/windowswmproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_windowswmproto/trunk/Makefile 2009-10-07 20:35:14 UTC (rev 6759) @@ -1,6 +1,8 @@ -GARNAME = windowswmproto GARVERSION = 1.0.3 CATEGORIES = x11 +PROTONAME = windowswmproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Windowswmproto headers for X.org define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 22:40:06 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:40:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6760] csw/mgar/pkg/x11 Message-ID: Revision: 6760 http://gar.svn.sourceforge.net/gar/?rev=6760&view=rev Author: wbonnet Date: 2009-10-07 20:40:06 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_videoproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_videoproto/ Removed Paths: ------------- csw/mgar/pkg/x11/videoproto/ Modified: csw/mgar/pkg/x11/x11_videoproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/videoproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_videoproto/trunk/Makefile 2009-10-07 20:40:06 UTC (rev 6760) @@ -1,20 +1,23 @@ -GARNAME = videoproto GARVERSION = 2.3.0 CATEGORIES = x11 +PROTONAME = videoproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Video extension headers define BLURB Video extension headers endef -PACKAGES = CSWxvideoproto +MASTER_SITES = $(X11_PROTO_MASTER_SITE) +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz -MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz - # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 22:46:18 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:46:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[6761] csw/mgar/pkg/x11 Message-ID: Revision: 6761 http://gar.svn.sourceforge.net/gar/?rev=6761&view=rev Author: wbonnet Date: 2009-10-07 20:46:18 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xcmiscproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xcmiscproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xcmiscproto/ Modified: csw/mgar/pkg/x11/x11_xcmiscproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xcmiscproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xcmiscproto/trunk/Makefile 2009-10-07 20:46:18 UTC (rev 6761) @@ -1,6 +1,8 @@ -GARNAME = xcmiscproto GARVERSION = 1.2.0 CATEGORIES = x11 +PROTONAME = xcmiscproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XCMisc extension headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 22:53:19 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 20:53:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[6762] csw/mgar/pkg/x11 Message-ID: Revision: 6762 http://gar.svn.sourceforge.net/gar/?rev=6762&view=rev Author: wbonnet Date: 2009-10-07 20:53:19 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86dgaproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86dgaproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86dgaproto/ Modified: csw/mgar/pkg/x11/x11_xf86dgaproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86dgaproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86dgaproto/trunk/Makefile 2009-10-07 20:53:19 UTC (rev 6762) @@ -1,6 +1,8 @@ -GARNAME = xf86dgaproto GARVERSION = 2.0.3 CATEGORIES = x11 +PROTONAME = xf86dgaproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86DGA protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:02:06 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:02:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6763] csw/mgar/pkg/x11 Message-ID: Revision: 6763 http://gar.svn.sourceforge.net/gar/?rev=6763&view=rev Author: wbonnet Date: 2009-10-07 21:02:05 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86driproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86driproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86driproto/ Modified: csw/mgar/pkg/x11/x11_xf86driproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86driproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86driproto/trunk/Makefile 2009-10-07 21:02:05 UTC (rev 6763) @@ -1,6 +1,8 @@ -GARNAME = xf86driproto GARVERSION = 2.1.0 CATEGORIES = x11 +PROTONAME = xf86driproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86DRI protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:03:51 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:03:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6764] csw/mgar/pkg/x11 Message-ID: Revision: 6764 http://gar.svn.sourceforge.net/gar/?rev=6764&view=rev Author: wbonnet Date: 2009-10-07 21:03:51 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86miscproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86miscproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86miscproto/ Modified: csw/mgar/pkg/x11/x11_xf86miscproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86miscproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86miscproto/trunk/Makefile 2009-10-07 21:03:51 UTC (rev 6764) @@ -1,6 +1,8 @@ -GARNAME = xf86miscproto GARVERSION = 0.9.2 CATEGORIES = x11 +PROTONAME = xf86miscproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86Misc protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:05:54 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:05:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[6765] csw/mgar/pkg/x11 Message-ID: Revision: 6765 http://gar.svn.sourceforge.net/gar/?rev=6765&view=rev Author: wbonnet Date: 2009-10-07 21:05:54 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86rushproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86rushproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86rushproto/ Modified: csw/mgar/pkg/x11/x11_xf86rushproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86rushproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86rushproto/trunk/Makefile 2009-10-07 21:05:54 UTC (rev 6765) @@ -1,6 +1,8 @@ -GARNAME = xf86rushproto GARVERSION = 1.1.2 CATEGORIES = x11 +PROTONAME = xf86rushproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86Rush protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:09:42 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:09:42 +0000 Subject: [csw-devel] SF.net SVN: gar:[6766] csw/mgar/pkg/x11 Message-ID: Revision: 6766 http://gar.svn.sourceforge.net/gar/?rev=6766&view=rev Author: wbonnet Date: 2009-10-07 21:09:42 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86bigfontproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xf86bigfontproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xf86bigfontproto/ Modified: csw/mgar/pkg/x11/x11_xf86bigfontproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xf86bigfontproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xf86bigfontproto/trunk/Makefile 2009-10-07 21:09:42 UTC (rev 6766) @@ -1,6 +1,8 @@ -GARNAME = xf86bigfontproto GARVERSION = 1.2.0 CATEGORIES = x11 +PROTONAME = xf86bigfontproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org XF86BigFont protocol headers define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11xf86bigftproto +CATALOGNAME_CSWx11xf86bigftproto = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 23:16:26 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:16:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[6767] csw/mgar/pkg Message-ID: Revision: 6767 http://gar.svn.sourceforge.net/gar/?rev=6767&view=rev Author: dmichelsen Date: 2009-10-07 21:16:26 +0000 (Wed, 07 Oct 2009) Log Message: ----------- wireshark: Initial commit, review X11 Added Paths: ----------- csw/mgar/pkg/wireshark/ csw/mgar/pkg/wireshark/branches/ csw/mgar/pkg/wireshark/tags/ csw/mgar/pkg/wireshark/trunk/ csw/mgar/pkg/wireshark/trunk/Makefile csw/mgar/pkg/wireshark/trunk/checksums csw/mgar/pkg/wireshark/trunk/files/ Property changes on: csw/mgar/pkg/wireshark/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/wireshark/trunk/Makefile =================================================================== --- csw/mgar/pkg/wireshark/trunk/Makefile (rev 0) +++ csw/mgar/pkg/wireshark/trunk/Makefile 2009-10-07 21:16:26 UTC (rev 6767) @@ -0,0 +1,34 @@ +GARNAME = wireshark +GARVERSION = 1.2.2 +CATEGORIES = apps + +DESCRIPTION = Wireshark (was Ethereal) is a free network protocol analyzer +define BLURB +endef + +MASTER_SITES = $(SF_MIRRORS) +DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 + +SPKG_SOURCEURL = http://www.wireshark.org/ + +#SED = /opt/csw/bin/gsed +#EXTRA_COMMON_EXPORTS = SED + +EXTRA_INC = /opt/csw/include/gtk-2.0 +EXTRA_INC += /opt/csw/lib/gtk-2.0/include +EXTRA_INC += /opt/csw/include/glib-2.0 +EXTRA_INC += /opt/csw/lib/glib-2.0/include +EXTRA_INC += /opt/csw/include/cairo +EXTRA_INC += /opt/csw/include/pango-1.0 +EXTRA_INC += /opt/csw/include/atk-1.0 + +EXTRA_LINKER_FLAGS = -lgtk-x11-2.0 + +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +PATH := /opt/csw/gnu:$(PATH) Added: csw/mgar/pkg/wireshark/trunk/checksums =================================================================== --- csw/mgar/pkg/wireshark/trunk/checksums (rev 0) +++ csw/mgar/pkg/wireshark/trunk/checksums 2009-10-07 21:16:26 UTC (rev 6767) @@ -0,0 +1 @@ +bb5c09b8cffd461ced4d3251fddb217b wireshark-1.2.2.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Wed Oct 7 23:24:08 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:24:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[6768] csw/mgar/pkg/npadmin Message-ID: Revision: 6768 http://gar.svn.sourceforge.net/gar/?rev=6768&view=rev Author: dmichelsen Date: 2009-10-07 21:24:08 +0000 (Wed, 07 Oct 2009) Log Message: ----------- npadmin: Convert legacy build receipt Added Paths: ----------- csw/mgar/pkg/npadmin/branches/ csw/mgar/pkg/npadmin/tags/ csw/mgar/pkg/npadmin/tags/legacy/ csw/mgar/pkg/npadmin/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/npadmin/trunk/legacy/ Copied: csw/mgar/pkg/npadmin/trunk/Makefile (from rev 6625, csw/mgar/pkg/colordiff/trunk/Makefile) =================================================================== --- csw/mgar/pkg/npadmin/trunk/Makefile (rev 0) +++ csw/mgar/pkg/npadmin/trunk/Makefile 2009-10-07 21:24:08 UTC (rev 6768) @@ -0,0 +1,24 @@ +GARNAME = npadmin +GARVERSION = 0.14 +CATEGORIES = apps + +DESCRIPTION = Command line SNMP based network adminstration tool for printers +define BLURB +endef + +SF_PROJ = lpr +MASTER_SITES = $(SF_MIRRORS) +DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +SPKG_SOURCEURL = http://lpr.sourceforge.net/ + +ARCHALL = 1 +CONFIGURE_ARGS = $(DIRPATHS) + +include gar/category.mk + +pre-configure-modulated: + cd $(WORKSRC) && rm -f config.cache config.status This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:25:40 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:25:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[6769] csw/mgar/pkg/x11 Message-ID: Revision: 6769 http://gar.svn.sourceforge.net/gar/?rev=6769&view=rev Author: wbonnet Date: 2009-10-07 21:25:40 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile csw/mgar/pkg/x11/x11_xextproto/trunk/checksums Added Paths: ----------- csw/mgar/pkg/x11/x11_xextproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xextproto/ Modified: csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xextproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile 2009-10-07 21:25:40 UTC (rev 6769) @@ -1,5 +1,7 @@ -GARNAME = xextproto GARVERSION = 7.1.1 +PROTONAME = xextproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) CATEGORIES = x11 @@ -9,11 +11,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 Modified: csw/mgar/pkg/x11/x11_xextproto/trunk/checksums =================================================================== --- csw/mgar/pkg/x11/xextproto/trunk/checksums 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xextproto/trunk/checksums 2009-10-07 21:25:40 UTC (rev 6769) @@ -1 +1 @@ -fb6ccaae76db7a35e49b12aea60ca6ff download/xextproto-7.1.1.tar.bz2 +6c55283718dbeb826bcf899b9e89faba download/xextproto-7.1.1.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:29:31 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:29:31 +0000 Subject: [csw-devel] SF.net SVN: gar:[6770] csw/mgar/pkg/x11 Message-ID: Revision: 6770 http://gar.svn.sourceforge.net/gar/?rev=6770&view=rev Author: wbonnet Date: 2009-10-07 21:29:30 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_xproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_xproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xproto/ Modified: csw/mgar/pkg/x11/x11_xproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_xproto/trunk/Makefile 2009-10-07 21:29:30 UTC (rev 6770) @@ -1,6 +1,8 @@ -GARNAME = xproto GARVERSION = 7.0.15 CATEGORIES = x11 +PROTONAME = xproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X protocol and ancillary headers from X.org X11 define BLURB @@ -8,11 +10,14 @@ endef MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:41:58 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:41:58 +0000 Subject: [csw-devel] SF.net SVN: gar:[6771] csw/mgar/pkg/x11/glproto/ Message-ID: Revision: 6771 http://gar.svn.sourceforge.net/gar/?rev=6771&view=rev Author: wbonnet Date: 2009-10-07 21:41:58 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Removed Paths: ------------- csw/mgar/pkg/x11/glproto/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:42:53 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:42:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[6772] csw/mgar/pkg/x11 Message-ID: Revision: 6772 http://gar.svn.sourceforge.net/gar/?rev=6772&view=rev Author: wbonnet Date: 2009-10-07 21:42:52 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_glproto/trunk/Makefile csw/mgar/pkg/x11/x11_glproto/trunk/checksums Added Paths: ----------- csw/mgar/pkg/x11/x11_glproto/ Modified: csw/mgar/pkg/x11/x11_glproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/glproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_glproto/trunk/Makefile 2009-10-07 21:42:52 UTC (rev 6772) @@ -1,19 +1,22 @@ -GARNAME = glproto GARVERSION = 1.4.10 CATEGORIES = x11 +PROTONAME = glproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = GL extension headers define BLURB GL extension headers endef -MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 +MASTER_SITES = $(X11_PROTO_MASTER_SITE) +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWxglproto +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common Modified: csw/mgar/pkg/x11/x11_glproto/trunk/checksums =================================================================== --- csw/mgar/pkg/x11/glproto/trunk/checksums 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_glproto/trunk/checksums 2009-10-07 21:42:52 UTC (rev 6772) @@ -1 +1 @@ -c9f8cebfba72bfab674bc0170551fb8d download/glproto-1.4.10.tar.bz2 +ac89626ed6bced045d0515217bfffd4f download/glproto-1.4.10.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:47:52 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:47:52 +0000 Subject: [csw-devel] SF.net SVN: gar:[6773] csw/mgar/pkg/x11 Message-ID: Revision: 6773 http://gar.svn.sourceforge.net/gar/?rev=6773&view=rev Author: wbonnet Date: 2009-10-07 21:47:51 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_kbproto/ Removed Paths: ------------- csw/mgar/pkg/x11/kbproto/ Modified: csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/kbproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile 2009-10-07 21:47:51 UTC (rev 6773) @@ -1,5 +1,7 @@ -GARNAME = kbproto GARVERSION = 1.0.3 +PROTONAME = kbproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) CATEGORIES = x11 @@ -8,13 +10,14 @@ This provides the KB extension headers from modular X.org X11 project. endef -MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +MASTER_SITES = $(X11_PROTO_MASTER_SITE) +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWxkbproto +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:55:18 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:55:18 +0000 Subject: [csw-devel] SF.net SVN: gar:[6774] csw/mgar/pkg/x11 Message-ID: Revision: 6774 http://gar.svn.sourceforge.net/gar/?rev=6774&view=rev Author: wbonnet Date: 2009-10-07 21:55:18 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_renderproto/ Removed Paths: ------------- csw/mgar/pkg/x11/renderproto/ Modified: csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/renderproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile 2009-10-07 21:55:18 UTC (rev 6774) @@ -1,20 +1,22 @@ -GARNAME = renderproto GARVERSION = 0.11 - CATEGORIES = x11 +PROTONAME = renderproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Render extension headers from modular X.org define BLURB This provides the Render extension headers from modular X.org X11 project. endef + +MASTER_SITES = $(X11_PROTO_MASTER_SITE) +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz -MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz - # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWxrenderproto +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Wed Oct 7 23:59:08 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 21:59:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[6775] csw/mgar/pkg/x11 Message-ID: Revision: 6775 http://gar.svn.sourceforge.net/gar/?rev=6775&view=rev Author: wbonnet Date: 2009-10-07 21:59:08 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_recordproto/trunk/Makefile csw/mgar/pkg/x11/x11_recordproto/trunk/checksums Added Paths: ----------- csw/mgar/pkg/x11/x11_recordproto/ Removed Paths: ------------- csw/mgar/pkg/x11/recordproto/ Modified: csw/mgar/pkg/x11/x11_recordproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/recordproto/trunk/Makefile 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_recordproto/trunk/Makefile 2009-10-07 21:59:08 UTC (rev 6775) @@ -1,19 +1,22 @@ -GARNAME = recordproto GARVERSION = 1.13.2 CATEGORIES = x11 +PROTONAME = recordproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = Record extension headers define BLURB Record extension headers endef + +MASTER_SITES = $(X11_PROTO_MASTER_SITE) +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz -MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 - # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz -PACKAGES = CSWxrecordproto +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common Modified: csw/mgar/pkg/x11/x11_recordproto/trunk/checksums =================================================================== --- csw/mgar/pkg/x11/recordproto/trunk/checksums 2009-10-05 14:46:03 UTC (rev 6713) +++ csw/mgar/pkg/x11/x11_recordproto/trunk/checksums 2009-10-07 21:59:08 UTC (rev 6775) @@ -1 +1 @@ -0ed4706564a34fc2aff724aa16d3ff00 download/recordproto-1.13.2.tar.bz2 +a184f8939a7ecae064857e7932a929b2 download/recordproto-1.13.2.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 00:04:39 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 22:04:39 +0000 Subject: [csw-devel] SF.net SVN: gar:[6776] csw/mgar/pkg/x11 Message-ID: Revision: 6776 http://gar.svn.sourceforge.net/gar/?rev=6776&view=rev Author: wbonnet Date: 2009-10-07 22:04:39 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_inputproto/ Removed Paths: ------------- csw/mgar/pkg/x11/inputproto/ Modified: csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/inputproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile 2009-10-07 22:04:39 UTC (rev 6776) @@ -1,5 +1,7 @@ -GARNAME = inputproto GARVERSION = 1.5.1 +PROTONAME = inputproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) CATEGORIES = x11 @@ -7,17 +9,20 @@ define BLURB This provides the input extension headers from modular X.org X11 project endef - + MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 -CONFIGURE_ARGS = $(DIRPATHS) +CONFIGURE_ARGS = $(DIRPATHS) include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 00:06:28 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Wed, 07 Oct 2009 22:06:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[6777] csw/mgar/pkg/x11 Message-ID: Revision: 6777 http://gar.svn.sourceforge.net/gar/?rev=6777&view=rev Author: wbonnet Date: 2009-10-07 22:06:28 +0000 (Wed, 07 Oct 2009) Log Message: ----------- Switch to new naming Modified Paths: -------------- csw/mgar/pkg/x11/x11_scrnsaverproto/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/x11/x11_scrnsaverproto/ Removed Paths: ------------- csw/mgar/pkg/x11/scrnsaverproto/ Modified: csw/mgar/pkg/x11/x11_scrnsaverproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/scrnsaverproto/trunk/Makefile 2009-10-07 19:13:03 UTC (rev 6752) +++ csw/mgar/pkg/x11/x11_scrnsaverproto/trunk/Makefile 2009-10-07 22:06:28 UTC (rev 6777) @@ -1,18 +1,23 @@ -GARNAME = scrnsaverproto GARVERSION = 1.2.0 CATEGORIES = x11 +PROTONAME = scrnsaverproto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = X.Org ScrnSaver protocol headers define BLURB ScrnSaver protocol headers from modular X.org endef - + MASTER_SITES = $(X11_PROTO_MASTER_SITE) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(PROTONAME)-$(GARVERSION).tar.gz # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz +PACKAGES = CSWx11$(PROTONAME) +CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) + REQUIRED_PKGS = CSWx11common BUILD64 = 1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 11:18:06 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 09:18:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6778] csw/mgar/gar/v2-pbuild/gar.pkg.mk Message-ID: Revision: 6778 http://gar.svn.sourceforge.net/gar/?rev=6778&view=rev Author: dmichelsen Date: 2009-10-08 09:18:06 +0000 (Thu, 08 Oct 2009) Log Message: ----------- mGAR v2-pbuild: Added prototype modifiers Modified Paths: -------------- csw/mgar/gar/v2-pbuild/gar.pkg.mk Modified: csw/mgar/gar/v2-pbuild/gar.pkg.mk =================================================================== --- csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-07 22:06:28 UTC (rev 6777) +++ csw/mgar/gar/v2-pbuild/gar.pkg.mk 2009-10-08 09:18:06 UTC (rev 6778) @@ -307,6 +307,28 @@ $(foreach SPEC,$(_PKG_SPECS),$(if $(PROTOTYPE_FILTER_$(SPEC)),$(eval _PROTOTYPE_FILTER_$(SPEC) ?= | $(PROTOTYPE_FILTER_$(SPEC))))) $(foreach SPEC,$(_PKG_SPECS),$(if $(PROTOTYPE_FILTER),$(eval _PROTOTYPE_FILTER_$(SPEC) ?= | $(PROTOTYPE_FILTER)))) +# Assemble prototype modifiers +# PROTOTYPE_MODIFIERS = mytweaks +# PROTOTYPE_FTYPE_mytweaks = e +# PROTOTYPE_CLASS_mytweaks = cswconffile +# PROTOTYPE_FILES_mytweaks = $(bindir)/.*\.conf +# PROTOTYPE_PERMS_mytweaks = 0644 +# PROTOTYPE_USER_mytweaks = somebody +# PROTOTYPE_GROUP_mytweaks = somegroup + +_PROTOTYPE_MODIFIERS = | perl -ane '\ + $(foreach M,$(PROTOTYPE_MODIFIERS),\ + $(if $(PROTOTYPE_FILES_$M),if( $$F[2] =~ m(^$(PROTOTYPE_FILES_$M)$$) ) {)\ + $(if $(PROTOTYPE_FTYPE_$M),$$F[0] = "$(PROTOTYPE_FTYPE_$M)";)\ + $(if $(PROTOTYPE_CLASS_$M),$$F[1] = "$(PROTOTYPE_CLASS_$M)";)\ + $(if $(PROTOTYPE_PERMS_$M),$$F[3] = "$(PROTOTYPE_PERMS_$M)";)\ + $(if $(PROTOTYPE_USER_$M),$$F[4] = "$(PROTOTYPE_USER_$M)";)\ + $(if $(PROTOTYPE_GROUP_$M),$$F[5] = "$(PROTOTYPE_GROUP_$M)";)\ + $(if $(PROTOTYPE_FILES_$M),})\ + )\ + print join(" ", at F),"\n";' + + # This file contains all installed pathes. This can be used as a starting point # for distributing files to individual packages. PROTOTYPE = $(WORKDIR)/prototype @@ -342,13 +364,13 @@ ) \ <$(PROTOTYPE); \ if [ -n "$(EXTRA_PKGFILES_$*)" ]; then echo "$(EXTRA_PKGFILES_$*)"; fi \ - ) $(_CSWCLASS_FILTER) $(_PROTOTYPE_FILTER_$*) >$@; \ + ) $(_CSWCLASS_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ else \ - cat $(PROTOTYPE) $(_CSWCLASS_FILTER) $(_PROTOTYPE_FILTER_$*) >$@; \ + cat $(PROTOTYPE) $(_CSWCLASS_FILTER) $(_PROTOTYPE_MODIFIERS) $(_PROTOTYPE_FILTER_$*) >$@; \ fi $(WORKDIR)/%.prototype-$(GARCH): | $(WORKDIR)/%.prototype - $(_DBG)cat $(WORKDIR)/$*.prototype $(_PROTOTYPE_FILTER_$*) >$@ + $(_DBG)cat $(WORKDIR)/$*.prototype >$@ # Dynamic depends are constructed as follows: # - Packages the currently constructed one depends on can be specified with This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 14:12:27 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 12:12:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[6779] csw/mgar/pkg/colordiff/trunk Message-ID: Revision: 6779 http://gar.svn.sourceforge.net/gar/?rev=6779&view=rev Author: dmichelsen Date: 2009-10-08 12:12:27 +0000 (Thu, 08 Oct 2009) Log Message: ----------- colordiff: Force CSW less Modified Paths: -------------- csw/mgar/pkg/colordiff/trunk/Makefile Added Paths: ----------- csw/mgar/pkg/colordiff/trunk/files/force-csw-less.patch Modified: csw/mgar/pkg/colordiff/trunk/Makefile =================================================================== --- csw/mgar/pkg/colordiff/trunk/Makefile 2009-10-08 09:18:06 UTC (rev 6778) +++ csw/mgar/pkg/colordiff/trunk/Makefile 2009-10-08 12:12:27 UTC (rev 6779) @@ -10,11 +10,12 @@ DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz PATCHFILES = fix-entity-nesting.patch PATCHFILES += force-csw-perl.patch +PATCHFILES += force-csw-less.patch # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -REQUIRED_PKGS = CSWperl +REQUIRED_PKGS = CSWperl CSWless CONFIGURE_SCRIPTS = BUILD_ARGS = doc Added: csw/mgar/pkg/colordiff/trunk/files/force-csw-less.patch =================================================================== --- csw/mgar/pkg/colordiff/trunk/files/force-csw-less.patch (rev 0) +++ csw/mgar/pkg/colordiff/trunk/files/force-csw-less.patch 2009-10-08 12:12:27 UTC (rev 6779) @@ -0,0 +1,9 @@ +diff -Naur colordiff-1.0.9.orig/cdiff.sh colordiff-1.0.9.patched/cdiff.sh +--- colordiff-1.0.9.orig/cdiff.sh 2009-01-26 21:17:47.000000000 +0100 ++++ colordiff-1.0.9.patched/cdiff.sh 2009-10-08 14:11:03.128576934 +0200 +@@ -56,4 +56,4 @@ + done + else + cat +-fi) | colordiff | less -R ++fi) | /opt/csw/bin/colordiff | /opt/csw/bin/less -R This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 14:13:53 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 12:13:53 +0000 Subject: [csw-devel] SF.net SVN: gar:[6780] csw/mgar/pkg Message-ID: Revision: 6780 http://gar.svn.sourceforge.net/gar/?rev=6780&view=rev Author: dmichelsen Date: 2009-10-08 12:13:53 +0000 (Thu, 08 Oct 2009) Log Message: ----------- libebml: Initial commit Added Paths: ----------- csw/mgar/pkg/libebml/ csw/mgar/pkg/libebml/branches/ csw/mgar/pkg/libebml/tags/ csw/mgar/pkg/libebml/trunk/ csw/mgar/pkg/libebml/trunk/Makefile csw/mgar/pkg/libebml/trunk/checksums csw/mgar/pkg/libebml/trunk/files/ csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff Property changes on: csw/mgar/pkg/libebml/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/libebml/trunk/Makefile =================================================================== --- csw/mgar/pkg/libebml/trunk/Makefile (rev 0) +++ csw/mgar/pkg/libebml/trunk/Makefile 2009-10-08 12:13:53 UTC (rev 6780) @@ -0,0 +1,38 @@ +GARNAME = libebml +GARVERSION = 0.7.8 +CATEGORIES = lib + +DESCRIPTION = Library for Extensible Binary Meta Language +define BLURB +endef + +MASTER_SITES = http://dl.matroska.org/downloads/libebml/ +DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 +PATCHFILES = libebml-shared-library.diff + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 + +SPKG_SOURCEURL = http://www.matroska.org/ + +BUILD64 = 1 +NOISALIST = 1 + +CONFIGURE_SCRIPTS = + +# Needed for shared library +EXTRA_CFLAGS = -xcode=pic32 +EXTRA_CXXFLAGS = -xcode=pic32 + +WARNINGFLAGS = +BUILD_OVERRIDE_DIRS = CC CXX LD CFLAGS WARNINGFLAGS +BUILD_SCRIPTS = $(WORKSRC)/make/linux/Makefile + +TEST_SCRIPTS = + +INSTALL_OVERRIDE_VARS = CC CXX LD CFLAGS WARNINGFLAGS INSTALL +INSTALL_OVERRIDE_VAR_INSTALL = /opt/csw/bin/ginstall +INSTALL_OVERRIDE_DIRS = prefix libdir includedir +INSTALL_SCRIPTS = $(WORKSRC)/make/linux/Makefile + +include gar/category.mk Added: csw/mgar/pkg/libebml/trunk/checksums =================================================================== --- csw/mgar/pkg/libebml/trunk/checksums (rev 0) +++ csw/mgar/pkg/libebml/trunk/checksums 2009-10-08 12:13:53 UTC (rev 6780) @@ -0,0 +1,2 @@ +6278109f52e4f9d2c8a8dfc0d668b587 libebml-0.7.8.tar.bz2 +da5e2aaafdcba2c1bc83dba1e8ce2721 libebml-shared-library.diff Added: csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff =================================================================== --- csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff (rev 0) +++ csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff 2009-10-08 12:13:53 UTC (rev 6780) @@ -0,0 +1,12 @@ +diff -Naur libebml-0.7.8.orig/make/linux/Makefile libebml-0.7.8.patched/make/linux/Makefile +--- libebml-0.7.8.orig/make/linux/Makefile 2006-06-02 16:32:15.000000000 +0200 ++++ libebml-0.7.8.patched/make/linux/Makefile 2009-10-08 10:49:26.151491509 +0200 +@@ -94,7 +94,7 @@ + $(RANLIB) $@ + + $(LIBRARY_SO): $(objects_so) +- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) ++ $(CXX) -G $(LDFLAGS) -o $(LIBRARY_SO_VER) $(objects_so) + rm -f $(LIBRARY_SO) + ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 14:21:08 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 12:21:08 +0000 Subject: [csw-devel] SF.net SVN: gar:[6781] csw/mgar/pkg/colordiff/trunk/checksums Message-ID: Revision: 6781 http://gar.svn.sourceforge.net/gar/?rev=6781&view=rev Author: dmichelsen Date: 2009-10-08 12:21:08 +0000 (Thu, 08 Oct 2009) Log Message: ----------- colordiff: Updated checksum Modified Paths: -------------- csw/mgar/pkg/colordiff/trunk/checksums Modified: csw/mgar/pkg/colordiff/trunk/checksums =================================================================== --- csw/mgar/pkg/colordiff/trunk/checksums 2009-10-08 12:13:53 UTC (rev 6780) +++ csw/mgar/pkg/colordiff/trunk/checksums 2009-10-08 12:21:08 UTC (rev 6781) @@ -1,3 +1,4 @@ -31864847eaa4e900f72bbb6bbc64f1ec download/colordiff-1.0.9.tar.gz -d202632e9ec507e53445232a930c9c6f download/fix-entity-nesting.patch -b37c28fccba12407d69a9d856d81a396 download/force-csw-perl.patch +31864847eaa4e900f72bbb6bbc64f1ec colordiff-1.0.9.tar.gz +d202632e9ec507e53445232a930c9c6f fix-entity-nesting.patch +94bb55618657dd39b3d4d1b8b321eac3 force-csw-less.patch +b37c28fccba12407d69a9d856d81a396 force-csw-perl.patch This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 15:25:52 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 13:25:52 +0000 Subject: [csw-devel] SF.net SVN: gar:[6782] csw/mgar/pkg Message-ID: Revision: 6782 http://gar.svn.sourceforge.net/gar/?rev=6782&view=rev Author: dmichelsen Date: 2009-10-08 13:25:51 +0000 (Thu, 08 Oct 2009) Log Message: ----------- libmatroska: Initial commit Added Paths: ----------- csw/mgar/pkg/libmatroska/ csw/mgar/pkg/libmatroska/branches/ csw/mgar/pkg/libmatroska/tags/ csw/mgar/pkg/libmatroska/trunk/ csw/mgar/pkg/libmatroska/trunk/Makefile csw/mgar/pkg/libmatroska/trunk/checksums csw/mgar/pkg/libmatroska/trunk/files/ csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff Property changes on: csw/mgar/pkg/libmatroska/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Copied: csw/mgar/pkg/libmatroska/trunk/Makefile (from rev 6780, csw/mgar/pkg/libebml/trunk/Makefile) =================================================================== --- csw/mgar/pkg/libmatroska/trunk/Makefile (rev 0) +++ csw/mgar/pkg/libmatroska/trunk/Makefile 2009-10-08 13:25:51 UTC (rev 6782) @@ -0,0 +1,41 @@ +GARNAME = libmatroska +GARVERSION = 0.8.1 +CATEGORIES = lib + +DESCRIPTION = A C++ libary to parse Matroska files (.mkv and .mka) +define BLURB +endef + +MASTER_SITES = http://dl.matroska.org/downloads/libmatroska/libmatroska-0.8.1.tar.bz2 +DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 +PATCHFILES = libmatroska-shared-library.diff + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 + +SPKG_SOURCEURL = http://www.matroska.org/ + +REQUIRED_PKGS = CSWlibebml +PREREQUISITE_PKGS = $(REQUIRED_PKGS) + +BUILD64 = 1 +NOISALIST = 1 + +CONFIGURE_SCRIPTS = + +# Needed for shared library +EXTRA_CFLAGS = -xcode=pic32 +EXTRA_CXXFLAGS = -xcode=pic32 + +WARNINGFLAGS = +BUILD_OVERRIDE_DIRS = CC CXX LD CFLAGS WARNINGFLAGS +BUILD_SCRIPTS = $(WORKSRC)/make/linux/Makefile + +TEST_SCRIPTS = + +INSTALL_OVERRIDE_VARS = CC CXX LD CFLAGS WARNINGFLAGS INSTALL +INSTALL_OVERRIDE_VAR_INSTALL = /opt/csw/bin/ginstall +INSTALL_OVERRIDE_DIRS = prefix libdir includedir +INSTALL_SCRIPTS = $(WORKSRC)/make/linux/Makefile + +include gar/category.mk Added: csw/mgar/pkg/libmatroska/trunk/checksums =================================================================== --- csw/mgar/pkg/libmatroska/trunk/checksums (rev 0) +++ csw/mgar/pkg/libmatroska/trunk/checksums 2009-10-08 13:25:51 UTC (rev 6782) @@ -0,0 +1,2 @@ +20cf624ace0c58a54c7752eebfbc0b19 libmatroska-0.8.1.tar.bz2 +154440024a5596dc63e4ec24ded01f24 libmatroska-shared-library.diff Copied: csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff (from rev 6780, csw/mgar/pkg/libebml/trunk/files/libebml-shared-library.diff) =================================================================== --- csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff (rev 0) +++ csw/mgar/pkg/libmatroska/trunk/files/libmatroska-shared-library.diff 2009-10-08 13:25:51 UTC (rev 6782) @@ -0,0 +1,12 @@ +diff -Naur libmatroska-0.8.1.orig/make/linux/Makefile libmatroska-0.8.1.patched/make/linux/Makefile +--- libmatroska-0.8.1.orig/make/linux/Makefile 2006-06-02 16:32:52.000000000 +0200 ++++ libmatroska-0.8.1.patched/make/linux/Makefile 2009-10-08 14:19:53.080322384 +0200 +@@ -102,7 +102,7 @@ + $(RANLIB) $@ + + $(LIBRARY_SO): $(objects_so) +- $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -lebml ++ $(CXX) -G $(LDFLAGS) -o $(LIBRARY_SO_VER) $(objects_so) -lebml + rm -f $(LIBRARY_SO) + ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 15:26:04 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 13:26:04 +0000 Subject: [csw-devel] SF.net SVN: gar:[6783] csw/mgar/pkg/libebml/trunk/Makefile Message-ID: Revision: 6783 http://gar.svn.sourceforge.net/gar/?rev=6783&view=rev Author: dmichelsen Date: 2009-10-08 13:26:04 +0000 (Thu, 08 Oct 2009) Log Message: ----------- libebml: Relocate includes to ebml/ Modified Paths: -------------- csw/mgar/pkg/libebml/trunk/Makefile Modified: csw/mgar/pkg/libebml/trunk/Makefile =================================================================== --- csw/mgar/pkg/libebml/trunk/Makefile 2009-10-08 13:25:51 UTC (rev 6782) +++ csw/mgar/pkg/libebml/trunk/Makefile 2009-10-08 13:26:04 UTC (rev 6783) @@ -33,6 +33,7 @@ INSTALL_OVERRIDE_VARS = CC CXX LD CFLAGS WARNINGFLAGS INSTALL INSTALL_OVERRIDE_VAR_INSTALL = /opt/csw/bin/ginstall INSTALL_OVERRIDE_DIRS = prefix libdir includedir +includedir = $(prefix)/include/ebml INSTALL_SCRIPTS = $(WORKSRC)/make/linux/Makefile include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 15:27:06 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 13:27:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6784] csw/mgar/pkg/colordiff/trunk Message-ID: Revision: 6784 http://gar.svn.sourceforge.net/gar/?rev=6784&view=rev Author: dmichelsen Date: 2009-10-08 13:27:06 +0000 (Thu, 08 Oct 2009) Log Message: ----------- colordiff: Force usage of GNU diff Modified Paths: -------------- csw/mgar/pkg/colordiff/trunk/Makefile csw/mgar/pkg/colordiff/trunk/checksums Added Paths: ----------- csw/mgar/pkg/colordiff/trunk/files/force-csw-gdiff.patch Modified: csw/mgar/pkg/colordiff/trunk/Makefile =================================================================== --- csw/mgar/pkg/colordiff/trunk/Makefile 2009-10-08 13:26:04 UTC (rev 6783) +++ csw/mgar/pkg/colordiff/trunk/Makefile 2009-10-08 13:27:06 UTC (rev 6784) @@ -11,11 +11,12 @@ PATCHFILES = fix-entity-nesting.patch PATCHFILES += force-csw-perl.patch PATCHFILES += force-csw-less.patch +PATCHFILES += force-csw-gdiff.patch # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz -REQUIRED_PKGS = CSWperl CSWless +REQUIRED_PKGS = CSWdiffutils CSWperl CSWless CONFIGURE_SCRIPTS = BUILD_ARGS = doc Modified: csw/mgar/pkg/colordiff/trunk/checksums =================================================================== --- csw/mgar/pkg/colordiff/trunk/checksums 2009-10-08 13:26:04 UTC (rev 6783) +++ csw/mgar/pkg/colordiff/trunk/checksums 2009-10-08 13:27:06 UTC (rev 6784) @@ -1,4 +1,5 @@ 31864847eaa4e900f72bbb6bbc64f1ec colordiff-1.0.9.tar.gz d202632e9ec507e53445232a930c9c6f fix-entity-nesting.patch +4e078d43dfd8032c95699190c3bf9f16 force-csw-gdiff.patch 94bb55618657dd39b3d4d1b8b321eac3 force-csw-less.patch b37c28fccba12407d69a9d856d81a396 force-csw-perl.patch Added: csw/mgar/pkg/colordiff/trunk/files/force-csw-gdiff.patch =================================================================== --- csw/mgar/pkg/colordiff/trunk/files/force-csw-gdiff.patch (rev 0) +++ csw/mgar/pkg/colordiff/trunk/files/force-csw-gdiff.patch 2009-10-08 13:27:06 UTC (rev 6784) @@ -0,0 +1,12 @@ +diff -Naur colordiff-1.0.9.orig/colordiff.pl colordiff-1.0.9.patched/colordiff.pl +--- colordiff-1.0.9.orig/colordiff.pl 2009-01-28 21:12:10.000000000 +0100 ++++ colordiff-1.0.9.patched/colordiff.pl 2009-10-08 14:26:51.806222906 +0200 +@@ -178,7 +178,7 @@ + my $exitcode = 0; + if ((defined $ARGV[0]) || (-t STDIN)) { + # More reliable way of pulling in arguments +- my $pid = open2(\*INPUTSTREAM, undef, "diff", @ARGV); ++ my $pid = open2(\*INPUTSTREAM, undef, "/opt/csw/bin/gdiff", @ARGV); + @inputstream = ; + close INPUTSTREAM; + waitpid $pid, 0; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 8 16:54:10 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 08 Oct 2009 14:54:10 +0000 Subject: [csw-devel] SF.net SVN: gar:[6785] csw/mgar/pkg/perl/trunk/Makefile Message-ID: Revision: 6785 http://gar.svn.sourceforge.net/gar/?rev=6785&view=rev Author: bonivart Date: 2009-10-08 14:54:10 +0000 (Thu, 08 Oct 2009) Log Message: ----------- perl: update to use new bdb47 package Modified Paths: -------------- csw/mgar/pkg/perl/trunk/Makefile Modified: csw/mgar/pkg/perl/trunk/Makefile =================================================================== --- csw/mgar/pkg/perl/trunk/Makefile 2009-10-08 13:27:06 UTC (rev 6784) +++ csw/mgar/pkg/perl/trunk/Makefile 2009-10-08 14:54:10 UTC (rev 6785) @@ -19,8 +19,10 @@ PACKAGES = CSWperl CSWperldoc ARCHALL_CSWperldoc = 1 -REQUIRED_PKGS_CSWperl = CSWbdb CSWgdbm +REQUIRED_PKGS_CSWperl = CSWbdb47 CSWgdbm REQUIRED_PKGS_CSWperldoc = CSWperl +SPKG_DESC_CSWperl = $(DESCRIPTION) +SPKG_DESC_CSWperldoc = Perl documentation LICENSE = Copying @@ -56,7 +58,7 @@ DISTFILES += $(foreach N,$(CORE_UPDATES),$(N).tar.gz) # Dependencies -LIBDEPS += lib/bdb47 +#LIBDEPS += bdb48/lib LIBDEPS += lib/gdbm # Custom configure @@ -106,8 +108,8 @@ CONFIGURE_ARGS += -Dlibsdirs=" /usr/lib /opt/csw/lib" CONFIGURE_ARGS += -Dsed=$(bindir)/gsed -#EXTRA_LIB += $(prefix)/bdb44/lib -#EXTRA_INC += $(prefix)/bdb44/include +EXTRA_LIB += $(prefix)/bdb47/lib +EXTRA_INC += $(prefix)/bdb47/include #EXTRA_LDFLAGS = -lperl EXTRA_LDFLAGS = -L/opt/csw/lib/libperl.so This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Thu Oct 8 17:22:50 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Thu, 08 Oct 2009 15:22:50 +0000 Subject: [csw-devel] SF.net SVN: gar:[6786] csw/mgar/pkg/fping/trunk Message-ID: Revision: 6786 http://gar.svn.sourceforge.net/gar/?rev=6786&view=rev Author: dmichelsen Date: 2009-10-08 15:22:50 +0000 (Thu, 08 Oct 2009) Log Message: ----------- fping: Add patch Modified Paths: -------------- csw/mgar/pkg/fping/trunk/Makefile csw/mgar/pkg/fping/trunk/checksums Added Paths: ----------- csw/mgar/pkg/fping/trunk/files/fping-2.4b2_to-sequence-fix.patch csw/mgar/pkg/fping/trunk/files/fping-ipv6.patch Modified: csw/mgar/pkg/fping/trunk/Makefile =================================================================== --- csw/mgar/pkg/fping/trunk/Makefile 2009-10-08 14:54:10 UTC (rev 6785) +++ csw/mgar/pkg/fping/trunk/Makefile 2009-10-08 15:22:50 UTC (rev 6786) @@ -20,7 +20,8 @@ MASTER_SITES = http://fping.sourceforge.net/download/ MASTER_SITES += http://oss.oetiker.ch/smokeping/pub/ DISTFILES = $(GARNAME).tar.gz -PATCHFILES = fping-2.4b2_to-sequence-fix.patch +#PATCHFILES = fping-2.4b2_to-sequence-fix.patch +PATCHFILES += fping-ipv6.patch # We define upstream file regex so we can be notifed of new upstream software release #UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz Modified: csw/mgar/pkg/fping/trunk/checksums =================================================================== --- csw/mgar/pkg/fping/trunk/checksums 2009-10-08 14:54:10 UTC (rev 6785) +++ csw/mgar/pkg/fping/trunk/checksums 2009-10-08 15:22:50 UTC (rev 6786) @@ -1,2 +1,2 @@ -ee105906fc48b78f72866e121a7c179e download/fping-2.4b2_to-sequence-fix.patch +c5e9dc057bda53ed36af08ee9fb84938 download/fping-ipv6.patch d5e8be59e307cef76bc479e1684df705 download/fping.tar.gz Added: csw/mgar/pkg/fping/trunk/files/fping-2.4b2_to-sequence-fix.patch =================================================================== --- csw/mgar/pkg/fping/trunk/files/fping-2.4b2_to-sequence-fix.patch (rev 0) +++ csw/mgar/pkg/fping/trunk/files/fping-2.4b2_to-sequence-fix.patch 2009-10-08 15:22:50 UTC (rev 6786) @@ -0,0 +1,82 @@ +Only in fping-2.4b2_to.patch: Makefile +Only in fping-2.4b2_to.patch: config.h +Only in fping-2.4b2_to.patch: config.log +Only in fping-2.4b2_to.patch: config.status +Only in fping-2.4b2_to.patch: fping +diff -u fping-2.4b2_to/fping.c fping-2.4b2_to.patch/fping.c +--- fping-2.4b2_to/fping.c 2001-07-20 19:10:26.000000000 +0200 ++++ fping-2.4b2_to.patch/fping.c 2008-08-18 22:14:38.000000000 +0200 +@@ -1440,7 +1440,7 @@ + icp->icmp_type = ICMP_ECHO; + icp->icmp_code = 0; + icp->icmp_cksum = 0; +- icp->icmp_seq = h->i; ++ icp->icmp_seq = h->i + (h->num_sent) * num_hosts; + icp->icmp_id = ident; + + pdp = ( PING_DATA* )( buffer + SIZE_ICMP_HDR ); +@@ -1527,6 +1527,7 @@ + int n, avg; + HOST_ENTRY *h; + long this_reply; ++ long id; + int this_count; + struct timeval sent_time; + +@@ -1568,6 +1569,7 @@ + }/* IF */ + + icp = ( struct icmp* )( buffer + hlen ); ++ id = icp->icmp_seq % num_hosts; + if( icp->icmp_type != ICMP_ECHOREPLY ) + { + /* handle some problem */ +@@ -1583,10 +1585,10 @@ + + num_pingreceived++; + +- if( icp->icmp_seq >= ( n_short )num_hosts ) ++ if( id >= ( n_short )num_hosts ) + return( 1 ); /* packet received, don't worry about it anymore */ + +- n = icp->icmp_seq; ++ n = id; + h = table[n]; + + /* received ping is cool, so process it */ +@@ -1726,6 +1728,7 @@ + { + struct icmp *sent_icmp; + struct ip *sent_ip; ++ long id = sent_icmp->icmp_seq % num_hosts; + u_char *c; + HOST_ENTRY *h; + +@@ -1737,10 +1740,10 @@ + + if( ( sent_icmp->icmp_type == ICMP_ECHO ) && + ( sent_icmp->icmp_id == ident ) && +- ( sent_icmp->icmp_seq < ( n_short )num_hosts ) ) ++ ( id < ( n_short )num_hosts ) ) + { + /* this is a response to a ping we sent */ +- h = table[sent_icmp->icmp_seq]; ++ h = table[id]; + + if( p->icmp_code > ICMP_UNREACH_MAXTYPE ) + { +@@ -1771,10 +1774,10 @@ + sent_icmp = ( struct icmp* )( c + 28 ); + if( ( sent_icmp->icmp_type = ICMP_ECHO ) && + ( sent_icmp->icmp_id = ident ) && +- ( sent_icmp->icmp_seq < ( n_short )num_hosts ) ) ++ ( id < ( n_short )num_hosts ) ) + { + /* this is a response to a ping we sent */ +- h = table[sent_icmp->icmp_seq]; ++ h = table[id]; + fprintf( stderr, "%s from %s for ICMP Echo sent to %s", + icmp_type_str[p->icmp_type], inet_ntoa( addr->sin_addr ), h->host ); + +Only in fping-2.4b2_to.patch: fping.o +Only in fping-2.4b2_to.patch: stamp-h Added: csw/mgar/pkg/fping/trunk/files/fping-ipv6.patch =================================================================== --- csw/mgar/pkg/fping/trunk/files/fping-ipv6.patch (rev 0) +++ csw/mgar/pkg/fping/trunk/files/fping-ipv6.patch 2009-10-08 15:22:50 UTC (rev 6786) @@ -0,0 +1,952 @@ +diff -Naur fping-2.4b2/ChangeLog fping-2.4b2_to-ipv6/ChangeLog +--- fping-2.4b2/ChangeLog Thu Mar 15 03:09:39 2001 ++++ fping-2.4b2_to-ipv6/ChangeLog Mon Jan 21 02:15:04 2002 +@@ -1,12 +1,23 @@ +-Tue Mar 14 18:37:50 2001 +-Jason Ewasiuk (ZeroHype Technologies Inc.) ++Wed Jan 16 2002 ++Jeroen Massar ++- Revision v2.4b2-to-IPv6 ++ - Added IPv6 support. ++ - Added -I option for selecting source IPv4/IPv6 address. ++ - Makefile.in now generates a Makefile which will build both ++ fping (IPv4) and fping6 (IPv6). Thus it makes an fping (IPv4 only) ++ and an fping6 (IPv6 only). ++ - num_unreachable was counted twice when a sendto() generated errors. ++ - See http://unfix.org/projects/ipv6/ ++ ++Tue Mar 14 2001 ++Jason Ewasiuk + - Revision v2.4b1 + - added -g option for generating IPs from a start to an end value + - two available options, generate IPs from start IP to end IP + or from a passed netmask, such as 192.168.1.0/24 + +-Thu Feb 15 14:35:00 2001 +-Jason Ewasiuk (ZeroHype Technologies Inc.) ++Thu Feb 15 2001 ++Jason Ewasiuk + - Revision v2.3b1 + - formatting changes to code layout (fping.c) + NOTE: Best viewed with a tab stop of 4 +diff -Naur fping-2.4b2/Makefile.am fping-2.4b2_to-ipv6/Makefile.am +--- fping-2.4b2/Makefile.am Thu Mar 15 03:07:52 2001 ++++ fping-2.4b2_to-ipv6/Makefile.am Wed Jan 16 01:52:18 2002 +@@ -1,5 +1,5 @@ +- + sbin_PROGRAMS = fping + fping_SOURCES = fping.c options.h linux.h + man_MANS = fping.8 + AUTOMAKE_OPTIONS=foreign ++EXTRA_DIST = $(man_MANS) +diff -Naur fping-2.4b2/README fping-2.4b2_to-ipv6/README +--- fping-2.4b2/README Wed Apr 25 20:29:10 2001 ++++ fping-2.4b2_to-ipv6/README Mon Jan 21 02:02:12 2002 +@@ -1,9 +1,9 @@ + fping README + ------------ + +-Current maintainer and cool feature adder: ++Current maintainer: + +-ZeroHype Technologies Inc. (noc at zerohype.com) http://www.zerohype.com ++David Papp - david at remote.net + + + fping website: http://www.fping.com +@@ -11,6 +11,7 @@ + + Original author: Roland Schemers (schemers at stanford.edu) + Previous maintainer: RL "Bob" Morgan (morgan at stanford.edu) ++IPv6 Support: Jeroen Massar (jeroen at unfix.org / jeroen at ipng.nl) + + + Suggestions and patches: +diff -Naur fping-2.4b2/acconfig.h fping-2.4b2_to-ipv6/acconfig.h +--- fping-2.4b2/acconfig.h Thu Mar 15 03:07:52 2001 ++++ fping-2.4b2_to-ipv6/acconfig.h Sat Nov 3 16:23:40 2001 +@@ -1,4 +1,18 @@ ++#ifndef CONFIG_H ++#define CONFIG_H ++ ++ at TOP@ + + /* VERSION (from configure.in) */ + #undef VERSION + ++ ++ at BOTTOM@ ++ ++/* some OSes do not define this ... lets take a wild guess */ ++ ++#ifndef INADDR_NONE ++# define INADDR_NONE 0xffffffffU ++#endif ++ ++#endif /* CONFIG_H */ +diff -Naur fping-2.4b2/aclocal.m4 fping-2.4b2_to-ipv6/aclocal.m4 +--- fping-2.4b2/aclocal.m4 Thu Jan 1 01:00:00 1970 ++++ fping-2.4b2_to-ipv6/aclocal.m4 Wed Jan 16 01:48:55 2002 +@@ -0,0 +1,127 @@ ++dnl aclocal.m4 generated automatically by aclocal 1.4 ++ ++dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. ++dnl This file is free software; the Free Software Foundation ++dnl gives unlimited permission to copy and/or distribute it, ++dnl with or without modifications, as long as this notice is preserved. ++ ++dnl This program is distributed in the hope that it will be useful, ++dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++dnl PARTICULAR PURPOSE. ++ ++# Do all the work for Automake. This macro actually does too much -- ++# some checks are only needed if your package does certain things. ++# But this isn't really a big deal. ++ ++# serial 1 ++ ++dnl Usage: ++dnl AM_INIT_AUTOMAKE(package,version, [no-define]) ++ ++AC_DEFUN(AM_INIT_AUTOMAKE, ++[AC_REQUIRE([AC_PROG_INSTALL]) ++PACKAGE=[$1] ++AC_SUBST(PACKAGE) ++VERSION=[$2] ++AC_SUBST(VERSION) ++dnl test to see if srcdir already configured ++if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then ++ AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) ++fi ++ifelse([$3],, ++AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) ++AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) ++AC_REQUIRE([AM_SANITY_CHECK]) ++AC_REQUIRE([AC_ARG_PROGRAM]) ++dnl FIXME This is truly gross. ++missing_dir=`cd $ac_aux_dir && pwd` ++AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) ++AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) ++AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) ++AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) ++AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) ++AC_REQUIRE([AC_PROG_MAKE_SET])]) ++ ++# ++# Check to make sure that the build environment is sane. ++# ++ ++AC_DEFUN(AM_SANITY_CHECK, ++[AC_MSG_CHECKING([whether build environment is sane]) ++# Just in case ++sleep 1 ++echo timestamp > conftestfile ++# Do `set' in a subshell so we don't clobber the current shell's ++# arguments. Must try -L first in case configure is actually a ++# symlink; some systems play weird games with the mod time of symlinks ++# (eg FreeBSD returns the mod time of the symlink's containing ++# directory). ++if ( ++ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` ++ if test "[$]*" = "X"; then ++ # -L didn't work. ++ set X `ls -t $srcdir/configure conftestfile` ++ fi ++ if test "[$]*" != "X $srcdir/configure conftestfile" \ ++ && test "[$]*" != "X conftestfile $srcdir/configure"; then ++ ++ # If neither matched, then we have a broken ls. This can happen ++ # if, for instance, CONFIG_SHELL is bash and it inherits a ++ # broken ls alias from the environment. This has actually ++ # happened. Such a system could not be considered "sane". ++ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken ++alias in your environment]) ++ fi ++ ++ test "[$]2" = conftestfile ++ ) ++then ++ # Ok. ++ : ++else ++ AC_MSG_ERROR([newly created file is older than distributed files! ++Check your system clock]) ++fi ++rm -f conftest* ++AC_MSG_RESULT(yes)]) ++ ++dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) ++dnl The program must properly implement --version. ++AC_DEFUN(AM_MISSING_PROG, ++[AC_MSG_CHECKING(for working $2) ++# Run test in a subshell; some versions of sh will print an error if ++# an executable is not found, even if stderr is redirected. ++# Redirect stdin to placate older versions of autoconf. Sigh. ++if ($2 --version) < /dev/null > /dev/null 2>&1; then ++ $1=$2 ++ AC_MSG_RESULT(found) ++else ++ $1="$3/missing $2" ++ AC_MSG_RESULT(missing) ++fi ++AC_SUBST($1)]) ++ ++# Like AC_CONFIG_HEADER, but automatically create stamp file. ++ ++AC_DEFUN(AM_CONFIG_HEADER, ++[AC_PREREQ([2.12]) ++AC_CONFIG_HEADER([$1]) ++dnl When config.status generates a header, we must update the stamp-h file. ++dnl This file resides in the same directory as the config header ++dnl that is generated. We must strip everything past the first ":", ++dnl and everything past the last "/". ++AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl ++ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, ++<>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, ++<>; do ++ case " <<$>>CONFIG_HEADERS " in ++ *" <<$>>am_file "*<<)>> ++ echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx ++ ;; ++ esac ++ am_indx=`expr "<<$>>am_indx" + 1` ++done<<>>dnl>>) ++changequote([,]))]) ++ +diff -Naur fping-2.4b2/config.h.in fping-2.4b2_to-ipv6/config.h.in +--- fping-2.4b2/config.h.in Thu Mar 15 03:07:52 2001 ++++ fping-2.4b2_to-ipv6/config.h.in Wed Jan 16 01:49:45 2002 +@@ -1,4 +1,7 @@ + /* config.h.in. Generated automatically from configure.in by autoheader. */ ++#ifndef CONFIG_H ++#define CONFIG_H ++ + + /* VERSION (from configure.in) */ + #undef VERSION +@@ -20,3 +23,18 @@ + + /* Define if you have the socket library (-lsocket). */ + #undef HAVE_LIBSOCKET ++ ++/* Name of package */ ++#undef PACKAGE ++ ++/* Version number of package */ ++#undef VERSION ++ ++ ++/* some OSes do not define this ... lets take a wild guess */ ++ ++#ifndef INADDR_NONE ++# define INADDR_NONE 0xffffffffU ++#endif ++ ++#endif /* CONFIG_H */ +diff -Naur fping-2.4b2/configure.in fping-2.4b2_to-ipv6/configure.in +--- fping-2.4b2/configure.in Thu Nov 7 21:11:57 2002 ++++ fping-2.4b2_to-ipv6/configure.in Wed Jan 16 01:48:02 2002 +@@ -1,18 +1,26 @@ + dnl Process this file with autoconf to produce a configure script. + AC_INIT(fping.c) +-AM_INIT_AUTOMAKE(fping,fping) ++AM_INIT_AUTOMAKE(fping, 2.4b2_to_ipv6) ++ + AM_CONFIG_HEADER(config.h) ++#VERSION=2.4b2 ++#PACKAGE=fping ++AC_SUBST(PACKAGE) ++AC_SUBST(VERSION) ++AC_DEFINE_UNQUOTED(VERSION,"$VERSION") + + dnl Checks for programs. + +-AC_ARG_PROGRAM + AC_PROG_CC + AC_PROG_CPP + AC_PROG_INSTALL + + dnl Checks for libraries. + +-AC_CHECK_FUNC(gethostbyname, [] AC_CHECK_LIB(nsl, gethostbyname)) ++AC_CHECK_FUNC(gethostbyname) ++if test $ac_cv_func_gethostbyname = no; then ++ AC_CHECK_LIB(nsl, gethostbyname) ++fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect) +@@ -21,4 +29,4 @@ + dnl Checks for header files. + AC_CHECK_HEADERS(unistd.h sys/file.h stdlib.h sys/select.h) + +-AC_OUTPUT([Makefile]) ++AC_OUTPUT(Makefile) +diff -Naur fping-2.4b2/fping.8 fping-2.4b2_to-ipv6/fping.8 +--- fping-2.4b2/fping.8 Thu Mar 15 03:10:45 2001 ++++ fping-2.4b2_to-ipv6/fping.8 Mon Jan 21 02:05:48 2002 +@@ -192,7 +192,7 @@ + .nf + Roland J. Schemers III, Stanford University, concept and versions 1.x + RL "Bob" Morgan, Stanford University, versions 2.x +-ZeroHype Technologies Inc. (http://www.zerohype.com), versions 2.3x and up, ++David Papp, versions 2.3x and up, + fping website: http://www.fping.com + .ni + .SH DIAGNOSTICS +diff -Naur fping-2.4b2/fping.c fping-2.4b2_to-ipv6/fping.c +--- fping-2.4b2/fping.c Fri Jul 20 19:10:26 2001 ++++ fping-2.4b2_to-ipv6/fping.c Mon Jan 21 02:06:30 2002 +@@ -17,12 +17,13 @@ + * + * Current maintainers of fping: + * +- * ZeroHype Technologies Inc. (http://www.zerohype.com) +- * Suggestions and patches, please email noc at zerohype.com ++ * David Papp ++ * Suggestions and patches, please email david at remote.net + * + * + * +- * Original author: Roland Schemers ++ * Original author: Roland Schemers ++ * IPv6 Support: Jeroen Massar + * + * + * +@@ -41,6 +42,7 @@ + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED + * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ ++#define IPV6 1 /* This should be a compiler option, or even better be done from the Makefile... ;) */ + + #ifndef _NO_PROTO + #if !__STDC__ && !defined( __cplusplus ) && !defined( FUNCPROTO ) \ +@@ -65,13 +67,16 @@ + + /*** autoconf includes ***/ + +-#include + + #include + #include + #include + #include + ++#include ++ ++#include "config.h" ++ + #ifdef HAVE_UNISTD_H + #include + #endif /* HAVE_UNISTD_H */ +@@ -91,8 +96,10 @@ + #include + #endif /* HAVE_SYS_FILE_H */ + ++#ifdef IPV6 ++#include ++#endif + #include +-#include + + /* Linux has bizarre ip.h and ip_icmp.h */ + #if defined( __linux__ ) +@@ -126,8 +133,8 @@ + + /*** Constants ***/ + +-#define REV_DATE "2001/01/25 11:25:04" +-#define EMAIL "noc at zerohype.com" ++#define REV_DATE "2002/01/16 00:33:42" ++#define EMAIL "david at remote.net" + + /*** Ping packet defines ***/ + +@@ -215,6 +222,13 @@ + }; + + #define ICMP_UNREACH_MAXTYPE 15 ++#ifndef IPV6 ++#define FPING_SOCKADDR struct sockaddr_in ++#define FPING_ICMPHDR struct icmp ++#else ++#define FPING_SOCKADDR struct sockaddr_in6 ++#define FPING_ICMPHDR struct icmp6_hdr ++#endif + + /* entry used to keep track of each host we are pinging */ + +@@ -225,7 +239,7 @@ + char *name; /* name as given by user */ + char *host; /* text description of host */ + char *pad; /* pad to align print names */ +- struct sockaddr_in saddr; /* internet address */ ++ FPING_SOCKADDR saddr; /* internet address */ + int timeout; /* time to wait for response */ + u_char running; /* unset when through sending */ + u_char waiting; /* waiting for response */ +@@ -335,7 +349,11 @@ + #else + + void add_name( char *name ); ++#ifndef IPV6 + void add_addr( char *name, char *host, struct in_addr ipaddr ); ++#else ++void add_addr( char *name, char *host, FPING_SOCKADDR *ipaddr ); ++#endif + char *na_cat( char *name, struct in_addr ipaddr ); + char *cpystr( char *string ); + void crash_and_burn( char *message ); +@@ -343,7 +361,7 @@ + char *get_host_by_address( struct in_addr in ); + int in_cksum( u_short *p, int n ); + void u_sleep( int u_sec ); +-int recvfrom_wto ( int s, char *buf, int len, struct sockaddr *saddr, int timo ); ++int recvfrom_wto ( int s, char *buf, int len, FPING_SOCKADDR *saddr, int timo ); + void remove_job( HOST_ENTRY *h ); + void send_ping( int s, HOST_ENTRY *h ); + long timeval_diff( struct timeval *a, struct timeval *b ); +@@ -353,7 +371,7 @@ + void print_per_system_splits( void ); + void print_global_stats( void ); + void finish(); +-int handle_random_icmp( struct icmp *p, int psize, struct sockaddr_in *addr ); ++int handle_random_icmp( FPING_ICMPHDR *p, int psize, FPING_SOCKADDR *addr ); + char *sprint_tm( int t ); + + #endif /* _NO_PROTO */ +@@ -382,12 +400,14 @@ + #endif /* _NO_PROTO */ + { + int c, i, n; ++#ifdef IPV6 ++ int opton = 1; ++#endif + u_int lt, ht; + int advance; + struct protoent *proto; + char *buf; + uid_t uid; +- + /* check if we are root */ + + if( geteuid() ) +@@ -400,15 +420,62 @@ + }/* IF */ + + /* confirm that ICMP is available on this machine */ ++#ifndef IPV6 + if( ( proto = getprotobyname( "icmp" ) ) == NULL ) ++#else ++ if( ( proto = getprotobyname( "ipv6-icmp" ) ) == NULL ) ++#endif + crash_and_burn( "icmp: unknown protocol" ); + + /* create raw socket for ICMP calls (ping) */ ++#ifndef IPV6 + s = socket( AF_INET, SOCK_RAW, proto->p_proto ); ++#else ++ s = socket( AF_INET6, SOCK_RAW, proto->p_proto ); ++#endif + + if( s < 0 ) + errno_crash_and_burn( "can't create raw socket" ); + ++#ifdef IPV6 ++ /* ++ * let the kerel pass extension headers of incoming packets, ++ * for privileged socket options ++ */ ++#ifdef IPV6_RECVHOPOPTS ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_RECVHOPOPTS, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_RECVHOPOPTS)"); ++#else /* old adv. API */ ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_HOPOPTS, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_HOPOPTS)"); ++#endif ++#ifdef IPV6_RECVDSTOPTS ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_RECVDSTOPTS, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_RECVDSTOPTS)"); ++#else /* old adv. API */ ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_DSTOPTS, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_DSTOPTS)"); ++#endif ++#ifdef IPV6_RECVRTHDRDSTOPTS ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_RECVRTHDRDSTOPTS, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_RECVRTHDRDSTOPTS)"); ++#endif ++#ifdef IPV6_RECVRTHDR ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_RECVRTHDR, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_RECVRTHDR)"); ++#else /* old adv. API */ ++ if (setsockopt(s, IPPROTO_IPV6, IPV6_RTHDR, &opton, ++ sizeof(opton))) ++ err(1, "setsockopt(IPV6_RTHDR)"); ++#endif ++#endif ++ + if( ( uid = getuid() ) ) + { + seteuid( getuid() ); +@@ -1425,7 +1492,7 @@ + #endif /* _NO_PROTO */ + { + char *buffer; +- struct icmp *icp; ++ FPING_ICMPHDR *icp; + PING_DATA *pdp; + int n; + +@@ -1434,9 +1501,10 @@ + crash_and_burn( "can't malloc ping packet" ); + + memset( buffer, 0, ping_pkt_size * sizeof( char ) ); +- icp = ( struct icmp* )buffer; ++ icp = ( FPING_ICMPHDR* )buffer; + + gettimeofday( &h->last_send_time, &tz ); ++#ifndef IPV6 + icp->icmp_type = ICMP_ECHO; + icp->icmp_code = 0; + icp->icmp_cksum = 0; +@@ -1448,14 +1516,25 @@ + pdp->ping_count = h->num_sent; + + icp->icmp_cksum = in_cksum( ( u_short* )icp, ping_pkt_size ); ++#else ++ icp->icmp6_type = ICMP6_ECHO_REQUEST; ++ icp->icmp6_code = 0; ++ icp->icmp6_seq = h->i; ++ icp->icmp6_id = ident; ++ ++ pdp = ( PING_DATA* )( buffer + SIZE_ICMP_HDR ); ++ pdp->ping_ts = h->last_send_time; ++ pdp->ping_count = h->num_sent; + ++ icp->icmp6_cksum = 0; // The IPv6 stack calculates the checksum for us... ++#endif + #if defined(DEBUG) || defined(_DEBUG) + if( trace_flag ) + printf( "sending [%d] to %s\n", h->num_sent, h->host ); + #endif /* DEBUG || _DEBUG */ + + n = sendto( s, buffer, ping_pkt_size, 0, +- ( struct sockaddr* )&h->saddr, sizeof( struct sockaddr_in ) ); ++ ( struct sockaddr* )&h->saddr, sizeof( FPING_SOCKADDR ) ); + + if( n < 0 || n != ping_pkt_size ) + { +@@ -1520,18 +1599,17 @@ + { + int result; + static char buffer[4096]; +- struct sockaddr_in response_addr; ++ FPING_SOCKADDR response_addr; + struct ip *ip; +- int hlen; +- struct icmp *icp; ++ int hlen = 0; ++ FPING_ICMPHDR *icp; + int n, avg; + HOST_ENTRY *h; + long this_reply; + int this_count; + struct timeval sent_time; + +- result = recvfrom_wto( s, buffer, 4096, +- ( struct sockaddr* )&response_addr, select_time ); ++ result = recvfrom_wto( s, buffer, sizeof(buffer), &response_addr, select_time ); + + if( result < 0 ) + return 0; /* timeout */ +@@ -1546,7 +1624,7 @@ + #endif /* DEBUG || _DEBUG */ + + ip = ( struct ip* )buffer; +- ++#ifndef IPV6 + #if defined( __alpha__ ) && __STDC__ && !defined( __GLIBC__ ) + /* The alpha headers are decidedly broken. + * Using an ANSI compiler, it provides ip_vhl instead of ip_hl and +@@ -1556,37 +1634,59 @@ + #else + hlen = ip->ip_hl << 2; + #endif /* defined(__alpha__) && __STDC__ */ +- + if( result < hlen + ICMP_MINLEN ) ++#else ++ if( result < sizeof(FPING_ICMPHDR) ) ++#endif + { + if( verbose_flag ) ++ { ++#ifndef IPV6 + printf( "received packet too short for ICMP (%d bytes from %s)\n", result, + inet_ntoa( response_addr.sin_addr ) ); +- ++#else ++ char buf[INET6_ADDRSTRLEN]; ++ inet_ntop(response_addr.sin6_family, &response_addr.sin6_addr, buf, INET6_ADDRSTRLEN); ++ printf( "received packet too short for ICMP (%d bytes from %s)\n", result, buf); ++#endif ++ } + return( 1 ); /* too short */ +- + }/* IF */ + +- icp = ( struct icmp* )( buffer + hlen ); ++ icp = ( FPING_ICMPHDR* )( buffer + hlen ); ++#ifndef IPV6 + if( icp->icmp_type != ICMP_ECHOREPLY ) ++#else ++ if( icp->icmp6_type != ICMP6_ECHO_REPLY ) ++#endif + { + /* handle some problem */ + if( handle_random_icmp( icp, result, &response_addr ) ) + num_othericmprcvd++; +- + return 1; +- + }/* IF */ + ++#ifndef IPV6 + if( icp->icmp_id != ident ) ++#else ++ if( icp->icmp6_id != ident ) ++#endif + return 1; /* packet received, but not the one we are looking for! */ + + num_pingreceived++; + ++#ifndef IPV6 + if( icp->icmp_seq >= ( n_short )num_hosts ) ++#else ++ if( icp->icmp6_seq >= ( n_short )num_hosts ) ++#endif + return( 1 ); /* packet received, don't worry about it anymore */ + ++#ifndef IPV6 + n = icp->icmp_seq; ++#else ++ n = icp->icmp6_seq; ++#endif + h = table[n]; + + /* received ping is cool, so process it */ +@@ -1595,9 +1695,14 @@ + h->timeout = timeout; + h->num_recv++; + h->num_recv_i++; +- ++ ++#ifndef IPV6 + memcpy( &sent_time, icp->icmp_data + offsetof( PING_DATA, ping_ts ), sizeof( sent_time ) ); + memcpy( &this_count, icp->icmp_data, sizeof( this_count ) ); ++#else ++ memcpy( &sent_time, ((char *)icp->icmp6_data32)+4+offsetof(PING_DATA, ping_ts), sizeof( sent_time ) ); ++ memcpy( &this_count, ((char *)icp->icmp6_data32)+4, sizeof( this_count ) ); ++#endif + + #if defined( DEBUG ) || defined( _DEBUG ) + if( trace_flag ) +@@ -1627,10 +1732,18 @@ + { + fprintf( stderr, "%s : duplicate for [%d], %d bytes, %s ms", + h->host, this_count, result, sprint_tm( this_reply ) ); +- ++#ifndef IPV6 + if( response_addr.sin_addr.s_addr != h->saddr.sin_addr.s_addr ) + fprintf( stderr, " [<- %s]", inet_ntoa( response_addr.sin_addr ) ); +- ++#else ++ if(memcmp(&response_addr.sin6_addr, &h->saddr.sin6_addr, sizeof(response_addr.sin6_addr))) ++ { ++ char buf[INET6_ADDRSTRLEN]; ++ inet_ntop(response_addr.sin6_family, &response_addr.sin6_addr, buf, INET6_ADDRSTRLEN); ++ ++ fprintf( stderr, " [<- %s]", buf); ++ } ++#endif + fprintf( stderr, "\n" ); + + }/* IF */ +@@ -1660,10 +1773,17 @@ + + if( elapsed_flag ) + printf( " (%s ms)", sprint_tm( this_reply ) ); +- ++#ifndef IPV6 + if( response_addr.sin_addr.s_addr != h->saddr.sin_addr.s_addr ) + printf( " [<- %s]", inet_ntoa( response_addr.sin_addr ) ); +- ++#else ++ if(memcmp(&response_addr.sin6_addr, &h->saddr.sin6_addr, sizeof(response_addr.sin6_addr))) ++ { ++ char buf[INET6_ADDRSTRLEN]; ++ inet_ntop(response_addr.sin6_family, &response_addr.sin6_addr, buf, INET6_ADDRSTRLEN); ++ fprintf( stderr, " [<- %s]", buf); ++ } ++#endif + printf( "\n" ); + + }/* IF */ +@@ -1688,9 +1808,17 @@ + ( h->num_recv * 100 ) / h->num_sent ); + + }/* ELSE */ +- ++#ifndef IPV6 + if( response_addr.sin_addr.s_addr != h->saddr.sin_addr.s_addr ) + printf( " [<- %s]", inet_ntoa( response_addr.sin_addr ) ); ++#else ++ if(memcmp(&response_addr.sin6_addr, &h->saddr.sin6_addr, sizeof(response_addr.sin6_addr))) ++ { ++ char buf[INET6_ADDRSTRLEN]; ++ inet_ntop(response_addr.sin6_family, &response_addr.sin6_addr, buf, INET6_ADDRSTRLEN); ++ fprintf( stderr, " [<- %s]", buf); ++ } ++#endif + + printf( "\n" ); + +@@ -1706,7 +1834,7 @@ + + ************************************************************* + +- Inputs: struct icmp *p, int psize, struct sockaddr_in *addr ++ Inputs: FPING_ICMPHDR *p, int psize, FPING_SOCKADDR *addr + + Returns: int + +@@ -1717,22 +1845,33 @@ + + #ifdef _NO_PROTO + int handle_random_icmp( p, psize, addr ) +- struct icmp *p; ++ FPING_ICMPHDR *p; + int psize; +- struct sockaddr_in *addr; ++ FPING_SOCKADDR *addr; + #else +-int handle_random_icmp( struct icmp *p, int psize, struct sockaddr_in *addr ) ++int handle_random_icmp( FPING_ICMPHDR *p, int psize, FPING_SOCKADDR *addr ) + #endif /* _NO_PROTO */ + { +- struct icmp *sent_icmp; ++ FPING_ICMPHDR *sent_icmp; + struct ip *sent_ip; + u_char *c; + HOST_ENTRY *h; ++#ifdef IPV6 ++ char addr_ascii[INET6_ADDRSTRLEN]; ++ inet_ntop(addr->sin6_family, &addr->sin6_addr, addr_ascii, INET6_ADDRSTRLEN); ++#endif + + c = ( u_char* )p; ++#ifndef IPV6 + switch( p->icmp_type ) ++#else ++ switch( p->icmp6_type ) ++#endif + { + case ICMP_UNREACH: ++ sent_icmp = ( FPING_ICMPHDR* )( c + 28 ); ++ ++#ifndef IPV6 + sent_icmp = ( struct icmp* )( c + 28 ); + + if( ( sent_icmp->icmp_type == ICMP_ECHO ) && +@@ -1747,16 +1886,37 @@ + fprintf( stderr, "ICMP Unreachable (Invalid Code) from %s for ICMP Echo sent to %s", + inet_ntoa( addr->sin_addr ), h->host ); + ++#else ++ if( ( sent_icmp->icmp6_type == ICMP_ECHO ) && ++ ( sent_icmp->icmp6_id == ident ) && ++ ( sent_icmp->icmp6_seq < ( n_short )num_hosts ) ) ++ { ++ /* this is a response to a ping we sent */ ++ h = table[sent_icmp->icmp6_seq]; ++ ++ if( p->icmp6_code > ICMP_UNREACH_MAXTYPE ) ++ { ++ fprintf( stderr, "ICMP Unreachable (Invalid Code) from %s for ICMP Echo sent to %s", ++ addr_ascii, h->host ); ++#endif + }/* IF */ + else + { + fprintf( stderr, "%s from %s for ICMP Echo sent to %s", ++#ifndef IPV6 + icmp_unreach_str[p->icmp_code], inet_ntoa( addr->sin_addr ), h->host ); ++#else ++ icmp_unreach_str[p->icmp6_code], addr_ascii, h->host ); ++#endif + + }/* ELSE */ + + if( inet_addr( h->host ) == -1 ) ++#ifndef IPV6 + fprintf( stderr, " (%s)", inet_ntoa( h->saddr.sin_addr ) ); ++#else ++ fprintf( stderr, " (%s)", addr_ascii); ++#endif + + fprintf( stderr, "\n" ); + +@@ -1768,7 +1928,8 @@ + case ICMP_REDIRECT: + case ICMP_TIMXCEED: + case ICMP_PARAMPROB: +- sent_icmp = ( struct icmp* )( c + 28 ); ++ sent_icmp = ( FPING_ICMPHDR* )( c + 28 ); ++#ifndef IPV6 + if( ( sent_icmp->icmp_type = ICMP_ECHO ) && + ( sent_icmp->icmp_id = ident ) && + ( sent_icmp->icmp_seq < ( n_short )num_hosts ) ) +@@ -1780,6 +1941,19 @@ + + if( inet_addr( h->host ) == -1 ) + fprintf( stderr, " (%s)", inet_ntoa( h->saddr.sin_addr ) ); ++#else ++ if( ( sent_icmp->icmp6_type = ICMP_ECHO ) && ++ ( sent_icmp->icmp6_id = ident ) && ++ ( sent_icmp->icmp6_seq < ( n_short )num_hosts ) ) ++ { ++ /* this is a response to a ping we sent */ ++ h = table[sent_icmp->icmp6_seq]; ++ fprintf( stderr, "%s from %s for ICMP Echo sent to %s", ++ icmp_type_str[p->icmp6_type], addr_ascii, h->host ); ++ ++ if( inet_addr( h->host ) == -1 ) ++ fprintf( stderr, " (%s)", addr_ascii ); ++#endif + + fprintf( stderr, "\n" ); + +@@ -1879,6 +2053,7 @@ + void add_name( char *name ) + #endif /* _NO_PROTO */ + { ++#ifndef IPV6 + struct hostent *host_ent; + u_int ipaddress; + struct in_addr *ipa = ( struct in_addr* )&ipaddress; +@@ -1985,7 +2160,27 @@ + + }/* WHILE */ + }/* ELSE */ +- ++#else ++ FPING_SOCKADDR dst; ++ struct addrinfo *res, hints; ++ int ret_ga; ++ char *hostname; ++ ++ /* getaddrinfo */ ++ bzero(&hints, sizeof(struct addrinfo)); ++ hints.ai_flags = AI_CANONNAME; ++ hints.ai_family = AF_INET6; ++ hints.ai_socktype = SOCK_RAW; ++ hints.ai_protocol = IPPROTO_ICMPV6; ++ ++ ret_ga = getaddrinfo(name, NULL, &hints, &res); ++ if (ret_ga) errx(1, "%s", gai_strerror(ret_ga)); ++ if (res->ai_canonname) hostname = res->ai_canonname; ++ else hostname = name; ++ if (!res->ai_addr) errx(1, "getaddrinfo failed"); ++ (void)memcpy(&dst, res->ai_addr, sizeof(FPING_SOCKADDR)); /*res->ai_addrlen);*/ ++ add_addr(name, name, &dst); ++#endif + } /* add_name() */ + + +@@ -2048,9 +2243,17 @@ + void add_addr( name, host, ipaddr ) + char *name; + char *host; ++#ifndef IPV6 + struct in_addr ipaddr; + #else ++FPING_SOCKADDR *ipaddr; ++#endif ++#else ++#ifndef IPV6 + void add_addr( char *name, char *host, struct in_addr ipaddr ) ++#else ++void add_addr( char *name, char *host, FPING_SOCKADDR *ipaddr ) ++#endif + #endif /* _NO_PROTO */ + { + HOST_ENTRY *p; +@@ -2064,8 +2267,13 @@ + + p->name = name; + p->host = host; ++#ifndef IPV6 + p->saddr.sin_family = AF_INET; + p->saddr.sin_addr = ipaddr; ++#else ++ p->saddr.sin6_family = AF_INET6; ++ (void)memcpy(&p->saddr, ipaddr, sizeof(FPING_SOCKADDR)); ++#endif + p->timeout = timeout; + p->running = 1; + p->min_reply = 10000000; +@@ -2193,7 +2401,11 @@ + #endif /* _NO_PROTO */ + { + struct hostent *h; ++#ifndef IPV6 + h = gethostbyaddr( ( char* )&in, sizeof( struct in_addr ),AF_INET ); ++#else ++ h = gethostbyaddr( ( char* )&in, sizeof( FPING_SOCKADDR ),AF_INET6 ); ++#endif + + if( h == NULL || h->h_name == NULL ) + return inet_ntoa( in ); +@@ -2429,7 +2641,7 @@ + + ************************************************************* + +- Inputs: int s, char* buf, int len, struct sockaddr *saddr, int timo ++ Inputs: int s, char* buf, int len, FPING_SOCKADDR *saddr, int timo + + Returns: int + +@@ -2443,9 +2655,9 @@ + + #ifdef _NO_PROTO + int recvfrom_wto( s, buf, len, saddr, timo ) +-int s; char *buf; int len; struct sockaddr *saddr; int timo; ++int s; char *buf; int len; FPING_SOCKADDR *saddr; int timo; + #else +-int recvfrom_wto( int s, char *buf, int len, struct sockaddr *saddr, int timo ) ++int recvfrom_wto( int s, char *buf, int len, FPING_SOCKADDR *saddr, int timo ) + #endif /* _NO_PROTO */ + { + int nfound, slen, n; +@@ -2465,8 +2677,12 @@ + if( nfound == 0 ) + return -1; /* timeout */ + ++#ifndef IPV6 + slen = sizeof( struct sockaddr ); +- n = recvfrom( s, buf, len, 0, saddr, &slen ); ++#else ++ slen = sizeof( FPING_SOCKADDR ); ++#endif ++ n = recvfrom( s, buf, len, 0, (struct sockaddr *)saddr, &slen ); + if( n < 0 ) + errno_crash_and_burn( "recvfrom" ); + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bonivart at users.sourceforge.net Thu Oct 8 18:05:38 2009 From: bonivart at users.sourceforge.net (bonivart at users.sourceforge.net) Date: Thu, 08 Oct 2009 16:05:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[6787] csw/mgar/pkg/cswclassutils/trunk Message-ID: Revision: 6787 http://gar.svn.sourceforge.net/gar/?rev=6787&view=rev Author: bonivart Date: 2009-10-08 16:05:38 +0000 (Thu, 08 Oct 2009) Log Message: ----------- cswclassutils: license change Modified Paths: -------------- csw/mgar/pkg/cswclassutils/trunk/Makefile csw/mgar/pkg/cswclassutils/trunk/checksums Added Paths: ----------- csw/mgar/pkg/cswclassutils/trunk/files/COPYING Removed Paths: ------------- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.copyright Modified: csw/mgar/pkg/cswclassutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-08 15:22:50 UTC (rev 6786) +++ csw/mgar/pkg/cswclassutils/trunk/Makefile 2009-10-08 16:05:38 UTC (rev 6787) @@ -5,11 +5,10 @@ DESCRIPTION = CSW class action utilities MASTER_SITES = +DISTFILES = COPYING ARCHALL = 1 -LICENSE = license - CONFIGURE_SCRIPTS = BUILD_SCRIPTS = TEST_SCRIPTS = @@ -33,6 +32,5 @@ @ginstall -m 0755 -d $(DESTDIR)/var/opt/csw/svc/method @ginstall -m 0755 $(FILEDIR)/CSW$(GARNAME).csw.smf.sample $(DESTDIR)/etc/opt/csw/init.d/csw.smf.sample @ginstall -m 0444 $(FILEDIR)/CSW$(GARNAME).README.CSW $(DESTDIR)$(docdir)/$(GARNAME)/README.CSW - @cp $(FILEDIR)/CSW$(GARNAME).copyright $(WORKSRC)/license @$(foreach CAS,$(CASLIST),ginstall -m 0555 $(FILEDIR)/CSW$(GARNAME).$(CAS) $(DESTDIR)/usr/sadm/install/scripts/$(CAS);) @$(MAKECOOKIE) Modified: csw/mgar/pkg/cswclassutils/trunk/checksums =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/checksums 2009-10-08 15:22:50 UTC (rev 6786) +++ csw/mgar/pkg/cswclassutils/trunk/checksums 2009-10-08 16:05:38 UTC (rev 6787) @@ -0,0 +1 @@ +48a97af56d55bc90ce90303228ed8cc3 download/COPYING Added: csw/mgar/pkg/cswclassutils/trunk/files/COPYING =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/COPYING (rev 0) +++ csw/mgar/pkg/cswclassutils/trunk/files/COPYING 2009-10-08 16:05:38 UTC (rev 6787) @@ -0,0 +1,5 @@ + +These script(s) are utility scripts used by people who package software +for opencsw.org's Solaris "Community SoftWare" (CSW) effort. The scripts +may be copied free of charge, but may be of limited use to non-opencsw folks. + Deleted: csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.copyright =================================================================== --- csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.copyright 2009-10-08 15:22:50 UTC (rev 6786) +++ csw/mgar/pkg/cswclassutils/trunk/files/CSWcswclassutils.copyright 2009-10-08 16:05:38 UTC (rev 6787) @@ -1,5 +0,0 @@ - -These script(s) are utility scripts used by people who package software -for opencsw.org's Solaris "Community SoftWare" (CSW) effort. The scripts -may be copied free of charge, but may be of limited use to non-opencsw folks. - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Thu Oct 8 19:34:28 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Thu, 08 Oct 2009 17:34:28 +0000 Subject: [csw-devel] SF.net SVN: gar:[6788] csw/mgar/pkg/git/trunk Message-ID: Revision: 6788 http://gar.svn.sourceforge.net/gar/?rev=6788&view=rev Author: bdwalton Date: 2009-10-08 17:34:28 +0000 (Thu, 08 Oct 2009) Log Message: ----------- git: add patch to stop segfault in ls-files Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile csw/mgar/pkg/git/trunk/checksums Added Paths: ----------- csw/mgar/pkg/git/trunk/files/0001-ls-files-make-option-parser-keep-argv-0.patch Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2009-10-08 16:05:38 UTC (rev 6787) +++ csw/mgar/pkg/git/trunk/Makefile 2009-10-08 17:34:28 UTC (rev 6788) @@ -4,7 +4,7 @@ CATEGORIES = devel # disable tests until next version bump (at the top so it stands out) -TEST_SCRIPTS = +#TEST_SCRIPTS = PACKAGES = CSWgit CSWgitk CSWgitgui CSWgitsvn CSWgitcvs CSWgitemacs CSWgitdoc PACKAGES += CSWgitcompletion CSWgitdevel @@ -87,6 +87,7 @@ GIT_TREEISH_git.git = v$(GARVERSION)$(if $(PATCHLEVEL),-$(PATCHLEVEL)) DISTFILES = CSWgit.postinstall +PATCHFILES = 0001-ls-files-make-option-parser-keep-argv-0.patch fdirs = $(bindir_install) $(mandir) $(libexecdir_install) define _git_files Modified: csw/mgar/pkg/git/trunk/checksums =================================================================== --- csw/mgar/pkg/git/trunk/checksums 2009-10-08 16:05:38 UTC (rev 6787) +++ csw/mgar/pkg/git/trunk/checksums 2009-10-08 17:34:28 UTC (rev 6788) @@ -1 +1,2 @@ +286ebdc4e98afca87750145775cbe918 download/0001-ls-files-make-option-parser-keep-argv-0.patch 0f3606cd6720f525e7261cea87c11a61 download/CSWgit.postinstall Added: csw/mgar/pkg/git/trunk/files/0001-ls-files-make-option-parser-keep-argv-0.patch =================================================================== --- csw/mgar/pkg/git/trunk/files/0001-ls-files-make-option-parser-keep-argv-0.patch (rev 0) +++ csw/mgar/pkg/git/trunk/files/0001-ls-files-make-option-parser-keep-argv-0.patch 2009-10-08 17:34:28 UTC (rev 6788) @@ -0,0 +1,42 @@ +From a613b30af3b8a74e8b2d8f5f9910564fb44bf59d Mon Sep 17 00:00:00 2001 +From: Ben Walton +Date: Wed, 7 Oct 2009 16:25:38 -0400 +Subject: [PATCH] ls-files: make option parser keep argv[0] + +The ls-files built-in was not asking the option parser to maintain +argv[0]. This led to the possibility of fprintf(stderr, "...", NULL). +On Solaris, this was causing a segfault. On glibc systems, printed +error messages didn't contain proper strings, but rather, "(null)":... + +A trigger for this bug was: `git ls-files -i` + +Signed-off-by: Ben Walton +--- + builtin-ls-files.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/builtin-ls-files.c b/builtin-ls-files.c +index f473220..9a3705a 100644 +--- a/builtin-ls-files.c ++++ b/builtin-ls-files.c +@@ -482,7 +482,7 @@ int cmd_ls_files(int argc, const char **argv, const char *prefix) + git_config(git_default_config, NULL); + + argc = parse_options(argc, argv, prefix, builtin_ls_files_options, +- ls_files_usage, 0); ++ ls_files_usage, PARSE_OPT_KEEP_ARGV0); + if (show_tag || show_valid_bit) { + tag_cached = "H "; + tag_unmerged = "M "; +@@ -505,7 +505,7 @@ int cmd_ls_files(int argc, const char **argv, const char *prefix) + if (require_work_tree && !is_inside_work_tree()) + setup_work_tree(); + +- pathspec = get_pathspec(prefix, argv); ++ pathspec = get_pathspec(prefix, argv + 1); + + /* be nice with submodule paths ending in a slash */ + read_cache(); +-- +1.6.4.4 + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Oct 8 19:36:43 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 17:36:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6789] csw/mgar/pkg/cswutils/trunk Message-ID: Revision: 6789 http://gar.svn.sourceforge.net/gar/?rev=6789&view=rev Author: wahwah Date: 2009-10-08 17:36:43 +0000 (Thu, 08 Oct 2009) Log Message: ----------- cswutils: Support for stripping paths for comparepkg Modified Paths: -------------- csw/mgar/pkg/cswutils/trunk/Makefile csw/mgar/pkg/cswutils/trunk/checksums Property Changed: ---------------- csw/mgar/pkg/cswutils/trunk/Makefile Modified: csw/mgar/pkg/cswutils/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-08 17:34:28 UTC (rev 6788) +++ csw/mgar/pkg/cswutils/trunk/Makefile 2009-10-08 17:36:43 UTC (rev 6789) @@ -1,3 +1,5 @@ +# $Id$ + GARNAME = cswutils GARVERSION = 1.14.4 CATEGORIES = utils @@ -7,7 +9,7 @@ endef SVNROOT = http://opencsw.svn.sourceforge.net/svnroot/opencsw/utilities/ -SVN_REV = 74 +SVN_REV = 77 MASTER_SITES = DISTFILES = COPYING @@ -62,9 +64,9 @@ @ginstall $(WORKSRC)/createpkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall $(WORKSRC)/stagepkg.8 $(DESTDIR)$(mandir)/man8/ @ginstall -d $(DESTDIR)$(libdir)/python/csw - @ginstall $(WORKSRC)/compare_pkgs.py-r$(SVN_REV) \ + @ginstall -m 755 $(WORKSRC)/compare_pkgs.py-r$(SVN_REV) \ $(DESTDIR)$(libdir)/python/csw/compare_pkgs.py - @ginstall $(WORKSRC)/opencsw_lib.py-r$(SVN_REV) \ + @ginstall -m 644 $(WORKSRC)/opencsw_lib.py-r$(SVN_REV) \ $(DESTDIR)$(libdir)/python/csw/opencsw_lib.py @ln -s ../lib/python/csw/compare_pkgs.py $(DESTDIR)$(bindir)/comparepkg @$(MAKECOOKIE) Property changes on: csw/mgar/pkg/cswutils/trunk/Makefile ___________________________________________________________________ Added: svn:keywords + Id Modified: csw/mgar/pkg/cswutils/trunk/checksums =================================================================== --- csw/mgar/pkg/cswutils/trunk/checksums 2009-10-08 17:34:28 UTC (rev 6788) +++ csw/mgar/pkg/cswutils/trunk/checksums 2009-10-08 17:36:43 UTC (rev 6789) @@ -1,10 +1,10 @@ 091b12575ebc0e45cf8c3d8b43d8b638 download/COPYING 30b6598a4453e3ce0c1fabeede5eb5f8 download/checkpkg 6ec3b6597e04714430987ccc199db3c4 download/checkpkg.8 -280eef68336d2896ecc136152014af9c download/compare_pkgs.py-r74 +a60cefbb6829c8dbbfae634a9ab01eba download/compare_pkgs.py-r77 9a637f6546cc50974159a987302d91c0 download/cpan2pkg 93b6a811d303ce3be0050c5a7b3c8e69 download/createpkg a605598f30195f9ab1b29fc3944d3b31 download/createpkg.8 -d2106349c17ae9e9e000e6636960c134 download/opencsw_lib.py-r74 +d2106349c17ae9e9e000e6636960c134 download/opencsw_lib.py-r77 cd4496ee27bf86d5c8bc656c9c5974be download/stagepkg 8908a0a898aa07a7a928b2b8bd8384f0 download/stagepkg.8 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 22:31:55 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:31:55 +0000 Subject: [csw-devel] SF.net SVN: gar:[6790] csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile Message-ID: Revision: 6790 http://gar.svn.sourceforge.net/gar/?rev=6790&view=rev Author: wbonnet Date: 2009-10-08 20:31:55 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Declare previous package name as incompatible Modified Paths: -------------- csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile 2009-10-08 17:36:43 UTC (rev 6789) +++ csw/mgar/pkg/x11/x11_inputproto/trunk/Makefile 2009-10-08 20:31:55 UTC (rev 6790) @@ -20,6 +20,7 @@ CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common +INCOMPATIBLE_PKGS = CSWinputproto BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 22:32:45 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:32:45 +0000 Subject: [csw-devel] SF.net SVN: gar:[6791] csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile Message-ID: Revision: 6791 http://gar.svn.sourceforge.net/gar/?rev=6791&view=rev Author: wbonnet Date: 2009-10-08 20:32:45 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Declare previous package name as incompatible Modified Paths: -------------- csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile 2009-10-08 20:31:55 UTC (rev 6790) +++ csw/mgar/pkg/x11/x11_kbproto/trunk/Makefile 2009-10-08 20:32:45 UTC (rev 6791) @@ -20,6 +20,7 @@ CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common +INCOMPATIBLE_PKGS = CSWkbproto BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 22:34:41 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:34:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[6792] csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile Message-ID: Revision: 6792 http://gar.svn.sourceforge.net/gar/?rev=6792&view=rev Author: wbonnet Date: 2009-10-08 20:34:35 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Declare previous package name as incompatible Modified Paths: -------------- csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile 2009-10-08 20:32:45 UTC (rev 6791) +++ csw/mgar/pkg/x11/x11_renderproto/trunk/Makefile 2009-10-08 20:34:35 UTC (rev 6792) @@ -19,6 +19,7 @@ CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common +INCOMPATIBLE_PKGS = CSWrenderproto BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 22:35:47 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:35:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[6793] csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile Message-ID: Revision: 6793 http://gar.svn.sourceforge.net/gar/?rev=6793&view=rev Author: wbonnet Date: 2009-10-08 20:35:47 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Declare previous package name as incompatible Modified Paths: -------------- csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile 2009-10-08 20:34:35 UTC (rev 6792) +++ csw/mgar/pkg/x11/x11_xextproto/trunk/Makefile 2009-10-08 20:35:47 UTC (rev 6793) @@ -20,6 +20,7 @@ CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common +INCOMPATIBLE_PKGS = CSWxextproto BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 22:36:43 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:36:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6794] csw/mgar/pkg/x11/x11_xproto/trunk/Makefile Message-ID: Revision: 6794 http://gar.svn.sourceforge.net/gar/?rev=6794&view=rev Author: wbonnet Date: 2009-10-08 20:36:40 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Declare previous package name as incompatible Modified Paths: -------------- csw/mgar/pkg/x11/x11_xproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_xproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_xproto/trunk/Makefile 2009-10-08 20:35:47 UTC (rev 6793) +++ csw/mgar/pkg/x11/x11_xproto/trunk/Makefile 2009-10-08 20:36:40 UTC (rev 6794) @@ -19,6 +19,7 @@ CATALOGNAME_CSWx11$(PROTONAME) = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common +INCOMPATIBLE_PKGS = CSWxproto BUILD64 = 1 CONFIGURE_ARGS = $(DIRPATHS) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Thu Oct 8 22:50:46 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 20:50:46 +0000 Subject: [csw-devel] SF.net SVN: gar:[6795] csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng Message-ID: Revision: 6795 http://gar.svn.sourceforge.net/gar/?rev=6795&view=rev Author: wahwah Date: 2009-10-08 20:50:46 +0000 (Thu, 08 Oct 2009) Log Message: ----------- syslog_ng: Formatting changes to the startup script. Modified Paths: -------------- csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng Property Changed: ---------------- csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng Modified: csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 20:36:40 UTC (rev 6794) +++ csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 20:50:46 UTC (rev 6795) @@ -1,42 +1,44 @@ #!/bin/sh +# vim:set ts=2 sw=2 sts=2 expandtab: # -# $Id: init.d.solaris,v 1.3 2003/04/11 13:37:47 bazsi Exp $ +# $Id$ # # adapted to syslog-ng by BJ, Aug, 7th 2000 # cleaned up by Bazsi, Oct, 12th 2000 # minor fix by Bojan Zdrnja, Apr, 11th 2003 # added nicer options field # changes for OpenCSW by Ihsan Dogan, 10. November 2008 +# changes for zone support by Maciej Blizinski, 2009-07-15. DAEMON=/opt/csw/sbin/syslog-ng OPTIONS="-f /etc/opt/csw/syslog-ng.conf" case "$1" in - start) - if [ -f /etc/opt/csw/syslog-ng.conf -a -f /opt/csw/sbin/syslog-ng ]; then - echo 'syslog-ng service starting.' - # - # Before syslog-ng starts, save any messages from previous - # crash dumps so that messages appear in chronological order. - # - /usr/bin/savecore -m - if [ -r /etc/dumpadm.conf ]; then - . /etc/dumpadm.conf - [ "x$DUMPADM_DEVICE" != xswap ] && \ - /usr/bin/savecore -m -f $DUMPADM_DEVICE - fi - $DAEMON $OPTIONS -p /var/run/syslog-ng.pid - fi - ;; + start) + if [ -f /etc/opt/csw/syslog-ng.conf -a -f /opt/csw/sbin/syslog-ng ]; then + echo 'syslog-ng service starting.' + # + # Before syslog-ng starts, save any messages from previous + # crash dumps so that messages appear in chronological order. + # + /usr/bin/savecore -m + if [ -r /etc/dumpadm.conf ]; then + . /etc/dumpadm.conf + [ "x$DUMPADM_DEVICE" != xswap ] && \ + /usr/bin/savecore -m -f $DUMPADM_DEVICE + fi + $DAEMON $OPTIONS -p /var/run/syslog-ng.pid + fi + ;; - stop) - if [ -f /var/run/syslog-ng.pid ]; then - syspid=`/usr/bin/cat /var/run/syslog-ng.pid` - [ "$syspid" -gt 0 ] && kill -15 $syspid && rm /var/run/syslog-ng.pid - fi - ;; - *) - echo "Usage: $0 { start | stop }" - exit 1 - ;; + stop) + if [ -f /var/run/syslog-ng.pid ]; then + syspid=`/usr/bin/cat /var/run/syslog-ng.pid` + [ "$syspid" -gt 0 ] && kill -15 $syspid && rm /var/run/syslog-ng.pid + fi + ;; + *) + echo "Usage: $0 { start | stop }" + exit 1 + ;; esac Property changes on: csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng ___________________________________________________________________ Added: svn:keywords + Id This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Thu Oct 8 23:05:40 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Thu, 08 Oct 2009 21:05:40 +0000 Subject: [csw-devel] SF.net SVN: gar:[6796] csw/mgar/pkg/git/trunk/Makefile Message-ID: Revision: 6796 http://gar.svn.sourceforge.net/gar/?rev=6796&view=rev Author: bdwalton Date: 2009-10-08 21:05:39 +0000 (Thu, 08 Oct 2009) Log Message: ----------- git: disable tests until next version bump Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2009-10-08 20:50:46 UTC (rev 6795) +++ csw/mgar/pkg/git/trunk/Makefile 2009-10-08 21:05:39 UTC (rev 6796) @@ -4,7 +4,7 @@ CATEGORIES = devel # disable tests until next version bump (at the top so it stands out) -#TEST_SCRIPTS = +TEST_SCRIPTS = PACKAGES = CSWgit CSWgitk CSWgitgui CSWgitsvn CSWgitcvs CSWgitemacs CSWgitdoc PACKAGES += CSWgitcompletion CSWgitdevel This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wbonnet at users.sourceforge.net Thu Oct 8 23:10:30 2009 From: wbonnet at users.sourceforge.net (wbonnet at users.sourceforge.net) Date: Thu, 08 Oct 2009 21:10:30 +0000 Subject: [csw-devel] SF.net SVN: gar:[6797] csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile Message-ID: Revision: 6797 http://gar.svn.sourceforge.net/gar/?rev=6797&view=rev Author: wbonnet Date: 2009-10-08 21:10:29 +0000 (Thu, 08 Oct 2009) Log Message: ----------- Fix package file name Modified Paths: -------------- csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile Modified: csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile 2009-10-08 21:05:39 UTC (rev 6796) +++ csw/mgar/pkg/x11/x11_xf86vidmodeproto/trunk/Makefile 2009-10-08 21:10:29 UTC (rev 6797) @@ -16,7 +16,7 @@ UFILES_REGEX = $(PROTONAME)-(\d+(?:\.\d+)*).tar.gz PACKAGES = CSWx11xf86vidmdproto -CATALOGNAME_CSWx11xf86vidmdproto = $(PROTONAME) +CATALOGNAME_CSWx11xf86vidmdproto = x11_$(PROTONAME) REQUIRED_PKGS = CSWx11common This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 9 00:16:48 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 22:16:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[6798] csw/mgar/pkg/syslog_ng/trunk Message-ID: Revision: 6798 http://gar.svn.sourceforge.net/gar/?rev=6798&view=rev Author: wahwah Date: 2009-10-08 22:16:48 +0000 (Thu, 08 Oct 2009) Log Message: ----------- syslog-ng: Making it use localstatedir, http://www.opencsw.org/bugtrack/view.php?id=3945 Modified Paths: -------------- csw/mgar/pkg/syslog_ng/trunk/Makefile csw/mgar/pkg/syslog_ng/trunk/checksums csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng Modified: csw/mgar/pkg/syslog_ng/trunk/Makefile =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/Makefile 2009-10-08 21:10:29 UTC (rev 6797) +++ csw/mgar/pkg/syslog_ng/trunk/Makefile 2009-10-08 22:16:48 UTC (rev 6798) @@ -9,7 +9,7 @@ logs using TCP. endef -MASTER_SITES = http://www.balabit.com/downloads/files/syslog-ng/open-source-edition/$(GARVERSION)/source/ +MASTER_SITES = http://www.balabit.com/downloads/files/$(GARNAME)/open-source-edition/$(GARVERSION)/source/ DISTFILES = $(GARNAME)_$(GARVERSION).tar.gz DISTFILES += $(GARNAME).conf.CSW DISTFILES += cswsyslog_ng @@ -31,6 +31,10 @@ $$$$3 ~ /\/syslog-ng\.conf\.CSW$$$$/ { $$$$2 = "cswcpsampleconf" } \ { print }' +# shared /opt/csw support: +localstatedir = /var/opt/csw +sysconfdir = /etc/opt/csw + PREREQUISITE_PKGS = CSWeventlog PREREQUISITE_PKGS += CSWggettext PREREQUISITE_PKGS += CSWglib2 @@ -42,7 +46,6 @@ CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --enable-dynamic-linking CONFIGURE_ARGS += --enable-spoof-source=no -CONFIGURE_ARGS += --sysconfdir=/etc/opt/csw REQUIRED_PKGS = CSWgcc4corert REQUIRED_PKGS += CSWeventlog @@ -64,6 +67,7 @@ ginstall -d $(DESTDIR)/etc/opt/csw/init.d ginstall -m 755 $(FILEDIR)/cswsyslog_ng \ $(DESTDIR)/etc/opt/csw/init.d/cswsyslog_ng - $(MAKECOOKIE) + ginstall -m 755 -d $(DESTDIR)$(localstatedir)/run + @$(MAKECOOKIE) include gar/category.mk Modified: csw/mgar/pkg/syslog_ng/trunk/checksums =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 21:10:29 UTC (rev 6797) +++ csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 22:16:48 UTC (rev 6798) @@ -1,5 +1,5 @@ 91e692a52c4c9668e3bcf8b8816425c3 download/CSWsyslogng.postremove 7f8beb7c27a9b9ddf0ff1add6a5d4e50 download/CSWsyslogng.preinstall -fd0f7ccdc627d08a00a2e57fdbfd51d8 download/cswsyslog_ng +efa7aa43448b8a3014a10b2056382379 download/cswsyslog_ng 69bad95775b98d26e52db8a8292e2790 download/syslog-ng.conf.CSW 86c39779261545d2289e9c309e262b8d download/syslog-ng_3.0.4.tar.gz Modified: csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 21:10:29 UTC (rev 6797) +++ csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 22:16:48 UTC (rev 6798) @@ -10,12 +10,16 @@ # changes for OpenCSW by Ihsan Dogan, 10. November 2008 # changes for zone support by Maciej Blizinski, 2009-07-15. +localstatedir=/var/opt/csw +sysconfdir=/etc/opt/csw DAEMON=/opt/csw/sbin/syslog-ng -OPTIONS="-f /etc/opt/csw/syslog-ng.conf" +CONFIG_FILE="${sysconfdir}/syslog-ng.conf" +PID_FILE="${localstatedir}/run" +OPTIONS="-f ${CONFIG_FILE}" case "$1" in start) - if [ -f /etc/opt/csw/syslog-ng.conf -a -f /opt/csw/sbin/syslog-ng ]; then + if [ -f "${CONFIG_FILE}" -a -f "${DAEMON}" ]; then echo 'syslog-ng service starting.' # # Before syslog-ng starts, save any messages from previous @@ -27,14 +31,14 @@ [ "x$DUMPADM_DEVICE" != xswap ] && \ /usr/bin/savecore -m -f $DUMPADM_DEVICE fi - $DAEMON $OPTIONS -p /var/run/syslog-ng.pid + $DAEMON $OPTIONS -p ${PID_FILE} fi ;; stop) - if [ -f /var/run/syslog-ng.pid ]; then - syspid=`/usr/bin/cat /var/run/syslog-ng.pid` - [ "$syspid" -gt 0 ] && kill -15 $syspid && rm /var/run/syslog-ng.pid + if [ -f ${PID_FILE} ]; then + syspid=`/usr/bin/cat ${PID_FILE}` + [ "$syspid" -gt 0 ] && kill -15 $syspid && rm ${PID_FILE} fi ;; *) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 9 00:24:48 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 22:24:48 +0000 Subject: [csw-devel] SF.net SVN: gar:[6799] csw/mgar/pkg/syslog_ng/trunk/checksums Message-ID: Revision: 6799 http://gar.svn.sourceforge.net/gar/?rev=6799&view=rev Author: wahwah Date: 2009-10-08 22:24:48 +0000 (Thu, 08 Oct 2009) Log Message: ----------- syslog-ng: updating the checksum Modified Paths: -------------- csw/mgar/pkg/syslog_ng/trunk/checksums Modified: csw/mgar/pkg/syslog_ng/trunk/checksums =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 22:16:48 UTC (rev 6798) +++ csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 22:24:48 UTC (rev 6799) @@ -1,5 +1,5 @@ 91e692a52c4c9668e3bcf8b8816425c3 download/CSWsyslogng.postremove 7f8beb7c27a9b9ddf0ff1add6a5d4e50 download/CSWsyslogng.preinstall -efa7aa43448b8a3014a10b2056382379 download/cswsyslog_ng +f759d093f6f73e037a48c97e2bc46c39 download/cswsyslog_ng 69bad95775b98d26e52db8a8292e2790 download/syslog-ng.conf.CSW 86c39779261545d2289e9c309e262b8d download/syslog-ng_3.0.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 9 01:14:47 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 23:14:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[6800] csw/mgar/pkg/syslog_ng/trunk Message-ID: Revision: 6800 http://gar.svn.sourceforge.net/gar/?rev=6800&view=rev Author: wahwah Date: 2009-10-08 23:14:47 +0000 (Thu, 08 Oct 2009) Log Message: ----------- syslog-ng: Using /var/run for the pid file. Modified Paths: -------------- csw/mgar/pkg/syslog_ng/trunk/checksums csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng Modified: csw/mgar/pkg/syslog_ng/trunk/checksums =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 22:24:48 UTC (rev 6799) +++ csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 23:14:47 UTC (rev 6800) @@ -1,5 +1,5 @@ 91e692a52c4c9668e3bcf8b8816425c3 download/CSWsyslogng.postremove 7f8beb7c27a9b9ddf0ff1add6a5d4e50 download/CSWsyslogng.preinstall -f759d093f6f73e037a48c97e2bc46c39 download/cswsyslog_ng +4f6f1b75b8a95a7a69d93cab0eee23ef download/cswsyslog_ng 69bad95775b98d26e52db8a8292e2790 download/syslog-ng.conf.CSW 86c39779261545d2289e9c309e262b8d download/syslog-ng_3.0.4.tar.gz Modified: csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 22:24:48 UTC (rev 6799) +++ csw/mgar/pkg/syslog_ng/trunk/files/cswsyslog_ng 2009-10-08 23:14:47 UTC (rev 6800) @@ -14,7 +14,7 @@ sysconfdir=/etc/opt/csw DAEMON=/opt/csw/sbin/syslog-ng CONFIG_FILE="${sysconfdir}/syslog-ng.conf" -PID_FILE="${localstatedir}/run" +PID_FILE="/var/run/syslog-ng.pid" OPTIONS="-f ${CONFIG_FILE}" case "$1" in This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From wahwah at users.sourceforge.net Fri Oct 9 01:22:09 2009 From: wahwah at users.sourceforge.net (wahwah at users.sourceforge.net) Date: Thu, 08 Oct 2009 23:22:09 +0000 Subject: [csw-devel] SF.net SVN: gar:[6801] csw/mgar/pkg/syslog_ng/trunk/checksums Message-ID: Revision: 6801 http://gar.svn.sourceforge.net/gar/?rev=6801&view=rev Author: wahwah Date: 2009-10-08 23:22:09 +0000 (Thu, 08 Oct 2009) Log Message: ----------- syslog-ng: updating checksums Modified Paths: -------------- csw/mgar/pkg/syslog_ng/trunk/checksums Modified: csw/mgar/pkg/syslog_ng/trunk/checksums =================================================================== --- csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 23:14:47 UTC (rev 6800) +++ csw/mgar/pkg/syslog_ng/trunk/checksums 2009-10-08 23:22:09 UTC (rev 6801) @@ -1,5 +1,5 @@ 91e692a52c4c9668e3bcf8b8816425c3 download/CSWsyslogng.postremove 7f8beb7c27a9b9ddf0ff1add6a5d4e50 download/CSWsyslogng.preinstall -4f6f1b75b8a95a7a69d93cab0eee23ef download/cswsyslog_ng +fcd5effdaa96da8abf9788bc5745bda3 download/cswsyslog_ng 69bad95775b98d26e52db8a8292e2790 download/syslog-ng.conf.CSW 86c39779261545d2289e9c309e262b8d download/syslog-ng_3.0.4.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From skayser at users.sourceforge.net Fri Oct 9 11:20:19 2009 From: skayser at users.sourceforge.net (skayser at users.sourceforge.net) Date: Fri, 09 Oct 2009 09:20:19 +0000 Subject: [csw-devel] SF.net SVN: gar:[6802] csw/mgar/pkg Message-ID: Revision: 6802 http://gar.svn.sourceforge.net/gar/?rev=6802&view=rev Author: skayser Date: 2009-10-09 09:20:19 +0000 (Fri, 09 Oct 2009) Log Message: ----------- denyhosts: initial commit Added Paths: ----------- csw/mgar/pkg/denyhosts/ csw/mgar/pkg/denyhosts/branches/ csw/mgar/pkg/denyhosts/tags/ csw/mgar/pkg/denyhosts/trunk/ csw/mgar/pkg/denyhosts/trunk/Makefile csw/mgar/pkg/denyhosts/trunk/checksums csw/mgar/pkg/denyhosts/trunk/files/ Property changes on: csw/mgar/pkg/denyhosts/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/denyhosts/trunk/Makefile =================================================================== --- csw/mgar/pkg/denyhosts/trunk/Makefile (rev 0) +++ csw/mgar/pkg/denyhosts/trunk/Makefile 2009-10-09 09:20:19 UTC (rev 6802) @@ -0,0 +1,80 @@ +# TODO +# - Integrate into SMF, do we need daemon-control-dist at all? +# - Test the package +GARNAME = denyhosts +GARVERSION = 2.6 +CATEGORIES = python + +DESCRIPTION = A tool to limit SSH brute force attacks +define BLURB + DenyHosts is a script intended to be run by system administrators + to help thwart SSH server attacks (also known as dictionary based + attacks and brute force attacks). + + If you've ever looked at your ssh log you may be alarmed to see how + many hackers attempted to gain access to your server. Hopefully, none of + them were successful (but then again, how would you know?). Wouldn't it + be better to automatically prevent that attacker from continuing to gain + entry into your system? + + DenyHosts attempts to address the above. +endef + +SPKG_SOURCEURL = http://denyhosts.sf.net/ +MASTER_SITES = $(SF_MIRRORS) +DISTNAME = DenyHosts-$(GARVERSION) +DISTFILES = $(DISTNAME).tar.gz +LICENSE = LICENSE.txt +ARCHALL = 1 + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz + +# No test target +TEST_SCRIPTS = +EXTRA_INSTALL_ARGS += --no-compile + +sysconfdir = /etc/opt/csw/ +localstatedir = /var/opt/csw/ +SAMPLECONF = $(sysconfdir)/denyhosts.cfg + +include gar/category.mk + +# setup.py puts everything in /usr/share by default, adjust this to $(datadir) +pre-install-modulated: + gsed -ie 's,/usr/share/denyhosts,$(datadir)/$(GARNAME),' $(WORKSRC)/setup.py + @$(MAKECOOKIE) + +post-install-modulated: DOCDEST = $(DESTDIR)$(docdir)/$(GARNAME) +post-install-modulated: + ginstall -d $(DOCDEST) + ginstall -d $(DESTDIR)$(sysconfdir) + ginstall -d $(DESTDIR)$(localstatedir)/$(GARNAME) + mv $(DESTDIR)$(bindir)/denyhosts.py $(DESTDIR)$(bindir)/denyhosts + rm $(DESTDIR)$(datadir)/$(GARNAME)/README.txt + rm $(DESTDIR)$(datadir)/$(GARNAME)/LICENSE.txt + rm $(DESTDIR)$(datadir)/$(GARNAME)/setup.py + mv $(DESTDIR)$(datadir)/$(GARNAME)/CHANGELOG.txt $(DOCDEST)/changelog + mv $(DESTDIR)$(datadir)/$(GARNAME)/denyhosts.cfg-dist \ + $(DESTDIR)$(sysconfdir)/denyhosts.cfg + + #Adjust config to match Solaris paths + our package paths + gsed -i \ + -e 's,/var/log/secure,path to ssh log,' \ + -e 's,/usr/share/denyhosts/data,$(localstatedir)/$(GARNAME),' \ + -e 's,/var/lock/subsys/denyhosts,/var/run/denyhosts.pid,' \ + -e 's,/var/log/denyhosts,$(localestatedir)/$(GARNAME)/$(GARNAME).log,' \ + $(DESTDIR)$(sysconfdir)/denyhosts.cfg + + gsed -i \ + -e 's,denyhosts.cfg,$(sysconfdir)/denyhosts.cfg' \ + $(DESTDIR)/opt/csw/lib/python/site-packages/DenyHosts/constants.py + + #Adjust daemon-control-dist wrapper script to match our package paths + gsed -i \ + -e 's,/usr/bin/denyhosts.py,$(bindir)/denyhosts,' \ + -e 's,/usr/share/denyhosts/denyhosts.cfg,$(sysconfdir)/denyhosts.cfg,' \ + -e 's,/usr/bin/env python,$(bindir)/python,' \ + -e 's,/var/lock/subsys/denyhosts,/var/run/denyhosts.pid,' \ + $(DESTDIR)$(datadir)/$(GARNAME)/daemon-control-dist + @$(MAKECOOKIE) Added: csw/mgar/pkg/denyhosts/trunk/checksums =================================================================== --- csw/mgar/pkg/denyhosts/trunk/checksums (rev 0) +++ csw/mgar/pkg/denyhosts/trunk/checksums 2009-10-09 09:20:19 UTC (rev 6802) @@ -0,0 +1 @@ +fc2365305a9402886a2b0173d1beb7df download/DenyHosts-2.6.tar.gz This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 11:33:59 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 09:33:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6803] csw/mgar/pkg/x11/xcb-proto/trunk/Makefile Message-ID: Revision: 6803 http://gar.svn.sourceforge.net/gar/?rev=6803&view=rev Author: dmichelsen Date: 2009-10-09 09:33:58 +0000 (Fri, 09 Oct 2009) Log Message: ----------- x11/xcb-proto: Adjust to new naming and use PYCOMPILE Modified Paths: -------------- csw/mgar/pkg/x11/xcb-proto/trunk/Makefile Modified: csw/mgar/pkg/x11/xcb-proto/trunk/Makefile =================================================================== --- csw/mgar/pkg/x11/xcb-proto/trunk/Makefile 2009-10-09 09:20:19 UTC (rev 6802) +++ csw/mgar/pkg/x11/xcb-proto/trunk/Makefile 2009-10-09 09:33:58 UTC (rev 6803) @@ -1,7 +1,8 @@ -GARNAME = xcb-proto GARVERSION = 1.5 - CATEGORIES = x11 +PROTONAME = xcb-proto +GARNAME = x11_$(PROTONAME) +DISTNAME = $(PROTONAME)-$(GARVERSION) DESCRIPTION = XCB protocol descriptions (in XML) define BLURB @@ -25,16 +26,19 @@ endef MASTER_SITES = $(XCB_MASTER_SITES) -DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz +DISTFILES = $(DISTNAME).tar.gz -PACKAGES = CSWxcbproto CSWpyxcbproto +PACKAGES = CSWx11xcbproto CSWpyx11xcbproto +CATALOGNAME_CSWx11xcbproto = x11_xcbproto +CATALOGNAME_CSWpyx11xcbproto = py_x11xcbproto + PREREQUISITE_PKGS = CSWpython REQUIRED_PKGS_CSWxcbproto = CSWx11common -REQUIRED_PKGS_CSWpyxcbproto = CSWxcbproto CSWpython +REQUIRED_PKGS_CSWpyxcbproto = CSWx11xcbproto CSWpython -SPKG_DESC_CSWxcbproto = XCB protocol descriptions (in XML) -SPKG_DESC_CSWpyxcbproto = XCB protocol descriptions (in XML) Python Bindings +SPKG_DESC_CSWx11xcbproto = XCB protocol descriptions (in XML) +SPKG_DESC_CSWpyx11xcbproto = XCB protocol descriptions (in XML) Python Bindings # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz @@ -48,11 +52,8 @@ EXTRA_PAX_ARGS = -s ',^.*/\(xcbgen/.*\.py\),.$(BUILD_PREFIX)/lib/python/site-packages/\1,' EXTRA_PAX_ARGS += -s ',^\.$(libdir)/python.*,,' -EXTRA_MERGE_EXCLUDE_FILES = .*\.pyo .*\.pyc -PROTOTYPE_FILTER = awk '$$$$3 ~ /.*\.py$$$$/ { $$$$2 = "cswpycompile" } { print }' -SPKG_CLASSES = none cswpycompile -REQUIRED_PKGS += CSWcswclassutils +PYCOMPILE = 1 -PKGFILES_CSWpyxcbproto = .*\.py +PKGFILES_CSWpyx11xcbproto = .*\.py include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 11:41:23 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 09:41:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[6804] csw/mgar/pkg/x11 Message-ID: Revision: 6804 http://gar.svn.sourceforge.net/gar/?rev=6804&view=rev Author: dmichelsen Date: 2009-10-09 09:41:23 +0000 (Fri, 09 Oct 2009) Log Message: ----------- x11/x11_xcbproto: Rename directory to match new structure Added Paths: ----------- csw/mgar/pkg/x11/x11_xcbproto/ Removed Paths: ------------- csw/mgar/pkg/x11/xcb-proto/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 13:09:56 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 11:09:56 +0000 Subject: [csw-devel] SF.net SVN: gar:[6805] csw/mgar/pkg/bdb42/trunk/Makefile Message-ID: Revision: 6805 http://gar.svn.sourceforge.net/gar/?rev=6805&view=rev Author: dmichelsen Date: 2009-10-09 11:09:56 +0000 (Fri, 09 Oct 2009) Log Message: ----------- bdb42: Exclude db.jar on 64 bit Modified Paths: -------------- csw/mgar/pkg/bdb42/trunk/Makefile Modified: csw/mgar/pkg/bdb42/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-09 09:41:23 UTC (rev 6804) +++ csw/mgar/pkg/bdb42/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) @@ -69,8 +69,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb42),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar PKGFILES_CSWbdb42doc = $(PKGFILES_DOC) PKGFILES_CSWbdb42devel = $(PKGFILES_DEVEL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 13:21:54 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 11:21:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[6806] csw/mgar/pkg Message-ID: Revision: 6806 http://gar.svn.sourceforge.net/gar/?rev=6806&view=rev Author: dmichelsen Date: 2009-10-09 11:21:54 +0000 (Fri, 09 Oct 2009) Log Message: ----------- bdb ALL: Reapply r6805 to all bdb versions Modified Paths: -------------- csw/mgar/pkg/bdb43/trunk/Makefile csw/mgar/pkg/bdb44/trunk/Makefile csw/mgar/pkg/bdb45/trunk/Makefile csw/mgar/pkg/bdb46/trunk/Makefile csw/mgar/pkg/bdb47/trunk/Makefile csw/mgar/pkg/bdb48/trunk/Makefile Property Changed: ---------------- csw/mgar/pkg/bdb43/trunk/ csw/mgar/pkg/bdb44/trunk/ csw/mgar/pkg/bdb45/trunk/ csw/mgar/pkg/bdb46/trunk/ csw/mgar/pkg/bdb47/trunk/ csw/mgar/pkg/bdb48/trunk/ Property changes on: csw/mgar/pkg/bdb43/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb43/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb43/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -69,8 +69,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb43),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar PKGFILES_CSWbdb43doc = $(PKGFILES_DOC) PKGFILES_CSWbdb43devel = $(PKGFILES_DEVEL) Property changes on: csw/mgar/pkg/bdb44/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb44/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb44/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -69,8 +69,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb44),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar PKGFILES_CSWbdb44doc = $(PKGFILES_DOC) PKGFILES_CSWbdb44devel = $(PKGFILES_DEVEL) Property changes on: csw/mgar/pkg/bdb45/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb45/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb45/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -67,8 +67,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb45),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar # Remove the license from share/doc/berkeleydb/license/.* # because GAR expects license to be a file instead of a directory Property changes on: csw/mgar/pkg/bdb46/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb46/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb46/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -67,8 +67,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb46),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar # Remove the license from share/doc/berkeleydb/license/.* # because GAR expects license to be a file instead of a directory Property changes on: csw/mgar/pkg/bdb47/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb47/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb47/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -67,8 +67,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb47),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar # Remove the license from share/doc/berkeleydb/license/.* # because GAR expects license to be a file instead of a directory Property changes on: csw/mgar/pkg/bdb48/trunk ___________________________________________________________________ Added: svn:mergeinfo + /csw/mgar/pkg/bdb42/trunk:6805 Modified: csw/mgar/pkg/bdb48/trunk/Makefile =================================================================== --- csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-09 11:09:56 UTC (rev 6805) +++ csw/mgar/pkg/bdb48/trunk/Makefile 2009-10-09 11:21:54 UTC (rev 6806) @@ -68,8 +68,8 @@ LICENSE = LICENSE EXTRA_PAX_ARGS += -s ',^\.$(prefix)/docs,.$(BUILD_PREFIX)/share/doc/$(CATALOGNAME_CSWbdb48),' -EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* -EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* +EXTRA_MERGE_EXCLUDE_FILES_isa-sparcv9 = .*/docs.* $(libdir)/db.jar +EXTRA_MERGE_EXCLUDE_FILES_isa-amd64 = .*/docs.* $(libdir)/db.jar # Remove the license from share/doc/berkeleydb/license/.* # because GAR expects license to be a file instead of a directory This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 13:31:11 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 11:31:11 +0000 Subject: [csw-devel] SF.net SVN: gar:[6807] csw/mgar/gar/v2/ Message-ID: Revision: 6807 http://gar.svn.sourceforge.net/gar/?rev=6807&view=rev Author: dmichelsen Date: 2009-10-09 11:31:11 +0000 (Fri, 09 Oct 2009) Log Message: ----------- mGAR v2: Prepare for v2-pbuild update Removed Paths: ------------- csw/mgar/gar/v2/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 13:59:38 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 11:59:38 +0000 Subject: [csw-devel] SF.net SVN: gar:[6808] csw/mgar/gar Message-ID: Revision: 6808 http://gar.svn.sourceforge.net/gar/?rev=6808&view=rev Author: dmichelsen Date: 2009-10-09 11:59:38 +0000 (Fri, 09 Oct 2009) Log Message: ----------- mGAR v2: Activate v2-pbuild Added Paths: ----------- csw/mgar/gar/v2/ Removed Paths: ------------- csw/mgar/gar/v2-pbuild/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 15:08:06 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 13:08:06 +0000 Subject: [csw-devel] SF.net SVN: gar:[6809] csw/mgar/pkg/libcroco Message-ID: Revision: 6809 http://gar.svn.sourceforge.net/gar/?rev=6809&view=rev Author: dmichelsen Date: 2009-10-09 13:08:05 +0000 (Fri, 09 Oct 2009) Log Message: ----------- libcroco: Update to GAR Added Paths: ----------- csw/mgar/pkg/libcroco/branches/ csw/mgar/pkg/libcroco/tags/ csw/mgar/pkg/libcroco/tags/legacy/ csw/mgar/pkg/libcroco/trunk/Makefile Removed Paths: ------------- csw/mgar/pkg/libcroco/trunk/legacy/ Copied: csw/mgar/pkg/libcroco/trunk/Makefile (from rev 6625, csw/mgar/pkg/libgsf/trunk/Makefile) =================================================================== --- csw/mgar/pkg/libcroco/trunk/Makefile (rev 0) +++ csw/mgar/pkg/libcroco/trunk/Makefile 2009-10-09 13:08:05 UTC (rev 6809) @@ -0,0 +1,26 @@ +GARNAME = libcroco +GARVERSION = 0.6.2 +CATEGORIES = gnome + +DESCRIPTION = A CSS parsing and manipulation toolkit +define BLURB + The Libcroco project is an effort to build a generic Cascading Style + Sheet (CSS) parsing and manipulation toolkit that can be used by GNOME + applications in need of CSS support. +endef + +MASTER_SITES = $(GNOME_MIRROR) +DISTFILES = $(GARNAME)-$(GARVERSION).tar.bz2 + +# We define upstream file regex so we can be notifed of new upstream software release +UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.bz2 + +REQUIRED_PKGS = CSWggettextrt CSWglib2 CSWlibxml2 + +BUILD64 = 1 +NOISALIST = 1 +CONFIGURE_ARGS = $(DIRPATHS) + +TEST_TARGET = check + +include gar/category.mk This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From dmichelsen at users.sourceforge.net Fri Oct 9 15:24:51 2009 From: dmichelsen at users.sourceforge.net (dmichelsen at users.sourceforge.net) Date: Fri, 09 Oct 2009 13:24:51 +0000 Subject: [csw-devel] SF.net SVN: gar:[6810] csw/mgar/pkg/libcroco/trunk Message-ID: Revision: 6810 http://gar.svn.sourceforge.net/gar/?rev=6810&view=rev Author: dmichelsen Date: 2009-10-09 13:24:51 +0000 (Fri, 09 Oct 2009) Log Message: ----------- libcroco: Set SVN properties Added Paths: ----------- csw/mgar/pkg/libcroco/trunk/checksums Property Changed: ---------------- csw/mgar/pkg/libcroco/trunk/ Property changes on: csw/mgar/pkg/libcroco/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/libcroco/trunk/checksums =================================================================== --- csw/mgar/pkg/libcroco/trunk/checksums (rev 0) +++ csw/mgar/pkg/libcroco/trunk/checksums 2009-10-09 13:24:51 UTC (rev 6810) @@ -0,0 +1 @@ +1429c597aa4b75fc610ab3a542c99209 libcroco-0.6.2.tar.bz2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Fri Oct 9 21:56:00 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Fri, 09 Oct 2009 19:56:00 +0000 Subject: [csw-devel] SF.net SVN: gar:[6811] csw/mgar/pkg/openssh/trunk Message-ID: Revision: 6811 http://gar.svn.sourceforge.net/gar/?rev=6811&view=rev Author: chninkel Date: 2009-10-09 19:56:00 +0000 (Fri, 09 Oct 2009) Log Message: ----------- openssh: updated to 5.3p1 Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile csw/mgar/pkg/openssh/trunk/checksums csw/mgar/pkg/openssh/trunk/files/changelog.CSW Added Paths: ----------- csw/mgar/pkg/openssh/trunk/files/openssh-5.3p1-gsskex-all-20090726.patch Removed Paths: ------------- csw/mgar/pkg/openssh/trunk/files/openssh-5.2p1-gsskex-20081003.patch Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2009-10-09 13:24:51 UTC (rev 6810) +++ csw/mgar/pkg/openssh/trunk/Makefile 2009-10-09 19:56:00 UTC (rev 6811) @@ -13,10 +13,10 @@ ###### Package information ####### GARNAME = openssh -GARVERSION = 5.2 +GARVERSION = 5.3 RELEASE = p1 GSSKEX_PATCH_VERSION = $(GARVERSION)$(RELEASE) -GSSKEX_PATCH_DATE = 20081003 +GSSKEX_PATCH_DATE = 20090726 CATEGORIES = server DESCRIPTION = OpenSSH Secure Shell @@ -66,7 +66,7 @@ LICENSE = LICENCE # The GSSAPI key exchange patch -PATCHFILES = openssh-$(GSSKEX_PATCH_VERSION)-gsskex-$(GSSKEX_PATCH_DATE).patch +PATCHFILES = openssh-$(GSSKEX_PATCH_VERSION)-gsskex-all-$(GSSKEX_PATCH_DATE).patch # Prevent TIOCSCTTY from being used to avoid error: # ioctl(TIOCSCTTY): Invalid argument Modified: csw/mgar/pkg/openssh/trunk/checksums =================================================================== --- csw/mgar/pkg/openssh/trunk/checksums 2009-10-09 13:24:51 UTC (rev 6810) +++ csw/mgar/pkg/openssh/trunk/checksums 2009-10-09 19:56:00 UTC (rev 6811) @@ -1,16 +1,16 @@ -1d3d6d477c09e59c514e637fa3a2f7a4 download/CSWossh.checkinstall -0993813fa5c752215f892cb67c86816f download/CSWossh.preinstall -59bf25f92d3660aa7e65fb6bdc85e72f download/CSWossh.prototype -cbe3d9921fca3130e42db09914c6ea07 download/CSWosshclient.prototype -1d3d6d477c09e59c514e637fa3a2f7a4 download/CSWosshlpk.checkinstall -0993813fa5c752215f892cb67c86816f download/CSWosshlpk.preinstall -22ffa2a9b7bf310d58d3b299805a41b1 download/CSWosshlpk.prototype -894264acd8bfda9420b8cf10235b6a3e download/changelog.CSW -9153031524651a18e7edaed4637aa769 download/contrib-openssh-lpk-5.2p1-0.3.9.patch -a5ebb2e3fdaa06c3c9edba55aac5f83b download/cswopenssh -8e765642349b6321d01b33e95304e113 download/cswopenssh.xml -4b3e79120b60e8f25be5141eba53cac5 download/don_t_use_TIOCSCTTY.patch -ca5403c8e1539d5ced0573f289ed7aef download/no_x_forwarding_bug.patch -bb77f4010f030d85f143b3d149aa6a69 download/openssh-5.2p1-gsskex-20081003.patch -ada79c7328a8551bdf55c95e631e7dad download/openssh-5.2p1.tar.gz -db57ce80e8944213443caa4c52c884e5 download/sshd.smf_wrapper +1d3d6d477c09e59c514e637fa3a2f7a4 CSWossh.checkinstall +0993813fa5c752215f892cb67c86816f CSWossh.preinstall +59bf25f92d3660aa7e65fb6bdc85e72f CSWossh.prototype +cbe3d9921fca3130e42db09914c6ea07 CSWosshclient.prototype +1d3d6d477c09e59c514e637fa3a2f7a4 CSWosshlpk.checkinstall +0993813fa5c752215f892cb67c86816f CSWosshlpk.preinstall +22ffa2a9b7bf310d58d3b299805a41b1 CSWosshlpk.prototype +413f3c282c526894bbecc9dbdd6f2973 changelog.CSW +9153031524651a18e7edaed4637aa769 contrib-openssh-lpk-5.2p1-0.3.9.patch +a5ebb2e3fdaa06c3c9edba55aac5f83b cswopenssh +8e765642349b6321d01b33e95304e113 cswopenssh.xml +4b3e79120b60e8f25be5141eba53cac5 don_t_use_TIOCSCTTY.patch +ca5403c8e1539d5ced0573f289ed7aef no_x_forwarding_bug.patch +d8f82af1449f36ae9864bd614245fb59 openssh-5.3p1-gsskex-all-20090726.patch +13563dbf61f36ca9a1e4254260131041 openssh-5.3p1.tar.gz +db57ce80e8944213443caa4c52c884e5 sshd.smf_wrapper Modified: csw/mgar/pkg/openssh/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-09 13:24:51 UTC (rev 6810) +++ csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-09 19:56:00 UTC (rev 6811) @@ -1,3 +1,9 @@ +openssh (5.3,REV=2009.10.09_rev=p1) unstable + + * New upstream release. + + -- Yann Rouillard Fri, 09 Oct 2009 21:47:46 +0200 + openssh (5.2,REV=2009.07.25_rev=p1) unstable * Fixed missing /opt/csw/etc/ssh in prototype (Closes: #3765) Deleted: csw/mgar/pkg/openssh/trunk/files/openssh-5.2p1-gsskex-20081003.patch =================================================================== --- csw/mgar/pkg/openssh/trunk/files/openssh-5.2p1-gsskex-20081003.patch 2009-10-09 13:24:51 UTC (rev 6810) +++ csw/mgar/pkg/openssh/trunk/files/openssh-5.2p1-gsskex-20081003.patch 2009-10-09 19:56:00 UTC (rev 6811) @@ -1,2170 +0,0 @@ -diff -urN ChangeLog.gssapi ChangeLog.gssapi ---- openssh-5.2p1/ChangeLog.gssapi 1970-01-01 01:00:00.000000000 +0100 -+++ openssh-5.2p1.new/ChangeLog.gssapi 2008-10-03 21:03:11.484172000 +0200 -@@ -0,0 +1,75 @@ -+20080404 -+ - [ gss-serv.c ] -+ Add code to actually implement GSSAPIStrictAcceptCheck, which had somehow -+ been omitted from a previous version of this patch. Reported by Borislav -+ Stoichkov -+ -+20070317 -+ - [ gss-serv-krb5.c ] -+ Remove C99ism, where new_ccname was being declared in the middle of a -+ function -+ -+20061220 -+ - [ servconf.c ] -+ Make default for GSSAPIStrictAcceptorCheck be Yes, to match previous, and -+ documented, behaviour. Reported by Dan Watson. -+ -+20060910 -+ - [ gss-genr.c kexgssc.c kexgsss.c kex.h monitor.c sshconnect2.c sshd.c -+ ssh-gss.h ] -+ add support for gss-group14-sha1 key exchange mechanisms -+ - [ gss-serv.c servconf.c servconf.h sshd_config sshd_config.5 ] -+ Add GSSAPIStrictAcceptorCheck option to allow the disabling of -+ acceptor principal checking on multi-homed machines. -+ -+ - [ sshd_config ssh_config ] -+ Add settings for GSSAPIKeyExchange and GSSAPITrustDNS to the sample -+ configuration files -+ - [ kexgss.c kegsss.c sshconnect2.c sshd.c ] -+ Code cleanup. Replace strlen/xmalloc/snprintf sequences with xasprintf() -+ Limit length of error messages displayed by client -+ -+20060909 -+ - [ gss-genr.c gss-serv.c ] -+ move ssh_gssapi_acquire_cred() and ssh_gssapi_server_ctx to be server -+ only, where they belong -+ -+ -+20060829 -+ - [ gss-serv-krb5.c ] -+ Fix CCAPI credentials cache name when creating KRB5CCNAME environment -+ variable -+ -+20060828 -+ - [ gss-genr.c ] -+ Avoid Heimdal context freeing problem -+ -+ -+20060818 -+ - [ gss-genr.c ssh-gss.h sshconnect2.c ] -+ Make sure that SPENGO is disabled -+ -+ -+20060421 -+ - [ gssgenr.c, sshconnect2.c ] -+ a few type changes (signed versus unsigned, int versus size_t) to -+ fix compiler errors/warnings -+ (from jbasney AT ncsa.uiuc.edu) -+ - [ kexgssc.c, sshconnect2.c ] -+ fix uninitialized variable warnings -+ (from jbasney AT ncsa.uiuc.edu) -+ - [ gssgenr.c ] -+ pass oid to gss_display_status (helpful when using GSSAPI mechglue) -+ (from jbasney AT ncsa.uiuc.edu) -+ -+ - [ gss-serv-krb5.c ] -+ #ifdef HAVE_GSSAPI_KRB5 should be #ifdef HAVE_GSSAPI_KRB5_H -+ (from jbasney AT ncsa.uiuc.edu) -+ -+ - [ readconf.c, readconf.h, ssh_config.5, sshconnect2.c -+ add client-side GssapiKeyExchange option -+ (from jbasney AT ncsa.uiuc.edu) -+ - [ sshconnect2.c ] -+ add support for GssapiTrustDns option for gssapi-with-mic -+ (from jbasney AT ncsa.uiuc.edu) -+ -diff -urN openssh-5.2p1/Makefile.in openssh-5.2p1.new/Makefile.in ---- openssh-5.2p1/Makefile.in 2008-11-05 06:20:46.000000000 +0100 -+++ openssh-5.2p1.new/Makefile.in 2009-03-21 15:39:14.000000000 +0100 -@@ -71,7 +71,7 @@ - atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \ - monitor_fdpass.o rijndael.o ssh-dss.o ssh-rsa.o dh.o kexdh.o \ - kexgex.o kexdhc.o kexgexc.o scard.o msg.o progressmeter.o dns.o \ -- entropy.o scard-opensc.o gss-genr.o umac.o jpake.o schnorr.o -+ entropy.o scard-opensc.o gss-genr.o umac.o kexgssc.o jpake.o schnorr.o - - SSHOBJS= ssh.o readconf.o clientloop.o sshtty.o \ - sshconnect.o sshconnect1.o sshconnect2.o mux.o -@@ -84,7 +84,7 @@ - auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-jpake.o \ - monitor_mm.o monitor.o monitor_wrap.o kexdhs.o kexgexs.o \ - auth-krb5.o \ -- auth2-gss.o gss-serv.o gss-serv-krb5.o \ -+ auth2-gss.o gss-serv.o gss-serv-krb5.o kexgsss.o\ - loginrec.o auth-pam.o auth-shadow.o auth-sia.o md5crypt.o \ - audit.o audit-bsm.o platform.o sftp-server.o sftp-common.o - -diff -urN openssh-5.2p1/auth-krb5.c openssh-5.2p1.new/auth-krb5.c ---- openssh-5.2p1/auth-krb5.c 2006-08-05 04:39:39.000000000 +0200 -+++ openssh-5.2p1.new/auth-krb5.c 2009-03-21 15:19:18.000000000 +0100 -@@ -166,8 +166,13 @@ - - len = strlen(authctxt->krb5_ticket_file) + 6; - authctxt->krb5_ccname = xmalloc(len); -+#ifdef USE_CCAPI -+ snprintf(authctxt->krb5_ccname, len, "API:%s", -+ authctxt->krb5_ticket_file); -+#else - snprintf(authctxt->krb5_ccname, len, "FILE:%s", - authctxt->krb5_ticket_file); -+#endif - - #ifdef USE_PAM - if (options.use_pam) -@@ -219,15 +224,22 @@ - #ifndef HEIMDAL - krb5_error_code - ssh_krb5_cc_gen(krb5_context ctx, krb5_ccache *ccache) { -- int tmpfd, ret; -+ int ret; - char ccname[40]; - mode_t old_umask; -+#ifdef USE_CCAPI -+ char cctemplate[] = "API:krb5cc_%d"; -+#else -+ char cctemplate[] = "FILE:/tmp/krb5cc_%d_XXXXXXXXXX"; -+ int tmpfd; -+#endif - - ret = snprintf(ccname, sizeof(ccname), -- "FILE:/tmp/krb5cc_%d_XXXXXXXXXX", geteuid()); -+ cctemplate, geteuid()); - if (ret < 0 || (size_t)ret >= sizeof(ccname)) - return ENOMEM; - -+#ifndef USE_CCAPI - old_umask = umask(0177); - tmpfd = mkstemp(ccname + strlen("FILE:")); - umask(old_umask); -@@ -242,6 +254,7 @@ - return errno; - } - close(tmpfd); -+#endif - - return (krb5_cc_resolve(ctx, ccname, ccache)); - } -diff -urN openssh-5.2p1/auth.h openssh-5.2p1.new/auth.h ---- openssh-5.2p1/auth.h 2008-11-05 06:20:46.000000000 +0100 -+++ openssh-5.2p1.new/auth.h 2009-03-21 15:19:18.000000000 +0100 -@@ -53,6 +53,7 @@ - int valid; /* user exists and is allowed to login */ - int attempt; - int failures; -+ int server_caused_failure; - int force_pwchange; - char *user; /* username sent by the client */ - char *service; -diff -urN openssh-5.2p1/auth2-gss.c openssh-5.2p1.new/auth2-gss.c ---- openssh-5.2p1/auth2-gss.c 2007-12-02 12:59:45.000000000 +0100 -+++ openssh-5.2p1.new/auth2-gss.c 2009-03-21 15:19:18.000000000 +0100 -@@ -52,6 +52,39 @@ - static void input_gssapi_exchange_complete(int type, u_int32_t plen, void *ctxt); - static void input_gssapi_errtok(int, u_int32_t, void *); - -+/* -+ * The 'gssapi_keyex' userauth mechanism. -+ */ -+static int -+userauth_gsskeyex(Authctxt *authctxt) -+{ -+ int authenticated = 0; -+ Buffer b; -+ gss_buffer_desc mic, gssbuf; -+ u_int len; -+ -+ mic.value = packet_get_string(&len); -+ mic.length = len; -+ -+ packet_check_eom(); -+ -+ ssh_gssapi_buildmic(&b, authctxt->user, authctxt->service, -+ "gssapi-keyex"); -+ -+ gssbuf.value = buffer_ptr(&b); -+ gssbuf.length = buffer_len(&b); -+ -+ /* gss_kex_context is NULL with privsep, so we can't check it here */ -+ if (!GSS_ERROR(PRIVSEP(ssh_gssapi_checkmic(gss_kex_context, -+ &gssbuf, &mic)))) -+ authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user)); -+ -+ buffer_free(&b); -+ xfree(mic.value); -+ -+ return (authenticated); -+} -+ - /* - * We only support those mechanisms that we know about (ie ones that we know - * how to check local user kuserok and the like) -@@ -102,6 +135,7 @@ - - if (!present) { - xfree(doid); -+ authctxt->server_caused_failure = 1; - return (0); - } - -@@ -109,6 +143,7 @@ - if (ctxt != NULL) - ssh_gssapi_delete_ctx(&ctxt); - xfree(doid); -+ authctxt->server_caused_failure = 1; - return (0); - } - -@@ -292,6 +327,12 @@ - userauth_finish(authctxt, authenticated, "gssapi-with-mic"); - } - -+Authmethod method_gsskeyex = { -+ "gssapi-keyex", -+ userauth_gsskeyex, -+ &options.gss_authentication -+}; -+ - Authmethod method_gssapi = { - "gssapi-with-mic", - userauth_gssapi, -diff -urN openssh-5.2p1/auth2.c openssh-5.2p1.new/auth2.c ---- openssh-5.2p1/auth2.c 2008-11-05 06:20:46.000000000 +0100 -+++ openssh-5.2p1.new/auth2.c 2009-03-21 15:19:18.000000000 +0100 -@@ -69,6 +69,7 @@ - extern Authmethod method_kbdint; - extern Authmethod method_hostbased; - #ifdef GSSAPI -+extern Authmethod method_gsskeyex; - extern Authmethod method_gssapi; - #endif - #ifdef JPAKE -@@ -79,6 +80,7 @@ - &method_none, - &method_pubkey, - #ifdef GSSAPI -+ &method_gsskeyex, - &method_gssapi, - #endif - #ifdef JPAKE -@@ -274,6 +276,7 @@ - #endif - - authctxt->postponed = 0; -+ authctxt->server_caused_failure = 0; - - /* try to authenticate user */ - m = authmethod_lookup(method); -@@ -348,7 +351,9 @@ - /* Allow initial try of "none" auth without failure penalty */ - if (authctxt->attempt > 1 || strcmp(method, "none") != 0) - authctxt->failures++; -- if (authctxt->failures >= options.max_authtries) { -+ /* Dont count server configuration issues against the client */ -+ if (!authctxt->server_caused_failure && -+ authctxt->failures++ > options.max_authtries) { - #ifdef SSH_AUDIT_EVENTS - PRIVSEP(audit_event(SSH_LOGIN_EXCEED_MAXTRIES)); - #endif -diff -urN openssh-5.2p1/configure.ac openssh-5.2p1.new/configure.ac ---- openssh-5.2p1/configure.ac 2009-02-16 05:37:03.000000000 +0100 -+++ openssh-5.2p1.new/configure.ac 2009-03-21 15:19:19.000000000 +0100 -@@ -473,6 +473,30 @@ - [Use tunnel device compatibility to OpenBSD]) - AC_DEFINE(SSH_TUN_PREPEND_AF, 1, - [Prepend the address family to IP tunnel traffic]) -+ AC_MSG_CHECKING(if we have the Security Authorization Session API) -+ AC_TRY_COMPILE([#include ], -+ [SessionCreate(0, 0);], -+ [ac_cv_use_security_session_api="yes" -+ AC_DEFINE(USE_SECURITY_SESSION_API, 1, -+ [platform has the Security Authorization Session API]) -+ LIBS="$LIBS -framework Security" -+ AC_MSG_RESULT(yes)], -+ [ac_cv_use_security_session_api="no" -+ AC_MSG_RESULT(no)]) -+ AC_MSG_CHECKING(if we have an in-memory credentials cache) -+ AC_TRY_COMPILE( -+ [#include ], -+ [cc_context_t c; -+ (void) cc_initialize (&c, 0, NULL, NULL);], -+ [AC_DEFINE(USE_CCAPI, 1, -+ [platform uses an in-memory credentials cache]) -+ LIBS="$LIBS -framework Security" -+ AC_MSG_RESULT(yes) -+ if test "x$ac_cv_use_security_session_api" = "xno"; then -+ AC_MSG_ERROR(*** Need a security framework to use the credentials cache API ***) -+ fi], -+ [AC_MSG_RESULT(no)] -+ ) - m4_pattern_allow(AU_IPv) - AC_CHECK_DECL(AU_IPv4, [], - AC_DEFINE(AU_IPv4, 0, [System only supports IPv4 audit records]) -diff -urN openssh-5.2p1/gss-genr.c openssh-5.2p1.new/gss-genr.c ---- openssh-5.2p1/gss-genr.c 2007-06-12 15:44:36.000000000 +0200 -+++ openssh-5.2p1.new/gss-genr.c 2009-03-21 15:19:19.000000000 +0100 -@@ -39,12 +39,160 @@ - #include "buffer.h" - #include "log.h" - #include "ssh2.h" -+#include "cipher.h" -+#include "key.h" -+#include "kex.h" -+#include - - #include "ssh-gss.h" - - extern u_char *session_id2; - extern u_int session_id2_len; - -+typedef struct { -+ char *encoded; -+ gss_OID oid; -+} ssh_gss_kex_mapping; -+ -+/* -+ * XXX - It would be nice to find a more elegant way of handling the -+ * XXX passing of the key exchange context to the userauth routines -+ */ -+ -+Gssctxt *gss_kex_context = NULL; -+ -+static ssh_gss_kex_mapping *gss_enc2oid = NULL; -+ -+int -+ssh_gssapi_oid_table_ok() { -+ return (gss_enc2oid != NULL); -+} -+ -+/* -+ * Return a list of the gss-group1-sha1 mechanisms supported by this program -+ * -+ * We test mechanisms to ensure that we can use them, to avoid starting -+ * a key exchange with a bad mechanism -+ */ -+ -+char * -+ssh_gssapi_client_mechanisms(const char *host) { -+ gss_OID_set gss_supported; -+ OM_uint32 min_status; -+ -+ gss_indicate_mechs(&min_status, &gss_supported); -+ -+ return(ssh_gssapi_kex_mechs(gss_supported, ssh_gssapi_check_mechanism, -+ host)); -+} -+ -+char * -+ssh_gssapi_kex_mechs(gss_OID_set gss_supported, ssh_gssapi_check_fn *check, -+ const char *data) { -+ Buffer buf; -+ size_t i; -+ int oidpos, enclen; -+ char *mechs, *encoded; -+ u_char digest[EVP_MAX_MD_SIZE]; -+ char deroid[2]; -+ const EVP_MD *evp_md = EVP_md5(); -+ EVP_MD_CTX md; -+ -+ if (gss_enc2oid != NULL) { -+ for (i = 0; gss_enc2oid[i].encoded != NULL; i++) -+ xfree(gss_enc2oid[i].encoded); -+ xfree(gss_enc2oid); -+ } -+ -+ gss_enc2oid = xmalloc(sizeof(ssh_gss_kex_mapping) * -+ (gss_supported->count + 1)); -+ -+ buffer_init(&buf); -+ -+ oidpos = 0; -+ for (i = 0; i < gss_supported->count; i++) { -+ if (gss_supported->elements[i].length < 128 && -+ (*check)(NULL, &(gss_supported->elements[i]), data)) { -+ -+ deroid[0] = SSH_GSS_OIDTYPE; -+ deroid[1] = gss_supported->elements[i].length; -+ -+ EVP_DigestInit(&md, evp_md); -+ EVP_DigestUpdate(&md, deroid, 2); -+ EVP_DigestUpdate(&md, -+ gss_supported->elements[i].elements, -+ gss_supported->elements[i].length); -+ EVP_DigestFinal(&md, digest, NULL); -+ -+ encoded = xmalloc(EVP_MD_size(evp_md) * 2); -+ enclen = __b64_ntop(digest, EVP_MD_size(evp_md), -+ encoded, EVP_MD_size(evp_md) * 2); -+ -+ if (oidpos != 0) -+ buffer_put_char(&buf, ','); -+ -+ buffer_append(&buf, KEX_GSS_GEX_SHA1_ID, -+ sizeof(KEX_GSS_GEX_SHA1_ID) - 1); -+ buffer_append(&buf, encoded, enclen); -+ buffer_put_char(&buf, ','); -+ buffer_append(&buf, KEX_GSS_GRP1_SHA1_ID, -+ sizeof(KEX_GSS_GRP1_SHA1_ID) - 1); -+ buffer_append(&buf, encoded, enclen); -+ buffer_put_char(&buf, ','); -+ buffer_append(&buf, KEX_GSS_GRP14_SHA1_ID, -+ sizeof(KEX_GSS_GRP14_SHA1_ID) - 1); -+ buffer_append(&buf, encoded, enclen); -+ -+ gss_enc2oid[oidpos].oid = &(gss_supported->elements[i]); -+ gss_enc2oid[oidpos].encoded = encoded; -+ oidpos++; -+ } -+ } -+ gss_enc2oid[oidpos].oid = NULL; -+ gss_enc2oid[oidpos].encoded = NULL; -+ -+ buffer_put_char(&buf, '\0'); -+ -+ mechs = xmalloc(buffer_len(&buf)); -+ buffer_get(&buf, mechs, buffer_len(&buf)); -+ buffer_free(&buf); -+ -+ if (strlen(mechs) == 0) { -+ xfree(mechs); -+ mechs = NULL; -+ } -+ -+ return (mechs); -+} -+ -+gss_OID -+ssh_gssapi_id_kex(Gssctxt *ctx, char *name, int kex_type) { -+ int i = 0; -+ -+ switch (kex_type) { -+ case KEX_GSS_GRP1_SHA1: -+ name += sizeof(KEX_GSS_GRP1_SHA1_ID) - 1; -+ break; -+ case KEX_GSS_GRP14_SHA1: -+ name += sizeof(KEX_GSS_GRP14_SHA1_ID) - 1; -+ break; -+ case KEX_GSS_GEX_SHA1: -+ name += sizeof(KEX_GSS_GEX_SHA1_ID) - 1; -+ break; -+ default: -+ return GSS_C_NO_OID; -+ } -+ -+ while (gss_enc2oid[i].encoded != NULL && -+ strcmp(name, gss_enc2oid[i].encoded) != 0) -+ i++; -+ -+ if (gss_enc2oid[i].oid != NULL && ctx != NULL) -+ ssh_gssapi_set_oid(ctx, gss_enc2oid[i].oid); -+ -+ return gss_enc2oid[i].oid; -+} -+ - /* Check that the OID in a data stream matches that in the context */ - int - ssh_gssapi_check_oid(Gssctxt *ctx, void *data, size_t len) -@@ -229,6 +377,9 @@ - OM_uint32 - ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_t buffer, gss_buffer_t hash) - { -+ if (ctx == NULL) -+ return -1; -+ - if ((ctx->major = gss_get_mic(&ctx->minor, ctx->context, - GSS_C_QOP_DEFAULT, buffer, hash))) - ssh_gssapi_error(ctx); -@@ -236,6 +387,19 @@ - return (ctx->major); - } - -+/* Priviledged when used by server */ -+OM_uint32 -+ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) -+{ -+ if (ctx == NULL) -+ return -1; -+ -+ ctx->major = gss_verify_mic(&ctx->minor, ctx->context, -+ gssbuf, gssmic, NULL); -+ -+ return (ctx->major); -+} -+ - void - ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, - const char *context) -@@ -254,6 +418,10 @@ - gss_buffer_desc token = GSS_C_EMPTY_BUFFER; - OM_uint32 major, minor; - gss_OID_desc spnego_oid = {6, (void *)"\x2B\x06\x01\x05\x05\x02"}; -+ Gssctxt *intctx = NULL; -+ -+ if (ctx == NULL) -+ ctx = &intctx; - - /* RFC 4462 says we MUST NOT do SPNEGO */ - if (oid->length == spnego_oid.length && -@@ -272,7 +440,7 @@ - GSS_C_NO_BUFFER); - } - -- if (GSS_ERROR(major)) -+ if (GSS_ERROR(major) || intctx != NULL) - ssh_gssapi_delete_ctx(ctx); - - return (!GSS_ERROR(major)); -diff -urN openssh-5.2p1/gss-serv-krb5.c openssh-5.2p1.new/gss-serv-krb5.c ---- openssh-5.2p1/gss-serv-krb5.c 2006-09-01 07:38:36.000000000 +0200 -+++ openssh-5.2p1.new/gss-serv-krb5.c 2009-03-21 15:19:19.000000000 +0100 -@@ -120,6 +120,7 @@ - krb5_principal princ; - OM_uint32 maj_status, min_status; - int len; -+ const char *new_ccname; - - if (client->creds == NULL) { - debug("No credentials stored"); -@@ -168,11 +169,16 @@ - return; - } - -- client->store.filename = xstrdup(krb5_cc_get_name(krb_context, ccache)); -+ new_ccname = krb5_cc_get_name(krb_context, ccache); -+ - client->store.envvar = "KRB5CCNAME"; -- len = strlen(client->store.filename) + 6; -- client->store.envval = xmalloc(len); -- snprintf(client->store.envval, len, "FILE:%s", client->store.filename); -+#ifdef USE_CCAPI -+ xasprintf(&client->store.envval, "API:%s", new_ccname); -+ client->store.filename = NULL; -+#else -+ xasprintf(&client->store.envval, "FILE:%s", new_ccname); -+ client->store.filename = xstrdup(new_ccname); -+#endif - - #ifdef USE_PAM - if (options.use_pam) -diff -urN openssh-5.2p1/gss-serv.c openssh-5.2p1.new/gss-serv.c ---- openssh-5.2p1/gss-serv.c 2008-05-19 07:05:07.000000000 +0200 -+++ openssh-5.2p1.new/gss-serv.c 2009-03-21 15:19:19.000000000 +0100 -@@ -1,7 +1,7 @@ - /* $OpenBSD: gss-serv.c,v 1.22 2008/05/08 12:02:23 djm Exp $ */ - - /* -- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. -+ * Copyright (c) 2001-2008 Simon Wilkinson. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions -@@ -45,8 +45,12 @@ - #include "channels.h" - #include "session.h" - #include "misc.h" -+#include "servconf.h" - - #include "ssh-gss.h" -+#include "monitor_wrap.h" -+ -+extern ServerOptions options; - - static ssh_gssapi_client gssapi_client = - { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, -@@ -81,25 +85,32 @@ - char lname[MAXHOSTNAMELEN]; - gss_OID_set oidset; - -- gss_create_empty_oid_set(&status, &oidset); -- gss_add_oid_set_member(&status, ctx->oid, &oidset); -+ if (options.gss_strict_acceptor) { -+ gss_create_empty_oid_set(&status, &oidset); -+ gss_add_oid_set_member(&status, ctx->oid, &oidset); -+ -+ if (gethostname(lname, MAXHOSTNAMELEN)) { -+ gss_release_oid_set(&status, &oidset); -+ return (-1); -+ } - -- if (gethostname(lname, MAXHOSTNAMELEN)) { -- gss_release_oid_set(&status, &oidset); -- return (-1); -- } -+ if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { -+ gss_release_oid_set(&status, &oidset); -+ return (ctx->major); -+ } -+ -+ if ((ctx->major = gss_acquire_cred(&ctx->minor, -+ ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, -+ NULL, NULL))) -+ ssh_gssapi_error(ctx); - -- if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { - gss_release_oid_set(&status, &oidset); - return (ctx->major); -+ } else { -+ ctx->name = GSS_C_NO_NAME; -+ ctx->creds = GSS_C_NO_CREDENTIAL; - } -- -- if ((ctx->major = gss_acquire_cred(&ctx->minor, -- ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, NULL, NULL))) -- ssh_gssapi_error(ctx); -- -- gss_release_oid_set(&status, &oidset); -- return (ctx->major); -+ return GSS_S_COMPLETE; - } - - /* Privileged */ -@@ -114,6 +125,28 @@ - } - - /* Unprivileged */ -+char * -+ssh_gssapi_server_mechanisms() { -+ gss_OID_set supported; -+ -+ ssh_gssapi_supported_oids(&supported); -+ return (ssh_gssapi_kex_mechs(supported, &ssh_gssapi_server_check_mech, -+ NULL)); -+} -+ -+/* Unprivileged */ -+int -+ssh_gssapi_server_check_mech(Gssctxt **dum, gss_OID oid, const char *data) { -+ Gssctxt *ctx = NULL; -+ int res; -+ -+ res = !GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctx, oid))); -+ ssh_gssapi_delete_ctx(&ctx); -+ -+ return (res); -+} -+ -+/* Unprivileged */ - void - ssh_gssapi_supported_oids(gss_OID_set *oidset) - { -@@ -352,14 +385,4 @@ - return (0); - } - --/* Privileged */ --OM_uint32 --ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) --{ -- ctx->major = gss_verify_mic(&ctx->minor, ctx->context, -- gssbuf, gssmic, NULL); -- -- return (ctx->major); --} -- - #endif -diff -urN openssh-5.2p1/kex.c openssh-5.2p1.new/kex.c ---- openssh-5.2p1/kex.c 2008-11-03 09:19:12.000000000 +0100 -+++ openssh-5.2p1.new/kex.c 2009-03-21 15:19:19.000000000 +0100 -@@ -49,6 +49,10 @@ - #include "dispatch.h" - #include "monitor.h" - -+#ifdef GSSAPI -+#include "ssh-gss.h" -+#endif -+ - #define KEX_COOKIE_LEN 16 - - #if OPENSSL_VERSION_NUMBER >= 0x00907000L -@@ -327,6 +331,20 @@ - k->kex_type = KEX_DH_GEX_SHA256; - k->evp_md = evp_ssh_sha256(); - #endif -+#ifdef GSSAPI -+ } else if (strncmp(k->name, KEX_GSS_GEX_SHA1_ID, -+ sizeof(KEX_GSS_GEX_SHA1_ID) - 1) == 0) { -+ k->kex_type = KEX_GSS_GEX_SHA1; -+ k->evp_md = EVP_sha1(); -+ } else if (strncmp(k->name, KEX_GSS_GRP1_SHA1_ID, -+ sizeof(KEX_GSS_GRP1_SHA1_ID) - 1) == 0) { -+ k->kex_type = KEX_GSS_GRP1_SHA1; -+ k->evp_md = EVP_sha1(); -+ } else if (strncmp(k->name, KEX_GSS_GRP14_SHA1_ID, -+ sizeof(KEX_GSS_GRP14_SHA1_ID) - 1) == 0) { -+ k->kex_type = KEX_GSS_GRP14_SHA1; -+ k->evp_md = EVP_sha1(); -+#endif - } else - fatal("bad kex alg %s", k->name); - } -diff -urN openssh-5.2p1/kex.h openssh-5.2p1.new/kex.h ---- openssh-5.2p1/kex.h 2007-06-11 06:01:42.000000000 +0200 -+++ openssh-5.2p1.new/kex.h 2009-03-21 15:19:19.000000000 +0100 -@@ -64,6 +64,9 @@ - KEX_DH_GRP14_SHA1, - KEX_DH_GEX_SHA1, - KEX_DH_GEX_SHA256, -+ KEX_GSS_GRP1_SHA1, -+ KEX_GSS_GRP14_SHA1, -+ KEX_GSS_GEX_SHA1, - KEX_MAX - }; - -@@ -119,6 +122,11 @@ - sig_atomic_t done; - int flags; - const EVP_MD *evp_md; -+#ifdef GSSAPI -+ int gss_deleg_creds; -+ int gss_trust_dns; -+ char *gss_host; -+#endif - char *client_version_string; - char *server_version_string; - int (*verify_host_key)(Key *); -@@ -141,6 +149,11 @@ - void kexgex_client(Kex *); - void kexgex_server(Kex *); - -+#ifdef GSSAPI -+void kexgss_client(Kex *); -+void kexgss_server(Kex *); -+#endif -+ - void - kex_dh_hash(char *, char *, char *, int, char *, int, u_char *, int, - BIGNUM *, BIGNUM *, BIGNUM *, u_char **, u_int *); -diff -urN openssh-5.2p1/key.c openssh-5.2p1.new/key.c ---- openssh-5.2p1/key.c 2008-11-03 09:24:17.000000000 +0100 -+++ openssh-5.2p1.new/key.c 2009-03-21 15:19:19.000000000 +0100 -@@ -764,6 +764,8 @@ - return KEY_RSA; - } else if (strcmp(name, "ssh-dss") == 0) { - return KEY_DSA; -+ } else if (strcmp(name, "null") == 0) { -+ return KEY_NULL; - } - debug2("key_type_from_name: unknown key type '%s'", name); - return KEY_UNSPEC; -diff -urN openssh-5.2p1/key.h openssh-5.2p1.new/key.h ---- openssh-5.2p1/key.h 2008-06-12 20:40:35.000000000 +0200 -+++ openssh-5.2p1.new/key.h 2009-03-21 15:19:19.000000000 +0100 -@@ -34,6 +34,7 @@ - KEY_RSA1, - KEY_RSA, - KEY_DSA, -+ KEY_NULL, - KEY_UNSPEC - }; - enum fp_type { -diff -urN openssh-5.2p1/monitor.c openssh-5.2p1.new/monitor.c ---- openssh-5.2p1/monitor.c 2009-02-14 06:33:31.000000000 +0100 -+++ openssh-5.2p1.new/monitor.c 2009-03-21 15:38:09.000000000 +0100 -@@ -170,6 +170,7 @@ - int mm_answer_gss_accept_ctx(int, Buffer *); - int mm_answer_gss_userok(int, Buffer *); - int mm_answer_gss_checkmic(int, Buffer *); -+int mm_answer_gss_sign(int, Buffer *); - #endif - - #ifdef SSH_AUDIT_EVENTS -@@ -239,6 +240,7 @@ - {MONITOR_REQ_GSSSTEP, MON_ISAUTH, mm_answer_gss_accept_ctx}, - {MONITOR_REQ_GSSUSEROK, MON_AUTH, mm_answer_gss_userok}, - {MONITOR_REQ_GSSCHECKMIC, MON_ISAUTH, mm_answer_gss_checkmic}, -+ {MONITOR_REQ_GSSSIGN, MON_ONCE, mm_answer_gss_sign}, - #endif - #ifdef JPAKE - {MONITOR_REQ_JPAKE_GET_PWDATA, MON_ONCE, mm_answer_jpake_get_pwdata}, -@@ -251,6 +253,11 @@ - }; - - struct mon_table mon_dispatch_postauth20[] = { -+#ifdef GSSAPI -+ {MONITOR_REQ_GSSSETUP, 0, mm_answer_gss_setup_ctx}, -+ {MONITOR_REQ_GSSSTEP, 0, mm_answer_gss_accept_ctx}, -+ {MONITOR_REQ_GSSSIGN, 0, mm_answer_gss_sign}, -+#endif - {MONITOR_REQ_MODULI, 0, mm_answer_moduli}, - {MONITOR_REQ_SIGN, 0, mm_answer_sign}, - {MONITOR_REQ_PTY, 0, mm_answer_pty}, -@@ -355,6 +362,10 @@ - /* Permit requests for moduli and signatures */ - monitor_permit(mon_dispatch, MONITOR_REQ_MODULI, 1); - monitor_permit(mon_dispatch, MONITOR_REQ_SIGN, 1); -+#ifdef GSSAPI -+ /* and for the GSSAPI key exchange */ -+ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSETUP, 1); -+#endif - } else { - mon_dispatch = mon_dispatch_proto15; - -@@ -441,6 +452,10 @@ - monitor_permit(mon_dispatch, MONITOR_REQ_MODULI, 1); - monitor_permit(mon_dispatch, MONITOR_REQ_SIGN, 1); - monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); -+#ifdef GSSAPI -+ /* and for the GSSAPI key exchange */ -+ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSETUP, 1); -+#endif - } else { - mon_dispatch = mon_dispatch_postauth15; - monitor_permit(mon_dispatch, MONITOR_REQ_TERM, 1); -@@ -1699,6 +1714,11 @@ - kex->kex[KEX_DH_GRP14_SHA1] = kexdh_server; - kex->kex[KEX_DH_GEX_SHA1] = kexgex_server; - kex->kex[KEX_DH_GEX_SHA256] = kexgex_server; -+#ifdef GSSAPI -+ kex->kex[KEX_GSS_GRP1_SHA1] = kexgss_server; -+ kex->kex[KEX_GSS_GRP14_SHA1] = kexgss_server; -+ kex->kex[KEX_GSS_GEX_SHA1] = kexgss_server; -+#endif - kex->server = 1; - kex->hostkey_type = buffer_get_int(m); - kex->kex_type = buffer_get_int(m); -@@ -1942,6 +1962,7 @@ - monitor_permit(mon_dispatch, MONITOR_REQ_GSSSTEP, 0); - monitor_permit(mon_dispatch, MONITOR_REQ_GSSUSEROK, 1); - monitor_permit(mon_dispatch, MONITOR_REQ_GSSCHECKMIC, 1); -+ monitor_permit(mon_dispatch, MONITOR_REQ_GSSSIGN, 1); - } - return (0); - } -@@ -1992,6 +2013,44 @@ - /* Monitor loop will terminate if authenticated */ - return (authenticated); - } -+ -+int -+mm_answer_gss_sign(int socket, Buffer *m) -+{ -+ gss_buffer_desc data; -+ gss_buffer_desc hash = GSS_C_EMPTY_BUFFER; -+ OM_uint32 major, minor; -+ u_int len; -+ -+ data.value = buffer_get_string(m, &len); -+ data.length = len; -+ if (data.length != 20) -+ fatal("%s: data length incorrect: %d", __func__, data.length); -+ -+ /* Save the session ID on the first time around */ -+ if (session_id2_len == 0) { -+ session_id2_len = data.length; -+ session_id2 = xmalloc(session_id2_len); -+ memcpy(session_id2, data.value, session_id2_len); -+ } -+ major = ssh_gssapi_sign(gsscontext, &data, &hash); -+ -+ xfree(data.value); -+ -+ buffer_clear(m); -+ buffer_put_int(m, major); -+ buffer_put_string(m, hash.value, hash.length); -+ -+ mm_request_send(socket, MONITOR_ANS_GSSSIGN, m); -+ -+ gss_release_buffer(&minor, &hash); -+ -+ /* Turn on getpwnam permissions */ -+ monitor_permit(mon_dispatch, MONITOR_REQ_PWNAM, 1); -+ -+ return (0); -+} -+ - #endif /* GSSAPI */ - - #ifdef JPAKE -diff -urN openssh-5.2p1/monitor.h openssh-5.2p1.new/monitor.h ---- openssh-5.2p1/monitor.h 2008-11-05 06:20:46.000000000 +0100 -+++ openssh-5.2p1.new/monitor.h 2009-03-21 15:19:19.000000000 +0100 -@@ -53,6 +53,7 @@ - MONITOR_REQ_GSSSTEP, MONITOR_ANS_GSSSTEP, - MONITOR_REQ_GSSUSEROK, MONITOR_ANS_GSSUSEROK, - MONITOR_REQ_GSSCHECKMIC, MONITOR_ANS_GSSCHECKMIC, -+ MONITOR_REQ_GSSSIGN, MONITOR_ANS_GSSSIGN, - MONITOR_REQ_PAM_START, - MONITOR_REQ_PAM_ACCOUNT, MONITOR_ANS_PAM_ACCOUNT, - MONITOR_REQ_PAM_INIT_CTX, MONITOR_ANS_PAM_INIT_CTX, -diff -urN openssh-5.2p1/monitor_wrap.c openssh-5.2p1.new/monitor_wrap.c ---- openssh-5.2p1/monitor_wrap.c 2008-11-05 06:20:47.000000000 +0100 -+++ openssh-5.2p1.new/monitor_wrap.c 2009-03-21 15:19:19.000000000 +0100 -@@ -1256,6 +1256,29 @@ - debug3("%s: user %sauthenticated",__func__, authenticated ? "" : "not "); - return (authenticated); - } -+ -+OM_uint32 -+mm_ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_desc *data, gss_buffer_desc *hash) -+{ -+ Buffer m; -+ OM_uint32 major; -+ u_int len; -+ -+ buffer_init(&m); -+ buffer_put_string(&m, data->value, data->length); -+ -+ mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GSSSIGN, &m); -+ mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSIGN, &m); -+ -+ major = buffer_get_int(&m); -+ hash->value = buffer_get_string(&m, &len); -+ hash->length = len; -+ -+ buffer_free(&m); -+ -+ return(major); -+} -+ - #endif /* GSSAPI */ - - #ifdef JPAKE -diff -urN openssh-5.2p1/monitor_wrap.h openssh-5.2p1.new/monitor_wrap.h ---- openssh-5.2p1/monitor_wrap.h 2008-11-05 06:20:47.000000000 +0100 -+++ openssh-5.2p1.new/monitor_wrap.h 2009-03-21 15:19:19.000000000 +0100 -@@ -59,6 +59,7 @@ - gss_buffer_desc *, gss_buffer_desc *, OM_uint32 *); - int mm_ssh_gssapi_userok(char *user); - OM_uint32 mm_ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t); -+OM_uint32 mm_ssh_gssapi_sign(Gssctxt *, gss_buffer_t, gss_buffer_t); - #endif - - #ifdef USE_PAM -diff -urN openssh-5.2p1/readconf.c openssh-5.2p1.new/readconf.c ---- openssh-5.2p1/readconf.c 2009-02-14 06:28:21.000000000 +0100 -+++ openssh-5.2p1.new/readconf.c 2009-03-21 15:19:19.000000000 +0100 -@@ -127,6 +127,8 @@ - oClearAllForwardings, oNoHostAuthenticationForLocalhost, - oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, - oAddressFamily, oGssAuthentication, oGssDelegateCreds, -+ oGssKeyEx, -+ oGssTrustDns, - oServerAliveInterval, oServerAliveCountMax, oIdentitiesOnly, - oSendEnv, oControlPath, oControlMaster, oHashKnownHosts, - oTunnel, oTunnelDevice, oLocalCommand, oPermitLocalCommand, -@@ -164,10 +166,14 @@ - { "afstokenpassing", oUnsupported }, - #if defined(GSSAPI) - { "gssapiauthentication", oGssAuthentication }, -+ { "gssapikeyexchange", oGssKeyEx }, - { "gssapidelegatecredentials", oGssDelegateCreds }, -+ { "gssapitrustdns", oGssTrustDns }, - #else - { "gssapiauthentication", oUnsupported }, -+ { "gssapikeyexchange", oUnsupported }, - { "gssapidelegatecredentials", oUnsupported }, -+ { "gssapitrustdns", oUnsupported }, - #endif - { "fallbacktorsh", oDeprecated }, - { "usersh", oDeprecated }, -@@ -453,10 +459,18 @@ - intptr = &options->gss_authentication; - goto parse_flag; - -+ case oGssKeyEx: -+ intptr = &options->gss_keyex; -+ goto parse_flag; -+ - case oGssDelegateCreds: - intptr = &options->gss_deleg_creds; - goto parse_flag; - -+ case oGssTrustDns: -+ intptr = &options->gss_trust_dns; -+ goto parse_flag; -+ - case oBatchMode: - intptr = &options->batch_mode; - goto parse_flag; -@@ -1008,7 +1022,9 @@ - options->pubkey_authentication = -1; - options->challenge_response_authentication = -1; - options->gss_authentication = -1; -+ options->gss_keyex = -1; - options->gss_deleg_creds = -1; -+ options->gss_trust_dns = -1; - options->password_authentication = -1; - options->kbd_interactive_authentication = -1; - options->kbd_interactive_devices = NULL; -@@ -1099,8 +1115,12 @@ - options->challenge_response_authentication = 1; - if (options->gss_authentication == -1) - options->gss_authentication = 0; -+ if (options->gss_keyex == -1) -+ options->gss_keyex = 0; - if (options->gss_deleg_creds == -1) - options->gss_deleg_creds = 0; -+ if (options->gss_trust_dns == -1) -+ options->gss_trust_dns = 0; - if (options->password_authentication == -1) - options->password_authentication = 1; - if (options->kbd_interactive_authentication == -1) -diff -urN openssh-5.2p1/readconf.h openssh-5.2p1.new/readconf.h ---- openssh-5.2p1/readconf.h 2009-02-14 06:28:21.000000000 +0100 -+++ openssh-5.2p1.new/readconf.h 2009-03-21 15:19:19.000000000 +0100 -@@ -44,7 +44,9 @@ - int challenge_response_authentication; - /* Try S/Key or TIS, authentication. */ - int gss_authentication; /* Try GSS authentication */ -+ int gss_keyex; /* Try GSS key exchange */ - int gss_deleg_creds; /* Delegate GSS credentials */ -+ int gss_trust_dns; /* Trust DNS for GSS canonicalization */ - int password_authentication; /* Try password - * authentication. */ - int kbd_interactive_authentication; /* Try keyboard-interactive auth. */ -diff -urN openssh-5.2p1/servconf.c openssh-5.2p1.new/servconf.c ---- openssh-5.2p1/servconf.c 2009-01-28 06:31:23.000000000 +0100 -+++ openssh-5.2p1.new/servconf.c 2009-03-21 15:19:20.000000000 +0100 -@@ -92,7 +92,9 @@ - options->kerberos_ticket_cleanup = -1; - options->kerberos_get_afs_token = -1; - options->gss_authentication=-1; -+ options->gss_keyex = -1; - options->gss_cleanup_creds = -1; -+ options->gss_strict_acceptor = -1; - options->password_authentication = -1; - options->kbd_interactive_authentication = -1; - options->challenge_response_authentication = -1; -@@ -210,8 +212,12 @@ - options->kerberos_get_afs_token = 0; - if (options->gss_authentication == -1) - options->gss_authentication = 0; -+ if (options->gss_keyex == -1) -+ options->gss_keyex = 0; - if (options->gss_cleanup_creds == -1) - options->gss_cleanup_creds = 1; -+ if (options->gss_strict_acceptor == -1) -+ options->gss_strict_acceptor = 1; - if (options->password_authentication == -1) - options->password_authentication = 1; - if (options->kbd_interactive_authentication == -1) -@@ -302,7 +308,9 @@ - sBanner, sUseDNS, sHostbasedAuthentication, - sHostbasedUsesNameFromPacketOnly, sClientAliveInterval, - sClientAliveCountMax, sAuthorizedKeysFile, sAuthorizedKeysFile2, -- sGssAuthentication, sGssCleanupCreds, sAcceptEnv, sPermitTunnel, -+ sGssAuthentication, sGssCleanupCreds, sGssStrictAcceptor, -+ sGssKeyEx, -+ sAcceptEnv, sPermitTunnel, - sMatch, sPermitOpen, sForceCommand, sChrootDirectory, - sUsePrivilegeSeparation, sAllowAgentForwarding, - sZeroKnowledgePasswordAuthentication, -@@ -364,9 +372,13 @@ - #ifdef GSSAPI - { "gssapiauthentication", sGssAuthentication, SSHCFG_ALL }, - { "gssapicleanupcredentials", sGssCleanupCreds, SSHCFG_GLOBAL }, -+ { "gssapistrictacceptorcheck", sGssStrictAcceptor, SSHCFG_GLOBAL }, -+ { "gssapikeyexchange", sGssKeyEx, SSHCFG_GLOBAL }, - #else - { "gssapiauthentication", sUnsupported, SSHCFG_ALL }, - { "gssapicleanupcredentials", sUnsupported, SSHCFG_GLOBAL }, -+ { "gssapistrictacceptorcheck", sUnsupported, SSHCFG_GLOBAL }, -+ { "gssapikeyexchange", sUnsupported, SSHCFG_GLOBAL }, - #endif - { "passwordauthentication", sPasswordAuthentication, SSHCFG_ALL }, - { "kbdinteractiveauthentication", sKbdInteractiveAuthentication, SSHCFG_ALL }, -@@ -891,10 +903,18 @@ - intptr = &options->gss_authentication; - goto parse_flag; - -+ case sGssKeyEx: -+ intptr = &options->gss_keyex; -+ goto parse_flag; -+ - case sGssCleanupCreds: - intptr = &options->gss_cleanup_creds; - goto parse_flag; - -+ case sGssStrictAcceptor: -+ intptr = &options->gss_strict_acceptor; -+ goto parse_flag; -+ - case sPasswordAuthentication: - intptr = &options->password_authentication; - goto parse_flag; -diff -urN openssh-5.2p1/servconf.h openssh-5.2p1.new/servconf.h ---- openssh-5.2p1/servconf.h 2009-01-28 06:31:23.000000000 +0100 -+++ openssh-5.2p1.new/servconf.h 2009-03-21 15:19:20.000000000 +0100 -@@ -91,7 +91,9 @@ - int kerberos_get_afs_token; /* If true, try to get AFS token if - * authenticated with Kerberos. */ - int gss_authentication; /* If true, permit GSSAPI authentication */ -+ int gss_keyex; /* If true, permit GSSAPI key exchange */ - int gss_cleanup_creds; /* If true, destroy cred cache on logout */ -+ int gss_strict_acceptor; /* If true, restrict the GSSAPI acceptor name */ - int password_authentication; /* If true, permit password - * authentication. */ - int kbd_interactive_authentication; /* If true, permit */ -diff -urN openssh-5.2p1/ssh-gss.h openssh-5.2p1.new/ssh-gss.h ---- openssh-5.2p1/ssh-gss.h 2007-06-12 15:40:39.000000000 +0200 -+++ openssh-5.2p1.new/ssh-gss.h 2009-03-21 15:19:20.000000000 +0100 -@@ -60,6 +60,17 @@ - - #define SSH_GSS_OIDTYPE 0x06 - -+#define SSH2_MSG_KEXGSS_INIT 30 -+#define SSH2_MSG_KEXGSS_CONTINUE 31 -+#define SSH2_MSG_KEXGSS_COMPLETE 32 -+#define SSH2_MSG_KEXGSS_HOSTKEY 33 -+#define SSH2_MSG_KEXGSS_ERROR 34 -+#define SSH2_MSG_KEXGSS_GROUPREQ 40 -+#define SSH2_MSG_KEXGSS_GROUP 41 -+#define KEX_GSS_GRP1_SHA1_ID "gss-group1-sha1-" -+#define KEX_GSS_GRP14_SHA1_ID "gss-group14-sha1-" -+#define KEX_GSS_GEX_SHA1_ID "gss-gex-sha1-" -+ - typedef struct { - char *filename; - char *envvar; -@@ -97,6 +108,7 @@ - } Gssctxt; - - extern ssh_gssapi_mech *supported_mechs[]; -+extern Gssctxt *gss_kex_context; - - int ssh_gssapi_check_oid(Gssctxt *, void *, size_t); - void ssh_gssapi_set_oid_data(Gssctxt *, void *, size_t); -@@ -119,6 +131,11 @@ - int ssh_gssapi_check_mechanism(Gssctxt **, gss_OID, const char *); - - /* In the server */ -+typedef int ssh_gssapi_check_fn(Gssctxt **, gss_OID, const char *); -+char *ssh_gssapi_client_mechanisms(const char *host); -+char *ssh_gssapi_kex_mechs(gss_OID_set, ssh_gssapi_check_fn *, const char *); -+gss_OID ssh_gssapi_id_kex(Gssctxt *, char *, int); -+int ssh_gssapi_server_check_mech(Gssctxt **,gss_OID, const char *); - OM_uint32 ssh_gssapi_server_ctx(Gssctxt **, gss_OID); - int ssh_gssapi_userok(char *name); - OM_uint32 ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t); -@@ -126,6 +143,8 @@ - void ssh_gssapi_cleanup_creds(void); - void ssh_gssapi_storecreds(void); - -+char *ssh_gssapi_server_mechanisms(void); -+int ssh_gssapi_oid_table_ok(); - #endif /* GSSAPI */ - - #endif /* _SSH_GSS_H */ -diff -urN openssh-5.2p1/ssh_config openssh-5.2p1.new/ssh_config ---- openssh-5.2p1/ssh_config 2009-02-21 02:45:02.000000000 +0100 -+++ openssh-5.2p1.new/ssh_config 2009-03-21 15:19:20.000000000 +0100 -@@ -26,6 +26,8 @@ - # HostbasedAuthentication no - # GSSAPIAuthentication no - # GSSAPIDelegateCredentials no -+# GSSAPIKeyExchange no -+# GSSAPITrustDNS no - # BatchMode no - # CheckHostIP yes - # AddressFamily any -diff -urN openssh-5.2p1/ssh_config.5 openssh-5.2p1.new/ssh_config.5 ---- openssh-5.2p1/ssh_config.5 2009-02-23 00:53:58.000000000 +0100 -+++ openssh-5.2p1.new/ssh_config.5 2009-03-21 15:19:20.000000000 +0100 -@@ -478,11 +478,28 @@ - The default is - .Dq no . - Note that this option applies to protocol version 2 only. -+.It Cm GSSAPIKeyExchange -+Specifies whether key exchange based on GSSAPI may be used. When using -+GSSAPI key exchange the server need not have a host key. -+The default is -+.Dq no . -+Note that this option applies to protocol version 2 only. - .It Cm GSSAPIDelegateCredentials - Forward (delegate) credentials to the server. - The default is - .Dq no . - Note that this option applies to protocol version 2 only. -+.It Cm GSSAPITrustDns -+Set to -+.Dq yes -+to indicate that the DNS is trusted to securely canonicalize -+the name of the host being connected to. If -+.Dq no , -+the hostname entered on the -+command line will be passed untouched to the GSSAPI library. -+The default is -+.Dq no . -+This option only applies to protocol version 2 connections using GSSAPI. - .It Cm HashKnownHosts - Indicates that - .Xr ssh 1 -diff -urN openssh-5.2p1/sshconnect2.c openssh-5.2p1.new/sshconnect2.c ---- openssh-5.2p1/sshconnect2.c 2008-11-05 06:20:47.000000000 +0100 -+++ openssh-5.2p1.new/sshconnect2.c 2009-03-21 15:19:20.000000000 +0100 -@@ -104,9 +104,34 @@ - { - Kex *kex; - -+#ifdef GSSAPI -+ char *orig = NULL, *gss = NULL; -+ char *gss_host = NULL; -+#endif -+ - xxx_host = host; - xxx_hostaddr = hostaddr; - -+#ifdef GSSAPI -+ if (options.gss_keyex) { -+ /* Add the GSSAPI mechanisms currently supported on this -+ * client to the key exchange algorithm proposal */ -+ orig = myproposal[PROPOSAL_KEX_ALGS]; -+ -+ if (options.gss_trust_dns) -+ gss_host = (char *)get_canonical_hostname(1); -+ else -+ gss_host = host; -+ -+ gss = ssh_gssapi_client_mechanisms(gss_host); -+ if (gss) { -+ debug("Offering GSSAPI proposal: %s", gss); -+ xasprintf(&myproposal[PROPOSAL_KEX_ALGS], -+ "%s,%s", gss, orig); -+ } -+ } -+#endif -+ - if (options.ciphers == (char *)-1) { - logit("No valid ciphers for protocol version 2 given, using defaults."); - options.ciphers = NULL; -@@ -134,6 +159,16 @@ - myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS] = - options.hostkeyalgorithms; - -+#ifdef GSSAPI -+ /* If we've got GSSAPI algorithms, then we also support the -+ * 'null' hostkey, as a last resort */ -+ if (options.gss_keyex && gss) { -+ orig = myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS]; -+ xasprintf(&myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS], -+ "%s,null", orig); -+ } -+#endif -+ - if (options.rekey_limit) - packet_set_rekey_limit((u_int32_t)options.rekey_limit); - -@@ -143,10 +178,21 @@ - kex->kex[KEX_DH_GRP14_SHA1] = kexdh_client; - kex->kex[KEX_DH_GEX_SHA1] = kexgex_client; - kex->kex[KEX_DH_GEX_SHA256] = kexgex_client; -+#ifdef GSSAPI -+ kex->kex[KEX_GSS_GRP1_SHA1] = kexgss_client; -+ kex->kex[KEX_GSS_GRP14_SHA1] = kexgss_client; -+ kex->kex[KEX_GSS_GEX_SHA1] = kexgss_client; -+#endif - kex->client_version_string=client_version_string; - kex->server_version_string=server_version_string; - kex->verify_host_key=&verify_host_key_callback; - -+#ifdef GSSAPI -+ kex->gss_deleg_creds = options.gss_deleg_creds; -+ kex->gss_trust_dns = options.gss_trust_dns; -+ kex->gss_host = gss_host; -+#endif -+ - xxx_kex = kex; - - dispatch_run(DISPATCH_BLOCK, &kex->done, kex); -@@ -235,6 +281,7 @@ - void input_gssapi_hash(int type, u_int32_t, void *); - void input_gssapi_error(int, u_int32_t, void *); - void input_gssapi_errtok(int, u_int32_t, void *); -+int userauth_gsskeyex(Authctxt *authctxt); - #endif - - void userauth(Authctxt *, char *); -@@ -250,6 +297,10 @@ - - Authmethod authmethods[] = { - #ifdef GSSAPI -+ {"gssapi-keyex", -+ userauth_gsskeyex, -+ &options.gss_authentication, -+ NULL}, - {"gssapi-with-mic", - userauth_gssapi, - NULL, -@@ -541,6 +592,12 @@ - static u_int mech = 0; - OM_uint32 min; - int ok = 0; -+ char *gss_host = NULL; -+ -+ if (options.gss_trust_dns) -+ gss_host = (char *)get_canonical_hostname(1); -+ else -+ gss_host = (char *)authctxt->host; - - /* Try one GSSAPI method at a time, rather than sending them all at - * once. */ -@@ -553,7 +610,7 @@ - /* My DER encoding requires length<128 */ - if (gss_supported->elements[mech].length < 128 && - ssh_gssapi_check_mechanism(&gssctxt, -- &gss_supported->elements[mech], authctxt->host)) { -+ &gss_supported->elements[mech], gss_host)) { - ok = 1; /* Mechanism works */ - } else { - mech++; -@@ -650,8 +707,8 @@ - { - Authctxt *authctxt = ctxt; - Gssctxt *gssctxt; -- int oidlen; -- char *oidv; -+ u_int oidlen; -+ u_char *oidv; - - if (authctxt == NULL) - fatal("input_gssapi_response: no authentication context"); -@@ -761,6 +818,48 @@ - xfree(msg); - xfree(lang); - } -+ -+int -+userauth_gsskeyex(Authctxt *authctxt) -+{ -+ Buffer b; -+ gss_buffer_desc gssbuf; -+ gss_buffer_desc mic = GSS_C_EMPTY_BUFFER; -+ OM_uint32 ms; -+ -+ static int attempt = 0; -+ if (attempt++ >= 1) -+ return (0); -+ -+ if (gss_kex_context == NULL) { -+ debug("No valid Key exchange context"); -+ return (0); -+ } -+ -+ ssh_gssapi_buildmic(&b, authctxt->server_user, authctxt->service, -+ "gssapi-keyex"); -+ -+ gssbuf.value = buffer_ptr(&b); -+ gssbuf.length = buffer_len(&b); -+ -+ if (GSS_ERROR(ssh_gssapi_sign(gss_kex_context, &gssbuf, &mic))) { -+ buffer_free(&b); -+ return (0); -+ } -+ -+ packet_start(SSH2_MSG_USERAUTH_REQUEST); -+ packet_put_cstring(authctxt->server_user); -+ packet_put_cstring(authctxt->service); -+ packet_put_cstring(authctxt->method->name); -+ packet_put_string(mic.value, mic.length); -+ packet_send(); -+ -+ buffer_free(&b); -+ gss_release_buffer(&ms, &mic); -+ -+ return (1); -+} -+ - #endif /* GSSAPI */ - - int -diff -urN openssh-5.2p1/sshd.c openssh-5.2p1.new/sshd.c ---- openssh-5.2p1/sshd.c 2009-01-28 06:31:23.000000000 +0100 -+++ openssh-5.2p1.new/sshd.c 2009-03-21 15:19:20.000000000 +0100 -@@ -119,6 +119,10 @@ - #include "monitor_wrap.h" - #include "version.h" - -+#ifdef USE_SECURITY_SESSION_API -+#include -+#endif -+ - #ifdef LIBWRAP - #include - #include -@@ -1530,10 +1534,13 @@ - logit("Disabling protocol version 1. Could not load host key"); - options.protocol &= ~SSH_PROTO_1; - } -+#ifndef GSSAPI -+ /* The GSSAPI key exchange can run without a host key */ - if ((options.protocol & SSH_PROTO_2) && !sensitive_data.have_ssh2_key) { - logit("Disabling protocol version 2. Could not load host key"); - options.protocol &= ~SSH_PROTO_2; - } -+#endif - if (!(options.protocol & (SSH_PROTO_1|SSH_PROTO_2))) { - logit("sshd: no hostkeys available -- exiting."); - exit(1); -@@ -1817,6 +1824,60 @@ - /* Log the connection. */ - verbose("Connection from %.500s port %d", remote_ip, remote_port); - -+#ifdef USE_SECURITY_SESSION_API -+ /* -+ * Create a new security session for use by the new user login if -+ * the current session is the root session or we are not launched -+ * by inetd (eg: debugging mode or server mode). We do not -+ * necessarily need to create a session if we are launched from -+ * inetd because Panther xinetd will create a session for us. -+ * -+ * The only case where this logic will fail is if there is an -+ * inetd running in a non-root session which is not creating -+ * new sessions for us. Then all the users will end up in the -+ * same session (bad). -+ * -+ * When the client exits, the session will be destroyed for us -+ * automatically. -+ * -+ * We must create the session before any credentials are stored -+ * (including AFS pags, which happens a few lines below). -+ */ -+ { -+ OSStatus err = 0; -+ SecuritySessionId sid = 0; -+ SessionAttributeBits sattrs = 0; -+ -+ err = SessionGetInfo(callerSecuritySession, &sid, &sattrs); -+ if (err) -+ error("SessionGetInfo() failed with error %.8X", -+ (unsigned) err); -+ else -+ debug("Current Session ID is %.8X / Session Attributes are %.8X", -+ (unsigned) sid, (unsigned) sattrs); -+ -+ if (inetd_flag && !(sattrs & sessionIsRoot)) -+ debug("Running in inetd mode in a non-root session... " -+ "assuming inetd created the session for us."); -+ else { -+ debug("Creating new security session..."); -+ err = SessionCreate(0, sessionHasTTY | sessionIsRemote); -+ if (err) -+ error("SessionCreate() failed with error %.8X", -+ (unsigned) err); -+ -+ err = SessionGetInfo(callerSecuritySession, &sid, -+ &sattrs); -+ if (err) -+ error("SessionGetInfo() failed with error %.8X", -+ (unsigned) err); -+ else -+ debug("New Session ID is %.8X / Session Attributes are %.8X", -+ (unsigned) sid, (unsigned) sattrs); -+ } -+ } -+#endif -+ - /* - * We don't want to listen forever unless the other side - * successfully authenticates itself. So we set up an alarm which is -@@ -2194,12 +2255,59 @@ - - myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS] = list_hostkey_types(); - -+#ifdef GSSAPI -+ { -+ char *orig; -+ char *gss = NULL; -+ char *newstr = NULL; -+ orig = myproposal[PROPOSAL_KEX_ALGS]; -+ -+ /* -+ * If we don't have a host key, then there's no point advertising -+ * the other key exchange algorithms -+ */ -+ -+ if (strlen(myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS]) == 0) -+ orig = NULL; -+ -+ if (options.gss_keyex) -+ gss = ssh_gssapi_server_mechanisms(); -+ else -+ gss = NULL; -+ -+ if (gss && orig) -+ xasprintf(&newstr, "%s,%s", gss, orig); -+ else if (gss) -+ newstr = gss; -+ else if (orig) -+ newstr = orig; -+ -+ /* -+ * If we've got GSSAPI mechanisms, then we've got the 'null' host -+ * key alg, but we can't tell people about it unless its the only -+ * host key algorithm we support -+ */ -+ if (gss && (strlen(myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS])) == 0) -+ myproposal[PROPOSAL_SERVER_HOST_KEY_ALGS] = "null"; -+ -+ if (newstr) -+ myproposal[PROPOSAL_KEX_ALGS] = newstr; -+ else -+ fatal("No supported key exchange algorithms"); -+ } -+#endif -+ - /* start key exchange */ - kex = kex_setup(myproposal); - kex->kex[KEX_DH_GRP1_SHA1] = kexdh_server; - kex->kex[KEX_DH_GRP14_SHA1] = kexdh_server; - kex->kex[KEX_DH_GEX_SHA1] = kexgex_server; - kex->kex[KEX_DH_GEX_SHA256] = kexgex_server; -+#ifdef GSSAPI -+ kex->kex[KEX_GSS_GRP1_SHA1] = kexgss_server; -+ kex->kex[KEX_GSS_GRP14_SHA1] = kexgss_server; -+ kex->kex[KEX_GSS_GEX_SHA1] = kexgss_server; -+#endif - kex->server = 1; - kex->client_version_string=client_version_string; - kex->server_version_string=server_version_string; -diff -urN openssh-5.2p1/sshd_config openssh-5.2p1.new/sshd_config ---- openssh-5.2p1/sshd_config 2008-07-02 14:35:43.000000000 +0200 -+++ openssh-5.2p1.new/sshd_config 2009-03-21 15:19:20.000000000 +0100 -@@ -73,6 +73,8 @@ - # GSSAPI options - #GSSAPIAuthentication no - #GSSAPICleanupCredentials yes -+#GSSAPIStrictAcceptorCheck yes -+#GSSAPIKeyExchange no - - # Set this to 'yes' to enable PAM authentication, account processing, - # and session processing. If this is enabled, PAM authentication will -diff -urN openssh-5.2p1/sshd_config.5 openssh-5.2p1.new/sshd_config.5 ---- openssh-5.2p1/sshd_config.5 2009-02-23 01:00:24.000000000 +0100 -+++ openssh-5.2p1.new/sshd_config.5 2009-03-21 15:19:20.000000000 +0100 -@@ -374,12 +374,35 @@ - The default is - .Dq no . - Note that this option applies to protocol version 2 only. -+.It Cm GSSAPIKeyExchange -+Specifies whether key exchange based on GSSAPI is allowed. GSSAPI key exchange -+doesn't rely on ssh keys to verify host identity. -+The default is -+.Dq no . -+Note that this option applies to protocol version 2 only. - .It Cm GSSAPICleanupCredentials - Specifies whether to automatically destroy the user's credentials cache - on logout. - The default is - .Dq yes . - Note that this option applies to protocol version 2 only. -+.It Cm GSSAPIStrictAcceptorCheck -+Determines whether to be strict about the identity of the GSSAPI acceptor -+a client authenticates against. If -+.Dq yes -+then the client must authenticate against the -+.Pa host -+service on the current hostname. If -+.Dq no -+then the client may authenticate against any service key stored in the -+machine's default store. This facility is provided to assist with operation -+on multi homed machines. -+The default is -+.Dq yes . -+Note that this option applies only to protocol version 2 GSSAPI connections, -+and setting it to -+.Dq no -+may only work with recent Kerberos GSSAPI libraries. - .It Cm HostbasedAuthentication - Specifies whether rhosts or /etc/hosts.equiv authentication together - with successful public key client host authentication is allowed -diff -N kexgssc.c ---- openssh-5.2p1//dev/null 1 Jan 1970 00:00:00 -0000 -+++ openssh-5.2p1.new/kexgssc.c 4 Apr 2008 12:52:29 -0000 -@@ -0,0 +1,319 @@ -+/* -+ * Copyright (c) 2001-2006 Simon Wilkinson. All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR -+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "includes.h" -+ -+#ifdef GSSAPI -+ -+#include "includes.h" -+ -+#include -+#include -+ -+#include -+ -+#include "xmalloc.h" -+#include "buffer.h" -+#include "ssh2.h" -+#include "key.h" -+#include "cipher.h" -+#include "kex.h" -+#include "log.h" -+#include "packet.h" -+#include "dh.h" -+ -+#include "ssh-gss.h" -+ -+void -+kexgss_client(Kex *kex) { -+ gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER; -+ gss_buffer_desc recv_tok, gssbuf, msg_tok, *token_ptr; -+ Gssctxt *ctxt; -+ OM_uint32 maj_status, min_status, ret_flags; -+ u_int klen, kout, slen = 0, hashlen, strlen; -+ DH *dh; -+ BIGNUM *dh_server_pub = NULL; -+ BIGNUM *shared_secret = NULL; -+ BIGNUM *p = NULL; -+ BIGNUM *g = NULL; -+ u_char *kbuf, *hash; -+ u_char *serverhostkey = NULL; -+ char *msg; -+ char *lang; -+ int type = 0; -+ int first = 1; -+ int nbits = 0, min = DH_GRP_MIN, max = DH_GRP_MAX; -+ -+ /* Initialise our GSSAPI world */ -+ ssh_gssapi_build_ctx(&ctxt); -+ if (ssh_gssapi_id_kex(ctxt, kex->name, kex->kex_type) -+ == GSS_C_NO_OID) -+ fatal("Couldn't identify host exchange"); -+ -+ if (ssh_gssapi_import_name(ctxt, kex->gss_host)) -+ fatal("Couldn't import hostname"); -+ -+ switch (kex->kex_type) { -+ case KEX_GSS_GRP1_SHA1: -+ dh = dh_new_group1(); -+ break; -+ case KEX_GSS_GRP14_SHA1: -+ dh = dh_new_group14(); -+ break; -+ case KEX_GSS_GEX_SHA1: -+ debug("Doing group exchange\n"); -+ nbits = dh_estimate(kex->we_need * 8); -+ packet_start(SSH2_MSG_KEXGSS_GROUPREQ); -+ packet_put_int(min); -+ packet_put_int(nbits); -+ packet_put_int(max); -+ -+ packet_send(); -+ -+ packet_read_expect(SSH2_MSG_KEXGSS_GROUP); -+ -+ if ((p = BN_new()) == NULL) -+ fatal("BN_new() failed"); -+ packet_get_bignum2(p); -+ if ((g = BN_new()) == NULL) -+ fatal("BN_new() failed"); -+ packet_get_bignum2(g); -+ packet_check_eom(); -+ -+ if (BN_num_bits(p) < min || BN_num_bits(p) > max) -+ fatal("GSSGRP_GEX group out of range: %d !< %d !< %d", -+ min, BN_num_bits(p), max); -+ -+ dh = dh_new_group(g, p); -+ break; -+ default: -+ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); -+ } -+ -+ /* Step 1 - e is dh->pub_key */ -+ dh_gen_key(dh, kex->we_need * 8); -+ -+ /* This is f, we initialise it now to make life easier */ -+ dh_server_pub = BN_new(); -+ if (dh_server_pub == NULL) -+ fatal("dh_server_pub == NULL"); -+ -+ token_ptr = GSS_C_NO_BUFFER; -+ -+ do { -+ debug("Calling gss_init_sec_context"); -+ -+ maj_status = ssh_gssapi_init_ctx(ctxt, -+ kex->gss_deleg_creds, token_ptr, &send_tok, -+ &ret_flags); -+ -+ if (GSS_ERROR(maj_status)) { -+ if (send_tok.length != 0) { -+ packet_start(SSH2_MSG_KEXGSS_CONTINUE); -+ packet_put_string(send_tok.value, -+ send_tok.length); -+ } -+ fatal("gss_init_context failed"); -+ } -+ -+ /* If we've got an old receive buffer get rid of it */ -+ if (token_ptr != GSS_C_NO_BUFFER) -+ xfree(recv_tok.value); -+ -+ if (maj_status == GSS_S_COMPLETE) { -+ /* If mutual state flag is not true, kex fails */ -+ if (!(ret_flags & GSS_C_MUTUAL_FLAG)) -+ fatal("Mutual authentication failed"); -+ -+ /* If integ avail flag is not true kex fails */ -+ if (!(ret_flags & GSS_C_INTEG_FLAG)) -+ fatal("Integrity check failed"); -+ } -+ -+ /* -+ * If we have data to send, then the last message that we -+ * received cannot have been a 'complete'. -+ */ -+ if (send_tok.length != 0) { -+ if (first) { -+ packet_start(SSH2_MSG_KEXGSS_INIT); -+ packet_put_string(send_tok.value, -+ send_tok.length); -+ packet_put_bignum2(dh->pub_key); -+ first = 0; -+ } else { -+ packet_start(SSH2_MSG_KEXGSS_CONTINUE); -+ packet_put_string(send_tok.value, -+ send_tok.length); -+ } -+ packet_send(); -+ gss_release_buffer(&min_status, &send_tok); -+ -+ /* If we've sent them data, they should reply */ -+ do { -+ type = packet_read(); -+ if (type == SSH2_MSG_KEXGSS_HOSTKEY) { -+ debug("Received KEXGSS_HOSTKEY"); -+ if (serverhostkey) -+ fatal("Server host key received more than once"); -+ serverhostkey = -+ packet_get_string(&slen); -+ } -+ } while (type == SSH2_MSG_KEXGSS_HOSTKEY); -+ -+ switch (type) { -+ case SSH2_MSG_KEXGSS_CONTINUE: -+ debug("Received GSSAPI_CONTINUE"); -+ if (maj_status == GSS_S_COMPLETE) -+ fatal("GSSAPI Continue received from server when complete"); -+ recv_tok.value = packet_get_string(&strlen); -+ recv_tok.length = strlen; -+ break; -+ case SSH2_MSG_KEXGSS_COMPLETE: -+ debug("Received GSSAPI_COMPLETE"); -+ packet_get_bignum2(dh_server_pub); -+ msg_tok.value = packet_get_string(&strlen); -+ msg_tok.length = strlen; -+ -+ /* Is there a token included? */ -+ if (packet_get_char()) { -+ recv_tok.value= -+ packet_get_string(&strlen); -+ recv_tok.length = strlen; -+ /* If we're already complete - protocol error */ -+ if (maj_status == GSS_S_COMPLETE) -+ packet_disconnect("Protocol error: received token when complete"); -+ } else { -+ /* No token included */ -+ if (maj_status != GSS_S_COMPLETE) -+ packet_disconnect("Protocol error: did not receive final token"); -+ } -+ break; -+ case SSH2_MSG_KEXGSS_ERROR: -+ debug("Received Error"); -+ maj_status = packet_get_int(); -+ min_status = packet_get_int(); -+ msg = packet_get_string(NULL); -+ lang = packet_get_string(NULL); -+ fatal("GSSAPI Error: \n%.400s",msg); -+ default: -+ packet_disconnect("Protocol error: didn't expect packet type %d", -+ type); -+ } -+ token_ptr = &recv_tok; -+ } else { -+ /* No data, and not complete */ -+ if (maj_status != GSS_S_COMPLETE) -+ fatal("Not complete, and no token output"); -+ } -+ } while (maj_status & GSS_S_CONTINUE_NEEDED); -+ -+ /* -+ * We _must_ have received a COMPLETE message in reply from the -+ * server, which will have set dh_server_pub and msg_tok -+ */ -+ -+ if (type != SSH2_MSG_KEXGSS_COMPLETE) -+ fatal("Didn't receive a SSH2_MSG_KEXGSS_COMPLETE when I expected it"); -+ -+ /* Check f in range [1, p-1] */ -+ if (!dh_pub_is_valid(dh, dh_server_pub)) -+ packet_disconnect("bad server public DH value"); -+ -+ /* compute K=f^x mod p */ -+ klen = DH_size(dh); -+ kbuf = xmalloc(klen); -+ kout = DH_compute_key(kbuf, dh_server_pub, dh); -+ -+ shared_secret = BN_new(); -+ BN_bin2bn(kbuf,kout, shared_secret); -+ memset(kbuf, 0, klen); -+ xfree(kbuf); -+ -+ switch (kex->kex_type) { -+ case KEX_GSS_GRP1_SHA1: -+ case KEX_GSS_GRP14_SHA1: -+ kex_dh_hash( kex->client_version_string, -+ kex->server_version_string, -+ buffer_ptr(&kex->my), buffer_len(&kex->my), -+ buffer_ptr(&kex->peer), buffer_len(&kex->peer), -+ serverhostkey, slen, /* server host key */ -+ dh->pub_key, /* e */ -+ dh_server_pub, /* f */ -+ shared_secret, /* K */ -+ &hash, &hashlen -+ ); -+ break; -+ case KEX_GSS_GEX_SHA1: -+ kexgex_hash( -+ kex->evp_md, -+ kex->client_version_string, -+ kex->server_version_string, -+ buffer_ptr(&kex->my), buffer_len(&kex->my), -+ buffer_ptr(&kex->peer), buffer_len(&kex->peer), -+ serverhostkey, slen, -+ min, nbits, max, -+ dh->p, dh->g, -+ dh->pub_key, -+ dh_server_pub, -+ shared_secret, -+ &hash, &hashlen -+ ); -+ break; -+ default: -+ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); -+ } -+ -+ gssbuf.value = hash; -+ gssbuf.length = hashlen; -+ -+ /* Verify that the hash matches the MIC we just got. */ -+ if (GSS_ERROR(ssh_gssapi_checkmic(ctxt, &gssbuf, &msg_tok))) -+ packet_disconnect("Hash's MIC didn't verify"); -+ -+ xfree(msg_tok.value); -+ -+ DH_free(dh); -+ if (serverhostkey) -+ xfree(serverhostkey); -+ BN_clear_free(dh_server_pub); -+ -+ /* save session id */ -+ if (kex->session_id == NULL) { -+ kex->session_id_len = hashlen; -+ kex->session_id = xmalloc(kex->session_id_len); -+ memcpy(kex->session_id, hash, kex->session_id_len); -+ } -+ -+ if (gss_kex_context == NULL) -+ gss_kex_context = ctxt; -+ else -+ ssh_gssapi_delete_ctx(&ctxt); -+ -+ kex_derive_keys(kex, hash, hashlen, shared_secret); -+ BN_clear_free(shared_secret); -+ kex_finish(kex); -+} -+ -+#endif /* GSSAPI */ -diff -N kexgsss.c ---- openssh-5.2p1/kexgsss.c 1 Jan 1970 00:00:00 -0000 -+++ openssh-5.2p1.new/kexgsss.c 4 Apr 2008 12:52:29 -0000 -@@ -0,0 +1,271 @@ -+/* -+ * Copyright (c) 2001-2006 Simon Wilkinson. All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS'' AND ANY EXPRESS OR -+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "includes.h" -+ -+#ifdef GSSAPI -+ -+#include -+ -+#include -+#include -+ -+#include "xmalloc.h" -+#include "buffer.h" -+#include "ssh2.h" -+#include "key.h" -+#include "cipher.h" -+#include "kex.h" -+#include "log.h" -+#include "packet.h" -+#include "dh.h" -+#include "ssh-gss.h" -+#include "monitor_wrap.h" -+ -+void -+kexgss_server(Kex *kex) -+{ -+ OM_uint32 maj_status, min_status; -+ -+ /* -+ * Some GSSAPI implementations use the input value of ret_flags (an -+ * output variable) as a means of triggering mechanism specific -+ * features. Initializing it to zero avoids inadvertently -+ * activating this non-standard behaviour. -+ */ -+ -+ OM_uint32 ret_flags = 0; -+ gss_buffer_desc gssbuf, recv_tok, msg_tok; -+ gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER; -+ Gssctxt *ctxt = NULL; -+ u_int slen, klen, kout, hashlen; -+ u_char *kbuf, *hash; -+ DH *dh; -+ int min = -1, max = -1, nbits = -1; -+ BIGNUM *shared_secret = NULL; -+ BIGNUM *dh_client_pub = NULL; -+ int type = 0; -+ gss_OID oid; -+ -+ /* Initialise GSSAPI */ -+ -+ /* If we're rekeying, privsep means that some of the private structures -+ * in the GSSAPI code are no longer available. This kludges them back -+ * into life -+ */ -+ if (!ssh_gssapi_oid_table_ok()) -+ ssh_gssapi_server_mechanisms(); -+ -+ debug2("%s: Identifying %s", __func__, kex->name); -+ oid = ssh_gssapi_id_kex(NULL, kex->name, kex->kex_type); -+ if (oid == GSS_C_NO_OID) -+ fatal("Unknown gssapi mechanism"); -+ -+ debug2("%s: Acquiring credentials", __func__); -+ -+ if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, oid)))) -+ fatal("Unable to acquire credentials for the server"); -+ -+ switch (kex->kex_type) { -+ case KEX_GSS_GRP1_SHA1: -+ dh = dh_new_group1(); -+ break; -+ case KEX_GSS_GRP14_SHA1: -+ dh = dh_new_group14(); -+ break; -+ case KEX_GSS_GEX_SHA1: -+ debug("Doing group exchange"); -+ packet_read_expect(SSH2_MSG_KEXGSS_GROUPREQ); -+ min = packet_get_int(); -+ nbits = packet_get_int(); -+ max = packet_get_int(); -+ min = MAX(DH_GRP_MIN, min); -+ max = MIN(DH_GRP_MAX, max); -+ packet_check_eom(); -+ if (max < min || nbits < min || max < nbits) -+ fatal("GSS_GEX, bad parameters: %d !< %d !< %d", -+ min, nbits, max); -+ dh = PRIVSEP(choose_dh(min, nbits, max)); -+ if (dh == NULL) -+ packet_disconnect("Protocol error: no matching group found"); -+ -+ packet_start(SSH2_MSG_KEXGSS_GROUP); -+ packet_put_bignum2(dh->p); -+ packet_put_bignum2(dh->g); -+ packet_send(); -+ -+ packet_write_wait(); -+ break; -+ default: -+ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); -+ } -+ -+ dh_gen_key(dh, kex->we_need * 8); -+ -+ do { -+ debug("Wait SSH2_MSG_GSSAPI_INIT"); -+ type = packet_read(); -+ switch(type) { -+ case SSH2_MSG_KEXGSS_INIT: -+ if (dh_client_pub != NULL) -+ fatal("Received KEXGSS_INIT after initialising"); -+ recv_tok.value = packet_get_string(&slen); -+ recv_tok.length = slen; -+ -+ if ((dh_client_pub = BN_new()) == NULL) -+ fatal("dh_client_pub == NULL"); -+ -+ packet_get_bignum2(dh_client_pub); -+ -+ /* Send SSH_MSG_KEXGSS_HOSTKEY here, if we want */ -+ break; -+ case SSH2_MSG_KEXGSS_CONTINUE: -+ recv_tok.value = packet_get_string(&slen); -+ recv_tok.length = slen; -+ break; -+ default: -+ packet_disconnect( -+ "Protocol error: didn't expect packet type %d", -+ type); -+ } -+ -+ maj_status = PRIVSEP(ssh_gssapi_accept_ctx(ctxt, &recv_tok, -+ &send_tok, &ret_flags)); -+ -+ xfree(recv_tok.value); -+ -+ if (maj_status != GSS_S_COMPLETE && send_tok.length == 0) -+ fatal("Zero length token output when incomplete"); -+ -+ if (dh_client_pub == NULL) -+ fatal("No client public key"); -+ -+ if (maj_status & GSS_S_CONTINUE_NEEDED) { -+ debug("Sending GSSAPI_CONTINUE"); -+ packet_start(SSH2_MSG_KEXGSS_CONTINUE); -+ packet_put_string(send_tok.value, send_tok.length); -+ packet_send(); -+ gss_release_buffer(&min_status, &send_tok); -+ } -+ } while (maj_status & GSS_S_CONTINUE_NEEDED); -+ -+ if (GSS_ERROR(maj_status)) { -+ if (send_tok.length > 0) { -+ packet_start(SSH2_MSG_KEXGSS_CONTINUE); -+ packet_put_string(send_tok.value, send_tok.length); -+ packet_send(); -+ } -+ fatal("accept_ctx died"); -+ } -+ -+ if (!(ret_flags & GSS_C_MUTUAL_FLAG)) -+ fatal("Mutual Authentication flag wasn't set"); -+ -+ if (!(ret_flags & GSS_C_INTEG_FLAG)) -+ fatal("Integrity flag wasn't set"); -+ -+ if (!dh_pub_is_valid(dh, dh_client_pub)) -+ packet_disconnect("bad client public DH value"); -+ -+ klen = DH_size(dh); -+ kbuf = xmalloc(klen); -+ kout = DH_compute_key(kbuf, dh_client_pub, dh); -+ -+ shared_secret = BN_new(); -+ BN_bin2bn(kbuf, kout, shared_secret); -+ memset(kbuf, 0, klen); -+ xfree(kbuf); -+ -+ switch (kex->kex_type) { -+ case KEX_GSS_GRP1_SHA1: -+ case KEX_GSS_GRP14_SHA1: -+ kex_dh_hash( -+ kex->client_version_string, kex->server_version_string, -+ buffer_ptr(&kex->peer), buffer_len(&kex->peer), -+ buffer_ptr(&kex->my), buffer_len(&kex->my), -+ NULL, 0, /* Change this if we start sending host keys */ -+ dh_client_pub, dh->pub_key, shared_secret, -+ &hash, &hashlen -+ ); -+ break; -+ case KEX_GSS_GEX_SHA1: -+ kexgex_hash( -+ kex->evp_md, -+ kex->client_version_string, kex->server_version_string, -+ buffer_ptr(&kex->peer), buffer_len(&kex->peer), -+ buffer_ptr(&kex->my), buffer_len(&kex->my), -+ NULL, 0, -+ min, nbits, max, -+ dh->p, dh->g, -+ dh_client_pub, -+ dh->pub_key, -+ shared_secret, -+ &hash, &hashlen -+ ); -+ break; -+ default: -+ fatal("%s: Unexpected KEX type %d", __func__, kex->kex_type); -+ } -+ -+ BN_free(dh_client_pub); -+ -+ if (kex->session_id == NULL) { -+ kex->session_id_len = hashlen; -+ kex->session_id = xmalloc(kex->session_id_len); -+ memcpy(kex->session_id, hash, kex->session_id_len); -+ } -+ -+ gssbuf.value = hash; -+ gssbuf.length = hashlen; -+ -+ if (GSS_ERROR(PRIVSEP(ssh_gssapi_sign(ctxt,&gssbuf,&msg_tok)))) -+ fatal("Couldn't get MIC"); -+ -+ packet_start(SSH2_MSG_KEXGSS_COMPLETE); -+ packet_put_bignum2(dh->pub_key); -+ packet_put_string(msg_tok.value,msg_tok.length); -+ -+ if (send_tok.length != 0) { -+ packet_put_char(1); /* true */ -+ packet_put_string(send_tok.value, send_tok.length); -+ } else { -+ packet_put_char(0); /* false */ -+ } -+ packet_send(); -+ -+ gss_release_buffer(&min_status, &send_tok); -+ gss_release_buffer(&min_status, &msg_tok); -+ -+ if (gss_kex_context == NULL) -+ gss_kex_context = ctxt; -+ else -+ ssh_gssapi_delete_ctx(&ctxt); -+ -+ DH_free(dh); -+ -+ kex_derive_keys(kex, hash, hashlen, shared_secret); -+ BN_clear_free(shared_secret); -+ kex_finish(kex); -+} -+#endif /* GSSAPI */ Added: csw/mgar/pkg/openssh/trunk/files/openssh-5.3p1-gsskex-all-20090726.patch =================================================================== --- csw/mgar/pkg/openssh/trunk/files/openssh-5.3p1-gsskex-all-20090726.patch (rev 0) +++ csw/mgar/pkg/openssh/trunk/files/openssh-5.3p1-gsskex-all-20090726.patch 2009-10-09 19:56:00 UTC (rev 6811) @@ -0,0 +1,3060 @@ +? .kex.h.swp +? .pc +? openssh-5.0p1-gsskex-20080404.patch +? openssh-5.0p1-gssrenew-20080707.patch +? openssh-5.2p1-gsskex-20090726.patch +? openssh-5.2p1-gsskex-all-20090726.patch +? patches +Index: ChangeLog.gssapi +=================================================================== +RCS file: ChangeLog.gssapi +diff -N ChangeLog.gssapi +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ ./ChangeLog.gssapi 26 Jul 2009 12:21:52 -0000 +@@ -0,0 +1,95 @@ ++20090615 ++ - [ gss-genr.c gss-serv.c kexgssc.c kexgsss.c monitor.c sshconnect2.c ++ sshd.c ] ++ Fix issues identified by Greg Hudson following a code review ++ Check return value of gss_indicate_mechs ++ Protect GSSAPI calls in monitor, so they can only be used if enabled ++ Check return values of bignum functions in key exchange ++ Use BN_clear_free to clear other side's DH value ++ Make ssh_gssapi_id_kex more robust ++ Only configure kex table pointers if GSSAPI is enabled ++ Don't leak mechanism list, or gss mechanism list ++ Cast data.length before printing ++ If serverkey isn't provided, use an empty string, rather than NULL ++ ++20090201 ++ - [ gss-genr.c gss-serv.c kex.h kexgssc.c readconf.c readconf.h ssh-gss.h ++ ssh_config.5 sshconnet2.c ] ++ Add support for the GSSAPIClientIdentity option, which allows the user ++ to specify which GSSAPI identity to use to contact a given server ++ ++20080404 ++ - [ gss-serv.c ] ++ Add code to actually implement GSSAPIStrictAcceptCheck, which had somehow ++ been omitted from a previous version of this patch. Reported by Borislav ++ Stoichkov ++ ++20070317 ++ - [ gss-serv-krb5.c ] ++ Remove C99ism, where new_ccname was being declared in the middle of a ++ function ++ ++20061220 ++ - [ servconf.c ] ++ Make default for GSSAPIStrictAcceptorCheck be Yes, to match previous, and ++ documented, behaviour. Reported by Dan Watson. ++ ++20060910 ++ - [ gss-genr.c kexgssc.c kexgsss.c kex.h monitor.c sshconnect2.c sshd.c ++ ssh-gss.h ] ++ add support for gss-group14-sha1 key exchange mechanisms ++ - [ gss-serv.c servconf.c servconf.h sshd_config sshd_config.5 ] ++ Add GSSAPIStrictAcceptorCheck option to allow the disabling of ++ acceptor principal checking on multi-homed machines. ++ ++ - [ sshd_config ssh_config ] ++ Add settings for GSSAPIKeyExchange and GSSAPITrustDNS to the sample ++ configuration files ++ - [ kexgss.c kegsss.c sshconnect2.c sshd.c ] ++ Code cleanup. Replace strlen/xmalloc/snprintf sequences with xasprintf() ++ Limit length of error messages displayed by client ++ ++20060909 ++ - [ gss-genr.c gss-serv.c ] ++ move ssh_gssapi_acquire_cred() and ssh_gssapi_server_ctx to be server ++ only, where they belong ++ ++ ++20060829 ++ - [ gss-serv-krb5.c ] ++ Fix CCAPI credentials cache name when creating KRB5CCNAME environment ++ variable ++ ++20060828 ++ - [ gss-genr.c ] ++ Avoid Heimdal context freeing problem ++ ++ ++20060818 ++ - [ gss-genr.c ssh-gss.h sshconnect2.c ] ++ Make sure that SPENGO is disabled ++ ++ ++20060421 ++ - [ gssgenr.c, sshconnect2.c ] ++ a few type changes (signed versus unsigned, int versus size_t) to ++ fix compiler errors/warnings ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ kexgssc.c, sshconnect2.c ] ++ fix uninitialized variable warnings ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ gssgenr.c ] ++ pass oid to gss_display_status (helpful when using GSSAPI mechglue) ++ (from jbasney AT ncsa.uiuc.edu) ++ ++ - [ gss-serv-krb5.c ] ++ #ifdef HAVE_GSSAPI_KRB5 should be #ifdef HAVE_GSSAPI_KRB5_H ++ (from jbasney AT ncsa.uiuc.edu) ++ ++ - [ readconf.c, readconf.h, ssh_config.5, sshconnect2.c ++ add client-side GssapiKeyExchange option ++ (from jbasney AT ncsa.uiuc.edu) ++ - [ sshconnect2.c ] ++ add support for GssapiTrustDns option for gssapi-with-mic ++ (from jbasney AT ncsa.uiuc.edu) ++ +Index: Makefile.in +=================================================================== +RCS file: /cvs/openssh/Makefile.in,v +retrieving revision 1.298 +diff -u -r1.298 Makefile.in +--- ./Makefile.in 5 Nov 2008 05:20:46 -0000 1.298 ++++ ./Makefile.in 26 Jul 2009 12:21:53 -0000 +@@ -71,7 +71,8 @@ + atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \ + monitor_fdpass.o rijndael.o ssh-dss.o ssh-rsa.o dh.o kexdh.o \ + kexgex.o kexdhc.o kexgexc.o scard.o msg.o progressmeter.o dns.o \ +- entropy.o scard-opensc.o gss-genr.o umac.o jpake.o schnorr.o ++ entropy.o scard-opensc.o gss-genr.o umac.o jpake.o schnorr.o \ ++ kexgssc.o + + SSHOBJS= ssh.o readconf.o clientloop.o sshtty.o \ + sshconnect.o sshconnect1.o sshconnect2.o mux.o +@@ -84,7 +85,7 @@ + auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-jpake.o \ + monitor_mm.o monitor.o monitor_wrap.o kexdhs.o kexgexs.o \ + auth-krb5.o \ +- auth2-gss.o gss-serv.o gss-serv-krb5.o \ ++ auth2-gss.o gss-serv.o gss-serv-krb5.o kexgsss.o\ + loginrec.o auth-pam.o auth-shadow.o auth-sia.o md5crypt.o \ + audit.o audit-bsm.o platform.o sftp-server.o sftp-common.o + +Index: auth-krb5.c +=================================================================== +RCS file: /cvs/openssh/auth-krb5.c,v +retrieving revision 1.35 +diff -u -r1.35 auth-krb5.c +--- ./auth-krb5.c 5 Aug 2006 02:39:39 -0000 1.35 ++++ ./auth-krb5.c 26 Jul 2009 12:21:53 -0000 +@@ -166,8 +166,13 @@ + + len = strlen(authctxt->krb5_ticket_file) + 6; + authctxt->krb5_ccname = xmalloc(len); ++#ifdef USE_CCAPI ++ snprintf(authctxt->krb5_ccname, len, "API:%s", ++ authctxt->krb5_ticket_file); ++#else + snprintf(authctxt->krb5_ccname, len, "FILE:%s", + authctxt->krb5_ticket_file); ++#endif + + #ifdef USE_PAM + if (options.use_pam) +@@ -219,15 +224,22 @@ + #ifndef HEIMDAL + krb5_error_code + ssh_krb5_cc_gen(krb5_context ctx, krb5_ccache *ccache) { +- int tmpfd, ret; ++ int ret; + char ccname[40]; + mode_t old_umask; ++#ifdef USE_CCAPI ++ char cctemplate[] = "API:krb5cc_%d"; ++#else ++ char cctemplate[] = "FILE:/tmp/krb5cc_%d_XXXXXXXXXX"; ++ int tmpfd; ++#endif + + ret = snprintf(ccname, sizeof(ccname), +- "FILE:/tmp/krb5cc_%d_XXXXXXXXXX", geteuid()); ++ cctemplate, geteuid()); + if (ret < 0 || (size_t)ret >= sizeof(ccname)) + return ENOMEM; + ++#ifndef USE_CCAPI + old_umask = umask(0177); + tmpfd = mkstemp(ccname + strlen("FILE:")); + umask(old_umask); +@@ -242,6 +254,7 @@ + return errno; + } + close(tmpfd); ++#endif + + return (krb5_cc_resolve(ctx, ccname, ccache)); + } +Index: auth.h +=================================================================== +RCS file: /cvs/openssh/auth.h,v +retrieving revision 1.80 +diff -u -r1.80 auth.h +--- ./auth.h 5 Nov 2008 05:20:46 -0000 1.80 ++++ ./auth.h 26 Jul 2009 12:21:53 -0000 +@@ -53,6 +53,7 @@ + int valid; /* user exists and is allowed to login */ + int attempt; + int failures; ++ int server_caused_failure; + int force_pwchange; + char *user; /* username sent by the client */ + char *service; +Index: auth2-gss.c +=================================================================== +RCS file: /cvs/openssh/auth2-gss.c,v +retrieving revision 1.19 +diff -u -r1.19 auth2-gss.c +--- ./auth2-gss.c 2 Dec 2007 11:59:45 -0000 1.19 ++++ ./auth2-gss.c 26 Jul 2009 12:21:54 -0000 +@@ -1,7 +1,7 @@ + /* $OpenBSD: auth2-gss.c,v 1.16 2007/10/29 00:52:45 dtucker Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -52,6 +52,40 @@ + static void input_gssapi_exchange_complete(int type, u_int32_t plen, void *ctxt); + static void input_gssapi_errtok(int, u_int32_t, void *); + ++/* ++ * The 'gssapi_keyex' userauth mechanism. ++ */ ++static int ++userauth_gsskeyex(Authctxt *authctxt) ++{ ++ int authenticated = 0; ++ Buffer b; ++ gss_buffer_desc mic, gssbuf; ++ u_int len; ++ ++ mic.value = packet_get_string(&len); ++ mic.length = len; ++ ++ packet_check_eom(); ++ ++ ssh_gssapi_buildmic(&b, authctxt->user, authctxt->service, ++ "gssapi-keyex"); ++ ++ gssbuf.value = buffer_ptr(&b); ++ gssbuf.length = buffer_len(&b); ++ ++ /* gss_kex_context is NULL with privsep, so we can't check it here */ ++ if (!GSS_ERROR(PRIVSEP(ssh_gssapi_checkmic(gss_kex_context, ++ &gssbuf, &mic)))) ++ authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user, ++ authctxt->pw)); ++ ++ buffer_free(&b); ++ xfree(mic.value); ++ ++ return (authenticated); ++} ++ + /* + * We only support those mechanisms that we know about (ie ones that we know + * how to check local user kuserok and the like) +@@ -102,6 +136,7 @@ + + if (!present) { + xfree(doid); ++ authctxt->server_caused_failure = 1; + return (0); + } + +@@ -109,6 +144,7 @@ + if (ctxt != NULL) + ssh_gssapi_delete_ctx(&ctxt); + xfree(doid); ++ authctxt->server_caused_failure = 1; + return (0); + } + +@@ -242,7 +278,8 @@ + + packet_check_eom(); + +- authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user)); ++ authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user, ++ authctxt->pw)); + + authctxt->postponed = 0; + dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL); +@@ -277,7 +314,8 @@ + gssbuf.length = buffer_len(&b); + + if (!GSS_ERROR(PRIVSEP(ssh_gssapi_checkmic(gssctxt, &gssbuf, &mic)))) +- authenticated = PRIVSEP(ssh_gssapi_userok(authctxt->user)); ++ authenticated = ++ PRIVSEP(ssh_gssapi_userok(authctxt->user, authctxt->pw)); + else + logit("GSSAPI MIC check failed"); + +@@ -291,6 +329,12 @@ + dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE, NULL); + userauth_finish(authctxt, authenticated, "gssapi-with-mic"); + } ++ ++Authmethod method_gsskeyex = { ++ "gssapi-keyex", ++ userauth_gsskeyex, ++ &options.gss_authentication ++}; + + Authmethod method_gssapi = { + "gssapi-with-mic", +Index: auth2.c +=================================================================== +RCS file: /cvs/openssh/auth2.c,v +retrieving revision 1.149 +diff -u -r1.149 auth2.c +--- ./auth2.c 5 Nov 2008 05:20:46 -0000 1.149 ++++ ./auth2.c 26 Jul 2009 12:21:54 -0000 +@@ -69,6 +69,7 @@ + extern Authmethod method_kbdint; + extern Authmethod method_hostbased; + #ifdef GSSAPI ++extern Authmethod method_gsskeyex; + extern Authmethod method_gssapi; + #endif + #ifdef JPAKE +@@ -79,6 +80,7 @@ + &method_none, + &method_pubkey, + #ifdef GSSAPI ++ &method_gsskeyex, + &method_gssapi, + #endif + #ifdef JPAKE +@@ -274,6 +276,7 @@ + #endif + + authctxt->postponed = 0; ++ authctxt->server_caused_failure = 0; + + /* try to authenticate user */ + m = authmethod_lookup(method); +@@ -346,7 +349,8 @@ + } else { + + /* Allow initial try of "none" auth without failure penalty */ +- if (authctxt->attempt > 1 || strcmp(method, "none") != 0) ++ if (!authctxt->server_caused_failure && ++ (authctxt->attempt > 1 || strcmp(method, "none") != 0)) + authctxt->failures++; + if (authctxt->failures >= options.max_authtries) { + #ifdef SSH_AUDIT_EVENTS +Index: clientloop.c +=================================================================== +RCS file: /cvs/openssh/clientloop.c,v +retrieving revision 1.197 +diff -u -r1.197 clientloop.c +--- ./clientloop.c 14 Feb 2009 05:28:21 -0000 1.197 ++++ ./clientloop.c 26 Jul 2009 12:21:56 -0000 +@@ -110,6 +110,10 @@ + #include "match.h" + #include "msg.h" + ++#ifdef GSSAPI ++#include "ssh-gss.h" ++#endif ++ + /* import options */ + extern Options options; + +@@ -1429,6 +1433,13 @@ + /* Do channel operations unless rekeying in progress. */ + if (!rekeying) { + channel_after_select(readset, writeset); ++ ++ if (options.gss_renewal_rekey && ++ ssh_gssapi_credentials_updated(GSS_C_NO_CONTEXT)) { ++ debug("credentials updated - forcing rekey"); ++ need_rekeying = 1; ++ } ++ + if (need_rekeying || packet_need_rekeying()) { + debug("need rekeying"); + xxx_kex->done = 0; +Index: configure.ac +=================================================================== +RCS file: /cvs/openssh/configure.ac,v +retrieving revision 1.415 +diff -u -r1.415 configure.ac +--- ./configure.ac 16 Feb 2009 04:37:03 -0000 1.415 ++++ ./configure.ac 26 Jul 2009 12:22:00 -0000 +@@ -473,6 +473,30 @@ + [Use tunnel device compatibility to OpenBSD]) + AC_DEFINE(SSH_TUN_PREPEND_AF, 1, + [Prepend the address family to IP tunnel traffic]) ++ AC_MSG_CHECKING(if we have the Security Authorization Session API) ++ AC_TRY_COMPILE([#include ], ++ [SessionCreate(0, 0);], ++ [ac_cv_use_security_session_api="yes" ++ AC_DEFINE(USE_SECURITY_SESSION_API, 1, ++ [platform has the Security Authorization Session API]) ++ LIBS="$LIBS -framework Security" ++ AC_MSG_RESULT(yes)], ++ [ac_cv_use_security_session_api="no" ++ AC_MSG_RESULT(no)]) ++ AC_MSG_CHECKING(if we have an in-memory credentials cache) ++ AC_TRY_COMPILE( ++ [#include ], ++ [cc_context_t c; ++ (void) cc_initialize (&c, 0, NULL, NULL);], ++ [AC_DEFINE(USE_CCAPI, 1, ++ [platform uses an in-memory credentials cache]) ++ LIBS="$LIBS -framework Security" ++ AC_MSG_RESULT(yes) ++ if test "x$ac_cv_use_security_session_api" = "xno"; then ++ AC_MSG_ERROR(*** Need a security framework to use the credentials cache API ***) ++ fi], ++ [AC_MSG_RESULT(no)] ++ ) + m4_pattern_allow(AU_IPv) + AC_CHECK_DECL(AU_IPv4, [], + AC_DEFINE(AU_IPv4, 0, [System only supports IPv4 audit records]) +Index: gss-genr.c +=================================================================== +RCS file: /cvs/openssh/gss-genr.c,v +retrieving revision 1.21 +diff -u -r1.21 gss-genr.c +--- ./gss-genr.c 12 Jun 2007 13:44:36 -0000 1.21 ++++ ./gss-genr.c 26 Jul 2009 12:22:01 -0000 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-genr.c,v 1.19 2007/06/12 11:56:15 dtucker Exp $ */ + + /* +- * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -39,12 +39,167 @@ + #include "buffer.h" + #include "log.h" + #include "ssh2.h" ++#include "cipher.h" ++#include "key.h" ++#include "kex.h" ++#include + + #include "ssh-gss.h" + + extern u_char *session_id2; + extern u_int session_id2_len; + ++typedef struct { ++ char *encoded; ++ gss_OID oid; ++} ssh_gss_kex_mapping; ++ ++/* ++ * XXX - It would be nice to find a more elegant way of handling the ++ * XXX passing of the key exchange context to the userauth routines ++ */ ++ ++Gssctxt *gss_kex_context = NULL; ++ ++static ssh_gss_kex_mapping *gss_enc2oid = NULL; ++ ++int ++ssh_gssapi_oid_table_ok() { ++ return (gss_enc2oid != NULL); ++} ++ ++/* ++ * Return a list of the gss-group1-sha1 mechanisms supported by this program ++ * ++ * We test mechanisms to ensure that we can use them, to avoid starting ++ * a key exchange with a bad mechanism ++ */ ++ ++char * ++ssh_gssapi_client_mechanisms(const char *host, const char *client) { ++ gss_OID_set gss_supported; ++ OM_uint32 min_status; ++ ++ if (GSS_ERROR(gss_indicate_mechs(&min_status, &gss_supported))) ++ return NULL; ++ ++ return(ssh_gssapi_kex_mechs(gss_supported, ssh_gssapi_check_mechanism, ++ host, client)); ++} ++ ++char * ++ssh_gssapi_kex_mechs(gss_OID_set gss_supported, ssh_gssapi_check_fn *check, ++ const char *host, const char *client) { ++ Buffer buf; ++ size_t i; ++ int oidpos, enclen; ++ char *mechs, *encoded; ++ u_char digest[EVP_MAX_MD_SIZE]; ++ char deroid[2]; ++ const EVP_MD *evp_md = EVP_md5(); ++ EVP_MD_CTX md; ++ ++ if (gss_enc2oid != NULL) { ++ for (i = 0; gss_enc2oid[i].encoded != NULL; i++) ++ xfree(gss_enc2oid[i].encoded); ++ xfree(gss_enc2oid); ++ } ++ ++ gss_enc2oid = xmalloc(sizeof(ssh_gss_kex_mapping) * ++ (gss_supported->count + 1)); ++ ++ buffer_init(&buf); ++ ++ oidpos = 0; ++ for (i = 0; i < gss_supported->count; i++) { ++ if (gss_supported->elements[i].length < 128 && ++ (*check)(NULL, &(gss_supported->elements[i]), host, client)) { ++ ++ deroid[0] = SSH_GSS_OIDTYPE; ++ deroid[1] = gss_supported->elements[i].length; ++ ++ EVP_DigestInit(&md, evp_md); ++ EVP_DigestUpdate(&md, deroid, 2); ++ EVP_DigestUpdate(&md, ++ gss_supported->elements[i].elements, ++ gss_supported->elements[i].length); ++ EVP_DigestFinal(&md, digest, NULL); ++ ++ encoded = xmalloc(EVP_MD_size(evp_md) * 2); ++ enclen = __b64_ntop(digest, EVP_MD_size(evp_md), ++ encoded, EVP_MD_size(evp_md) * 2); ++ ++ if (oidpos != 0) ++ buffer_put_char(&buf, ','); ++ ++ buffer_append(&buf, KEX_GSS_GEX_SHA1_ID, ++ sizeof(KEX_GSS_GEX_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ buffer_put_char(&buf, ','); ++ buffer_append(&buf, KEX_GSS_GRP1_SHA1_ID, ++ sizeof(KEX_GSS_GRP1_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ buffer_put_char(&buf, ','); ++ buffer_append(&buf, KEX_GSS_GRP14_SHA1_ID, ++ sizeof(KEX_GSS_GRP14_SHA1_ID) - 1); ++ buffer_append(&buf, encoded, enclen); ++ ++ gss_enc2oid[oidpos].oid = &(gss_supported->elements[i]); ++ gss_enc2oid[oidpos].encoded = encoded; ++ oidpos++; ++ } ++ } ++ gss_enc2oid[oidpos].oid = NULL; ++ gss_enc2oid[oidpos].encoded = NULL; ++ ++ buffer_put_char(&buf, '\0'); ++ ++ mechs = xmalloc(buffer_len(&buf)); ++ buffer_get(&buf, mechs, buffer_len(&buf)); ++ buffer_free(&buf); ++ ++ if (strlen(mechs) == 0) { ++ xfree(mechs); ++ mechs = NULL; ++ } ++ ++ return (mechs); ++} ++ ++gss_OID ++ssh_gssapi_id_kex(Gssctxt *ctx, char *name, int kex_type) { ++ int i = 0; ++ ++ switch (kex_type) { ++ case KEX_GSS_GRP1_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GRP1_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GRP1_SHA1_ID) - 1; ++ break; ++ case KEX_GSS_GRP14_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GRP14_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GRP14_SHA1_ID) - 1; ++ break; ++ case KEX_GSS_GEX_SHA1: ++ if (strlen(name) < sizeof(KEX_GSS_GEX_SHA1_ID)) ++ return GSS_C_NO_OID; ++ name += sizeof(KEX_GSS_GEX_SHA1_ID) - 1; ++ break; ++ default: ++ return GSS_C_NO_OID; ++ } ++ ++ while (gss_enc2oid[i].encoded != NULL && ++ strcmp(name, gss_enc2oid[i].encoded) != 0) ++ i++; ++ ++ if (gss_enc2oid[i].oid != NULL && ctx != NULL) ++ ssh_gssapi_set_oid(ctx, gss_enc2oid[i].oid); ++ ++ return gss_enc2oid[i].oid; ++} ++ + /* Check that the OID in a data stream matches that in the context */ + int + ssh_gssapi_check_oid(Gssctxt *ctx, void *data, size_t len) +@@ -197,7 +352,7 @@ + } + + ctx->major = gss_init_sec_context(&ctx->minor, +- GSS_C_NO_CREDENTIAL, &ctx->context, ctx->name, ctx->oid, ++ ctx->client_creds, &ctx->context, ctx->name, ctx->oid, + GSS_C_MUTUAL_FLAG | GSS_C_INTEG_FLAG | deleg_flag, + 0, NULL, recv_tok, NULL, send_tok, flags, NULL); + +@@ -227,8 +382,42 @@ + } + + OM_uint32 ++ssh_gssapi_client_identity(Gssctxt *ctx, const char *name) ++{ ++ gss_buffer_desc gssbuf; ++ gss_name_t gssname; ++ OM_uint32 status; ++ gss_OID_set oidset; ++ ++ gssbuf.value = (void *) name; ++ gssbuf.length = strlen(gssbuf.value); ++ ++ gss_create_empty_oid_set(&status, &oidset); ++ gss_add_oid_set_member(&status, ctx->oid, &oidset); ++ ++ ctx->major = gss_import_name(&ctx->minor, &gssbuf, ++ GSS_C_NT_USER_NAME, &gssname); ++ ++ if (!ctx->major) ++ ctx->major = gss_acquire_cred(&ctx->minor, ++ gssname, 0, oidset, GSS_C_INITIATE, ++ &ctx->client_creds, NULL, NULL); ++ ++ gss_release_name(&status, &gssname); ++ gss_release_oid_set(&status, &oidset); ++ ++ if (ctx->major) ++ ssh_gssapi_error(ctx); ++ ++ return(ctx->major); ++} ++ ++OM_uint32 + ssh_gssapi_sign(Gssctxt *ctx, gss_buffer_t buffer, gss_buffer_t hash) + { ++ if (ctx == NULL) ++ return -1; ++ + if ((ctx->major = gss_get_mic(&ctx->minor, ctx->context, + GSS_C_QOP_DEFAULT, buffer, hash))) + ssh_gssapi_error(ctx); +@@ -236,6 +425,19 @@ + return (ctx->major); + } + ++/* Priviledged when used by server */ ++OM_uint32 ++ssh_gssapi_checkmic(Gssctxt *ctx, gss_buffer_t gssbuf, gss_buffer_t gssmic) ++{ ++ if (ctx == NULL) ++ return -1; ++ ++ ctx->major = gss_verify_mic(&ctx->minor, ctx->context, ++ gssbuf, gssmic, NULL); ++ ++ return (ctx->major); ++} ++ + void + ssh_gssapi_buildmic(Buffer *b, const char *user, const char *service, + const char *context) +@@ -249,11 +451,16 @@ + } + + int +-ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host) ++ssh_gssapi_check_mechanism(Gssctxt **ctx, gss_OID oid, const char *host, ++ const char *client) + { + gss_buffer_desc token = GSS_C_EMPTY_BUFFER; + OM_uint32 major, minor; + gss_OID_desc spnego_oid = {6, (void *)"\x2B\x06\x01\x05\x05\x02"}; ++ Gssctxt *intctx = NULL; ++ ++ if (ctx == NULL) ++ ctx = &intctx; + + /* RFC 4462 says we MUST NOT do SPNEGO */ + if (oid->length == spnego_oid.length && +@@ -263,6 +470,10 @@ + ssh_gssapi_build_ctx(ctx); + ssh_gssapi_set_oid(*ctx, oid); + major = ssh_gssapi_import_name(*ctx, host); ++ ++ if (!GSS_ERROR(major) && client) ++ major = ssh_gssapi_client_identity(*ctx, client); ++ + if (!GSS_ERROR(major)) { + major = ssh_gssapi_init_ctx(*ctx, 0, GSS_C_NO_BUFFER, &token, + NULL); +@@ -272,10 +483,67 @@ + GSS_C_NO_BUFFER); + } + +- if (GSS_ERROR(major)) ++ if (GSS_ERROR(major) || intctx != NULL) + ssh_gssapi_delete_ctx(ctx); + + return (!GSS_ERROR(major)); ++} ++ ++int ++ssh_gssapi_credentials_updated(Gssctxt *ctxt) { ++ static gss_name_t saved_name = GSS_C_NO_NAME; ++ static OM_uint32 saved_lifetime = 0; ++ static gss_OID saved_mech = GSS_C_NO_OID; ++ static gss_name_t name; ++ static OM_uint32 last_call = 0; ++ OM_uint32 lifetime, now, major, minor; ++ int equal; ++ gss_cred_usage_t usage = GSS_C_INITIATE; ++ ++ now = time(NULL); ++ ++ if (ctxt) { ++ debug("Rekey has happened - updating saved versions"); ++ ++ if (saved_name != GSS_C_NO_NAME) ++ gss_release_name(&minor, &saved_name); ++ ++ major = gss_inquire_cred(&minor, GSS_C_NO_CREDENTIAL, ++ &saved_name, &saved_lifetime, NULL, NULL); ++ ++ if (!GSS_ERROR(major)) { ++ saved_mech = ctxt->oid; ++ saved_lifetime+= now; ++ } else { ++ /* Handle the error */ ++ } ++ return 0; ++ } ++ ++ if (now - last_call < 10) ++ return 0; ++ ++ last_call = now; ++ ++ if (saved_mech == GSS_C_NO_OID) ++ return 0; ++ ++ major = gss_inquire_cred(&minor, GSS_C_NO_CREDENTIAL, ++ &name, &lifetime, NULL, NULL); ++ if (major == GSS_S_CREDENTIALS_EXPIRED) ++ return 0; ++ else if (GSS_ERROR(major)) ++ return 0; ++ ++ major = gss_compare_name(&minor, saved_name, name, &equal); ++ gss_release_name(&minor, &name); ++ if (GSS_ERROR(major)) ++ return 0; ++ ++ if (equal && (saved_lifetime < lifetime + now - 10)) ++ return 1; ++ ++ return 0; + } + + #endif /* GSSAPI */ +Index: gss-serv-krb5.c +=================================================================== +RCS file: /cvs/openssh/gss-serv-krb5.c,v +retrieving revision 1.17 +diff -u -r1.17 gss-serv-krb5.c +--- ./gss-serv-krb5.c 1 Sep 2006 05:38:36 -0000 1.17 ++++ ./gss-serv-krb5.c 26 Jul 2009 12:22:01 -0000 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-serv-krb5.c,v 1.7 2006/08/03 03:34:42 deraadt Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2007 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -120,6 +120,7 @@ + krb5_principal princ; + OM_uint32 maj_status, min_status; + int len; ++ const char *new_ccname; + + if (client->creds == NULL) { + debug("No credentials stored"); +@@ -168,11 +169,16 @@ + return; + } + +- client->store.filename = xstrdup(krb5_cc_get_name(krb_context, ccache)); ++ new_ccname = krb5_cc_get_name(krb_context, ccache); ++ + client->store.envvar = "KRB5CCNAME"; +- len = strlen(client->store.filename) + 6; +- client->store.envval = xmalloc(len); +- snprintf(client->store.envval, len, "FILE:%s", client->store.filename); ++#ifdef USE_CCAPI ++ xasprintf(&client->store.envval, "API:%s", new_ccname); ++ client->store.filename = NULL; ++#else ++ xasprintf(&client->store.envval, "FILE:%s", new_ccname); ++ client->store.filename = xstrdup(new_ccname); ++#endif + + #ifdef USE_PAM + if (options.use_pam) +@@ -184,6 +190,71 @@ + return; + } + ++int ++ssh_gssapi_krb5_updatecreds(ssh_gssapi_ccache *store, ++ ssh_gssapi_client *client) ++{ ++ krb5_ccache ccache = NULL; ++ krb5_principal principal = NULL; ++ char *name = NULL; ++ krb5_error_code problem; ++ OM_uint32 maj_status, min_status; ++ ++ if ((problem = krb5_cc_resolve(krb_context, store->envval, &ccache))) { ++ logit("krb5_cc_resolve(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ return 0; ++ } ++ ++ /* Find out who the principal in this cache is */ ++ if ((problem = krb5_cc_get_principal(krb_context, ccache, ++ &principal))) { ++ logit("krb5_cc_get_principal(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ if ((problem = krb5_unparse_name(krb_context, principal, &name))) { ++ logit("krb5_unparse_name(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ ++ if (strcmp(name,client->exportedname.value)!=0) { ++ debug("Name in local credentials cache differs. Not storing"); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ krb5_free_unparsed_name(krb_context, name); ++ return 0; ++ } ++ krb5_free_unparsed_name(krb_context, name); ++ ++ /* Name matches, so lets get on with it! */ ++ ++ if ((problem = krb5_cc_initialize(krb_context, ccache, principal))) { ++ logit("krb5_cc_initialize(): %.100s", ++ krb5_get_err_text(krb_context, problem)); ++ krb5_free_principal(krb_context, principal); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ krb5_free_principal(krb_context, principal); ++ ++ if ((maj_status = gss_krb5_copy_ccache(&min_status, client->creds, ++ ccache))) { ++ logit("gss_krb5_copy_ccache() failed. Sorry!"); ++ krb5_cc_close(krb_context, ccache); ++ return 0; ++ } ++ ++ return 1; ++} ++ + ssh_gssapi_mech gssapi_kerberos_mech = { + "toWM5Slw5Ew8Mqkay+al2g==", + "Kerberos", +@@ -191,7 +262,8 @@ + NULL, + &ssh_gssapi_krb5_userok, + NULL, +- &ssh_gssapi_krb5_storecreds ++ &ssh_gssapi_krb5_storecreds, ++ &ssh_gssapi_krb5_updatecreds + }; + + #endif /* KRB5 */ +Index: gss-serv.c +=================================================================== +RCS file: /cvs/openssh/gss-serv.c,v +retrieving revision 1.24 +diff -u -r1.24 gss-serv.c +--- ./gss-serv.c 19 May 2008 05:05:07 -0000 1.24 ++++ ./gss-serv.c 26 Jul 2009 12:22:01 -0000 +@@ -1,7 +1,7 @@ + /* $OpenBSD: gss-serv.c,v 1.22 2008/05/08 12:02:23 djm Exp $ */ + + /* +- * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. ++ * Copyright (c) 2001-2009 Simon Wilkinson. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -45,15 +45,20 @@ + #include "channels.h" + #include "session.h" + #include "misc.h" ++#include "servconf.h" ++#include "uidswap.h" + + #include "ssh-gss.h" ++#include "monitor_wrap.h" ++ ++extern ServerOptions options; + + static ssh_gssapi_client gssapi_client = + { GSS_C_EMPTY_BUFFER, GSS_C_EMPTY_BUFFER, +- GSS_C_NO_CREDENTIAL, NULL, {NULL, NULL, NULL}}; ++ GSS_C_NO_CREDENTIAL, GSS_C_NO_NAME, NULL, {NULL, NULL, NULL}, 0, 0}; + + ssh_gssapi_mech gssapi_null_mech = +- { NULL, NULL, {0, NULL}, NULL, NULL, NULL, NULL}; ++ { NULL, NULL, {0, NULL}, NULL, NULL, NULL, NULL, NULL}; + + #ifdef KRB5 + extern ssh_gssapi_mech gssapi_kerberos_mech; +@@ -81,25 +86,32 @@ + char lname[MAXHOSTNAMELEN]; + gss_OID_set oidset; + +- gss_create_empty_oid_set(&status, &oidset); +- gss_add_oid_set_member(&status, ctx->oid, &oidset); ++ if (options.gss_strict_acceptor) { ++ gss_create_empty_oid_set(&status, &oidset); ++ gss_add_oid_set_member(&status, ctx->oid, &oidset); ++ ++ if (gethostname(lname, MAXHOSTNAMELEN)) { ++ gss_release_oid_set(&status, &oidset); ++ return (-1); ++ } + +- if (gethostname(lname, MAXHOSTNAMELEN)) { +- gss_release_oid_set(&status, &oidset); +- return (-1); +- } ++ if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { ++ gss_release_oid_set(&status, &oidset); ++ return (ctx->major); ++ } ++ ++ if ((ctx->major = gss_acquire_cred(&ctx->minor, ++ ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, ++ NULL, NULL))) ++ ssh_gssapi_error(ctx); + +- if (GSS_ERROR(ssh_gssapi_import_name(ctx, lname))) { + gss_release_oid_set(&status, &oidset); + return (ctx->major); ++ } else { ++ ctx->name = GSS_C_NO_NAME; ++ ctx->creds = GSS_C_NO_CREDENTIAL; + } +- +- if ((ctx->major = gss_acquire_cred(&ctx->minor, +- ctx->name, 0, oidset, GSS_C_ACCEPT, &ctx->creds, NULL, NULL))) +- ssh_gssapi_error(ctx); +- +- gss_release_oid_set(&status, &oidset); +- return (ctx->major); ++ return GSS_S_COMPLETE; + } + + /* Privileged */ +@@ -114,6 +126,29 @@ + } + + /* Unprivileged */ ++char * ++ssh_gssapi_server_mechanisms() { ++ gss_OID_set supported; ++ ++ ssh_gssapi_supported_oids(&supported); ++ return (ssh_gssapi_kex_mechs(supported, &ssh_gssapi_server_check_mech, ++ NULL, NULL)); ++} ++ ++/* Unprivileged */ ++int ++ssh_gssapi_server_check_mech(Gssctxt **dum, gss_OID oid, const char *data, ++ const char *dummy) { ++ Gssctxt *ctx = NULL; ++ int res; ++ ++ res = !GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctx, oid))); ++ ssh_gssapi_delete_ctx(&ctx); ++ ++ return (res); ++} ++ ++/* Unprivileged */ + void @@ Diff output truncated at 100000 characters. @@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Fri Oct 9 22:19:05 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Fri, 09 Oct 2009 20:19:05 +0000 Subject: [csw-devel] SF.net SVN: gar:[6812] csw/mgar/pkg/lftp/trunk Message-ID: Revision: 6812 http://gar.svn.sourceforge.net/gar/?rev=6812&view=rev Author: chninkel Date: 2009-10-09 20:19:04 +0000 (Fri, 09 Oct 2009) Log Message: ----------- lftp: updated to 4.0.2 Modified Paths: -------------- csw/mgar/pkg/lftp/trunk/Makefile csw/mgar/pkg/lftp/trunk/checksums csw/mgar/pkg/lftp/trunk/files/changelog.CSW Modified: csw/mgar/pkg/lftp/trunk/Makefile =================================================================== --- csw/mgar/pkg/lftp/trunk/Makefile 2009-10-09 19:56:00 UTC (rev 6811) +++ csw/mgar/pkg/lftp/trunk/Makefile 2009-10-09 20:19:04 UTC (rev 6812) @@ -13,7 +13,7 @@ ###### Package information ####### GARNAME = lftp -GARVERSION = 3.7.15 +GARVERSION = 4.0.2 CATEGORIES = net DESCRIPTION = sophisticated command-line ftp/http client Modified: csw/mgar/pkg/lftp/trunk/checksums =================================================================== --- csw/mgar/pkg/lftp/trunk/checksums 2009-10-09 19:56:00 UTC (rev 6811) +++ csw/mgar/pkg/lftp/trunk/checksums 2009-10-09 20:19:04 UTC (rev 6812) @@ -1,3 +1,3 @@ 5bc881a13c106b1c97f2137ff1755817 download/CSWlftp.prototype -ce93239e79f5c12f5087218c9f34eb66 download/changelog.CSW -6c43ffdb59234ff0533cfdda0c3c305c download/lftp-3.7.15.tar.gz +76c476fab0a20ce50008affff55e4398 download/changelog.CSW +664fd567bb49e1e4dea1ba37430a8449 download/lftp-4.0.2.tar.gz Modified: csw/mgar/pkg/lftp/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-09 19:56:00 UTC (rev 6811) +++ csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-09 20:19:04 UTC (rev 6812) @@ -1,3 +1,9 @@ +lftp (4.0.2,REV=2009.10.09) unstable + + * New upstream release. + + -- Yann Rouillard Fri, 09 Oct 2009 21:45:36 +0200 + lftp (3.7.15,REV=2009.07.25) unstable * New upstream release. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 00:21:41 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Fri, 09 Oct 2009 22:21:41 +0000 Subject: [csw-devel] SF.net SVN: gar:[6813] csw/mgar/pkg/lftp/trunk Message-ID: Revision: 6813 http://gar.svn.sourceforge.net/gar/?rev=6813&view=rev Author: chninkel Date: 2009-10-09 22:21:41 +0000 (Fri, 09 Oct 2009) Log Message: ----------- lftp: updated changelog Modified Paths: -------------- csw/mgar/pkg/lftp/trunk/checksums csw/mgar/pkg/lftp/trunk/files/changelog.CSW Modified: csw/mgar/pkg/lftp/trunk/checksums =================================================================== --- csw/mgar/pkg/lftp/trunk/checksums 2009-10-09 20:19:04 UTC (rev 6812) +++ csw/mgar/pkg/lftp/trunk/checksums 2009-10-09 22:21:41 UTC (rev 6813) @@ -1,3 +1,3 @@ -5bc881a13c106b1c97f2137ff1755817 download/CSWlftp.prototype -76c476fab0a20ce50008affff55e4398 download/changelog.CSW -664fd567bb49e1e4dea1ba37430a8449 download/lftp-4.0.2.tar.gz +5bc881a13c106b1c97f2137ff1755817 CSWlftp.prototype +7b1750a903f92e01de5978606e4c69aa changelog.CSW +664fd567bb49e1e4dea1ba37430a8449 lftp-4.0.2.tar.gz Modified: csw/mgar/pkg/lftp/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-09 20:19:04 UTC (rev 6812) +++ csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-09 22:21:41 UTC (rev 6813) @@ -1,4 +1,4 @@ -lftp (4.0.2,REV=2009.10.09) unstable +lftp (4.0.2,REV=2009.10.10) unstable * New upstream release. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sat Oct 10 05:06:54 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sat, 10 Oct 2009 03:06:54 +0000 Subject: [csw-devel] SF.net SVN: gar:[6814] csw/mgar/pkg Message-ID: Revision: 6814 http://gar.svn.sourceforge.net/gar/?rev=6814&view=rev Author: bdwalton Date: 2009-10-10 03:06:54 +0000 (Sat, 10 Oct 2009) Log Message: ----------- cswpkglogger: initial commit of hooks to syslog package actions Added Paths: ----------- csw/mgar/pkg/cswpkglogger/ csw/mgar/pkg/cswpkglogger/branches/ csw/mgar/pkg/cswpkglogger/tags/ csw/mgar/pkg/cswpkglogger/trunk/ csw/mgar/pkg/cswpkglogger/trunk/Makefile csw/mgar/pkg/cswpkglogger/trunk/checksums csw/mgar/pkg/cswpkglogger/trunk/files/ csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-postupgrade csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-preupgrade Property changes on: csw/mgar/pkg/cswpkglogger/trunk ___________________________________________________________________ Added: svn:ignore + cookies download work Added: svn:externals + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Added: csw/mgar/pkg/cswpkglogger/trunk/Makefile =================================================================== --- csw/mgar/pkg/cswpkglogger/trunk/Makefile (rev 0) +++ csw/mgar/pkg/cswpkglogger/trunk/Makefile 2009-10-10 03:06:54 UTC (rev 6814) @@ -0,0 +1,34 @@ +GARNAME = cswpkglogger +GARVERSION = 1.0 +CATEGORIES = utils + +DESCRIPTION = Hook scripts to log package maintenance actions +define BLURB +This set of hook scripts will log package maintenance actions to syslog. +It is dependent on the use of a CSW package tool that is 'hook aware.' +endef + +MASTER_SITES = +DISTFILES = + +ARCHALL = 1 + +CONFIGURE_SCRIPTS = +BUILD_SCRIPTS = +TEST_SCRIPTS = +INSTALL_SCRIPTS = custom + +include gar/category.mk + +HOOKDIR=$(DESTDIR)/etc/opt/csw/pkg-hooks +POSTHOOKS = postinstall postupgrade postremove +PREHOOKS = preupgrade +HOOKS = $(PREHOOKS) $(POSTHOOKS) + +install-custom: + @echo Installing CSWcswpkglogger files... + @( ginstall -m 0755 -d $(HOOKDIR) $(addprefix $(HOOKDIR)/,$(addsuffix .d,$(HOOKS))); \ + ginstall -m 0755 $(FILEDIR)/01-CSWcswpkglogger-postupgrade $(HOOKDIR)/postupgrade.d/; \ + ln $(HOOKDIR)/postupgrade.d/01-CSWcswpkglogger-postupgrade $(HOOKDIR)/postinstall.d/01-CSWcswpkglogger-postinstall; \ + ln $(HOOKDIR)/postupgrade.d/01-CSWcswpkglogger-postupgrade $(HOOKDIR)/postremove.d/01-CSWcswpkglogger-postremove; \ + ginstall -m 0755 $(FILEDIR)/01-CSWcswpkglogger-preupgrade $(HOOKDIR)/preupgrade.d/;) Added: csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-postupgrade =================================================================== --- csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-postupgrade (rev 0) +++ csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-postupgrade 2009-10-10 03:06:54 UTC (rev 6814) @@ -0,0 +1,62 @@ +#!/opt/csw/bin/bash + +script=$0 + +set -- ${1/-/ } +PKG=$1 +VER=$2 + +function logdie() { + logger -t "CSW Package Logger" "$1" + exit 0 +} + +function success() { + case ${script} in + *install) MSG="installed ${PKG} ${VER}";; + *upgrade) MSG="upgraded ${PKG} to ${VER} (from: $1)";; + *remove) MSG="removed ${PKG} ${VER}";; + esac + + logdie "${MSG}" +} + +function failure() { + case ${script} in + *install) MSG="Failed to install ${PKG} ${VER}";; + *upgrade) MSG="Failed to upgrade ${PKG} ${VER} (current: $1)";; + *remove) MSG="Failed to remove ${PKG} ${VER}";; + esac + + logdie "${MSG}" +} + +if [ -d /var/sadm/pkg/${PKG} ]; then + SYSTEMVER=$(pkgparam ${PKG} VERSION 2>/dev/null) + pf=/var/opt/csw/pkg-hooks/CSWpkglogger.upgrade.${PKG} + if [ -f ${pf} ]; then + PREVVER=$(cat ${pf} 2>/dev/null) + rm -f ${pf} + fi + + case ${script} in + *remove) + failure + ;; + *install|*upgrade) + case "${VER}" in + ${SYSTEMVER}) success ${PREVVER};; + *) failure ${SYSTEMVER};; + esac + ;; + esac +else + case ${script} in + *remove) + success + ;; + *install|*upgrade) + failure + ;; + esac +fi Property changes on: csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-postupgrade ___________________________________________________________________ Added: svn:executable + * Added: csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-preupgrade =================================================================== --- csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-preupgrade (rev 0) +++ csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-preupgrade 2009-10-10 03:06:54 UTC (rev 6814) @@ -0,0 +1,11 @@ +#!/opt/csw/bin/bash + +set -- ${1/-/ } + +PKG=$1 +VER=$2 + +SYSTEMVER=$(pkgparam ${PKG} VERSION) + +# store previous version so we can log smarter things if upgrade fails. +echo ${SYSTEMVER} > /var/opt/csw/pkg-hooks/CSWpkglogger.upgrade.${PKG} Property changes on: csw/mgar/pkg/cswpkglogger/trunk/files/01-CSWcswpkglogger-preupgrade ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 21:18:23 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 19:18:23 +0000 Subject: [csw-devel] SF.net SVN: gar:[6815] csw/mgar/pkg/openssh/trunk Message-ID: Revision: 6815 http://gar.svn.sourceforge.net/gar/?rev=6815&view=rev Author: chninkel Date: 2009-10-10 19:18:23 +0000 (Sat, 10 Oct 2009) Log Message: ----------- openssh: now uses platforms feature Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile csw/mgar/pkg/openssh/trunk/checksums csw/mgar/pkg/openssh/trunk/files/changelog.CSW Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2009-10-10 03:06:54 UTC (rev 6814) +++ csw/mgar/pkg/openssh/trunk/Makefile 2009-10-10 19:18:23 UTC (rev 6815) @@ -44,6 +44,7 @@ REQUIRED_PKGS_CSWosshclient = CSWosslrt CSWzlib CSWkrb5lib SPKG_CLASSES_CSWosshclient = none cswpreserveconf +PACKAGING_PLATFORMS = solaris8-sparc solaris8-i386 solaris10-sparc solaris10-i386 ###### Upstream and OpenCSW files information ####### Modified: csw/mgar/pkg/openssh/trunk/checksums =================================================================== --- csw/mgar/pkg/openssh/trunk/checksums 2009-10-10 03:06:54 UTC (rev 6814) +++ csw/mgar/pkg/openssh/trunk/checksums 2009-10-10 19:18:23 UTC (rev 6815) @@ -5,7 +5,7 @@ 1d3d6d477c09e59c514e637fa3a2f7a4 CSWosshlpk.checkinstall 0993813fa5c752215f892cb67c86816f CSWosshlpk.preinstall 22ffa2a9b7bf310d58d3b299805a41b1 CSWosshlpk.prototype -413f3c282c526894bbecc9dbdd6f2973 changelog.CSW +385098d42f4454b7928e0273ee32c00c changelog.CSW 9153031524651a18e7edaed4637aa769 contrib-openssh-lpk-5.2p1-0.3.9.patch a5ebb2e3fdaa06c3c9edba55aac5f83b cswopenssh 8e765642349b6321d01b33e95304e113 cswopenssh.xml Modified: csw/mgar/pkg/openssh/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-10 03:06:54 UTC (rev 6814) +++ csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-10 19:18:23 UTC (rev 6815) @@ -1,8 +1,8 @@ -openssh (5.3,REV=2009.10.09_rev=p1) unstable +openssh (5.3,REV=2009.10.10_rev=p1) unstable * New upstream release. - -- Yann Rouillard Fri, 09 Oct 2009 21:47:46 +0200 + -- Yann Rouillard Fri, 10 Oct 2009 21:47:46 +0200 openssh (5.2,REV=2009.07.25_rev=p1) unstable This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 22:30:37 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 20:30:37 +0000 Subject: [csw-devel] SF.net SVN: gar:[6816] csw/mgar/pkg/rlwrap/trunk Message-ID: Revision: 6816 http://gar.svn.sourceforge.net/gar/?rev=6816&view=rev Author: chninkel Date: 2009-10-10 20:30:37 +0000 (Sat, 10 Oct 2009) Log Message: ----------- rlwrap: updated to 0.32 and switched to gar v2 Modified Paths: -------------- csw/mgar/pkg/rlwrap/trunk/Makefile csw/mgar/pkg/rlwrap/trunk/checksums csw/mgar/pkg/rlwrap/trunk/files/changelog.CSW Removed Paths: ------------- csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.depend csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.gspec csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.prototype Property Changed: ---------------- csw/mgar/pkg/rlwrap/trunk/ Property changes on: csw/mgar/pkg/rlwrap/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v1 + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Modified: csw/mgar/pkg/rlwrap/trunk/Makefile =================================================================== --- csw/mgar/pkg/rlwrap/trunk/Makefile 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/Makefile 2009-10-10 20:30:37 UTC (rev 6816) @@ -1,5 +1,19 @@ +##################################################################### +# OpenCSW build recipe for rlwrap +# +# Copyright 2009 Yann Rouillard +# All rights reserved. Use is subject to license terms. +# +# Redistribution and/or use, with or without modification, is +# permitted. This software is without warranty of any kind. The +# author(s) shall not be liable in the event that use of the +# software causes damage. +##################################################################### + +###### Package information ####### + GARNAME = rlwrap -GARVERSION = 0.30 +GARVERSION = 0.32 CATEGORIES = utils DESCRIPTION = A readline wrapper @@ -7,18 +21,25 @@ rlwrap is a readline wrapper, a small utility that uses the GNU readline library to allow the editing of keyboard input for any other command. It maintains a separate input history for each command, and can TAB-expand words using all previously seen words and/or a user-specified file. endef +PACKAGES = rlwrap + +REQUIRED_PKGS = CSWreadline + +###### Upstream and opencsw files information ####### + MASTER_SITES = http://utopia.knoware.nl/~hlub/uck/rlwrap/ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz -DISTFILES += $(call admfiles,CSWrlwrap,depend prototype) DISTFILES += changelog.CSW # replace setenv with putenv #PATCHFILES += putenv.patch +##### Build and installation information ##### + CONFIGURE_ARGS = $(DIRPATHS) include gar/category.mk @@ -27,8 +48,9 @@ pre-configure: cd $(WORKSRC) && autoconf -post-install: - @ginstall -D $(WORKDIR)/changelog.CSW $(DESTDIR)$(docdir)/$(GARNAME)/changelog.CSW +post-merge: + @ginstall -D $(WORKDIR_FIRSTMOD)/changelog.CSW $(PKGROOT)$(docdir)/$(GARNAME)/changelog.CSW @( for FILE in AUTHORS BUGS INSTALL NEWS README TODO; do \ - ginstall -D $(WORKSRC)/$$FILE $(DESTDIR)$(docdir)/$(GARNAME)/`basename $$FILE`; \ + ginstall -D $(WORKSRC_FIRSTMOD)/$$FILE $(PKGROOT)$(docdir)/$(GARNAME)/`basename $$FILE`; \ done ) + Modified: csw/mgar/pkg/rlwrap/trunk/checksums =================================================================== --- csw/mgar/pkg/rlwrap/trunk/checksums 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/checksums 2009-10-10 20:30:37 UTC (rev 6816) @@ -1,5 +1,5 @@ -03d8bd4996945ea32d3c7d5dc38c956e download/rlwrap-0.30.tar.gz -e699f8a2167f07465cfe891bba7a1bc7 download/CSWrlwrap.gspec -1c940e58cea90e9fd91c3286d5f2a31e download/CSWrlwrap.depend -64db02a1daa57c76f7bf1e501d5cee17 download/CSWrlwrap.prototype -dc4068d113864632f4bda60e219c0908 download/changelog.CSW +1c940e58cea90e9fd91c3286d5f2a31e CSWrlwrap.depend +e699f8a2167f07465cfe891bba7a1bc7 CSWrlwrap.gspec +64db02a1daa57c76f7bf1e501d5cee17 CSWrlwrap.prototype +913fd14e3f46b7bc09c56a3325424123 changelog.CSW +441282a9a65c1d516c1c9a6821184539 rlwrap-0.32.tar.gz Deleted: csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.depend =================================================================== --- csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.depend 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.depend 2009-10-10 20:30:37 UTC (rev 6816) @@ -1 +0,0 @@ -P CSWreadline readline - library to enable interactive line editing Deleted: csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.gspec =================================================================== --- csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.gspec 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.gspec 2009-10-10 20:30:37 UTC (rev 6816) @@ -1,4 +0,0 @@ -%var bitname rlwrap -%var pkgname CSWrlwrap -%include url file://%{PKGLIB}/csw_dyndepend.gspec -%copyright url file://%{WORKSRC}/COPYING Deleted: csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.prototype =================================================================== --- csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.prototype 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/files/CSWrlwrap.prototype 2009-10-10 20:30:37 UTC (rev 6816) @@ -1,28 +0,0 @@ -f none /opt/csw/bin/rlwrap 0755 root bin -f none /opt/csw/share/doc/rlwrap/changelog.CSW 0644 root bin -f none /opt/csw/share/doc/rlwrap/AUTHORS 0644 root bin -f none /opt/csw/share/doc/rlwrap/BUGS 0644 root bin -f none /opt/csw/share/doc/rlwrap/INSTALL 0644 root bin -f none /opt/csw/share/doc/rlwrap/NEWS 0644 root bin -f none /opt/csw/share/doc/rlwrap/README 0644 root bin -f none /opt/csw/share/doc/rlwrap/TODO 0644 root bin -d none /opt/csw/share/locale 0755 root bin -d none /opt/csw/share/locale/en at boldquot 0755 root bin -d none /opt/csw/share/locale/en at boldquot/LC_MESSAGES 0755 root bin -d none /opt/csw/share/locale/en at quot 0755 root bin -d none /opt/csw/share/locale/en at quot/LC_MESSAGES 0755 root bin -d none /opt/csw/share/locale/es 0755 root bin -d none /opt/csw/share/locale/es/LC_MESSAGES 0755 root bin -d none /opt/csw/share/locale/it 0755 root bin -d none /opt/csw/share/locale/it/LC_MESSAGES 0755 root bin -d none /opt/csw/share/locale/ru 0755 root bin -d none /opt/csw/share/locale/ru/LC_MESSAGES 0755 root bin -d none /opt/csw/share/man/man1 0755 root bin -f none /opt/csw/share/man/man1/rlwrap.1 0644 root bin -d none /opt/csw/share/rlwrap 0755 root bin -f none /opt/csw/share/rlwrap/coqtop 0644 root bin -f none /opt/csw/share/rlwrap/ftp 0644 root bin -f none /opt/csw/share/rlwrap/testclient 0644 root bin -i copyright=CSWrlwrap.copyright -i depend=CSWrlwrap.depend -i pkginfo=CSWrlwrap.pkginfo Modified: csw/mgar/pkg/rlwrap/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/rlwrap/trunk/files/changelog.CSW 2009-10-10 19:18:23 UTC (rev 6815) +++ csw/mgar/pkg/rlwrap/trunk/files/changelog.CSW 2009-10-10 20:30:37 UTC (rev 6816) @@ -1,3 +1,9 @@ +rlwrap (0.32,REV=2009.10.09) unstable + + * New upstream release. + + -- Yann Rouillard Fri, 09 Oct 2009 22:10:54 +0200 + rlwrap (0.30,REV=2008.01.21) unstable * New upstream release. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 22:41:59 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 20:41:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6817] csw/mgar/pkg/openssh/trunk Message-ID: Revision: 6817 http://gar.svn.sourceforge.net/gar/?rev=6817&view=rev Author: chninkel Date: 2009-10-10 20:41:59 +0000 (Sat, 10 Oct 2009) Log Message: ----------- openssh: PrintMotd value is now no in the default config file Modified Paths: -------------- csw/mgar/pkg/openssh/trunk/Makefile csw/mgar/pkg/openssh/trunk/checksums csw/mgar/pkg/openssh/trunk/files/changelog.CSW Modified: csw/mgar/pkg/openssh/trunk/Makefile =================================================================== --- csw/mgar/pkg/openssh/trunk/Makefile 2009-10-10 20:30:37 UTC (rev 6816) +++ csw/mgar/pkg/openssh/trunk/Makefile 2009-10-10 20:41:59 UTC (rev 6817) @@ -151,6 +151,7 @@ sed -e 's,/etc/ssh/,/opt/csw/etc/ssh/,g' \ -e 's,/usr/libexec/,/opt/csw/libexec/,g' \ -e 's,^ *# *UsePAM *.*,UsePAM yes,g' \ + -e 's,^ *# *PrintMotd *.*,PrintMotd no,g' \ -e 's,^ *# *X11Forwarding *.*,X11Forwarding yes,g' "$(PKGROOT)/$(sysconfdir)/ssh/sshd_config" > "$(PKGROOT)/$(sysconfdir)/ssh/sshd_config.CSW @$(MAKECOOKIE) Modified: csw/mgar/pkg/openssh/trunk/checksums =================================================================== --- csw/mgar/pkg/openssh/trunk/checksums 2009-10-10 20:30:37 UTC (rev 6816) +++ csw/mgar/pkg/openssh/trunk/checksums 2009-10-10 20:41:59 UTC (rev 6817) @@ -5,7 +5,7 @@ 1d3d6d477c09e59c514e637fa3a2f7a4 CSWosshlpk.checkinstall 0993813fa5c752215f892cb67c86816f CSWosshlpk.preinstall 22ffa2a9b7bf310d58d3b299805a41b1 CSWosshlpk.prototype -385098d42f4454b7928e0273ee32c00c changelog.CSW +d9eea5c8d787a514827e94d80e4f5574 changelog.CSW 9153031524651a18e7edaed4637aa769 contrib-openssh-lpk-5.2p1-0.3.9.patch a5ebb2e3fdaa06c3c9edba55aac5f83b cswopenssh 8e765642349b6321d01b33e95304e113 cswopenssh.xml Modified: csw/mgar/pkg/openssh/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-10 20:30:37 UTC (rev 6816) +++ csw/mgar/pkg/openssh/trunk/files/changelog.CSW 2009-10-10 20:41:59 UTC (rev 6817) @@ -1,6 +1,8 @@ openssh (5.3,REV=2009.10.10_rev=p1) unstable * New upstream release. + * PrintMotd is now no in the default config file to avoid a double login + banner (Closes: #3829) -- Yann Rouillard Fri, 10 Oct 2009 21:47:46 +0200 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 22:42:36 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 20:42:36 +0000 Subject: [csw-devel] SF.net SVN: gar:[6818] csw/mgar/pkg/bash_completion/trunk Message-ID: Revision: 6818 http://gar.svn.sourceforge.net/gar/?rev=6818&view=rev Author: chninkel Date: 2009-10-10 20:42:36 +0000 (Sat, 10 Oct 2009) Log Message: ----------- bash_completion: updated to 1.1 Modified Paths: -------------- csw/mgar/pkg/bash_completion/trunk/Makefile csw/mgar/pkg/bash_completion/trunk/checksums csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW Modified: csw/mgar/pkg/bash_completion/trunk/Makefile =================================================================== --- csw/mgar/pkg/bash_completion/trunk/Makefile 2009-10-10 20:41:59 UTC (rev 6817) +++ csw/mgar/pkg/bash_completion/trunk/Makefile 2009-10-10 20:42:36 UTC (rev 6818) @@ -13,7 +13,7 @@ ###### Package information ####### GARNAME = bash_completion -GARVERSION = 1.0 +GARVERSION = 1.1 CATEGORIES = xtra DESCRIPTION = Programmable completion for bash Modified: csw/mgar/pkg/bash_completion/trunk/checksums =================================================================== --- csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 20:41:59 UTC (rev 6817) +++ csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 20:42:36 UTC (rev 6818) @@ -1,8 +1,8 @@ -cd1c5648272917fbe0eef4ba30bb93f4 download/bash-completion-1.0.tar.gz -5bc234f6060561c564a20d2a9cc552c1 download/pkg-get.completion -af7a63477c6e81ed5b08f195e153091e download/pkgadd.completion -1389a7771e34fc54fe993d442cce1524 download/pkgrm.completion -f922762210a6f208695c328c040ac90d download/pkgutil.completion -52bd6948f5cc1548c3791a969da0e5e2 download/smf.completion -a413f5d9346c32ef22093b55956bd268 download/changelog.CSW -d0c0d867babf351bca9ee97e03be550d download/opencsw_paths.patch +593d3edcf287b9e9d735049bd4d3f229 bash-completion-1.1.tar.gz +d7870800fc6e52484cc8faf32865e2cc changelog.CSW +d0c0d867babf351bca9ee97e03be550d opencsw_paths.patch +5bc234f6060561c564a20d2a9cc552c1 pkg-get.completion +af7a63477c6e81ed5b08f195e153091e pkgadd.completion +1389a7771e34fc54fe993d442cce1524 pkgrm.completion +f922762210a6f208695c328c040ac90d pkgutil.completion +52bd6948f5cc1548c3791a969da0e5e2 smf.completion Modified: csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW 2009-10-10 20:41:59 UTC (rev 6817) +++ csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW 2009-10-10 20:42:36 UTC (rev 6818) @@ -1,3 +1,9 @@ +bash_completion (1.1,REV=2009.10.10) + + * New upstream version. + + -- Yann Rouillard Sat, 10 Oct 2009 22:34:13 +0200 + bash_completion (1.0,REV=2009.04.07) * New upstream version. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 23:34:12 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 21:34:12 +0000 Subject: [csw-devel] SF.net SVN: gar:[6819] csw/mgar/pkg/bash_completion/trunk Message-ID: Revision: 6819 http://gar.svn.sourceforge.net/gar/?rev=6819&view=rev Author: chninkel Date: 2009-10-10 21:34:11 +0000 (Sat, 10 Oct 2009) Log Message: ----------- bash_completion: updated opencsw paths patch Modified Paths: -------------- csw/mgar/pkg/bash_completion/trunk/checksums csw/mgar/pkg/bash_completion/trunk/files/opencsw_paths.patch Modified: csw/mgar/pkg/bash_completion/trunk/checksums =================================================================== --- csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 20:42:36 UTC (rev 6818) +++ csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 21:34:11 UTC (rev 6819) @@ -1,6 +1,6 @@ 593d3edcf287b9e9d735049bd4d3f229 bash-completion-1.1.tar.gz d7870800fc6e52484cc8faf32865e2cc changelog.CSW -d0c0d867babf351bca9ee97e03be550d opencsw_paths.patch +4c7dc3d0486ba84c5c0bbb57ee5ac420 opencsw_paths.patch 5bc234f6060561c564a20d2a9cc552c1 pkg-get.completion af7a63477c6e81ed5b08f195e153091e pkgadd.completion 1389a7771e34fc54fe993d442cce1524 pkgrm.completion Modified: csw/mgar/pkg/bash_completion/trunk/files/opencsw_paths.patch =================================================================== --- csw/mgar/pkg/bash_completion/trunk/files/opencsw_paths.patch 2009-10-10 20:42:36 UTC (rev 6818) +++ csw/mgar/pkg/bash_completion/trunk/files/opencsw_paths.patch 2009-10-10 21:34:11 UTC (rev 6819) @@ -1,6 +1,7 @@ ---- bash-completion-1.0/bash_completion 2009-04-02 22:01:39.000000000 +0200 -+++ bash-completion-1.0/bash_completion.new 2009-04-04 19:21:58.156466726 +0200 -@@ -42,8 +42,8 @@ +diff --speed-large-files --minimal -Nru bash-completion-1.1.orig/bash_completion bash-completion-1.1/bash_completion +--- bash-completion-1.1.orig/bash_completion 2009-10-10 23:29:39.177572555 +0200 ++++ bash-completion-1.1/bash_completion 2009-10-10 23:29:13.520556369 +0200 +@@ -40,8 +40,8 @@ # Alter the following to reflect the location of this file. # @@ -8,38 +9,26 @@ -[ -n "$BASH_COMPLETION_DIR" ] || BASH_COMPLETION_DIR=/etc/bash_completion.d +[ -n "$BASH_COMPLETION" ] || BASH_COMPLETION=/opt/csw/etc/bash_completion +[ -n "$BASH_COMPLETION_DIR" ] || BASH_COMPLETION_DIR=/opt/csw/etc/bash_completion.d - readonly BASH_COMPLETION BASH_COMPLETION_DIR + [ -n "$BASH_COMPLETION_COMPAT_DIR" ] || BASH_COMPLETION_COMPAT_DIR=/etc/bash_completion.d + readonly BASH_COMPLETION BASH_COMPLETION_DIR BASH_COMPLETION_COMPAT_DIR - # Set a couple of useful vars -@@ -2657,6 +2657,8 @@ - [ -r "$configfile" ] && - config=( "${config[@]}" "$configfile" ) - else -+ [ -r /opt/csw/etc/ssh/ssh_config ] && -+ config=( "${config[@]}" "/opt/csw/etc/ssh/ssh_config" ) - [ -r /etc/ssh/ssh_config ] && - config=( "${config[@]}" "/etc/ssh/ssh_config" ) - [ -r "${HOME}/.ssh/config" ] && -@@ -2676,6 +2678,8 @@ - [ -r "$global_kh" ] && - kh=( "${kh[@]}" "$global_kh" ) - if [ -z "$configfile" ]; then -+ [ -r /opt/csw/etc/ssh/ssh_known_hosts ] && -+ kh=( "${kh[@]}" /opt/csw/etc/ssh/ssh_known_hosts ) - [ -r /etc/ssh/ssh_known_hosts ] && - kh=( "${kh[@]}" /etc/ssh/ssh_known_hosts ) - [ -r /etc/ssh/ssh_known_hosts2 ] && ---- bash-completion-1.0/bash_completion.sh 2009-04-02 22:01:42.000000000 +0200 -+++ bash-completion-1.0/bash_completion.sh.new 2009-04-04 19:22:33.430034421 +0200 -@@ -4,9 +4,9 @@ - # Check for recent enough version of bash. - bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.} - if [ $bmajor -eq 2 -a $bminor '>' 04 ] || [ $bmajor -gt 2 ]; then -- if [ -r /etc/bash_completion ]; then -+ if [ -r /opt/csw/etc/bash_completion ]; then - # Source completion code. -- . /etc/bash_completion -+ . /opt/csw/etc/bash_completion - fi - fi - unset bash bminor bmajor +@@ -1196,6 +1196,8 @@ + [ -r "$configfile" ] && + config=( "${config[@]}" "$configfile" ) + else ++ [ -r /opt/csw/etc/ssh/ssh_config ] && ++ config=( "${config[@]}" "/opt/csw/etc/ssh/ssh_config" ) + [ -r /etc/ssh/ssh_config ] && + config=( "${config[@]}" "/etc/ssh/ssh_config" ) + [ -r "${HOME}/.ssh/config" ] && +@@ -1223,6 +1225,10 @@ + [ -r "$global_kh" ] && + kh=( "${kh[@]}" "${global_kh[@]}" ) + if [ -z "$configfile" ]; then ++ [ -r /opt/csw/etc/ssh/ssh_known_hosts ] && ++ kh=( "${kh[@]}" /opt/csw/etc/ssh/ssh_known_hosts ) ++ [ -r /opt/csw/etc/ssh/ssh_known_hosts2 ] && ++ kh=( "${kh[@]}" /opt/csw/etc/ssh/ssh_known_hosts2 ) + [ -r /etc/ssh/ssh_known_hosts ] && + kh=( "${kh[@]}" /etc/ssh/ssh_known_hosts ) + [ -r /etc/ssh/ssh_known_hosts2 ] && This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 23:35:47 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 21:35:47 +0000 Subject: [csw-devel] SF.net SVN: gar:[6820] csw/mgar/pkg/elinks/trunk Message-ID: Revision: 6820 http://gar.svn.sourceforge.net/gar/?rev=6820&view=rev Author: chninkel Date: 2009-10-10 21:35:47 +0000 (Sat, 10 Oct 2009) Log Message: ----------- elinks: updated changelog Modified Paths: -------------- csw/mgar/pkg/elinks/trunk/checksums csw/mgar/pkg/elinks/trunk/files/changelog.CSW Modified: csw/mgar/pkg/elinks/trunk/checksums =================================================================== --- csw/mgar/pkg/elinks/trunk/checksums 2009-10-10 21:34:11 UTC (rev 6819) +++ csw/mgar/pkg/elinks/trunk/checksums 2009-10-10 21:35:47 UTC (rev 6820) @@ -1,4 +1,4 @@ -9998467007acbd4cb8e46db6e5a9b306 download/CSWelinks.prototype -dccc134301c3dfa95ca4748e9ca948a7 download/changelog.CSW -fcd087a6d2415cd4c6fd1db53dceb646 download/elinks-0.11.7.tar.bz2 -858331d6cc6c8459b2dba5e24f0c8cc3 download/elinks-417789.diff +9998467007acbd4cb8e46db6e5a9b306 CSWelinks.prototype +ff0d7959d92aea06116190bb6f03731b changelog.CSW +fcd087a6d2415cd4c6fd1db53dceb646 elinks-0.11.7.tar.bz2 +858331d6cc6c8459b2dba5e24f0c8cc3 elinks-417789.diff Modified: csw/mgar/pkg/elinks/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/elinks/trunk/files/changelog.CSW 2009-10-10 21:34:11 UTC (rev 6819) +++ csw/mgar/pkg/elinks/trunk/files/changelog.CSW 2009-10-10 21:35:47 UTC (rev 6820) @@ -1,8 +1,8 @@ -elinks (0.11.7,REV=2009.09.04) unstable +elinks (0.11.7,REV=2009.10.10) unstable * New upstream version. - -- Yann Rouillard Sun, 04 Sep 2009 10:38:39 +0100 + -- Yann Rouillard Sun, 10 Oct 2009 21:38:39 +0100 elinks (0.11.6,REV=2009.03.22) unstable This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sat Oct 10 23:38:33 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 21:38:33 +0000 Subject: [csw-devel] SF.net SVN: gar:[6821] csw/mgar/pkg/bash_completion/trunk/Makefile Message-ID: Revision: 6821 http://gar.svn.sourceforge.net/gar/?rev=6821&view=rev Author: chninkel Date: 2009-10-10 21:38:33 +0000 (Sat, 10 Oct 2009) Log Message: ----------- bash_completion: removed CHANGES file Modified Paths: -------------- csw/mgar/pkg/bash_completion/trunk/Makefile Modified: csw/mgar/pkg/bash_completion/trunk/Makefile =================================================================== --- csw/mgar/pkg/bash_completion/trunk/Makefile 2009-10-10 21:35:47 UTC (rev 6820) +++ csw/mgar/pkg/bash_completion/trunk/Makefile 2009-10-10 21:38:33 UTC (rev 6821) @@ -67,7 +67,7 @@ merge-additional-docs: - @( for FILE in AUTHORS README TODO CHANGES; do \ + @( for FILE in AUTHORS README TODO; do \ ginstall -D "$(WORKSRC_FIRSTMOD)/$$FILE" "$(PKGROOT)$(docdir)/$(GARNAME)/$$FILE"; \ done ) @$(MAKECOOKIE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 00:41:27 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 22:41:27 +0000 Subject: [csw-devel] SF.net SVN: gar:[6822] csw/mgar/pkg/bash_completion/trunk Message-ID: Revision: 6822 http://gar.svn.sourceforge.net/gar/?rev=6822&view=rev Author: chninkel Date: 2009-10-10 22:41:27 +0000 (Sat, 10 Oct 2009) Log Message: ----------- bash_completion: updated changelog Modified Paths: -------------- csw/mgar/pkg/bash_completion/trunk/checksums csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW Modified: csw/mgar/pkg/bash_completion/trunk/checksums =================================================================== --- csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 21:38:33 UTC (rev 6821) +++ csw/mgar/pkg/bash_completion/trunk/checksums 2009-10-10 22:41:27 UTC (rev 6822) @@ -1,5 +1,5 @@ 593d3edcf287b9e9d735049bd4d3f229 bash-completion-1.1.tar.gz -d7870800fc6e52484cc8faf32865e2cc changelog.CSW +075292057aa7dce8fb78dba076ee0832 changelog.CSW 4c7dc3d0486ba84c5c0bbb57ee5ac420 opencsw_paths.patch 5bc234f6060561c564a20d2a9cc552c1 pkg-get.completion af7a63477c6e81ed5b08f195e153091e pkgadd.completion Modified: csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW 2009-10-10 21:38:33 UTC (rev 6821) +++ csw/mgar/pkg/bash_completion/trunk/files/changelog.CSW 2009-10-10 22:41:27 UTC (rev 6822) @@ -1,8 +1,8 @@ -bash_completion (1.1,REV=2009.10.10) +bash_completion (1.1,REV=2009.10.11) * New upstream version. - -- Yann Rouillard Sat, 10 Oct 2009 22:34:13 +0200 + -- Yann Rouillard Sat, 11 Oct 2009 00:34:13 +0200 bash_completion (1.0,REV=2009.04.07) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 00:41:57 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 22:41:57 +0000 Subject: [csw-devel] SF.net SVN: gar:[6823] csw/mgar/pkg/lftp/trunk Message-ID: Revision: 6823 http://gar.svn.sourceforge.net/gar/?rev=6823&view=rev Author: chninkel Date: 2009-10-10 22:41:57 +0000 (Sat, 10 Oct 2009) Log Message: ----------- lftp: updated changelog Modified Paths: -------------- csw/mgar/pkg/lftp/trunk/checksums csw/mgar/pkg/lftp/trunk/files/changelog.CSW Modified: csw/mgar/pkg/lftp/trunk/checksums =================================================================== --- csw/mgar/pkg/lftp/trunk/checksums 2009-10-10 22:41:27 UTC (rev 6822) +++ csw/mgar/pkg/lftp/trunk/checksums 2009-10-10 22:41:57 UTC (rev 6823) @@ -1,3 +1,3 @@ 5bc881a13c106b1c97f2137ff1755817 CSWlftp.prototype -7b1750a903f92e01de5978606e4c69aa changelog.CSW +90cfdf4e9b3481ab053e46a4baf82845 changelog.CSW 664fd567bb49e1e4dea1ba37430a8449 lftp-4.0.2.tar.gz Modified: csw/mgar/pkg/lftp/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-10 22:41:27 UTC (rev 6822) +++ csw/mgar/pkg/lftp/trunk/files/changelog.CSW 2009-10-10 22:41:57 UTC (rev 6823) @@ -1,8 +1,8 @@ -lftp (4.0.2,REV=2009.10.10) unstable +lftp (4.0.2,REV=2009.10.11) unstable * New upstream release. - -- Yann Rouillard Fri, 09 Oct 2009 21:45:36 +0200 + -- Yann Rouillard Fri, 11 Oct 2009 00:45:36 +0200 lftp (3.7.15,REV=2009.07.25) unstable This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 00:42:59 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 22:42:59 +0000 Subject: [csw-devel] SF.net SVN: gar:[6824] csw/mgar/pkg/vsftpd/trunk Message-ID: Revision: 6824 http://gar.svn.sourceforge.net/gar/?rev=6824&view=rev Author: chninkel Date: 2009-10-10 22:42:59 +0000 (Sat, 10 Oct 2009) Log Message: ----------- vsftpd: removed no_rlimit_nproc patch Modified Paths: -------------- csw/mgar/pkg/vsftpd/trunk/Makefile csw/mgar/pkg/vsftpd/trunk/checksums csw/mgar/pkg/vsftpd/trunk/files/changelog.CSW Removed Paths: ------------- csw/mgar/pkg/vsftpd/trunk/files/no_rlimit_nproc.patch Modified: csw/mgar/pkg/vsftpd/trunk/Makefile =================================================================== --- csw/mgar/pkg/vsftpd/trunk/Makefile 2009-10-10 22:41:57 UTC (rev 6823) +++ csw/mgar/pkg/vsftpd/trunk/Makefile 2009-10-10 22:42:59 UTC (rev 6824) @@ -13,7 +13,7 @@ ###### Package information ####### GARNAME = vsftpd -GARVERSION = 2.1.2 +GARVERSION = 2.2.0 CATEGORIES = server DESCRIPTION = A very secure and fast FTP server. @@ -71,9 +71,6 @@ # vsftpd makfile PATCHFILES += destdir.patch -# solaris doesn't have RLIMIT_NPROC -PATCHFILES += no_rlimit_nproc.patch - # Documentation files DOCFILES = AUDIT BENCHMARKS BUGS COPYING COPYRIGHT Changelog FAQ INSTALL LICENSE REFS DOCFILES += REWARD SIZE SPEED TODO TUNING README README.ssl README.security Modified: csw/mgar/pkg/vsftpd/trunk/checksums =================================================================== --- csw/mgar/pkg/vsftpd/trunk/checksums 2009-10-10 22:41:57 UTC (rev 6823) +++ csw/mgar/pkg/vsftpd/trunk/checksums 2009-10-10 22:42:59 UTC (rev 6824) @@ -1,17 +1,16 @@ -a2f5b70fe49839b0463c9d90af0f11dd download/CSWvsftpd.preinstall -8944fcd302add66d5b2b287d390b9c91 download/CSWvsftpd.prototype -eeaf77528b2da0c7730323838f30b7ef download/README.CSW -281c51282cabd9475cceef363bbc699b download/build_options.patch -16b388b04478ebdc9ee7ebac6a03387d download/changelog.CSW -54c1c39c6bfa8747a4457f135fd5bca1 download/csw_build_system.patch -a9e994d2b57999b76a0e03503745c01a download/csw_paths.patch -98e1d831801985daf5ce2ed01fbc0efd download/cswusergroup -796d46089f9e9c25c897a34e0dcfadc8 download/cswvsftpd -93173edf9931b8eb835c6d0177a7c6bd download/cswvsftpd.xml -73e59f9ada47d3d20199f7c97849fb13 download/destdir.patch -81d5a4a3831f318cd9e7ea3b3634f41b download/no_rlimit_nproc.patch -a9a65f55cbfd01f9d72d1de25e67148d download/set_priv_sep_user.patch -6a8c8579d50adf0d0fc07226c03bfb52 download/vsftpd-2.1.2.tar.gz -f6ce22a6959b93e500a4ae800295c2ee download/vsftpd.conf -0d4a1cf36560892adb9eb9410a01c522 download/vsftpd.smf_wrapper -60c736802e2ce00c531953b01e4a26f6 download/vsftpd.userlist +a2f5b70fe49839b0463c9d90af0f11dd CSWvsftpd.preinstall +8944fcd302add66d5b2b287d390b9c91 CSWvsftpd.prototype +eeaf77528b2da0c7730323838f30b7ef README.CSW +281c51282cabd9475cceef363bbc699b build_options.patch +1680c237d8aa01a3571b80e426dba7a3 changelog.CSW +54c1c39c6bfa8747a4457f135fd5bca1 csw_build_system.patch +a9e994d2b57999b76a0e03503745c01a csw_paths.patch +98e1d831801985daf5ce2ed01fbc0efd cswusergroup +796d46089f9e9c25c897a34e0dcfadc8 cswvsftpd +93173edf9931b8eb835c6d0177a7c6bd cswvsftpd.xml +73e59f9ada47d3d20199f7c97849fb13 destdir.patch +a9a65f55cbfd01f9d72d1de25e67148d set_priv_sep_user.patch +e4eb190af270ae65d57a84274a38ec31 vsftpd-2.2.0.tar.gz +f6ce22a6959b93e500a4ae800295c2ee vsftpd.conf +0d4a1cf36560892adb9eb9410a01c522 vsftpd.smf_wrapper +60c736802e2ce00c531953b01e4a26f6 vsftpd.userlist Modified: csw/mgar/pkg/vsftpd/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/vsftpd/trunk/files/changelog.CSW 2009-10-10 22:41:57 UTC (rev 6823) +++ csw/mgar/pkg/vsftpd/trunk/files/changelog.CSW 2009-10-10 22:42:59 UTC (rev 6824) @@ -1,3 +1,11 @@ +vsftpd (2.2.0,REV=2009.10.10) unstable + + * New upstream version. + * Removed no_rlimit_nproc.patch as the same modification has been applied + upstream. + + -- Yann Rouillard Sat, 10 Oct 2009 23:37:15 +0200 + vsftpd (2.1.2,REV=2009.06.30) unstable * New upstream version. Deleted: csw/mgar/pkg/vsftpd/trunk/files/no_rlimit_nproc.patch =================================================================== --- csw/mgar/pkg/vsftpd/trunk/files/no_rlimit_nproc.patch 2009-10-10 22:41:57 UTC (rev 6823) +++ csw/mgar/pkg/vsftpd/trunk/files/no_rlimit_nproc.patch 2009-10-10 22:42:59 UTC (rev 6824) @@ -1,19 +0,0 @@ -diff --speed-large-files --minimal -Nru vsftpd-2.1.2.orig/sysutil.c vsftpd-2.1.2/sysutil.c ---- vsftpd-2.1.2.orig/sysutil.c 2009-05-27 08:14:59.000000000 +0200 -+++ vsftpd-2.1.2/sysutil.c 2009-06-09 22:56:52.905511283 +0200 -@@ -2779,6 +2779,7 @@ - void - vsf_sysutil_set_no_procs() - { -+#ifdef RLIMIT_NPROC - int ret; - struct rlimit rlim; - rlim.rlim_cur = 0; -@@ -2788,6 +2789,7 @@ - { - die("setrlimit NPROC"); - } -+#endif - } - - void This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 00:49:34 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sat, 10 Oct 2009 22:49:34 +0000 Subject: [csw-devel] SF.net SVN: gar:[6825] csw/mgar/pkg/cyrus_imapd/trunk Message-ID: Revision: 6825 http://gar.svn.sourceforge.net/gar/?rev=6825&view=rev Author: chninkel Date: 2009-10-10 22:49:33 +0000 (Sat, 10 Oct 2009) Log Message: ----------- cyrus_imapd: updated to 2.3.15 Modified Paths: -------------- csw/mgar/pkg/cyrus_imapd/trunk/Makefile csw/mgar/pkg/cyrus_imapd/trunk/checksums csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW Property Changed: ---------------- csw/mgar/pkg/cyrus_imapd/trunk/ Property changes on: csw/mgar/pkg/cyrus_imapd/trunk ___________________________________________________________________ Modified: svn:externals - gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v1 + gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2 Modified: csw/mgar/pkg/cyrus_imapd/trunk/Makefile =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2009-10-10 22:42:59 UTC (rev 6824) +++ csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2009-10-10 22:49:33 UTC (rev 6825) @@ -1,5 +1,19 @@ +##################################################################### +# OpenCSW build recipe for Cyrus Imap +# +# Copyright 2009 Yann Rouillard +# All rights reserved. Use is subject to license terms. +# +# Redistribution and/or use, with or without modification, is +# permitted. This software is without warranty of any kind. The +# author(s) shall not be liable in the event that use of the +# software causes damage. +##################################################################### + +###### Package information ####### + GARNAME = cyrus_imapd -GARVERSION = 2.3.14 +GARVERSION = 2.3.15 CATEGORIES = server DESCRIPTION = Pop and Imap server from the Cyrus mail system @@ -15,10 +29,14 @@ multiple SASL mechanisms, and the Sieve mail filtering language. endef -MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(GARVERSION)/ +###### Upstream and opencsw files information ####### + +#MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(GARVERSION)/ +MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://email.uoa.gr/download/cyrus/cyrus-imapd-2.3.14/ + # We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = cyrus-imapd-(\d+(?:\.\d+)*).tar.gz +UFILES_REGEX = $(shell echo $(GARNAME) | tr '_' '-')-(\d+(?:\.\d+)*).tar.gz DISTFILES = $(shell echo $(GARNAME) | tr '_' '-')-$(GARVERSION).tar.gz DISTFILES += $(call admfiles,CSWcyrusimapd,prototype preinstall depend checkinstall) @@ -33,9 +51,6 @@ DISTFILES += cyrus_imapd_utils.changelog.CSW DISTFILES += pm_cyrus.changelog.CSW -# We define upstream file regex so we can be notifed of new upstream software release -UFILES_REGEX = $(shell echo $(GARNAME) | tr '_' '-')-(\d+(?:\.\d+)*).tar.gz - # compile_et is not provided by krb5lib_dev so we must provide our own version # taken from the krb5 source. DISTFILES += compile_et et_c.awk et_h.awk @@ -48,7 +63,7 @@ # University of Athens patchs to allow autocreation of mailboxes # and autocreation of sub-lolders for filter rules #PATCHFILES = cyrus-imapd-$(GARVERSION)-autocreate-0.10-0.diff cyrus-imapd-$(GARVERSION)-autosieve-0.6.0.diff -PATCHFILES = cyrus-imapd-2.3.13-autocreate-0.10-0.diff cyrus-imapd-2.3.13-autosieve-0.6.0.diff +PATCHFILES = cyrus-imapd-2.3.14-autocreate-0.10-0.diff cyrus-imapd-2.3.14-autosieve-0.6.0.diff # UPDATE: not necessary anymore, integrated upstream # This patch adds a new option which allows cyrus to @@ -72,6 +87,8 @@ #GNU_CC_OPT = -g #GNU_LD_OPT = -g +##### Build and installation information ##### + # files are extracted in cyrus_imapd not cyrus-imapd WORKSRC = $(WORKDIR)/$(shell echo $(GARNAME) | tr '_' '-')-$(GARVERSION) @@ -124,7 +141,7 @@ find doc -type f -exec perl -pi -e 's/\/opt\/csw\/etc\/cyrus\/sasldb2/\/opt\/csw\/etc\/sasldb2/g' '{}' ';') @$(MAKECOOKIE) -pre-install: +pre-merge: # we must create the directory where perl libraries will be installed mkdir -p $(DESTDIR)/$(prefix)/lib/perl mkdir -p $(DESTDIR)/$(sbindir) @@ -132,7 +149,7 @@ mkdir -p $(DESTDIR)/$(prefix)/share/doc/cyrus_imapd @$(MAKECOOKIE) -post-install: +post-merge: # we install binary under tools as part of the package cp -r $(WORKSRC)/tools/* $(DESTDIR)$(sbindir) ginstall -D $(DESTDIR)$(sbindir)/arbitronsort.pl $(DESTDIR)$(sbindir)/arbitronsort Modified: csw/mgar/pkg/cyrus_imapd/trunk/checksums =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/checksums 2009-10-10 22:42:59 UTC (rev 6824) +++ csw/mgar/pkg/cyrus_imapd/trunk/checksums 2009-10-10 22:49:33 UTC (rev 6825) @@ -1,35 +1,35 @@ -1030d4d9d04036b2fb9830165723908e download/cyrus-imapd-2.3.14.tar.gz +a55d22e88ee57fa81da2ea75c6e0e3d8 download/CSWcyrusimapd.checkinstall +248ac6089e88b4eb3365e48c897b9734 download/CSWcyrusimapd.depend 7423d96cacb8162b7987c9983cc85171 download/CSWcyrusimapd.gspec +5111a5573aa6d4878b852780aeae8a27 download/CSWcyrusimapd.preinstall a22944187eb6b75e2437aa9a4c754c07 download/CSWcyrusimapd.prototype -5111a5573aa6d4878b852780aeae8a27 download/CSWcyrusimapd.preinstall -248ac6089e88b4eb3365e48c897b9734 download/CSWcyrusimapd.depend -a55d22e88ee57fa81da2ea75c6e0e3d8 download/CSWcyrusimapd.checkinstall -19204460216d299f19b6504be90b1d79 download/cyrus_imapd.changelog.CSW +4d5ad6d492ca45da347bd9bd48213ac4 download/CSWcyrusimapdutils.depend +d47ff67f45001cdda175616a543d7052 download/CSWcyrusimapdutils.gspec +7e99e825a1d6b134b91392beec1807f4 download/CSWcyrusimapdutils.prototype +fc64965b3c22618fb6b1dff7306a78e7 download/CSWpmcyrus.depend +fdb06983e1a6fdde58ec25834742cf5d download/CSWpmcyrus.gspec +404a6d2b6608c26aaef4e37095200105 download/CSWpmcyrus.prototype d0b97b33e75ac75f89ee6236a2d53f05 download/README.CSW -79211aee56db01e15566ced1ba4078da download/i.services -149ac6b6d82ef9ef4bb1b314f1a1cac4 download/r.services -6dfee20f7c02139350caf9f75199e587 download/services -9b2ae27f98333b73ff2b16ed98ee896a download/i.conf -5d9e9fb1a5b6af82ce915f72ebc5e3b7 download/r.conf +9cbebaeeafa6eb3320eafa594c253bc1 download/compile_et a5326ab0d66431d057db02c5ae9c5e4a download/cswcyrus.init 628c5cf5f5b01f9e173e090ee0c969aa download/cswcyrus.xml -d41d8cd98f00b204e9800998ecf8427e download/svc-cswcyrus -908dbf764d3ccd541c4de881ac81a6ae download/imapd.conf +95d0eb720cb67d712ab799609c619929 download/cyrus-imapd-2.3.14-autocreate-0.10-0.diff +4f010ee86b24f737c9de9fffa0d194e4 download/cyrus-imapd-2.3.14-autosieve-0.6.0.diff +d89cb1b55023188938f332b7ef120fae download/cyrus-imapd-2.3.15.tar.gz +b4c99489eacf0fb7befeef5e3098a5c1 download/cyrus-imapd-2.3.7-nobarenewlinescheck.patch +6127a7b62ec4679a54985f6a2d915e52 download/cyrus-imapd-acceptinvalidfrom.patch fdb3416ec41f3a56d1594ca25a6dcd7d download/cyrus.conf -fdb06983e1a6fdde58ec25834742cf5d download/CSWpmcyrus.gspec -404a6d2b6608c26aaef4e37095200105 download/CSWpmcyrus.prototype -fc64965b3c22618fb6b1dff7306a78e7 download/CSWpmcyrus.depend -d47ff67f45001cdda175616a543d7052 download/CSWcyrusimapdutils.gspec -7e99e825a1d6b134b91392beec1807f4 download/CSWcyrusimapdutils.prototype -4d5ad6d492ca45da347bd9bd48213ac4 download/CSWcyrusimapdutils.depend -43d004e8a98a9143db8073bd529b8f7a download/cyrus_imapd_utils.changelog.CSW -5f2dbde9c973e714c0a4727e25863f75 download/pm_cyrus.changelog.CSW -9cbebaeeafa6eb3320eafa594c253bc1 download/compile_et +81f9b346bf3c1803381c94ce33f2163e download/cyrus_imapd.changelog.CSW +d722bfe708263b946d7bbc7f4d0ddf46 download/cyrus_imapd_utils.changelog.CSW 5375c25c8bc325a90553d0be87a64a04 download/et_c.awk d1d86e61463a1dfefccbadedb11a8604 download/et_h.awk +9b2ae27f98333b73ff2b16ed98ee896a download/i.conf +79211aee56db01e15566ced1ba4078da download/i.services +908dbf764d3ccd541c4de881ac81a6ae download/imapd.conf 14bb6e8c6d6914351f80df293982e88a download/install-upgrade -f1957096f173dcc9ea94d0544a07e9db download/cyrus-imapd-2.3.13-autocreate-0.10-0.diff -cce2e7fbc847791182b8f431c59e473a download/cyrus-imapd-2.3.13-autosieve-0.6.0.diff -6127a7b62ec4679a54985f6a2d915e52 download/cyrus-imapd-acceptinvalidfrom.patch -b4c99489eacf0fb7befeef5e3098a5c1 download/cyrus-imapd-2.3.7-nobarenewlinescheck.patch +e6730668fa500fc77120ee007e535274 download/pm_cyrus.changelog.CSW +5d9e9fb1a5b6af82ce915f72ebc5e3b7 download/r.conf +149ac6b6d82ef9ef4bb1b314f1a1cac4 download/r.services dce627f9a464ae4efe8a66c8dbd358d5 download/restore_allowplaintext_default.patch +6dfee20f7c02139350caf9f75199e587 download/services +d41d8cd98f00b204e9800998ecf8427e download/svc-cswcyrus Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW 2009-10-10 22:42:59 UTC (rev 6824) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW 2009-10-10 22:49:33 UTC (rev 6825) @@ -1,3 +1,9 @@ +cyrus_imapd (2.3.15,REV=2009.10.11) unstable + + * New upstream version. + + -- Yann Rouillard Sun, 11 Oct 2009 00:47:17 +0200 + cyrus_imapd (2.3.14,REV=2009.03.27) unstable * New upstream version. Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW 2009-10-10 22:42:59 UTC (rev 6824) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd_utils.changelog.CSW 2009-10-10 22:49:33 UTC (rev 6825) @@ -1,3 +1,9 @@ +cyrus_imapd_utils (2.3.15,REV=2009.10.11) unstable + + * New upstream version. + + -- Yann Rouillard Sun, 11 Oct 2009 00:47:17 +0200 + cyrus_imapd_utils (2.3.14,REV=2009.03.27) unstable * New upstream version. Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW 2009-10-10 22:42:59 UTC (rev 6824) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/pm_cyrus.changelog.CSW 2009-10-10 22:49:33 UTC (rev 6825) @@ -1,3 +1,9 @@ +pm_cyrus (2.3.15,REV=2009.10.11) unstable + + * New upstream version. + + -- Yann Rouillard Sun, 11 Oct 2009 00:47:17 +0200 + pm_cyrus (2.3.14,REV=2009.03.27) unstable * New upstream version. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 12:59:25 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sun, 11 Oct 2009 10:59:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[6826] csw/mgar/pkg/bash/trunk Message-ID: Revision: 6826 http://gar.svn.sourceforge.net/gar/?rev=6826&view=rev Author: chninkel Date: 2009-10-11 10:59:25 +0000 (Sun, 11 Oct 2009) Log Message: ----------- bash: updated to patch level 33 Modified Paths: -------------- csw/mgar/pkg/bash/trunk/Makefile csw/mgar/pkg/bash/trunk/checksums csw/mgar/pkg/bash/trunk/files/changelog.CSW Modified: csw/mgar/pkg/bash/trunk/Makefile =================================================================== --- csw/mgar/pkg/bash/trunk/Makefile 2009-10-10 22:49:33 UTC (rev 6825) +++ csw/mgar/pkg/bash/trunk/Makefile 2009-10-11 10:59:25 UTC (rev 6826) @@ -13,7 +13,7 @@ ###### Package information ####### GARNAME = bash -GARVERSION = 4.0.28 +GARVERSION = 4.0.33 CATEGORIES = devel DESCRIPTION = A sh-compatible command language interpreter Modified: csw/mgar/pkg/bash/trunk/checksums =================================================================== --- csw/mgar/pkg/bash/trunk/checksums 2009-10-10 22:49:33 UTC (rev 6825) +++ csw/mgar/pkg/bash/trunk/checksums 2009-10-11 10:59:25 UTC (rev 6826) @@ -1,33 +1,38 @@ -f93b41b44ce6b023df65b72f00386ac5 download/CSWbash.prototype -a90a1b5a6db4838483f05438e05e8eb9 download/bash-4.0.tar.gz -bc7f4762443939bd7dccb42370f0d932 download/bash40-001 -c2a4a4786a83ed4ec366c6a8924369a2 download/bash40-002 -22e8a824eddba21a8fce10d7984c2aba download/bash40-003 -ed7cbced8c7c964323265522369a37a2 download/bash40-004 -8ed86b7d31423d71ecf3148251d63512 download/bash40-005 -5f447338cb98ff156cabf1fd9879d5f3 download/bash40-006 -96e946cb66a4ca186cba1da44f1ee163 download/bash40-007 -d3eb7b6f00d525e032478c33f51d46a8 download/bash40-008 -340601c997ce569532417a7ae92248b8 download/bash40-009 -0bd5ab96d514ffb1afbb8c7984b15146 download/bash40-010 -32cb20f339a20e1e9fb37a5d18f18fca download/bash40-011 -33fd9e93d30a17988c19554ef26d56e0 download/bash40-012 -a266b42df5e9ed7e8818a8b00d50e00b download/bash40-013 -86cac78f191a32cd1404f11264eb9b2a download/bash40-014 -bb41963d030bc61a20e8185367b337c5 download/bash40-015 -f75455048a086528971252fd979b8755 download/bash40-016 -34b2cd57271a452f4a26b39d77ff908f download/bash40-017 -99318eed8dcc05e10a14ae27043f175d download/bash40-018 -af3b9aaeadc71a5007bec2b98c751cde download/bash40-019 -eb7c7ddeb7e8451eb59228dca3329696 download/bash40-020 -585d701b978ceb63967dc020db3a2234 download/bash40-021 -7a70f2608f90f6ac0c2051e5f1c6c414 download/bash40-022 -7a23aa41630dd4fe8d30108a200e2d96 download/bash40-023 -82ba5fc9eb780eb57d8b7628a17b7d74 download/bash40-024 -b26f9007ac4eef5c378f1abcb8959025 download/bash40-025 -83bc844c82d0a30740e8d91a8238bfa9 download/bash40-026 -a41c187f05ecab07389c18acc91214c6 download/bash40-027 -fcc367e6471267d2e397257e703b817d download/bash40-028 -871d6e5e87ea680cdf870f67210be8b3 download/changelog.CSW -60956e6be20f69dafbb06fcc83bab88e download/shells -29607316cff22f7427322d8f190cbadf download/use_system_bashrc_and_logout.patch +f93b41b44ce6b023df65b72f00386ac5 CSWbash.prototype +a90a1b5a6db4838483f05438e05e8eb9 bash-4.0.tar.gz +bc7f4762443939bd7dccb42370f0d932 bash40-001 +c2a4a4786a83ed4ec366c6a8924369a2 bash40-002 +22e8a824eddba21a8fce10d7984c2aba bash40-003 +ed7cbced8c7c964323265522369a37a2 bash40-004 +8ed86b7d31423d71ecf3148251d63512 bash40-005 +5f447338cb98ff156cabf1fd9879d5f3 bash40-006 +96e946cb66a4ca186cba1da44f1ee163 bash40-007 +d3eb7b6f00d525e032478c33f51d46a8 bash40-008 +340601c997ce569532417a7ae92248b8 bash40-009 +0bd5ab96d514ffb1afbb8c7984b15146 bash40-010 +32cb20f339a20e1e9fb37a5d18f18fca bash40-011 +33fd9e93d30a17988c19554ef26d56e0 bash40-012 +a266b42df5e9ed7e8818a8b00d50e00b bash40-013 +86cac78f191a32cd1404f11264eb9b2a bash40-014 +bb41963d030bc61a20e8185367b337c5 bash40-015 +f75455048a086528971252fd979b8755 bash40-016 +34b2cd57271a452f4a26b39d77ff908f bash40-017 +99318eed8dcc05e10a14ae27043f175d bash40-018 +af3b9aaeadc71a5007bec2b98c751cde bash40-019 +eb7c7ddeb7e8451eb59228dca3329696 bash40-020 +585d701b978ceb63967dc020db3a2234 bash40-021 +7a70f2608f90f6ac0c2051e5f1c6c414 bash40-022 +7a23aa41630dd4fe8d30108a200e2d96 bash40-023 +82ba5fc9eb780eb57d8b7628a17b7d74 bash40-024 +b26f9007ac4eef5c378f1abcb8959025 bash40-025 +83bc844c82d0a30740e8d91a8238bfa9 bash40-026 +a41c187f05ecab07389c18acc91214c6 bash40-027 +fcc367e6471267d2e397257e703b817d bash40-028 +4d4da1c0be8dfee8e2a6a7703901130f bash40-029 +55cbdc8e5173d7d59bf1113c3ff590dc bash40-030 +389635281133416de9d13295251cabc7 bash40-031 +d646cb4aed8e0f0d1d47eea2ed5f3690 bash40-032 +d3e77d2a0a051478aca8c30d13ded834 bash40-033 +2e65971f182336356e87af544a24ccfe changelog.CSW +60956e6be20f69dafbb06fcc83bab88e shells +29607316cff22f7427322d8f190cbadf use_system_bashrc_and_logout.patch Modified: csw/mgar/pkg/bash/trunk/files/changelog.CSW =================================================================== --- csw/mgar/pkg/bash/trunk/files/changelog.CSW 2009-10-10 22:49:33 UTC (rev 6825) +++ csw/mgar/pkg/bash/trunk/files/changelog.CSW 2009-10-11 10:59:25 UTC (rev 6826) @@ -1,3 +1,9 @@ +bash (4.0.33,REV=2009.10.11) unstable + + * Added bash patches bash40-029 to bash40-033. + + -- Yann Rouillard Sun, 11 Oct 2009 11:51:37 +0200 + bash (4.0.28,REV=2009.07.25) unstable * Added bash patches bash40-025 to bash40-028. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From idogan23 at users.sourceforge.net Sun Oct 11 13:42:26 2009 From: idogan23 at users.sourceforge.net (idogan23 at users.sourceforge.net) Date: Sun, 11 Oct 2009 11:42:26 +0000 Subject: [csw-devel] SF.net SVN: gar:[6827] csw/mgar/pkg/apache2/trunk/Makefile Message-ID: Revision: 6827 http://gar.svn.sourceforge.net/gar/?rev=6827&view=rev Author: idogan23 Date: 2009-10-11 11:42:25 +0000 (Sun, 11 Oct 2009) Log Message: ----------- Apache2: bump version to 2.2.14 Modified Paths: -------------- csw/mgar/pkg/apache2/trunk/Makefile Modified: csw/mgar/pkg/apache2/trunk/Makefile =================================================================== --- csw/mgar/pkg/apache2/trunk/Makefile 2009-10-11 10:59:25 UTC (rev 6826) +++ csw/mgar/pkg/apache2/trunk/Makefile 2009-10-11 11:42:25 UTC (rev 6827) @@ -1,5 +1,5 @@ GARNAME = httpd -GARVERSION = 2.2.13 +GARVERSION = 2.2.14 CATEGORIES = server DESCRIPTION = A high performance Unix-based HTTP server. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From bdwalton at users.sourceforge.net Sun Oct 11 15:31:43 2009 From: bdwalton at users.sourceforge.net (bdwalton at users.sourceforge.net) Date: Sun, 11 Oct 2009 13:31:43 +0000 Subject: [csw-devel] SF.net SVN: gar:[6828] csw/mgar/pkg/git/trunk Message-ID: Revision: 6828 http://gar.svn.sourceforge.net/gar/?rev=6828&view=rev Author: bdwalton Date: 2009-10-11 13:31:43 +0000 (Sun, 11 Oct 2009) Log Message: ----------- git: bump to 1.6.5 (enable tests again); remove autoconf build dep since patches were accepted; remove ls-files patch since it was accepted; make build quiet again Modified Paths: -------------- csw/mgar/pkg/git/trunk/Makefile csw/mgar/pkg/git/trunk/checksums Modified: csw/mgar/pkg/git/trunk/Makefile =================================================================== --- csw/mgar/pkg/git/trunk/Makefile 2009-10-11 11:42:25 UTC (rev 6827) +++ csw/mgar/pkg/git/trunk/Makefile 2009-10-11 13:31:43 UTC (rev 6828) @@ -1,10 +1,10 @@ GARNAME = git -GARVERSION = 1.6.4.4 +GARVERSION = 1.6.5 #xPATCHLEVEL = rc3 CATEGORIES = devel # disable tests until next version bump (at the top so it stands out) -TEST_SCRIPTS = +# TEST_SCRIPTS = PACKAGES = CSWgit CSWgitk CSWgitgui CSWgitsvn CSWgitcvs CSWgitemacs CSWgitdoc PACKAGES += CSWgitcompletion CSWgitdevel @@ -30,8 +30,7 @@ PREREQUISITE_PKGS = CSWasciidoc CSWossldevel CSWxmlto CSWbash CSWcurldevel PREREQUISITE_PKGS += CSWgsed CSWgnulinks CSWperl CSWtk CSWexpat PREREQUISITE_PKGS += CSWzlib CSWpmerror CSWpmsvn CSWcvs CSWemacs -PREREQUISITE_PKGS += CSWautoconf - + REQUIRED_PKGS_CSWgit = CSWzlib CSWperl CSWrsync CSWcurlrt CSWosslrt REQUIRED_PKGS_CSWgit += CSWosshclient CSWiconv CSWexpat CSWbash CSWpmerror REQUIRED_PKGS_CSWgit += CSWpmtermreadkey @@ -87,7 +86,7 @@ GIT_TREEISH_git.git = v$(GARVERSION)$(if $(PATCHLEVEL),-$(PATCHLEVEL)) DISTFILES = CSWgit.postinstall -PATCHFILES = 0001-ls-files-make-option-parser-keep-argv-0.patch +#PATCHFILES = 0001-ls-files-die-instead-of-fprintf-exit-in-i-error.patch fdirs = $(bindir_install) $(mandir) $(libexecdir_install) define _git_files @@ -122,7 +121,7 @@ CONFIGURE_ARGS += --enable-pthreads="-D_REENTRANT -lpthread" BUILD_ARGS = MSGFMT=gmsgfmt SHELL_PATH=/opt/csw/bin/bash \ - ETC_GITCONFIG=$(sysconfdir)/gitconfig V=1 \ + ETC_GITCONFIG=$(sysconfdir)/gitconfig \ ASCIIDOC_NO_ROFF=YesPlease \ all @@ -150,7 +149,6 @@ post-build-modulated: @echo Builing Emacs Git extension @( cd $(WORKSRC); $(MAKE) -C contrib/emacs ) - @( cd $(WORKSRC)/Documentation; $(MAKE) ) post-install-modulated: GD=$(DESTDIR)/$(datadir)/doc/$(GARNAME) post-install-modulated: BD=$(DESTDIR)/$(bashconfdir)/bash_completion.d Modified: csw/mgar/pkg/git/trunk/checksums =================================================================== --- csw/mgar/pkg/git/trunk/checksums 2009-10-11 11:42:25 UTC (rev 6827) +++ csw/mgar/pkg/git/trunk/checksums 2009-10-11 13:31:43 UTC (rev 6828) @@ -1,2 +1,2 @@ -286ebdc4e98afca87750145775cbe918 download/0001-ls-files-make-option-parser-keep-argv-0.patch +43f73e9e39bc388253c4c48986ef7b5c download/0001-ls-files-die-instead-of-fprintf-exit-in-i-error.patch 0f3606cd6720f525e7261cea87c11a61 download/CSWgit.postinstall This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. From chninkel at users.sourceforge.net Sun Oct 11 15:55:25 2009 From: chninkel at users.sourceforge.net (chninkel at users.sourceforge.net) Date: Sun, 11 Oct 2009 13:55:25 +0000 Subject: [csw-devel] SF.net SVN: gar:[6829] csw/mgar/pkg/cyrus_imapd/trunk Message-ID: Revision: 6829 http://gar.svn.sourceforge.net/gar/?rev=6829&view=rev Author: chninkel Date: 2009-10-11 13:55:25 +0000 (Sun, 11 Oct 2009) Log Message: ----------- cyrus_imapd: updated to 2.3.15 cyrus_imapd: switched to cswclassutils for SMF support and configuration file handling cyrus_imapd: removed headers and static libraries cyrus_imapd: switched to automatic gspec and depend file Modified Paths: -------------- csw/mgar/pkg/cyrus_imapd/trunk/Makefile csw/mgar/pkg/cyrus_imapd/trunk/checksums csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.prototype csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus_imapd.changelog.CSW Added Paths: ----------- csw/mgar/pkg/cyrus_imapd/trunk/files/cswcyrus csw/mgar/pkg/cyrus_imapd/trunk/files/cyrus-imapd-2.3.15-autocreate-0.10-0.diff Removed Paths: ------------- csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.depend csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.gspec csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapdutils.depend csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapdutils.gspec csw/mgar/pkg/cyrus_imapd/trunk/files/CSWpmcyrus.depend csw/mgar/pkg/cyrus_imapd/trunk/files/CSWpmcyrus.gspec csw/mgar/pkg/cyrus_imapd/trunk/files/cswcyrus.init csw/mgar/pkg/cyrus_imapd/trunk/files/i.conf csw/mgar/pkg/cyrus_imapd/trunk/files/r.conf csw/mgar/pkg/cyrus_imapd/trunk/files/svc-cswcyrus Modified: csw/mgar/pkg/cyrus_imapd/trunk/Makefile =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2009-10-11 13:31:43 UTC (rev 6828) +++ csw/mgar/pkg/cyrus_imapd/trunk/Makefile 2009-10-11 13:55:25 UTC (rev 6829) @@ -29,7 +29,24 @@ multiple SASL mechanisms, and the Sieve mail filtering language. endef +PACKAGES = CSWcyrusimapd CSWcyrusimapdutils CSWpmcyrus +SPKG_DESC_CSWcyrusimapd = Pop and Imap server from the Cyrus mail system +CATALOGNAME_CSWcyrusimapd = cyrus_imapd +REQUIRED_PKGS_CSWcyrusimapd = CSWosslrt CSWsasl CSWbdb4 CSWkrb5lib CSWtcpwrap CSWnetsnmp CSWpcrert +SPKG_CLASSES_CSWcyrusimapd = none services cswpreserveconf cswinitsmf + +SPKG_DESC_CSWcyrusimapdutils = Various admin utilities for Cyrus Imapd/Popd +CATALOGNAME_CSWcyrusimapdutils = cyrus_imapd_utils +REQUIRED_PKGS_CSWcyrusimapdutils = CSWpmcyrus CSWosslrt CSWsasl CSWbdb4 CSWkrb5lib CSWpcrert +SPKG_CLASSES_CSWcyrusimapd = none + +SPKG_DESC_CSWpmcyrus = Perl interface to Cyrus Imap functions +CATALOGNAME_CSWpmcyrus = pm_cyrus +REQUIRED_PKGS_CSWpmcyrus = CSWperl CSWbdb4 CSWosslrt CSWsasl +SPKG_CLASSES_CSWcyrusimapd = none + + ###### Upstream and opencsw files information ####### #MASTER_SITES = ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://email.uoa.gr/download/cyrus/cyrus-imapd-$(GARVERSION)/ @@ -38,16 +55,17 @@ # We define upstream file regex so we can be notifed of new upstream software release UFILES_REGEX = $(shell echo $(GARNAME) | tr '_' '-')-(\d+(?:\.\d+)*).tar.gz -DISTFILES = $(shell echo $(GARNAME) | tr '_' '-')-$(GARVERSION).tar.gz -DISTFILES += $(call admfiles,CSWcyrusimapd,prototype preinstall depend checkinstall) +DISTNAME = $(shell echo $(GARNAME) | tr '_' '-')-$(GARVERSION) + +DISTFILES = $(DISTNAME).tar.gz +DISTFILES += CSWcyrusimapd.prototype CSWcyrusimapd.preinstall CSWcyrusimapd.checkinstall DISTFILES += cyrus_imapd.changelog.CSW README.CSW DISTFILES += i.services r.services services -DISTFILES += i.conf r.conf -DISTFILES += cswcyrus.init cswcyrus.xml svc-cswcyrus +DISTFILES += cswcyrus cswcyrus.xml DISTFILES += imapd.conf cyrus.conf -DISTFILES += $(call admfiles,CSWpmcyrus,prototype depend) -DISTFILES += $(call admfiles,CSWcyrusimapdutils,prototype depend) +DISTFILES += CSWpmcyrus.prototype +DISTFILES += CSWcyrusimapdutils.prototype DISTFILES += cyrus_imapd_utils.changelog.CSW DISTFILES += pm_cyrus.changelog.CSW @@ -58,18 +76,11 @@ # le fichier install-upgrade de cyrus 2.3.11 est incomplet DISTFILES += install-upgrade -SPKG_CLASSES = none services conf - # University of Athens patchs to allow autocreation of mailboxes # and autocreation of sub-lolders for filter rules #PATCHFILES = cyrus-imapd-$(GARVERSION)-autocreate-0.10-0.diff cyrus-imapd-$(GARVERSION)-autosieve-0.6.0.diff -PATCHFILES = cyrus-imapd-2.3.14-autocreate-0.10-0.diff cyrus-imapd-2.3.14-autosieve-0.6.0.diff +PATCHFILES = cyrus-imapd-2.3.15-autocreate-0.10-0.diff cyrus-imapd-2.3.14-autosieve-0.6.0.diff -# UPDATE: not necessary anymore, integrated upstream -# This patch adds a new option which allows cyrus to -# accept mails with 8bits characters in header -# PATCHFILES += cyrus-imapd-2.2.7-munge8bit.patch - # This patch makes cyrus more tolerant with mails containing # invalid From headers # This avoids "Invalid Message header" error messages @@ -89,9 +100,6 @@ ##### Build and installation information ##### -# files are extracted in cyrus_imapd not cyrus-imapd -WORKSRC = $(WORKDIR)/$(shell echo $(GARNAME) | tr '_' '-')-$(GARVERSION) - CONFIGURE_ARGS = $(DIRPATHS) CONFIGURE_ARGS += --with-cyrus-prefix=$(prefix) CONFIGURE_ARGS += --with-service-path=$(libexecdir)/cyrus @@ -120,7 +128,7 @@ pre-patch: cp $(WORKDIR)/install-upgrade $(WORKSRC)/doc/text -pre-configure: +pre-configure-modulated: # master is a too common name, so we rename it cyrus-master cp $(WORKSRC)/man/master.8 $(WORKSRC)/man/cyrus-master.8 cp $(WORKSRC)/doc/man/master.8.html $(WORKSRC)/doc/man/cyrus-master.8.html @@ -143,33 +151,48 @@ pre-merge: # we must create the directory where perl libraries will be installed - mkdir -p $(DESTDIR)/$(prefix)/lib/perl - mkdir -p $(DESTDIR)/$(sbindir) - mkdir -p $(DESTDIR)/$(sysconfdir)/cyrus - mkdir -p $(DESTDIR)/$(prefix)/share/doc/cyrus_imapd + mkdir -p $(PKGROOT)/$(prefix)/lib/perl + mkdir -p $(PKGROOT)/$(sbindir) + mkdir -p $(PKGROOT)/$(sysconfdir)/cyrus + mkdir -p $(PKGROOT)/$(prefix)/share/doc/cyrus_imapd @$(MAKECOOKIE) post-merge: + # we provide our class action scripts to modify /etc/inet/services + ginstall $(WORKDIR_FIRSTMOD)/*.services $(WORKDIR)/ + ginstall -D $(WORKDIR_FIRSTMOD)/services $(PKGROOT)/etc/inet/services + + # configuration and init file installation + ginstall -D "$(WORKDIR_FIRSTMOD)/cswcyrus" "$(PKGROOT)/etc/opt/csw/init.d/cswcyrus" + ginstall -D "$(WORKDIR_FIRSTMOD)/cswcyrus.xml" "$(PKGROOT)/var/opt/csw/svc/manifest/network/cswcyrus.xml" + ginstall -D "$(WORKDIR_FIRSTMOD)/imapd.conf" "$(PKGROOT)/$(sysconfdir)/cyrus/imapd.conf.CSW" + ginstall -D "$(WORKDIR_FIRSTMOD)/cyrus.conf" "$(PKGROOT)/$(sysconfdir)/cyrus/cyrus.conf.CSW" + + # we install binary under tools as part of the package - cp -r $(WORKSRC)/tools/* $(DESTDIR)$(sbindir) - ginstall -D $(DESTDIR)$(sbindir)/arbitronsort.pl $(DESTDIR)$(sbindir)/arbitronsort + cp -r $(WORKSRC_FIRSTMOD)/tools/* $(PKGROOT)$(sbindir) + ginstall -D $(PKGROOT)$(sbindir)/arbitronsort.pl $(PKGROOT)$(sbindir)/arbitronsort # we want perl script to use opencsw perl - perl -pi -e 's/exec\s+perl/exec \/opt\/csw\/bin\/perl/g' $(DESTDIR)$(sbindir)/* $(DESTDIR)$(bindir)/* + perl -pi -e 's/exec\s+perl/exec \/opt\/csw\/bin\/perl/g' $(PKGROOT)$(sbindir)/* $(PKGROOT)$(bindir)/* ( for FILE in convert-sieve.pl mupdate-loadgen.pl translatesieve undohash upgradesieve arbitronsort; do \ - perl -pi -e 's/^#!\/usr\/(local\/)?bin\/perl/#!\/usr\/bin\/perl/' $(DESTDIR)$(sbindir)/$$FILE; \ + perl -pi -e 's/^#!\/usr\/(local\/)?bin\/perl/#!\/usr\/bin\/perl/' $(PKGROOT)$(sbindir)/$$FILE; \ done ) # we install the documentation - cp -r $(WORKSRC)/doc/* $(DESTDIR)/$(docdir)/cyrus_imapd + cp -r $(WORKSRC_FIRSTMOD)/doc/* $(PKGROOT)/$(docdir)/cyrus_imapd ( for PKG in cyrus_imapd cyrus_imapd_utils pm_cyrus; do \ - ginstall -D $(WORKDIR)/$$PKG.changelog.CSW $(DESTDIR)/$(docdir)/$$PKG/changelog.CSW; \ + ginstall -D $(WORKDIR_FIRSTMOD)/$$PKG.changelog.CSW $(PKGROOT)/$(docdir)/$$PKG/changelog.CSW; \ + ginstall -D $(WORKDIR_FIRSTMOD)/README.CSW $(PKGROOT)/$(docdir)/$$PKG/README.CSW; \ done ) # we rename some tools with too generic names - ginstall -D $(DESTDIR)/$(sbindir)/mkimap $(DESTDIR)/$(sbindir)/mkdirs + ginstall -D $(PKGROOT)/$(sbindir)/mkimap $(PKGROOT)/$(sbindir)/mkdirs ( for FILE in mkdirs mknewsgroups dohash undohash rehash; do \ - ginstall -D $(DESTDIR)/$(sbindir)/$$FILE $(DESTDIR)/$(sbindir)/cyrus-$$FILE; \ + ginstall -D $(PKGROOT)/$(sbindir)/$$FILE $(PKGROOT)/$(sbindir)/cyrus-$$FILE; \ done ) + + # we fix some permission problems + chmod -R u+w "$(PKGROOT)/" + @$(MAKECOOKIE) - Modified: csw/mgar/pkg/cyrus_imapd/trunk/checksums =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/checksums 2009-10-11 13:31:43 UTC (rev 6828) +++ csw/mgar/pkg/cyrus_imapd/trunk/checksums 2009-10-11 13:55:25 UTC (rev 6829) @@ -1,35 +1,26 @@ -a55d22e88ee57fa81da2ea75c6e0e3d8 download/CSWcyrusimapd.checkinstall -248ac6089e88b4eb3365e48c897b9734 download/CSWcyrusimapd.depend -7423d96cacb8162b7987c9983cc85171 download/CSWcyrusimapd.gspec -5111a5573aa6d4878b852780aeae8a27 download/CSWcyrusimapd.preinstall -a22944187eb6b75e2437aa9a4c754c07 download/CSWcyrusimapd.prototype -4d5ad6d492ca45da347bd9bd48213ac4 download/CSWcyrusimapdutils.depend -d47ff67f45001cdda175616a543d7052 download/CSWcyrusimapdutils.gspec -7e99e825a1d6b134b91392beec1807f4 download/CSWcyrusimapdutils.prototype -fc64965b3c22618fb6b1dff7306a78e7 download/CSWpmcyrus.depend -fdb06983e1a6fdde58ec25834742cf5d download/CSWpmcyrus.gspec -404a6d2b6608c26aaef4e37095200105 download/CSWpmcyrus.prototype -d0b97b33e75ac75f89ee6236a2d53f05 download/README.CSW -9cbebaeeafa6eb3320eafa594c253bc1 download/compile_et -a5326ab0d66431d057db02c5ae9c5e4a download/cswcyrus.init -628c5cf5f5b01f9e173e090ee0c969aa download/cswcyrus.xml -95d0eb720cb67d712ab799609c619929 download/cyrus-imapd-2.3.14-autocreate-0.10-0.diff -4f010ee86b24f737c9de9fffa0d194e4 download/cyrus-imapd-2.3.14-autosieve-0.6.0.diff -d89cb1b55023188938f332b7ef120fae download/cyrus-imapd-2.3.15.tar.gz -b4c99489eacf0fb7befeef5e3098a5c1 download/cyrus-imapd-2.3.7-nobarenewlinescheck.patch -6127a7b62ec4679a54985f6a2d915e52 download/cyrus-imapd-acceptinvalidfrom.patch -fdb3416ec41f3a56d1594ca25a6dcd7d download/cyrus.conf -81f9b346bf3c1803381c94ce33f2163e download/cyrus_imapd.changelog.CSW -d722bfe708263b946d7bbc7f4d0ddf46 download/cyrus_imapd_utils.changelog.CSW -5375c25c8bc325a90553d0be87a64a04 download/et_c.awk -d1d86e61463a1dfefccbadedb11a8604 download/et_h.awk -9b2ae27f98333b73ff2b16ed98ee896a download/i.conf -79211aee56db01e15566ced1ba4078da download/i.services -908dbf764d3ccd541c4de881ac81a6ae download/imapd.conf -14bb6e8c6d6914351f80df293982e88a download/install-upgrade -e6730668fa500fc77120ee007e535274 download/pm_cyrus.changelog.CSW -5d9e9fb1a5b6af82ce915f72ebc5e3b7 download/r.conf -149ac6b6d82ef9ef4bb1b314f1a1cac4 download/r.services -dce627f9a464ae4efe8a66c8dbd358d5 download/restore_allowplaintext_default.patch -6dfee20f7c02139350caf9f75199e587 download/services -d41d8cd98f00b204e9800998ecf8427e download/svc-cswcyrus +a55d22e88ee57fa81da2ea75c6e0e3d8 CSWcyrusimapd.checkinstall +5111a5573aa6d4878b852780aeae8a27 CSWcyrusimapd.preinstall +63f0e304d69648e4cbaf197a329f1537 CSWcyrusimapd.prototype +7e99e825a1d6b134b91392beec1807f4 CSWcyrusimapdutils.prototype +404a6d2b6608c26aaef4e37095200105 CSWpmcyrus.prototype +d0b97b33e75ac75f89ee6236a2d53f05 README.CSW +9cbebaeeafa6eb3320eafa594c253bc1 compile_et +1c2b850f7a264704eefec741a75977ab cswcyrus +628c5cf5f5b01f9e173e090ee0c969aa cswcyrus.xml +4f010ee86b24f737c9de9fffa0d194e4 cyrus-imapd-2.3.14-autosieve-0.6.0.diff +318f1d2bd48bb4a7c2db5fb9f82c9e3d cyrus-imapd-2.3.15-autocreate-0.10-0.diff +d89cb1b55023188938f332b7ef120fae cyrus-imapd-2.3.15.tar.gz +b4c99489eacf0fb7befeef5e3098a5c1 cyrus-imapd-2.3.7-nobarenewlinescheck.patch +6127a7b62ec4679a54985f6a2d915e52 cyrus-imapd-acceptinvalidfrom.patch +fdb3416ec41f3a56d1594ca25a6dcd7d cyrus.conf +e8868f4e344649d1f2939d5d00f3f800 cyrus_imapd.changelog.CSW +d722bfe708263b946d7bbc7f4d0ddf46 cyrus_imapd_utils.changelog.CSW +5375c25c8bc325a90553d0be87a64a04 et_c.awk +d1d86e61463a1dfefccbadedb11a8604 et_h.awk +79211aee56db01e15566ced1ba4078da i.services +908dbf764d3ccd541c4de881ac81a6ae imapd.conf +14bb6e8c6d6914351f80df293982e88a install-upgrade +e6730668fa500fc77120ee007e535274 pm_cyrus.changelog.CSW +149ac6b6d82ef9ef4bb1b314f1a1cac4 r.services +dce627f9a464ae4efe8a66c8dbd358d5 restore_allowplaintext_default.patch +6dfee20f7c02139350caf9f75199e587 services Deleted: csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.depend =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.depend 2009-10-11 13:31:43 UTC (rev 6828) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.depend 2009-10-11 13:55:25 UTC (rev 6829) @@ -1,7 +0,0 @@ -P CSWosslrt - openssl - OpenSSL Secure Sockets Layer lib and utilities -P CSWsasl - sasl - Simple Authentication and Security Layer -P CSWbdb4 - berkeleydb4 - embedded database libraries and utilities -P CSWkrb5lib -P CSWtcpwrap -P CSWnetsnmp -P CSWpcrert Deleted: csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.gspec =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.gspec 2009-10-11 13:31:43 UTC (rev 6828) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.gspec 2009-10-11 13:55:25 UTC (rev 6829) @@ -1,13 +0,0 @@ -%var bitname cyrus_imapd -%var pkgname CSWcyrusimapd -%include url file://%{PKGLIB}/csw_dyndepend.gspec -%copyright url file://%{WORKSRC}/COPYRIGHT -%var RC_INIT_SCRIPT cswcyrus.init -%var SMF_SCRIPT svc-cswcyrus -%var SMF_MANIFEST cswcyrus.xml -%var INIT_KILL_PRIO 99 -%var INIT_START_PRIO 10 -%var CAN_BE_AUTOENABLED yes -%var SERVICE_CONF_FILES /opt/csw/etc/cyrus/cyrus.conf -%var SERVICE_NAME cyrus_imapd -%include url file://%{PKGLIB}/smf_enabled.gspec Modified: csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.prototype =================================================================== --- csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.prototype 2009-10-11 13:31:43 UTC (rev 6828) +++ csw/mgar/pkg/cyrus_imapd/trunk/files/CSWcyrusimapd.prototype 2009-10-11 13:55:25 UTC (rev 6829) @@ -1,11 +1,11 @@ -i i.conf=i.conf -i r.conf=r.conf -i i.services=i.services -i r.services=r.services -e services /etc/inet/services=services +i i.services +i r.services +e services /etc/inet/services 0444 root sys d none /opt/csw/etc/cyrus 0755 root bin -e conf /opt/csw/etc/cyrus/imapd.conf=imapd.conf 0640 root mail -f none /opt/csw/etc/cyrus/cyrus.conf.CSW=cyrus.conf 0640 root mail +d none /opt/csw/etc/pkg/CSWcyrusimapd 0755 root bin +f cswinitsmf /etc/opt/csw/init.d/cswcyrus 0755 root bin +f preserveconf /opt/csw/etc/cyrus/imapd.conf.CSW 0640 root mail +f preserveconf /opt/csw/etc/cyrus/cyrus.conf.CSW 0640 root mail d none /opt/csw/var/cyrus 0755 cyrus mail d none /opt/csw/var/cyrus/sieve 0755 cyrus mail d none /opt/csw/var/cyrus/config 0755 cyrus mail @@ -17,45 +17,6 @@ d none /opt/csw/var/cyrus/config/ptclient 0755 cyrus mail d none /opt/csw/var/cyrus