Open Bug 683397 Opened 14 years ago Updated 3 years ago

leaktest.py.in should not be interpolated

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(Not tracked)

People

(Reporter: k0scist, Unassigned)

References

Details

(Whiteboard: [mozbase])

Attachments

(1 file, 2 obsolete files)

http://mxr.mozilla.org/mozilla-central/source/build/leaktest.py.in The only thing interpolated seems to be the top line, #literal #!/usr/bin/python which if it wasn't an interpolated .in file wouldn't be necessary (though technically #!/usr/bin/env python is a more proper she-bang)
Attached patch patch (obsolete) — Splinter Review
I'm not seeing where leaktest is run at all, but this seems to fix all references to it I could find. Has not yet been run on try
Assignee: nobody → jhammel
Attachment #559915 - Flags: review?(ted.mielczarek)
It gets run directly by the buildbot code somewhere. I think as long as you copy it to the same place you should be ok.
We could probably update Buildbot to look for it in the new location, too. But having it copied to the old is basically necessary as a transitional piece to avoid burning.
As is remembering to clobber, everything on every branch as it merges around, plus telling fifty people "you need to clobber" on IRC. Is it worth it?
Why is a clobber needed?
My intention (which I think I achieved) is that leaktest.py would be in the same location (and copied over as well). Did I somehow mess this up? Given that, I don't really understand comments 3 and 4.
Oh right. Every time we fix one of these we get bitten by the fact that Python's sys.path entry for "the directory containing the script being run" does not do what you expect with symlinks. It's the directory of the *target*. nsinstall symlinks by default on POSIX, so this breaks because you can't import automation.py. (It wasn't broken before because you preprocessed the file so it wasn't a symlink.) You can fix this by setting NSDISTMODE = copy, but it's possible that that also screws something up, as philor is saying. The details are fuzzy.
Comment on attachment 559915 [details] [diff] [review] patch Review of attachment 559915 [details] [diff] [review]: ----------------------------------------------------------------- You definitely need an NSDISTMODE = copy in the Makefile somewhere. I don't know that this will work properly after that, we'd have to go look back at the bugs where we did this previously and see what we wound up doing.
Attachment #559915 - Flags: review?(ted.mielczarek) → review-
Product: Firefox → Core
QA Contact: build.config → build-config
Attached patch update with NSDISTMODE = copy (obsolete) — Splinter Review
Attachment #559915 - Attachment is obsolete: true
Attachment #569540 - Flags: review?(ted.mielczarek)
Comment on attachment 569540 [details] [diff] [review] update with NSDISTMODE = copy Review of attachment 569540 [details] [diff] [review]: ----------------------------------------------------------------- ::: build/Makefile.in @@ +93,5 @@ > $(topsrcdir)/build/pgo/blueprint/grid.png \ > $(topsrcdir)/build/pgo/blueprint/fancytype-screen.css \ > $(NULL) > > +libs:: NSDISTMODE = copy No, you don't want to do this. Just put NSDISTMODE = copy as an assignment at the top-level of the Makefile, not as a target-specific variable.
Attachment #569540 - Flags: review?(ted.mielczarek) → review-
Why shouldn't it be a target-specific variable? Its an easy change, i just didn't want to affect the rest of the file.
Attachment #569540 - Attachment is obsolete: true
Attachment #569820 - Flags: review?(ted.mielczarek)
Attachment #569820 - Flags: review?(ted.mielczarek) → review+
I don't have push access to m-c. Ted, could you please push this for me?
Whiteboard: [mozbase] → [mozbase][checkin-needed]
Keywords: checkin-needed
Whiteboard: [mozbase][checkin-needed] → [mozbase]
Has this been sent to try? If not, I'll include it next time I send stuff there. Also, please may you include a commit message. Thanks :-)
Status: NEW → ASSIGNED
commit message should probably be: "Bug 683397 - leaktest.py.in should not be interpolated" Will test on try now
On try, all builds fail with messages like http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/jhammel@mozilla.com-eb7bc8d562ff/try-macosx-debug/try-macosx-debug-build4305.txt.gz: make -C unix libs /tools/python/bin/python2.5 /builds/slave/try-osx-dbg/build/config/Preprocessor.py \ -DBROWSER_PATH=\"../dist/NightlyDebug.app/Contents/MacOS/firefox-bin\" -DXPC_BIN_PATH=\"/builds/slave/try-osx-dbg/build/obj-firefox/dist/bin\" -DBIN_SUFFIX=\"\" -DPROFILE_DIR=\"../_profile/pgo\" -DCERTS_SRC_DIR=\"/builds/slave/try-osx-dbg/build/build/pgo/certs\" -DPERL="\"/usr/bin/perl\"" -DIS_MAC=1 -DIS_LINUX=0 -DIS_CAMINO=0 -DIS_TEST_BUILD=1 -DIS_DEBUG_BUILD=1 -DCRASHREPORTER=1 -DOSTYPE=\"Darwin9.2.0\" -DOSARCH=Darwin -DMOZILLA_VERSION=\"10.0a1\" -DMOZILLA_VERSION_U=10.0a1 -DXP_MACOSX=1 -DXP_DARWIN=1 -DD_INO=d_ino -DSTDC_HEADERS=1 -DHAVE_SSIZE_T=1 -DHAVE_ST_BLKSIZE=1 -DHAVE_SIGINFO_T=1 -DHAVE_INT16_T=1 -DHAVE_INT32_T=1 -DHAVE_INT64_T=1 -DHAVE_UINT=1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=1 -DHAVE_VISIBILITY_ATTRIBUTE=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 -DHAVE_MEMORY_H=1 -DHAVE_UNISTD_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_X11_XKBLIB_H=1 -DHAVE_SYS_STATVFS_H=1 -DHAVE_MMINTRIN_H=1 -DHAVE_SYS_CDEFS_H=1 -DHAVE_DLADDR=1 -DFUNCPROTO=15 -DHAVE_LIBXSS=1 -DHAVE_FT_BITMAP_SIZE_Y_PPEM=1 -DHAVE_FT_GLYPHSLOT_EMBOLDEN=1 -DHAVE_FT_LOAD_SFNT_TABLE=1 -DHAVE_FT_SELECT_SIZE=1 -DHAVE_RANDOM=1 -DHAVE_STRERROR=1 -DHAVE_LCHOWN=1 -DHAVE_FCHMOD=1 -DHAVE_SNPRINTF=1 -DHAVE_MEMMOVE=1 -DHAVE_RINT=1 -DHAVE_STAT64=1 -DHAVE_LSTAT64=1 -DHAVE_SETBUF=1 -DHAVE_ISATTY=1 -DHAVE_FLOCKFILE=1 -DHAVE_LOCALTIME_R=1 -DHAVE_STRTOK_R=1 -DHAVE_LANGINFO_CODESET=1 -DVA_COPY=va_copy -DHAVE_VA_COPY=1 -DMALLOC_H=\<malloc/malloc.h\> -DHAVE_I18N_LC_MESSAGES=1 -DHAVE_LOCALECONV=1 -DNS_ALWAYS_INLINE=__attribute__\(\(always_inline\)\) -DNS_ATTR_MALLOC=__attribute__\(\(malloc\)\) -DNS_WARN_UNUSED_RESULT=__attribute__\(\(warn_unused_result\)\) -DNS_NORETURN=__attribute__\(\(noreturn\)\) -DMOZ_PHOENIX=1 -DMOZ_BUILD_APP=browser -DMOZ_WIDGET_COCOA=1 -DMOZ_INSTRUMENT_EVENT_LOOP=1 -DMOZ_DISTRIBUTION_ID=\"org.mozilla\" -DIBMBIDI=1 -DNS_PRINTING=1 -DNS_PRINT_PREVIEW=1 -DMOZ_OGG=1 -DATTRIBUTE_ALIGNED_MAX=64 -DMOZ_WEBM=1 -DVPX_X86_ASM=1 -DMOZ_WAVE=1 -DMOZ_SYDNEYAUDIO=1 -DMOZ_MEDIA=1 -DMOZ_VORBIS=1 -DMOZ_XTF=1 -DENABLE_SYSTEM_EXTENSION_DIRS=1 -DMOZ_CRASHREPORTER=1 -DMOZ_CRASHREPORTER_ENABLE_PERCENT=100 -DLIBJPEG_TURBO_X86_ASM=1 -DMOZ_UPDATER=1 -DMOZ_UPDATE_CHANNEL=default -DMOZ_FEEDS=1 -DMOZ_SAFE_BROWSING=1 -DMOZ_URL_CLASSIFIER=1 -DMOZ_DEBUG_SYMBOLS=1 -DMOZ_LOGGING=1 -DNS_TRACE_MALLOC=1 -DHAVE___CXA_DEMANGLE=1 -DMOZ_DEMANGLE_SYMBOLS=1 -DHAVE__UNWIND_BACKTRACE=1 -DJS_DEFAULT_JITREPORT_GRANULARITY=3 -DMOZ_OMNIJAR=1 -DMOZ_USER_DIR=\"Mozilla\" -DMOZ_STATIC_JS=1 -DHAVE_STDINT_H=1 -DHAVE_INTTYPES_H=1 -DMOZ_TREE_CAIRO=1 -DHAVE_UINT64_T=1 -DMOZ_TREE_PIXMAN=1 -DMOZ_XUL=1 -DMOZ_PROFILELOCKING=1 -DMOZ_RDF=1 -DBUILD_CTYPES=1 -DMOZ_PLACES=1 -DMOZ_SERVICES_SYNC=1 -DMOZ_APP_UA_NAME=\"\" -DMOZ_APP_UA_VERSION=\"10.0a1\" -DMOZ_UA_FIREFOX_VERSION=\"10.0a1\" -DFIREFOX_VERSION=10.0a1 -DMOZ_UA_BUILDID=\"\" -DMOZ_DLL_SUFFIX=\".dylib\" -DXP_UNIX=1 -DUNIX_ASYNC_DNS=1 -DMOZ_REFLOW_PERF=1 -DMOZ_REFLOW_PERF_DSP=1 /builds/slave/try-osx-dbg/build/build/automation.py.in > automation.py make[5]: *** No rule to make target `leaktest.py'. Stop. make[5]: *** Waiting for unfinished jobs.... I do not get this for a local build and don't really understand why I have any target that looks for leaktest.py after the changes I've made above. This seems to be some subtlty in the build system, as least as setup on try. Anyone have a clue what's going on here? (And for bonus points, how to fix it?)
Keywords: checkin-needed
Blocks: 775756
Not working on this at the moment so unassigning.
Assignee: jhammel → nobody
Product: Core → Firefox Build System
No assignee, updating the status.
Status: ASSIGNED → NEW
No assignee, updating the status.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: