15:59:58 #startmeeting Fedora Packaging Committee 15:59:58 Meeting started Wed Apr 13 15:59:58 2011 UTC. The chair is spot. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:59:58 Useful Commands: #action #agreed #halp #info #idea #link #topic. 16:00:02 #meetingname fpc 16:00:02 The meeting name has been set to 'fpc' 16:00:08 #topic Roll Call 16:00:16 Howdy. 16:00:25 hi all 16:00:48 salut les loulous 16:00:57 * limburgher oh captain, my captian! 16:01:42 * geppetto is here 16:02:54 well, thats just barely quorum 16:03:07 racor told me he would not be here 16:03:32 * spot seems to recall that abadger1999 might not be here either 16:03:46 abadger1999 is on vacation 16:03:57 rdieter: ping? 16:03:59 Hey, here now. 16:04:07 Will be gone by tonight 16:04:12 abadger1999: aha! 16:04:15 oh hi, here. 16:04:28 abadger1999: Ah, sorry to lie about you then :-/ 16:04:32 okay, i think we have everyone we're expecting. Rathann might drop in. 16:04:39 jsmith: No problem :-) 16:05:14 #topic Systemd Migration Guidelines - https://fedoraproject.org/wiki/User:Toshio/Systemd_scriptlet_options 16:05:25 abadger1999: did you have a chance to test them at all? (i did not) 16:05:34 I didn't have a chance either. 16:05:47 So probably can't discuss this at all this time. 16:06:04 okay. i'll make a solid effort to test it this week 16:06:15 anyone else with spare cycles, please feel free to help here. 16:07:33 #topic Updated MinGW guidelines - https://fedorahosted.org/fpc/ticket/71 16:07:34 * SmootherFrOgZ will test this weekend 16:07:50 epienbro: thanks for coming, and for answering questions in the ticket 16:08:05 sure, no problem 16:08:13 luckily I could make it in time for the meeting 16:08:20 spot: Oh, you could also try contacting bochecha (re: systemd testing) -- he had some package that needed to be converted and he said he'd be willing to test and give feedback. 16:08:29 abadger1999: okay, cool 16:08:43 going down the list of items from the ticket 16:08:50 1) There is now a template spec, thanks 16:09:13 2) Separated Source RPMS 16:09:43 With regards to #2, you said that the intent was that the SRPM would be mingw-foo and that the binary packages would reflect the bitsize targets 16:09:53 that's correct 16:10:04 The way Source package naming is worded makes that a bit unclear 16:10:15 template, can we put it into the guideline page to match the other guidelines (and make sure that they stay in sync)? 16:11:02 we could simplify that section quite a bit by changing it to just say: MinGW source packages should be named by prefixing the upstream package name with mingw- (even if it only builds binary packages for mingw32 or mingw64). 16:11:35 isn't it "prefixing the Fedora native package name"? 16:11:37 And possibly add a section for "Binary Package Naming" that covers the mingw32- vs mingw64- output 16:11:51 rwmjones: yep, thats probably better wording. 16:12:16 spot, sounds good enough to me 16:12:23 epienbro: okay, i'll make that change real quickly 16:12:25 I'll update the draft after the meeting 16:12:48 oh if you want to do it that's also fine by me 16:13:41 https://fedoraproject.org/wiki/PackagingDrafts/MinGWCrossCompiler#Package_naming 16:13:50 abadger1999: you're too fast. :) 16:13:52 spot: ^ 16:13:55 :-) 16:14:14 3) There are no known situations for common files. 16:14:29 4) Macro renaming 16:14:55 there were four macros identified for renaming from _foo to foo 16:15:06 (err. five) 16:15:11 epienbro rwmjones: Should we say, there should be no mingw-foo binary packages? (All should be mingw32-foo or mingw64-foo)? 16:15:28 epienbro? 16:15:35 abadger1999, sure 16:15:49 * abadger1999 makes that change 16:15:51 %{_mingw_find_lang} %{_mingw_configure} %{_mingw_cmake}, %{_mingw_make} and %{_mingw_make_install} should be renamed because their non-mingw counterparts are not _ prefixed 16:16:15 I believe the rest of the macros are fine as is. 16:16:16 well, rpm will always produce a 'mingw-foo' binary package, but it will be empty 16:16:23 epienbro: it shouldn't. 16:16:40 epienbro: if you don't have a %files, rpm is smart enough not to make an empty package 16:17:15 hm okay..but on the other hand..it makes the BuildRequires harder 16:17:33 as each package will now have to BuildRequires: mingw32-foo and BuildRequires: mingw64-foo 16:17:40 instead of just 'BuildRequires: mingw-foo' 16:17:54 epienbro: do they really need both or just the correct bitsized one? 16:18:13 depends if the package can build both 32 bit and 64 bit variants 16:18:22 * spot could see situations where both would be necessary, but others where only one is needed 16:18:27 so that seems reasonable 16:18:38 for building srpm, you need both (if you want to have binary packages for both w32 and w64 targets) 16:19:04 hmmm .. good point 16:19:05 so, yeah, i think thats more correct than hiding it behind a meta-package 16:19:17 if it was 10+ packages, maybe, but two? 16:20:26 I'm okay with any of the 2 methods, I'll leave the decision to you :) 16:20:56 * spot prefers the more accurate set of BuildRequires. anyone else wanna chime in? 16:21:14 * abadger1999 is okay with either one. 16:21:29 empty RPMs doesn't sound good to me 16:21:41 explicit BR's do make for one less special case. 16:23:06 the metapackage would mean documenting: BuildRequire: mingw-foo unless your package only builds on a subset of the supported mingw architectures. Then BuildRequire the platform specific binary rpm instead. 16:23:18 I have no preference, but I don't think that being explicit is going to hurt anyone. 16:23:18 i don't hear anyone strenuously advocating for the meta-package, so lets go with the explicit BuildRequires. 16:23:35 16:23:53 i think the only obvious change that needs to be made is to the example spec 16:24:06 okay, perhaps it would be good to add something to the draft which mentions that there should be no %files section for the main package 16:24:19 I'll update the example spec right now 16:24:57 abadger1999: since you're fast with the wiki, can you add that "No %files for the mingw-foo package, just for mingw32-foo and/or mingw64-foo" ? 16:25:20 Yep. 16:25:41 now that we've made this decision, the macro %{_mingw_default_requires} can be dropped from the draft 16:26:28 I note it's a bit contradictory for the sample spec to include -static subpackages with no comment while the guidelines say that static libs should not be built. 16:27:59 okay, so on macro naming 16:28:01 the example spec has just been updated 16:28:12 tibbs|h, it does? let me verify.. 16:28:18 guideline page updated. 16:28:58 the five we've highlighted should not need the _, as their "normal" version doesn't have it. The rest of the macros are pathing or command macros, where the normal version does have a _ prefix 16:28:59 tibbs|h, did you mean that the native fedora guidelines state that static libs shouldn't be built? 16:29:12 I mean the proposed mingw guideline also says that. 16:29:16 https://fedoraproject.org/wiki/PackagingDrafts/MinGWCrossCompiler#Static_libraries 16:29:23 In accordance with ordinary Fedora policy, static libraries should not be built, and if they are then they should be placed in a -static subpackage. 16:29:32 ah yes I see 16:29:42 Yet the example spec passes --enable-static and includes the subpackages. 16:30:07 well, the case is that several mingw32 packages already have -static subpackages 16:30:34 * spot won't lose much sleep over mingw static packages, since the Windows use case often requires them 16:30:35 so basically it's up to the package maintainer to decide if they want to bundle static libs 16:30:50 All I'm saying is that things are currently contradictory. 16:31:21 tibbs|h: perhaps a comment in the template spec reminding maintainers that in most cases, static libs are not necessary 16:31:38 Sure, or simply strike the sentence from the guidelines. 16:31:45 yeah that sentence is kinda contradictory 16:31:59 * spot is fine with dropping that static section 16:31:59 but I'll also add a comment to the example spec about this 16:32:22 * spot nukes it 16:33:05 don't you wish to keep something which says that it's up to the package maintainer to decide for itself whether they want to bundle static libs? 16:33:26 epienbro: well, we could just point to the static libs section in the general guidelines 16:33:49 epienbro: but in general, it is assumed that unless the type specific guidelines overrule a normal guideline, it is still applicable 16:33:58 ehh.. that would continue to disagree with the example spec. 16:34:16 the example spec has the static libraries in the same subpackage as the dynamic libraries. 16:34:27 no it hasn't 16:34:45 the .dll.a files are import libraries, not static libraries 16:34:47 or maybe not 16:34:54 Ah yeah, that's what confused me. 16:35:00 the .a files really are static libs 16:36:10 they contain automatically generated stubs that get linked to the application; the stubs deal with the business of locating the DLL and loading it (which is not automatic like in Linux) 16:36:36 So, on macro naming: there are three situations in play: macros that are mingw versions of command macros (e.g. %{_mingw_configure}), macros that are mingw versions of path macros (e.g. %{_mingw32_bindir}), and mingw custom macros (e.g. %{_mingw32_sysroot}) 16:36:54 epienbro: Do you need to name them .dll.a ? 16:37:14 geppetto, it's what libtool does automatically 16:37:23 i can see the benefit of a consistent naming scheme here, i'm just not sure the _ prefix is beneficial. 16:37:45 spot, mingw32_sysroot is also a path macro 16:38:04 epienbro: yes, but there is no "normal" equivalent 16:38:19 '/' :) 16:38:26 yeah, but there is no %{sysroot} 16:38:44 so, my proposal is to just drop the _ prefixing everywhere 16:38:52 Sure, if at all possible, less typing. 16:39:07 and not lose sleep over the fact that a strictly correct version of the path macros would have redundant underscores 16:39:24 fine by me 16:39:44 anyone disagree? 16:39:48 Not me. 16:40:24 nope 16:40:27 okay. then i think the last issue was do with the %{mingw_configure} parsing 16:40:42 abadger1999 thought that %mingw_configure --disable-xlib --enable-win32 would work fine 16:40:44 epienbro, rwmjonesDoes the paragraph here look good: https://fedoraproject.org/wiki/PackagingDrafts/MinGWCrossCompiler#Libraries_.28DLLs.29 16:40:46 I just updated the spec file to make it more clear that static subpackages are optional 16:41:58 epienbro: do we need the *.la file? 16:42:02 abadger1999, looks good, there's just a there which doesn't belong there 16:42:08 * abadger1999 fixes 16:42:23 rwmjones, yeah you need them, especially when you're working with static libs 16:42:33 ok, I'm fine with it in that case 16:42:34 and if they're missing libtool will complain 16:42:42 libtool-- bane of my life 16:43:25 So with %mingw_configure args -- epienbro did you get a chance to test? 16:43:36 spot, %mingw_configure without braces: didn't have time to test that yet.. 16:44:42 but I'm afraid it won't work well 16:44:49 okay, then i propose that we edit the draft to use %mingw_configure --disable-xlib --enable-win32 for now 16:45:01 and if it is discovered to not work, we can always make a quick ninja edit 16:45:12 good 16:45:17 Sounds good to me. 16:45:37 Sure. 16:46:45 So the three changes: 1) Include spec template inline (at the end of the page) 2) Switch _mingw* macros to mngw* 3) Change %{mingw_configure "arg1" "arg2"} to %mingw_configure arg1 arg2 16:47:01 i just made the configure change 16:47:29 the other two changes i can make before we move it to its new home 16:47:45 along with preserving the old guidelines and adding a link to them for older targets 16:48:06 do you want to drop the curly braces from the mingw_make macro as well? 16:48:22 (and mingw_make_install) 16:48:26 * abadger1999 sees another %{mingw_configure arg} and changes 16:48:50 rwmjones, regarding the .la files: afaik they were originally designed for linking back in the time when there were no shared libraries 16:48:52 epienbro: yes, good catch 16:49:05 rwmjones: .a files are just archives, with no metadata about other dependant libraries 16:49:22 abadger1999: since you're editing there, can you get those two items as well? 16:49:31 rwmjones: fortunately, elf .so files have DT_NEEDED sections for loading other needed libraries so .la files are really not useful any more 16:49:48 kalev: I know .. unfortunately they nowadays cause *over*-linking. See the workaround we use in libguestfs: http://git.annexia.org/?p=libguestfs.git;a=blob;f=libtool-kill-dependency_libs.sh;hb=HEAD 16:49:57 rwmjones: I believe the situation is the same on windows: .la files are not needed for linking dynamic libraries, but are pretty useful for static libs 16:50:31 about the _mingw* to mingw* change..this will break backwards compatibility with all current mingw32-* packages..is this really what we want to do? 16:50:47 or should I add backwards compatibility macros for those? 16:51:52 hmm 16:52:05 * abadger1999 fixes mingw_make and mingw_make_install 16:52:39 * spot likes clean macros, i'm fine with backwards compat macros as long as they're not documented in the guideline 16:52:42 I'm fine with just changing the five that were mentioned -- do those macros break backwards compat? 16:53:07 * abadger1999 also fine with spot's backwards compat but undocumented. 16:53:27 which five exactly? 16:53:42 mingw_configure, mingw_make and mingw_make_install are new macros 16:53:51 so they won't break backwards compatibility 16:54:16 i think just keeping backwards compat macros that are basically just aliases to the new, proper names are fine 16:54:45 _mingw_find_lang should be renamed to mingw_find_lang for consistency. The same change applies to %{_mingw_configure} %{_mingw_cmake}, %{_mingw_make} and %{_mingw_make_install} 16:54:54 Those are the five. 16:55:00 ah yes, those are all new 16:55:04 so can be renamed safely 16:55:40 and the others can have alias macros with the old names 16:55:54 okay 16:56:46 so, with the two changes: 1) Include spec template inline (at the end of the page) 2) Switch _mingw* macros in draft and template spec to mingw* 16:56:50 Lets take a vote 16:56:52 example has been updated again, for the macro renaming and explicit BR's 16:56:52 +1 16:57:35 +1 16:57:37 +1 from me 16:57:45 Sorry, on the phone. 16:57:57 +1 16:58:07 +1 16:58:27 okay, thats our +5. rdieter, if you want to jump in, go for it. 16:58:35 +1 16:58:41 +1 16:59:01 #action Approved with two changes: 1) Include spec template inline (at the end of the page) 2) Switch _mingw* macros in draft and template spec to mingw* (+1:7, 0:0, -1:0) 16:59:14 epienbro & rwmjones: thanks for your help! 16:59:24 no problem :) 16:59:41 okay, next item 16:59:47 what about the naming of the base packages, mingw-filesystem, mingw-gcc, mingw-binutils? Now that all other packages don't build mingw- binary packages, should these be changed too? 17:00:25 they can also be named in line with the guidelines 17:00:38 so the srpms will be the names you just mentioned 17:00:51 and only mingw32-foo and mingw64-foo binary packages will be built 17:00:57 okay, sounds good. 17:01:08 epienbro: please update the draft to reflect that 17:01:13 and lemme know when you're done 17:01:21 right away 17:01:34 #topic Perl paths @INC change - https://fedorahosted.org/fpc/ticket/73 17:01:59 Did we actually get an answer to the question you raised? 17:02:08 For the record, we still have not received any feedback from mmaslano. 17:02:23 i will send her an email hoping to get clarification 17:02:25 "I'd like to have vendor reserved as empty directory for users Perl rpms. Otherwise there is no need to have vendor at all." 17:02:40 oh, my bad 17:02:46 * spot wonders how he missed that 17:02:50 I'm still not sure I get it, though. 17:03:15 Plus, "vendor" for "user" packages seems quite backwards. 17:03:27 yeah. i agree. i really do not see the benefit of this change. 17:03:45 Maybe the idea is to let users install their own packages to override the distro ones. 17:03:59 And vendor happens to be earlier in the search sequence. 17:04:03 yes, but that works with the existing @INC pathing, i thought 17:04:21 I can't really call myself a perl expert these days. 17:04:31 well, the CPAN path is still identical 17:04:40 and most users doing local installs use CPAN 17:04:49 This is also something that Ralf will have a strong opinion on. 17:05:03 Whether we can get him to state it is another matter. 17:05:56 lemme see if i can get feedback from upstream perl before we move on this 17:06:07 they have had rather... strong opinions on our @INC paths in the past 17:06:17 we'll revisit it next week 17:06:24 But I thought we actually took care of their concerns. 17:06:37 tibbs|h: we did, but that is with the current macros, not the proposed changes 17:06:40 I guess I'd hate to get back to a state where they think we're screwing up. 17:06:59 iirc, they interpreted the "vendor" target as "the place Fedora puts things" 17:07:01 I still think there's some RHEL issue underlying this. 17:07:15 and the private target as "the place perl puts things" 17:07:25 and the user target as "the place everyone else puts things" 17:07:42 A quick google brings up: http://use.perl.org/~schwern/journal/39246 17:07:55 Which seems to imply "vendor == rpm packages go here" 17:08:17 yep. which means mmaslano's proposal is not in sync with upstream 17:08:32 i'll double check, but we should revisit this next week 17:08:36 That's from a macos perspective where "OS" and "package manager" aren't the same thing, though. 17:09:06 Not that the observation isn't valid. 17:09:19 I do think that's where a lot of the confusion comes from, though. 17:09:28 * spot is running into a hard stop here today 17:09:33 but two quick items 17:09:37 #topic https://fedorahosted.org/fpc/ticket/76 17:09:50 I would like to see a draft there before we discuss it in a meeting 17:09:53 Sure. 17:10:01 The question is whether it's worth me writing a draft. 17:10:14 tibbs|h: seems like it to me. i know upstream rpm would prefer it 17:10:20 Or should we wait until the new stuff is supported in an actual release. 17:10:31 tibbs|h: we could wait for F15 to drop. 17:10:45 #topic meeting time 17:10:49 Unfortunately upstream hasn't actually documented this stuff, but I think I know enough about it to do stuff. 17:11:02 most of you did not email me wrt to moving to 1500 UTC on Wednesday 17:11:10 so now is your chance to speak up 17:11:16 I already indicated that time was fine for me. 17:11:27 +1 17:11:30 I don't know how it works, but I'd love to have it documented. 17:11:42 abadger1999: I think this will end up being the documentation. 17:11:47 It's terribly simple. 17:12:08 15:00 UTC Wed works for me. 17:12:21 15:00 is fine here, too 17:12:28 tibbs|h: Make a draft and I'll vote for it then :-) 17:12:36 +1 for the record 17:12:36 #action Our next meeting will be at 1500 UTC on April 20. Future meetings will be at 1500 UTC on Wednesdays. 17:12:44 ok with me 17:13:07 If there are any super urgent open floor items, throw them at me now, otherwise, i'm closing this meeting out in a minute. 17:13:16 #topic Brief Open Floor 17:13:18 One thing that I'm going to ticket (but then leave :-) is that %defattr seems to only be necessary on EL-4 17:13:37 Really? 17:13:46 scop tested and rpm seems to put a default %defattr in if it's not present. 17:13:52 abadger1999: yeah, i think they finally made "default attributes" the default. ;) 17:13:54 It would be nice to dump another pointless bit of line noise from specs. 17:14:44 okay, thanks everyone 17:14:51 Thanks. 17:14:52 dont forget to test selinux migration if you have time 17:14:54 #endmeeting