I need the os_canon number for the Darwin platform entered. Hopefully, it is not too late to reserve OS number 21 ? (since the original author "forgot" to send it upstream) There are already some RPMS in existance, so it would be great if this exact number 21 could be added to rpmrc.in os_canon: Darwin: darwin 21 os_canon: MacOSX: macosx 21 os_compat: Darwin: MacOSX The short name for the target platform above is "darwin". (It has three architectures: ppc, i386 and "fat" = both) I'm not sure if the actual integer is used anymore, but... The above lines is what has been in full use since 2001: http://www-jlc.kek.jp/~fujiik/macosx/SOURCES/rpm-4.0.2-macosx.patch
FWIW, you'tr better off looking at rpm41 from opendarwin ports rather than 4.0.2, those patches appear to be sound. "fat" is not an arch, and will be harder to handle than paralleling "noarch". There's more that needs doing.
I have both 4.2.1 and 4.3.x working, the above 4.0.2 was when the port got started (OS X 10.0) New: http://cvs.sourceforge.net/viewcvs.py/rpm4darwin I don't use fat for Mac OS X, just regular "ppc" (and OpenDarwin doesn't really use RPM, but instead DarwinPorts - so their RPMS are *very* nonstandard)
More info: OpenDarwin are still using RPM 4.0.4 (http://rpm.darwinports.com/) (org.opendarwin.rpm-7.2.1-1.src.rpm). Their patches are available at: http://sf.net/tracker/index.php?func=detail&aid=934104&group_id=103871&atid=636202 I think they plan to switch to their own package format when possible, RPM is just a interim solution for them. They build from DarwinPorts, which then generate the packages with nice hacks such as: %files / My project, http://rpm4darwin.sf.net, is about the usual RPM on OS X.
The "fat" arch part is in Bug 132926, this one is about the RPM os: "darwin".
Saw that RPM on Mac OS X 10.0 was mentioned in Bug 32457... Current effort is for Mac OS X 10.3 and above only, since there are some issues with hefty workarounds in earlier: - /bin/sh was "zsh" - /usr/bin/tar was "pax" - libtool is not GNU's - glob does not work RPM 4.0.x is available for all versions Mac OS X, RPM 4.2.x and RPM 4.3.x are available for Panther. Working just fine, only trying to commit "upstream" ?
Could you sign up to <rpm-devel.duke.edu> so I can walk you through what needs to happen in order for per-file dependencies to be correctly implemented on mac os x, as in rpm-4.2 and later with elf? Basically, find-requires isn't the correct solution, hacks for mach-o format in build/rpmfc.c need to be attempted. I'm quite interested in porting rpm-4.2 and later to Darwin, but per-file dependencies need to be attempted rather than the rather gross "fat" == "noarch" hack.
I'm lurking rpm-list, will subscribe to rpm-devel. (didn't know it existed, was not on rpm.org as far as I saw?) The fat arch is not mine (but OpenDarwin's), and in Bug 132926. This bug was about RPM on Darwin, specifically the os_canon no.
Created attachment 104248 [details] rpm-4.2.1-findscripts.patch Here are the scripts that were used in RPM 4.2.1-0.31c They were ripped from the larger rpm-4.2.1-macosx.patch
BTW: These two bugs broke compilation on Mac OS X: Bug 131943 (pthread) - Bug 131944 (strndup) A lot of other things needed Darwin workarounds, but are not ready for upstream committal yet... The two biggest for 4.3 were selinux and rpmlock. RPM 4.3.2 isn't compiling yet, since Lua breaks.
RPM 4.3.2 now compiles, with a dozen or so patch files. Darwin workarounds: Bug 133611, Bug 133612, Bug 134637 I just wanted to reserve an OS number, thus this bug... os_canon: Darwin: darwin 21 os_canon: MacOSX: macosx 21 os_compat: Darwin: MacOSX
Added to HEAD and rpm-4_4 branches, should be in rpm-4.4.1-0.6 when built. Thanks for the patch.