Commit graph

6557 commits

Author SHA1 Message Date
wulf
9413e13d23 Added option gnuradio-radio-astronomy used by meta-pkgs/gnuradio 2007-08-08 03:34:21 +00:00
gdt
873cb31073 Change the meaning of unsafe_depends to mean that a dependency has
been replaced which might have had an ABI change.  In practice, a
package is considered to maybe have had an ABI change if the version
changes.  Introduce a new tag unsafe_depends_strict, which is
unconditionally set on depending packages whenever make replace is
done.

This will cut down considerably on the amount of rebuilding required
with pkg_rolling-replace, while still guaranteing that packages are
rebuilt if there was an ABI change in a dependency.
2007-08-08 02:07:27 +00:00
gdt
f435245a77 Improve previous: Per tnn@ suggestion, don't do pkg_admin unset unless
+INSTALLED_INFO is present, to avoid complaint from pkg_admin (see
pkg/36741).  Separate tag removal into a separate target, and use
STEP_MSG and _PKG_DEBUG properly.
2007-08-08 01:44:24 +00:00
gdt
d5af98e19c Remove unsafe_depends and rebuild tags from a package just before
fixing up the required-by file.  The invariant on unsafe_depends (on
which pkg_rolling-replace depends) is once again maintained, but now
cleanly, rather than assuming that all tags are cleared.

(proposed on tech-pkg with no objections, and concurrence from tnn@)
2007-08-07 22:27:12 +00:00
adrianp
462a5ff1d9 Encode the generated HTML properly, taken from genreadme.awk 2007-08-06 19:28:17 +00:00
adrianp
d176003e13 audit-packages prints vulnerabilities to stdout so compensate for this. 2007-08-06 02:43:34 +00:00
adrianp
bf4e848d46 Fix show-vulnerabilities-html target for pkg_install>=20070714.
audit-packages prints vulnerabilities to stdout so compensate for this.
2007-08-06 02:36:24 +00:00
adrianp
4dbb76ab3c mkdatabase needs BMAKE=${MAKE:Q} set before calling otherwise it will
default to using 'make' which will break systems (e.g. OS/X) that use
'bmake'.
Report from Mark E. Perkins on pkgsrc-users@
2007-08-05 19:13:02 +00:00
tnn
b2607abab8 /usr/bin/file on OSF1 is somewhat broken in that it reports the path
of the interpreter as the filetype when a file starts with #!
This unfortunately breaks SUBST handling. For now, use a dummy that
claims that every file is a text file.
2007-08-05 12:38:22 +00:00
obache
1d2a0b073b Move ${DISTDIR} write permission check to just before really need to write.
Patch provided by Aleksej Saushev in PR 36473.
2007-08-04 15:00:29 +00:00
adrianp
7bddba39aa Use ${PKGTOOLS_VERSION} when detecting which version of pkg_install is
installed.  Idea from one of joerg@'s patches.
Fix 'make readme' and make README.html' targets for individual packages.
Issue reported by Gary Thorpe and David Lord in pkgsrc-users@
2007-08-04 11:23:56 +00:00
adrianp
e67737df3a Use ${PKGTOOLS_VERSION} when detecting which version of pkg_install is
installed.  Idea from one of joerg@'s patches.
2007-08-04 11:21:08 +00:00
ghen
fbad5e6c89 We forgot DragonFly. 2007-08-03 23:16:02 +00:00
joerg
34c60ba2a2 Update _USE_DESTDIR=full handling to use the new -u/-g code and
require pkg_install-20070802 for using it. It is now considered
to work correctly and ready for general consumption.
2007-08-03 14:03:39 +00:00
jlam
e92540b3b8 Preserve any existing +INSTALLED_INFO file from an installed package
before replacing it, and restore it when the new package is installed.
This saves any state information that should be carried over to the
new package, e.g. automatic=yes.

XXX Still need to do the same when "un-replacing".
2007-08-02 23:00:18 +00:00
adrianp
7178eb82ce Be more intelligent when setting PVDIR. If pkg_install<20070714 then use
PKGVULNDIR; else extract the current setting using audit-packages -Q and use
that.  In addition to this mkreadme can still be called with -V to specify
a pkg-vulnerabilities file that will override any automatic detection.
2007-08-02 22:42:05 +00:00
joerg
005620851f Add core of the infrastructure support for cross-compilation.
- USE_CROSS_COMPILATION activates it, CROSS_DESTDIR specifies root of
  the target filesystem
- derive _CROSS_DESTDIR from CROSS_DESTDIR or MAKEOBJDIR
- buildlink3.mk prefixes the files to symlink with _CROSS_DESTDIR
- compiler/gcc.mk knows about the target prefix (e.g. i386--netbsdelf)
- PKG_DBDIR is prefixed with _CROSS_DESTDIR
- package-install and bin-install are not called with su
- install and strip are redirected to the tool version
- links for the target specific ar, as, ld, nm, objdump, ranlib and
  strip are added
- compiler wrapper detect if linking is requested or not
- special command sinks for CPP and CC/CXX add the cross-compile magic:
  - modify include dirs to get the target /usr/include
  - modify linker dirs and runpath to use target /usr/lib at link time,
    but keep correct rpath entries

Supported-by: Google SoC 2007
Basic tests by he@ on Sparc. Review from jlam@.
2007-08-02 18:19:31 +00:00
jlam
6989e7a043 Automatically substitute for JAVA_HOME and PKG_JAVA_HOME in PLISTs. 2007-08-02 18:04:48 +00:00
jlam
21129d3f69 Don't bother using environment variables to pass info the shlib-type
shell script.  Just specify everything on the command line.  Also,
since shlib-type is a plain-old shell script with no bells and whistles,
we can safely run it with "sh" and not "${SH}", which is necessary
because "${SH}" isn't defined at this point.
2007-08-02 16:00:33 +00:00
jlam
6c4f985be1 Rewrite in a more portable way (basically cripple ourselves to Solaris
/bin/sh).
2007-08-02 15:46:33 +00:00
gdt
6e460feeda Add wiz's request, add a changes-entry-noupdate that has the old
behavior of just appending to the file without cvs update (or cvs edit
if not writable), for the convenience of those committing multiple
package updates at once.  To implement this, split the
update/cat/commit into elementary targets and compose them to form the
user-exposed targets, spiff up the comments, and rationalize .PHONY
usage.
2007-08-02 11:52:14 +00:00
tnn
94727992eb Remove inclusion of pkgtools/posix_headers/buildlink3.mk. This was
useful for initial testing, but here is not the proper place to include it.
For now the recommended way is to include the buildlink3.mk in mk.conf.
2007-08-02 00:11:45 +00:00
jlam
c30218a3ef Support automatically using pkgsrc/emulators/osf1_lib to satisfy
EMUL_PLATFORM osf1-alpha.
2007-08-01 17:19:22 +00:00
jlam
8101baad23 Support automatically using pkgsrc/emulators/darwin_lib to satisfy
EMUL_PLATFORMs darwin-i386 and darwin-powerpc.
2007-08-01 16:28:08 +00:00
joerg
29777c8ec5 Begin adding some of the basic, non-intrusive pieces of the
cross-compile support.

- NATIVE_MACHINE_GNU_ARCH, NATIVE_LOWER_ARCH, NATIVE_MACHINE_ARCH,
  NATIVE_MACHINE_PLATFORM and NATIVE_MACHINE_GNU_PLATFORM work
  like the counterpars without NATIVE_ prefix. Expansion of
  NATIVE_LOWER_ARCH and NATIVE_MACHINE_ARCH is enforced early,
  so that MACHINE_ARCH can be overriden in mk.conf to specify the
  target architecture.
- Provide a default of NO for USE_CROSS_COMPILE. This will be the
  main switch to activate cross-compiling and adding it now makes
  it possible to merge more of the patches for specific packages.
- Set --build and --host when cross-compiling, the former using the
  just added variable NATIVE_MACHINE_GNU_PLATFORM.

Supported-by: Google SoC 2007
Looks good: jlam@
2007-08-01 16:14:17 +00:00
jlam
13157ce5e2 Teach mirror-distfiles to use emul-fetch if EMUL_PLATFORMS is defined so
that mirror sites will grab all of the distfiles, not just the ones that
are for the native platform.
2007-08-01 15:24:51 +00:00
jlam
3f468312f3 Remove unused _EMUL_OPSYSES. 2007-08-01 15:20:10 +00:00
jlam
8e4ec99c37 Note the proper /emul/* dir for Darwin libraries. 2007-08-01 15:17:56 +00:00
joerg
4db0539a2b Define PKGPATH earlier so that mk.conf can use it.
Requested by David Brownlee on tech-pkg.
2007-08-01 12:21:56 +00:00
jlam
5321117c50 Automatically add EMUL_{PLATFORM,OPSYS,ARCH} to FILES_SUBST and
PLIST_SUBST to make life easier for package maintainers.
2007-07-31 20:02:48 +00:00
jlam
639a93d743 Don't substitute for OPSYS- or ARCH-related variables in print-plist
if EMUL_PLATFORMS is defined.  This facilitates making
EMUL_PLATFORM-specific PLISTs.
2007-07-31 19:51:01 +00:00
jlam
3629e30a61 Teach the extract module to extract RPMs with rpm2pkg. 2007-07-31 17:42:40 +00:00
joerg
2b3b6c11ab Compute OS_VERSION on AIX directly using make substitution instead of
forking a shell and sed.
2007-07-30 14:10:36 +00:00
joerg
a13b98431e Use variable substitution instead of calling external cut to
compute LOWER_OPSYS_VERSUFFIX.
2007-07-30 14:07:07 +00:00
seb
89b8998808 Add net/nfdump's options descriptions 2007-07-29 22:14:32 +00:00
joerg
a7702e998f Allow the code to resolve the make path to deal with a strictly
local path. E.g. running make as ./make now works.
2007-07-29 18:27:05 +00:00
joerg
910d37bad9 Remove explicit include of sys.mk, which has been made redundant by
jlam's include of bsd.own.mk in June 2002.
2007-07-29 13:17:57 +00:00
jlam
02381a6b80 Better formatting for the package- and user-settable variables, and
document the emul-* helper targets.
2007-07-29 09:24:33 +00:00
jlam
fdd4eac242 Improve the example by adding a typical use of EMUL_MODULES.linux. 2007-07-29 08:58:52 +00:00
jlam
33f30156fb * Add new emulator framework in pkgsrc/mk/emulator that handles all
binary-only packages that require binary "emulation" on the native
  operating system.  Please see pkgsrc/mk/emulator/README for more
  details.

* Teach the plist framework to automatically use any existing
  PLIST.${EMUL_PLATFORM} as part of the default PLIST_SRC definition.

* Convert all of the binary-only packages in pkgsrc to use the
  emulator framework.  Most of them have been tested to install and
  deinstall correctly.  This involves the following cleanup actions:

    * Remove use of custom PLIST code and use PLIST.${EMUL_PLATFORM}
      more consistently.

    * Simplify packages by using default INSTALL and DEINSTALL scripts
      instead of custom INSTALL/DEINSTALL code.

    * Remove "SUSE_COMPAT32" and "PKG_OPTIONS.suse" from pkgsrc.
      Packages only need to state exactly which emulations they support,
      and the framework handles any i386-on-x86_64 or sparc-on-sparc64
      uses.

    * Remove "USE_NATIVE_LINUX" from pkgsrc.  The framework will
      automatically detect when the package is installing on Linux.

  Specific changes to packages include:

    * Bump the PKGREVISIONs for all of the suse100* and suse91* packages
      due to changes in the +INSTALL/+DEINSTALL scripts used in all
      of the packages.

    * Remove pkgsrc/emulators/suse_linux, which is unused by any
      packages.

    * cad/lc -- remove custom code to create the distinfo file for
	all supported platforms; just use "emul-fetch" and "emul-distinfo"
	instead.

    * lang/Cg-compiler -- install the shared libraries under ${EMULDIR}
	instead of ${PREFIX}/lib so that compiled programs will find
	the shared libraries.

    * mail/thunderbird-bin-nightly -- update to latest binary
	distributions for supported platforms.

    * multimedia/ns-flash -- update Linux version to 9.0.48 as the
	older version is no longer available for interactive fetch.

    * security/uvscan -- set LD_LIBRARY_PATH explicitly so that
	it's not necessary to install library symlinks into
	${EMULDIR}/usr/local/lib.

    * www/firefox-bin-flash -- update Linux version to 9.0.48 as the
	older version is no longer available for interactive fetch.
2007-07-29 05:18:36 +00:00
gdt
ff5558bc4c Rationalize changes-entry and commit-changes-entry.
changes-entry now does cvs update (and cvs edit if needed), and adds
the line.  This target will behave the same way (with extra CVS
traffic) if the file is up to date, and will be omre useful if
CHANGES-YYYY is not up to date.

commit-changes-entry depends on changes-entry and also commits.  This
target has no behavior changes.

Rename _CCE_FOO variables to PKGSRC_CHANGES_FOO, and merge with
existing varables.

We may need a changes-entry-no-update, or a new name for what
changes-entry does now.  Given how infrequently CHANGES-YYYY is up to
date when I want to add, I believe the new behavior will be welcome to
almost everyone.
2007-07-28 12:23:17 +00:00
joerg
d670e0be94 Also use the shell builtin for [. Add comment for test and [ about that. 2007-07-28 01:21:15 +00:00
joerg
6d2a995e3d Always use the test builtin... 2007-07-28 01:19:07 +00:00
joerg
f493ba1049 Add REPLACE_KSH similiar to REPLACE_BASH and REPLACE_SH as the
CHECK_INTERPRETER bulk build has shown a surprising number of
packages using it.
2007-07-28 00:42:33 +00:00
jlam
4dde9bc3a4 Move the +SHLIBS generation code back into the pkginstall module. In the
plist module, it was being "defined" too late, and the pkginstall module
never created any +SHLIBS scripts.  Sidestep the tools problems with
SHLIB_TYPE by pretending they don't exist (for now).

XXX SHLIB_TYPE needs to be re-thought or removed altogether.
2007-07-27 18:37:35 +00:00
tnn
bd630c4f6f If using X11_TYPE=modular this means we have imake(1) from pkgsrc.
We can't use our own imake to check for builtin packages so disable the
check and always report that no builtin implementation exists.
No objections on tech-pkg@
2007-07-27 17:44:43 +00:00
joerg
ced3f13079 Don't depend on digest if FAILOVER_FETCH and NO_CHECKSUM are set
together.
2007-07-27 14:24:53 +00:00
joerg
1181f7164e Remove remaining traces of BUILDLINK_TRANSFORM.${pkg}. 2007-07-27 13:15:41 +00:00
rillig
c6b4400da0 Documented PKGCONFIG_OVERRIDE and PKGCONFIG_OVERRIDE_STAGE. 2007-07-25 18:07:34 +00:00
adrianp
35f7e128c2 Add --config <file> from build script 2007-07-25 12:00:21 +00:00