Commit graph

38 commits

Author SHA1 Message Date
jlam
4390d56940 Make it easier to build and install packages "unprivileged", where
the owner of all installed files is a non-root user.  This change
affects most packages that require special users or groups by making
them use the specified unprivileged user and group instead.

(1) Add two new variables PKG_GROUPS_VARS and PKG_USERS_VARS to
    unprivileged.mk.  These two variables are lists of other bmake
    variables that define package-specific users and groups.  Packages
    that have user-settable variables for users and groups, e.g. apache
    and APACHE_{USER,GROUP}, courier-mta and COURIER_{USER,GROUP},
    etc., should list these variables in PKG_USERS_VARS and PKG_GROUPS_VARS
    so that unprivileged.mk can know to set them to ${UNPRIVILEGED_USER}
    and ${UNPRIVILEGED_GROUP}.

(2) Modify packages to use PKG_GROUPS_VARS and PKG_USERS_VARS.
2007-07-04 20:54:31 +00:00
reed
52f17df66c Also buildlink the include directory.
This is for PR 36352.
Alternatively, maybe this could have been done in the package that
needed it instead.
2007-05-22 14:04:33 +00:00
jlam
c16221a4db Change the format of BUILDLINK_ORDER to contain depth information as well,
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.

For example, "make show-buildlink3" in fonts/Xft2 displays:

	zlib
	fontconfig
	    iconv
	    zlib
	    freetype2
	    expat
	freetype2
	Xrender
	    renderproto
2006-07-08 23:10:35 +00:00
jlam
9430e49307 Track information in a new variable BUILDLINK_ORDER that informs us
of the order in which buildlink3.mk files are (recursively) included
by a package Makefile.
2006-07-08 22:38:58 +00:00
rillig
96fc47c14f Aligned the last line of the buildlink3.mk files with the first line, so
that they look nicer.
2006-04-12 10:26:59 +00:00
reed
5abef9be14 Over 1200 files touched but no revisions bumped :)
RECOMMENDED is removed. It becomes ABI_DEPENDS.

BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.

BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.

BUILDLINK_DEPENDS does not change.

IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".

Added to obsolete.mk checking for IGNORE_RECOMMENDED.

I did not manually go through and fix any aesthetic tab/spacing issues.

I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.

I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.

As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.

As discussed on tech-pkg.

I will commit to revbump, pkglint, pkg_install, createbuildlink separately.

Note that if you use wip, it will fail!  I will commit to pkgsrc-wip
later (within day).
2006-04-06 06:21:32 +00:00
jlam
dc9594e09d Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mk
automatically detects whether we want the pkginstall machinery to be
used by the package Makefile.
2005-12-29 06:21:30 +00:00
rillig
b71a1d488b Fixed pkglint warnings. The warnings are mostly quoting issues, for
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some
other changes are outlined in

    http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-12-05 20:49:47 +00:00
jlam
3e474a90d8 Get rid of USE_PERL5. The new way to express needing the Perl executable
around at either build-time or at run-time is:

	USE_TOOLS+=	perl		# build-time
	USE_TOOLS+=	perl:run	# run-time

Also remove some places where perl5/buildlink3.mk was being included
by a package Makefile, but all that the package wanted was the Perl
executable.
2005-07-16 01:19:06 +00:00
reed
ee8be9d0c1 RCD_SCRIPTS_EXAMPLEDIR is no longer customizable.
And always is defined as share/examples/rc.d
which was the default before.

This rc.d scripts are not automatically added to PLISTs now also.
So add to each corresponding PLIST as required.

This was discussed on tech-pkg in late January and late April.

Todo: remove the RCD_SCRIPTS_EXAMPLEDIR uses in MESSAGES and elsewhere
and remove the RCD_SCRIPTS_EXAMPLEDIR itself.
2005-05-02 20:33:57 +00:00
tv
f816d81489 Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used. 2005-04-11 21:44:48 +00:00
agc
b12d62efb5 Add RMD160 digests. 2005-02-24 12:13:41 +00:00
reed
32d8f290c2 The default location of the pkgsrc-installed rc.d scripts is now
under share/examples/rc.d. The variable name already was named
RCD_SCRIPTS_EXAMPLEDIR.

This is from ideas from Greg Woods and others.

Also bumped PKGREVISION for all packages using RCD_SCRIPTS mechanism
(as requested by wiz).
2004-12-28 02:47:40 +00:00
recht
c17345c6b3 Update to 3.17.3
The 3.17.3 release has no external api changes (but does fix a few api
implementation bugs so check the details below).

New minor features:
1) Add new option to spflooder. The -n option allows a fixed
   "number of members" to be set. This then activates a multi-sender flow
   control algorithm to allow flooding tests with several senders. All of
   the processes need to join the group (i.e. they cannot be
   -wo (write-only)) but not all processes have to send. This allows easy
   testing with differing numbers of senders (just change how many
   spflooders start with -ro and how many do not).
2) Modify monitor so it will run correctly on Windows. This was done by
   modifying monitor.c so it can also build as a threaded program and
   on windows will use multiple threads to send/recv updates and get
   user input. (A POSIX thread option is also added).
3) Add new Alarm priority flag to print a line with no datestamp
   (for multi-line output).
4) Add new Windows VC++.Net project files to daemon/win32_msvc_net.
   The current project files in daemon/win32 remain as they can be used
   in VC++ (version 6).

The list of bugfixes is:
1) Fix memory leak in Skiplist. Reported by Taj Khattra, patch by Theo
   Schlossnagle.
2) spuser,spflooder, and spmonitor fixed to print correct name in help.
   Patch by Daniel Rall.
3) Fix incorrect alarm printing where WARNING messages generated by
   older Alarm() interface were not printed.
4) Fix a bug in the Windows build using VC++ of thread-safe libtspread.lib.
   Bug and fix by Jacob Green.
5) Fix bug in libspread where if the groups array or message body passed
   to SP_recv* was too small, the mess_type field returned would be truncated
   and the sender field was not returned. They are both now returned
   correctly. Bug report and partial fix provided by John Schultz.
6) Fix bug where SP_Join and SP_Leave do not report an error if a group name
   is too long (instead they truncated it) Reported with fix by David Parker.
   ** Warning, this could break buggy applications who use long groups and
      assume the name is truncated.
7) Cleanup compile warnings where E_queue() used with no-parameter
functions
   (not all uses fixed) and fix incorrect use of signed int with strlen().
8) Fix few cases in flooder.c and user.c that did not use the defined
   MAX_MESSLEN constant. Tested to verify that increasing
   MAX_SCATTER_ELEMENTS in scatter.h and the MAX_MESSLEN defines in user.c
   and flooder.c is sufficient to support arbitrarily large message sizes
   with Spread. This is NOT recommended, but several people do it anyway :-)
9) Make E_delay() work on Win32.
10) Added check that a segment using localhost (i.e. 127.0.0.255) is NOT in
    a spread.conf with any other segments using real IP addresses. This
    configuration will not work correctly and is usually because the example
    localhost configuration provided with Spread is added to. This check will
    cause the daemon to exit immediately after parsing the config file.
11) Fix bug where if more then 22 daemons start at the same time, some will
    crash or the membership will not complete correctly. This bug was
    reported by several people including Jesse Noller.
12) Fix Java spread connection problem where several threaded connections
    from same process cause unexpected connection failures. Reported by
    Brian Moseley, idea of fix by Ryan Caudy, patch by Jonathan Stanton.
13) Fix EVS bug where AGREED messages may be delivered before a transitional
    signal on some daemons and after it on others. Bug found and patch
    created by Ryan Caudy.
14) Make SP_connect_timeout() calls non-blocking for the actual 'connect()'
    call. This should fix the issue reported by Shlomi Yaakobovich where a
    hung daemon causes new connections to also hang in connect. Also includes
    slight cleanup of connect code path.

Ver 3.17.2:
--------------
1) Fix daemon quit when multiple interfaces are configured as "D" daemon
   interfaces in the spread.conf file. Bug reported by Orit Wasserman.
2) Updated url for Java 'ant' build system. Patch by Daniel Rall.
3) Fix group_id bug that causes incorrect vs_sets. Patch by Ryan Caudy.
4) Fix spread.conf parser so it validates the machine names in segments
   and forces them to be less then MAX_PROC_NAME. Patch by Mikhail Terekhov.
5) Minor fix to Mac OS X compilation so library softlinks do not fail the
   second time make is run.
6) Alarm() changes to support priority levels on each Alarm() call.
7) Fix crash by improving packet accounting when a client connected to a
   singleton daemon sends a large broadcast. Reported by David Shaw.
8) Fix bus errors on Sparc & Alpha for message buffer integer assignment.
   Reported by Greg Shebert; tested and patched Mikhail Terekhov.
9) Verify daemon names in spread.conf are unique. If non-unique names are
   provided in spread.conf, configuration will be rejected and daemon will
   not start. Suggested by Tim Peters.
10) Zero buffer in c library before sending multicast.
    Reported by Panagiotis Kougiouris.
11) Send fewer lookup probe messages when only a single segment is configured.
12) Remove extra token rotations when no messages are sent. Will decrease
    network packet overhead.
13) Make mailbox and service in sp.h a typedef instead of a #define. Suggested
    and patched by Steven Dake.
14) Fix small endianness error in sp.c where the mess_type field may not be
    correctly converted for different endian platforms when the SP_*_recv calls
    return a BUFFER_TOO_SHORT or GROUPS_TOO_SHORT error.
15) Change alarm tag for security prints from SEC to SECURITY because of conflict
    with sys/time.h header.
16) Documentation fix to SP_receive man page to correct fields for self-leave
    membership messages.
17) Update of email addresses in copyright statements and headers.
18) Windows binary libraries now built as libspread and libtspread like other
    platforms.
2004-10-30 11:54:12 +00:00
reed
9c790735db mk/bsd.pkg.install.mk now automatically registers
the RCD_SCRIPTS rc.d script(s) to the PLIST.

This GENERATE_PLIST idea is part of Greg A. Woods'
PR #22954.

This helps when the RC_SCRIPTS are installed to
a different ${RCD_SCRIPTS_EXAMPLEDIR}. (Later,
the default RCD_SCRIPTS_EXAMPLEDIR will be changed
to be more clear that they are the examples.)

These patches also remove the etc/rc.d/ scripts from PLISTs
(of packages that use RCD_SCRIPTS). (This also removes
now unused references from openssh* makefiles. Note that
qmail package has not been changed yet.)

I have been doing automatic PLIST registration for RC_SCRIPTS
for over a year. Not all of these packages have been tested,
but many have been tested and used.

Somethings maybe to do:
- a few packages still manually install the rc.d scripts to
  hard-coded etc/rc.d. These need to be fixed.
- maybe  remove from mk/${OPSYS}.pkg.dist mtree specifications too.
2004-04-23 22:07:52 +00:00
snj
741de7be81 No longer used. 2004-04-11 22:03:25 +00:00
jlam
9ff0e10340 Reorder location and setting of BUILDLINK_PACKAGES to match template
buildlink3.mk file in revision 1.101 of bsd.buildlink3.mk.
2004-03-05 19:25:06 +00:00
jlam
68db2aba1d * Follow the new buildlink3 standard and append to BUILDLINK_DEPENDS.<pkg>.
* Match the package version with the one from buildlink2.mk.
2004-01-25 17:18:13 +00:00
recht
be04405959 bl3ify and add a buildlink3.mk 2004-01-24 21:24:09 +00:00
agc
3ad1bdbf06 Move WRKSRC definition away from the first paragraph in a Makefile. 2004-01-20 12:18:15 +00:00
jlam
4b90d17ed9 From the log for rev. 1.1260 of bsd.pkg.mk:
"Package Makefiles should refer to PKG_SYSCONFBASEDIR instead of
 PKG_SYSCONFBASE when they want PKG_SYSCONFDIR stripped of
 PKG_SYSCONFSUBDIR.  This makes PKG_SYSCONFBASE=/etc work with pkgviews by
 installing all config files into /etc/packages/<pkg> instead of
 occasionally putting some directly into /etc."
2004-01-07 02:21:16 +00:00
agc
03996cfbda Use a DIST_SUBDIR based on the PKGNAME as the distfile has changed
without a version number (the changes seem to be "trailing garbage at
the end of the archive", but I'd like a second opinion on this one).
2003-11-05 08:22:12 +00:00
recht
b59b837137 Update the checksum. The archive changed in size, but the contained .tar
file is still the same.
2003-11-05 00:48:56 +00:00
recht
7dccb0ec61 fix PLIST
discovered by hubertf's bulk-build
2003-09-16 11:47:13 +00:00
recht
44917e36b8 Use my NetBSD.org email address. 2003-09-14 18:13:48 +00:00
recht
4dbdea0714 Add a fix for multi homed configurations.
By Jonathan Stanton on spread-users@.
2003-08-13 19:46:24 +00:00
recht
1b04eb9e81 Add a fix for multi homed configurations. Makefile
By Jonathan Stanton on spread-users@.
Bump PKGREVISION.
2003-08-13 19:46:23 +00:00
recht
879822b663 Remove MESSAGE. (As discussed on packages@). 2003-08-13 19:19:15 +00:00
recht
5d2b9d325b Fix build for systems without perl installed.
Remove MESSAGE. (As discussed on packages@).
2003-08-12 12:23:49 +00:00
recht
dcbe6f8ca9 The Spread authors if we can display a message containing their website. 2003-08-09 13:11:41 +00:00
recht
e2741bcd7a Update to 3.17.1
The NetBSD project now has the permission to download the archive from
the official Spread site and to mirror it, so remove the restrictions.

changes:
*) Fix memory corruption and crash with groups of large size.
*) Correct make install so it installs header files.
*) Fix syntax error in build.xml file for Java/Ant.
*) Cleanup prototypes to remove compiler warnings.
*) Fix parser to correctly recognize upper, lower, and mixed case command options.
*) During make install, remove old symlinks.
*) Change setgroups call to be more portable. (fixes MacOSX)
*) Change name of r and s to sprecv and spsend, and add as make targets.
   They can be built by "make testprog" (not built by default).
*) Work on making long group names possible.
*) Increase listen backlog for accepting client connections.
*) Fix Win32 project files to have correct path to source files.
   (note CVS was always ok, but 3.17.0 release had incorrect path)
*) Fix bug where large groups overflow Mess_buf in groups.c.
*) Fix memory corruption bug when a message header is received in
   several separate packets in session.c. Thanks to Ryan Caudy for
   many, many hours tracking this down.
*) Change order of build in Makefile so binaries are built before
   documentation.
*) Fix Java bug where connection objects cannot be disconnected and
   then reconnected, but must be created anew. They can now be reused.
*) Fix compile error on AIX for struct if_info.
*) Fix security issue with buffer checks in the C library.
*) Fix obscure off-by-one buffer error with the parser.
2003-08-09 13:07:40 +00:00
jmmv
12a10361a1 Set USE_PKGINSTALL instead of directly including bsd.pkg.install.mk. 2003-07-30 10:41:22 +00:00
jmmv
8a555528c0 PKGREVISION goes after PKGNAME. 2003-05-05 19:05:05 +00:00
wiz
7166660e08 Dependency bumps, needed because of devel/pth's major bump, and related
dependency bumps.
2003-05-02 11:53:34 +00:00
jmmv
0916498c1b Place WRKSRC where it belongs, to make pkglint happy; ok'ed by wiz. 2003-03-29 12:40:00 +00:00
wiz
f2c0357f0b Remove unnecessary empty lines. 2003-03-28 21:24:22 +00:00
mjl
11939c9bef Do not auto-fetch a FreeBSD copy of distfile, instead make fetch
interactive, as per PR/20424.
Work patches and changes in PR/19782.
2003-02-22 23:37:13 +00:00
mjl
5abb965f34 Import of spread 3.17.0. Patches and tweaks taken from FreeBSD port.
Spread is a group communication system that provides a number of
messaging services to applications. These services can then be used
by applications to make it easy to write full-featured reliable
groupware, distributed servers, client-server applications, chat
and news services, and many other networked enabled tools.
2003-02-18 22:11:55 +00:00